What is Deep Learning ?
Deep Learning models
- use a cascade of multiple layers for extracting features. Each layer is used as input for the next layer.
- learning is either supervised ( e.g. classification), semi-supervised, or unsupervised ( e.g. pattern analysis)
- with each new level of representation a new level of abstraction is achieved, a hierarchy forms, until the final objective is found.
- typically include some form of gradient descent or back propagation
The picture below does a good job conveying these points.
Amazing things happen, when Deep Learning is used in fields like Computer Vision (computer identifying objects on a picture or video), Speech Recognition (think Alexa), Natural Language Processing (think gmail smart reply).
Checkout Wikipedia definition of Deep Learning for a more in depth description.
Supervised, SEMI-SUPERVISED, UNSUPERVISED LEARNING
In the world of Deep Learning, a computer learns in one of three ways. Supervised, Unsupervised, and Semi-Supervised. I love Wikipedia's analogy for this.
Lets review each.
Supervised Learning is the task of the computer inferring something from some data that it has been given. Lets go back to basic math.
Y = Function(X)
For example, go to excel and find a cell A2 type = COUNT(A1) . We are feeding the function COUNT the value that is in cell A1 and can infer from the result that the answer is in A2.
The objective is to define a function such that when given any X value we can with a very high probability predict Y.
We call this supervised learning because the process of feeding the function the data can be thought of as the teacher supervising the learning process. We know the correct answers to Y and as we iterate over the data feeding X to the function and the prediction Y is made, we are correcting the function much like a teacher would do with a student solving a math problem. Learning stops when the percentage prediction of Y is high enough to meet our needs. Make sense ?
With unsupervised learning we do not have X a trained data set or Y the expected output from the function.
Unsupervised Learning's objective is to find and model the underlying patterns in the data in order to learn more about the data.
Unlike supervised learning there is no correct answers and there is no teacher. The models must discover on their own interesting patterns in the data.
Unsupervised Learning can be grouped into 2 types of problems.
- Clustering: (i.e. k-means) Used to discover the patterns in the data, such as customers displaying similar
- Association:(i.e. Apriori) Used to discover rules that describe large portions of your data, such as people that buy X also tend to buy Y.
As you can imagine is somewhere in between.
Semi-Supervised Learning Problems have a large amount of input data X and only some of the data Y.
An example is a photo library. A subset of images are tagged, (e.g. man, woman, dog, or cat) and the majority are not tagged.
Before we take a look at an example, you need to understand the concept of Computer Vision.
Click on the button below.