This has become one of the most asked questions nowadays! Some Months Ago My Friend Confused About AI So, Let me try to nail these all at my best.
Artificial Intelligence (A.I.)
Well first of all the term was meant to describe the goal that machines will be able to have humans like intelligence in future ( yeah they don’t have so far i know). A lot of money was invested in reaching this goal but we could not achieve our goal. Later we made a new type of AI ( say weak AI or the applied AI that we are having today) which focuses on making machines or systems that LOOK or SEEM to be intelligent ( but are not intelligent) . Some of you may be confused. Well so basically there are two types of AI : weak AI and strong AI ( also can say applied AI and general AI ). So far the so called AI everywhere you see in machines or listen about is weak AI . Strong AI systems will have their consciousness , sentience etc ( say having brains just like that of humans) . Some people also consider that weak AI is not the true AI and companies for sake of better promotions of their products and better market brought the word weak AI ( that is not intelligence according so some guys i mean and its used as AI by companies just because the word AI sounds very fancy ) . So AI is just about creating intelligent machines ( let it get achieved anyhow) i mean make machines or systems that seem to be intelligent like us ( or are like us).
Machine Learning (ML)
Machine learning would not be a subset of AI completely had we achieved strong AI ( because we have only weak AI in real world ML is a subset of AI … actually ML is subset of weak AI ) . Let me clear this . What exactly makes machine learning different from a normal learning. Machine learning is a better method of training machines than the old traditional methods ( i know even ML is quite old now but i m comparing to methods even before its origin) . Let me give an example. You have to make a software for bitcoin trading . You know the exact algorithm that can give desire output , so you make that algorithm and it inputs all the required values and gives output. This is normal learning. Now reality is you know factors that can influence bitcoin movements say indicators like RSI , CSI , MACD ( many indicators) ; graphical history ( comparing historical movements) , buy and sell walls and a lot more. You can’t figure out how to make a proper mathematical operation for this thing ( actually you yourself are not sure about it , you just know the PARAMETERS that influence its movement). Well so you make program that randomly combines these all these ( with different input values ) and keeps working hard and tries to make a mathematical formula itself ( a directional hit and try approach) . You keep giving it more and more data of bitcoin ( also other cryptocurrencies you can give here in this case) so that it can keep trying things and figure out itself a formula that will give good accuracy ( you yourself may not understand what the hell this program is doing bcz it becomes so complicated , all you do is keep giving it data and just want a good accuracy ). This is machine learning say machine that doesn’t learn because we keep updating its algorithm … it learns from its experience ( experience for machines is data input vs result accuracy) .. it keeps modifying itself to improve the accuracy of result. Sometimes you are not even sure about exact parameters and add all parameters that could be possible and leave all that at your machine to figure out things.
Now you can see that machine learning is a completely different thing from AI but in real world we use machine learning as an approach to achieve AI . Let me explain. Suppose we make machines that are exactly like us in all aspects ( strong AI) . you show a laptop to the machine and whenever you show an another dog it will most probably figure it out that its a laptop. But what real machines of today need is processing of millions of pics of laptops to reach a good accuracy where they can figure out the laptops . What i mean is we simply use machine learning to make these weak AI machines ( i mean had we built strong AI we would not use these kind of approach … ). May be the growing nanotech and other developments help us reach strong AI but till then we have weak AI and ML is clearly a subset of it.
Again i remind you ML is a subset of AI. let me give you better example. You have seen automatic cars which companies claim to be AI based cars. There are two types of cars : based on set rules and based on ML. Both these types of cars companies call as AI based cars ( bcz for a normal guy they seem to be intelligent and driving just like we humans ). In cars with set rules we have to change to algo to keep making changes which in case of ML based they keep improving their also with the experience they get. So AI can be achieved by many methods one of which is ML. Because most of AI nowadays achieve AI using ML you will find people interchanging these words often ( and that would hardly make a difference) .
Natural Language Processing (NLP)
This is a subset of AI which uses ML algorithms for processing our natural languages like hindi , english etc ( not computer languages like C , JAVA etc) . What i mean is whenever you say a sentence figuring out its meaning ( same word can have many meanings ) , grammar , subject or object of the sentence etc is achieved via NLP . Different languages have different grammar and differ a lot in many aspects. NLP is also used for translation purpose from one language to other.
This is a subset of ML inspired from human brain ( if i speak in simple terms) . We tried to understand the biological working of our brain and tried to figure out things leading to deep learning. We make models that are highly complicated having several small blocks where even slight changing of any block can result to altering of the result. Deep Learning is what you find in background of most ML systems ( and also indirectly most AI systems) . Deep learning is the name we use for “stacked neural networks”; that is, networks composed of several layers. If you know well about neural networks then raise another query regarding Deep Learning and i will assist you there ( invite me there).