The various cutting-edge technologies that are under the umbrella of artificial intelligence are getting a lot of attention lately. As the amount of data we generate continues to grow to mind-boggling levels, our AI maturity and the potential problems AI can help solve grows right along with it. This data and the amazing computing power that's now available for a reasonable cost is what fuels the tremendous growth in AI technologies and makes deep learning and reinforcement learning possible. With the rapid changes in the AI industry, it can be challenging to keep up with the latest cutting-edge technologies. In this post, I want to provide easy-to-understand definitions of deep learning and reinforcement learning so that you can understand the difference.
Both deep learning and reinforcement learning are machine learning functions, which in turn are part of a wider set of artificial intelligence tools. What makes deep learning and reinforcement learning functions interesting is they enable a computer to develop rules on its own to solve problems. This ability to learn is nothing new for computers - but until recently we didn't have the data or computing power to make it an everyday tool.
What is deep learning?
Deep learning is essentially an autonomous, self-teaching system in which you use existing data to train algorithms to find patterns and then use that to make predictions about new data. For example, you might train a deep learning algorithm to recognize cats on a photograph. You would do that by feeding it millions of images that either contains cats or not. The program will then establish patterns by classifying and clustering the image data (e.g. edges, shapes, colors, distances between the shapes, etc.). Those patterns will then inform a predictive model that is able to look at a new set of images and predict whether they contain cats or not, based on the model it has created using the training data.
Deep learning algorithms do this via various layers of artificial neural networks
which mimic the network of neurons in our brain. This allows the algorithm to perform various cycles to narrow down patterns and improve the predictions with each cycle.
A great example of deep learning in practice is Apple's Face ID. When setting up your phone you train the algorithm by scanning your face. Each time you log on using e.g. Face ID, the TrueDepth camera captures thousands of data points which create a depth map of your face and the phone's inbuilt neural engine will perform the analysis to predict whether it is you or not.
What is reinforcement learning?
Reinforcement learning is an autonomous, self-teaching system that essentially learns by trial and error. It performs actions with the aim of maximizing rewards, or in other words, it is learning by doing in order to achieve the best outcomes. This is similar to how we learn things like riding a bike where in the beginning we fall off a lot and make too heavy and often erratic moves, but over time we use the feedback of what worked and what didn't to fine-tune our actions and learn how to ride a bike. The same is true when computers use reinforcement learning, they try different actions, learn from the feedback whether that action delivered a better result, and then reinforce the actions that worked, i.e. reworking and modifying its algorithms autonomously over many iterations until it makes decisions that deliver the best result.
A good example of using reinforcement learning is a robot learning how to walk. The robot first tries a large step forward and falls. The outcome of a fall with that big step is a data point the reinforcement learning system responds to. Since the feedback was negative, a fall, the system adjusts the action to try a smaller step. The robot is able to move forward. This is an example of reinforcement learning in action.
One of the most fascinating examples of reinforcement learning in action I have seen was when Google's Deep Mind applied the tool to classic Atari computer games such as Break Out. The goal (or reward) was to maximize the score and the actions were to move the bar at the bottom of the screen to bounce the playing ball back up to break the bricks at the top of the screen. You can watch the video here which shows how, in the beginning, the algorithm is making lots of mistakes but quickly improves to a stage where it would beat even the best human players.
Difference between deep learning and reinforcement learning
Deep learning and reinforcement learning are both systems that learn autonomously. The difference between them is that deep learning is learning from a training set and then applying that learning to a new data set, while reinforcement learning is dynamically learning by adjusting actions based in continuous feedback to maximize a reward.
Deep learning and reinforcement learning aren't mutually exclusive. In fact, you might use deep learning in a reinforcement learning system, which is referred to as deep reinforcement learning and will be a topic I cover in another post.