AI vs ML vs DL
Artificial Intelligence is a very broad terms which aims to bring about intelligent behaviour in machines. What should be considered ‘intelligent’ and what should be the approach to attain have varying philosophies. Machine learning can be considered as one of those philosophies where the main goal is, “instead of explicitly programming machines, just give them the data and let them learn”. In this approach also there are way too many sub categories: supervised learning (training labelled dataset and creating a model to predict unlabelled dataset), unsupervised learning (drawing meaningful inferences from unlabelled dataset, clustering being the most popular example), reinforcement learning (giving the algorithm and objective function to optimize for based on immediate reward for each action it takes, eg: chess playing robot), etc. As opposed to learning from rules or logical induction which was heavily used in the beginning of Artificial Intelligence research Machine learning considers data as the most important factor. Since machine learning models are based on the data fed by human engineers or by observing the real world (again influenced by the real world) such models are likely to pick up the prejudices, biases and flaws of human reasoning. One of the incidents happened in 2016, where a twitter bot designed by Microsoft soon turned out to be a racist asshole and had to be shut down.
(image)
Machine learning is a subfield of Artificial Intelligence. Machine learning aims to bring artificial intelligence through learning from the data. Data is to machine learning as code is to traditional computing. Another way of obtaining intelligence in machines could be through logical programming, inductive reasoning based on fundamental rules and so on. Thus ML can be considered as one of the approaches towards Artificial Intelligence. Based on the nature of various problems that exist and the abundance of data for the problem it’s only reasonable that machine learning has been the go-to approach to attain AI. The fact that the corpus of data is very huge and ever increasing, computing resources (machines as well as humans) are limited and it’s not possible to work through rule based programming has gravitated the overall AI approaches towards ML.
Deep learning on the other hand is a rapidly emerging and flourishing method of machine learning. In a normal machine learning setup one of the most difficult problems is feature engineering. Feature engineering deals with extraction of suitable features that could be fed in to the model. If features are incomplete or less the model is flawed (high bias) and if features are way too many and not all of them contributing to model’s output, the model is again flawed (high variance). If we have too many features we need a very very huge dataset to learn from otherwise the model is flawed. In machine learning there is a subfield called ‘representational learning’ also known as ‘feature learning’ which aims to extract features from data like images where hand picking features by human engineers is simply not viable. Deep learning is based on representational learning. Implementation wise it is composed of numerous layers of neural networks (higher the number of layer, deeper the model) where each layer gets input from previous layer and passes it off to the next layer. Starting layers deal with more generic and coarse features and as the network goes deeper it is able to learn finer details from the dataset finally giving the output with a certain confidence factor. Functionality wise, they are inspired by how mammalian neurons work. Neurons work by taking an input chemical signal and based on certain threshold that signal is passed or blocked off. Such behaviours are emulated using various mathematical functions (sigmoid function being the most common) while implementing neural networks.
Although Deep learning based models are finding more and more success they are not always the answer. They require so much of training data to perform well. Quora Thread for more