Machine Learning for Grandmothers

Nowadays we are talking about the advance of technology how the first robots are between us and how will be living with them, we can see robots in the medical field helping the doctors with surgeries or transporting body parts. Also, they are a new kind of transport for all things until they can transport humans, for these reasons is a very important topic to learn or understand.

Everybody is talking about it, we can see movies with AI (Artificial Intelligence) like Avengers Age of Ultron, and years ago we had writers like Isaac Asimov who talks about all these things that we thought were very far for our times, however, the advance of our time have done possible It, Topics like AI, ML (Machine Learning), DL (Deep Learning), are commons in daily talks, questions about Robots and how dangerous or helpful they can be. For this reason in this blog, I’m going to explain Machine Learning like you (the reader) would be my grandmother. In the next explanation, we are going to talk about a robot as an example but machine learning could be applied with an algorithm and could be only a program. This is not an explanation about perceptron, logistic regression, Neural Networks, CNN, DNN, machine learning models, my idea is only giving a motivation for anyone to go deep in machine learning study. I’m going to explain those topics in other blogs.

Now that you are reading this dear grandma, I want to tell you that our lives can be more comfortables using technology to do the regular things of our daily routine, for example, have you seen Robots in a movie or a science fiction book, try to imagine a Robot helps you with the home regular activities, for example, the Robot can cook, clean, go to walk with the dog, feed your pets and all activities that you need help. The Robot does all things because it has electronic parts to processing, storage, get data, play audio, and move it. If you think about how a human can learn you can see that human needs a lot of parts of the body to do it. Brain to process or send the instructions to do things and to store information, how can we get data? yes, we have senses and we get data with them. This Robot has intelligence because he can do a lot of things that we can say need some intelligence to do it and in other words, this is called Artificial Intelligence, now that we know what is artificial intelligence, we can imagine how the robot learned or learn to do things and understand the process could be similar to the human behavior, the robot should receive data this could be with mics (similar to ears), with cams (similar to eyes) and the other electronic parts that can change from physical medium to electronic. Now that the Robot gets data is important to use the data to learn and do things, this process is called machine learning and has two different ways to teach the brain of the robot how to do all instructions or routines to help you.

When you give to the robot historical data or examples to identify or do activities this way is called supervised learning, in other words, is very similar to teach children in a school, the robot gets data and you explain it how is that a how this data should be interpreted like when you try to explain a child the alphabet or numbers, you do something like paint the number one and show how is the number and say this is number one, the kid should store the data received with ears and eyes and store the information and if it does, next time, the kid should say what is number one and how to painting. For the machine or robot you have to show the data and tag the information, the next time that the Robot takes a picture of number one, It’s going to know what is.

By the way, the next method used to machine learning is called unsupervised learning, It is similar to learn by experience, for example, If you were a child and put your fingers on fire you burnt and you never put your fingers on fire again. Something similar occurs with machines, Machine should learn without any tag about the input data or information to do or not an activity.

Everything that I told you is possible with maths if you want to do a machine learning process you have to learn these topics:

Linear Algebra:

Linear Algebra is a branch of math, It’s a good way to solve system equation with models of vectors and matrix, in machine learning, could be very useful to interpret the signals like sound, electricity, and representation of the physical world in a matrix as the images. For example, when you record sound you have to vectors (if the record is stereo) one for the left and the other for the right channel and the length of these channels is the time of the sound multiply by the sampling frequency (t*fs). Another example could be when you digitalize an image, you will have a matrix with info about RGB (SizeX3 matrix) each element has the info about the quantity of each color in a range between 0 to 255.

Probability and statistics:

This branch of math is used to determine what is the correct choice to learn or to do an activity. For example, if you have a machine that can recognize images, It should process the image and when the machine gets the data with probability and statistics can tag the images with math methods like convolution.

Multivariate calculus:

In some cases, the machine could get data with many variables and for this reason, multivariate calculus is very useful because you can know the value of each variable and later can be used to learn about it.

Algorithm time complexity:

Grandma if you are programming the machines, you should do algorithms with the best time to process the inputs. Therefore is very important to understand that time complexity is a way to determine the time of an algorithm like math functions call Big O notation. Each line should be evaluated to determine if the line is a constant or if the line process the input. the regular functions are 0(1) this is when the time is always a constant, O(n) is when you have a linear function in other words if your input increment also the time with the same relation, O(n²) quadratic function is when the input increment and the time also increment by 2.

Consequently, machine learning has a lot of algorithms like Linear Regression, logistic Regression, Support Vector Machines, K-Nearest Neighbors, Random Forests, K-Means Clustering

Bibliography

Calum McClelland — The Difference Between Artificial Intelligence, Machine Learning, and Deep Learning, article Medium, https://medium.com/iotforall/the-difference-between-artificial-intelligence-machine-learning-and-deep-learning-3aa67bff5991

Lisa Tagliaferri — An Introduction to Machine Learning, article-DigitalOcean, https://www.digitalocean.com/community/tutorials/an-introduction-to-machine-learning

Wale Akinfaderin — The Mathematics of Machine Learning, towardsdatascience, https://towardsdatascience.com/the-mathematics-of-machine-learning-894f046c568

Fullstack developer and sound engineer, learning ML