This book will cover the basics needed to implement and understand your own Artificial Intelligence and Machine Learning library. All formulas and concepts will be presented with code in both Matlab and Python.
Today we have a lot of confusion around artificial intelligence, machine learning, and deep learning. Actually those terms are just a subset of the Artificial Intelligence.
Field of study which studies how to create computing systems that are capable of intelligent behavior. Some other texts define as the study/design of intelligent agents. Here agent is a system(Software/Hardware) that perceives its environment and takes actions that maximize its chances of success.
For the scope of this book, an intelligent agent is an agent that solve a problem optimally, which means that the system will figure out alone what is the best course of action to take.
Keep track of all your actions and check if they were good or bad, then compare a new action with one of them.
Before take an action, simulate all the possible outcomes (was a good or bad action) then choose the less bad. So you need an abstraction (model) of the world, just remember that a model of the world is not the world.
A funny fact about artificial intelligence is that after a problem is fully solved it's not called intelligent anymore... (ie: Make a computer play chess was the highest display of intelligence, now people don't consider that anymore)
Basically through the history of artificial intelligence we had some periods of surprising/hope and disappointment.
Funny fact is that now we're on a mix of hype/fear
The machine learning algorithms (Even the deep ones) are there for decades so why we have now this buzzword?
Basically due to the advance of computing power through (GPUs, multi-core CPU systems, and FPGAs) and the availability of data (Big data) through internet. Also the amount of data that need to be classified nowadays become to big to be handled manually, so big companies Google, Microsoft, Facebook, start to invest heavily on the subject.
The last years 2013/2016 artificial intelligence (Machine learning) is surprising people with results closer or sometimes better than humans. For example:
Speech and natural language processing
Image Classification, object detection
Playing complex games (Alpha Go)
Control strategies (Control engineering)
So basically people start to become afraid of loosing their jobs and some artificial intelligence server taking over the world.
On the table bellow we present you a table with the amount of possible operations per second and cost of some hardware platforms
Just to illustrate, the picture bellow is the hardware used to play against one of the best Go players in the world.