TensorFlow is one of the most popular machine learning platforms—and it's completely open source. With TensorFlow 2.0, it has never been easier to build and deploy machine learning models.

We have released a 7-hour TensorFlow 2.0 course on the freeCodeCamp.org YouTube channel. The course is designed for Python programmers looking to enhance their knowledge and skills in machine learning and artificial intelligence.  

Not only will this course teach you how to use TensorFlow, it will also give you a great overview of machine learning and artificial intelligence.

The creator of this course is Tim Ruscica, who is known for his popular “Tech With Tim” YouTube channel. Throughout eight modules, Tim covers the fundamental concepts and methods in machine learning and artificial intelligence like:

  • core learning algorithms,
  • deep learning with neural networks,
  • computer vision with convolutional neural networks,
  • natural language processing with recurrent neural networks,
  • and reinforcement learning.

To go along with the video portion of this course, there are six information-packed Jupyter notebook files. These files contain extensive notes, instructions, and diagrams. They also include all the code used in the course so you can easily try out the code yourself. And you can access the files on Google Colaboratory, allowing you to run all the code in your browser.

After completing this course you will have a thorough knowledge of the core techniques in machine learning and AI and have the skills necessary to apply these techniques to your own datasets.

Here is a break-down of each module.

Module 1: Machine Learning Fundamentals

The first module covers the difference between artificial intelligence, neural networks, and machine learning. The machine learning fundamentals laid out in this module will provide the foundation for the rest of the course.

Module 2: Introduction to TensorFlow

This module provides a general introduction to TensorFlow. You will learn what a Tensor is and learn about shapes and data representation. You will also learn how TensorFlow works on a lower level.

While you can create machine learning models without knowing how everything works, a more in-depth understanding makes it easier to tweak models and get the best results.

Module 3: Core Learning Algorithms

You will learn four of the fundamental machine learning algorithms. Each of the algorithms will be applied to unique problems and datasets.

The algorithms covered are:

  • Linear regression
  • Classification
  • Clustering
  • Hidden Markov models

Module 4: Neural Networks with TensorFlow

In this module you will learn how neural networks work and the math behind them. You will learn about gradient descent, backpropagation, and how information flows through a neural network.

In the second part of the module you will see how to create a neural network with Karas to classify articles of clothing.

Module 5: Deep Computer Vision - Convolutional Neural Networks

This module will teach how to use a convolutional neural network to perform image classification and object detection/recognition.

You will learn about the following concepts:

  • Image data
  • Convolutional layers
  • Pooling layers
  • CNN architectures

Module 6: Natural Language Processing with RNNs

Natural Language Processing (NLP for sort) is a discipline in computing that deals with the communication between natural (human) languages and computer languages. A common example of NLP is something like spellcheck or autocomplete.

This module introduce a new kind of neural network called a recurrent neural network (RNN for short). These networks are often used for NLP.

You will learn how to use an RNN for sentiment analysis and character generation.

Module 7: Reinforcement Learning with Q-Learning

In this module you will learn about Reinforcement Learning.

This technique is different than many of the other machine learning techniques covered earlier in the course. Rather than feeding our machine learning model millions of examples we let our model come up with its own examples by exploring an environment.

You will learn how to create a machine learning model using reinforcement learning.

Module 8: Conclusion and Next Steps

In the final module, you will learn about next steps to learn more about TensorFlow and machine learning

Time to Watch!

If you are ready to start learning about TensorFlow and machine learning, watch the course below or on the freeCodeCamp.org YouTube channel.