Machine learning has hit the technology world like a huge wave and has brought with it solutions to some of the most important problems of this century. It is a field that is currently booming because of its capabilities in being extremely useful in a large number of different situations.
Keeping in mind how powerful this field of study is many students or budding computer scientists want to dip their feet into the water. Being a vast field that requires a lot of prerequisite knowledge to understand the current technical papers, it is difficult to grasp what truly is being discussed. This article outlines a curriculum that will help students get started on their Machine learning journey.
Math Is First!
Machine learning uses many different mathematical models to help represent and model the real world. These techniques also allow one to understand ,interpret and gain valuable information from the large data sets.
First thing that one needs to be clear in, is Linear Algebra and there is no better resource to recap high school linear algebra than Grant’s videos from 3Blue1Brown. Here is the link to his video playlist on YouTube.
There is a visual representation of each concept that helps the viewer gain a deep understanding of the fundamental concepts that will make things a lot easier in the long run.
Also you can check out the Linear Algebra course on MIT opencourseware taught by Gilbert Strang which is also a very good resource.
Calculus is also very fundamental in the field of machine learning and one needs to have a very good idea of what exactly happens when calculus operations are performed to simple functions, because these innate properties are the basis for some basic techniques that help in the machine learning process such as gradient descent.
A great resource for learning calculus would again be Grant’s Essence of Calculus playlist, linked to here.
Probabilistic analysis is key to identifying and also segmenting the data set in order to find and also add more value to it. A good resource to learn Probabilistic theory and analysis would be edx’s Science of Uncertainty course.
Getting a firm grasp on these concepts would be the first thing anyone should do before getting into machine learning. If you think you are ready then let’s move on ahead.
Machine Learning 101
Machine learning is accomplished by a set of algorithms and concepts that can be programmed in many languages but primarily is done so in Python because of the large number of inbuilt packages it has that aid the programming of these algorithms.
A good playlist to get you started would be Python for data science by Siraj Raval on YouTube. The playlist is linked to here. This playlist covers some basic ML concepts while also teaching you python in a hands on way.
Another good resource to learn the most popular algorithms would be the Math of Intelligence playlist again on Siraj Raval’s channel that gives an in depth look into the workings of these algorithms with the basics requirement being just knowing basic syntax in python.
The playlist is linked to here. Having a clear idea of how the mathematics actually makes the machine “learn” gives a beautiful insight and helps gain a good understanding so as to better apply these techniques.
There are again other libraries such as Tensorflow but Python is a good place to start and picking up Tensorflow can be done as required.
Next would be taking the free Intro to Machine learning course from Udacity that will give an idea about real world application of the concepts and algorithms. You could also try Andrew Ng Machine Learning course on Coursera which is world renowned.
Taking these courses one by one will keep adding to your arsenal that will at the end of the curriculum make you strong enough in the fundamentals to dwell into the more advance papers and conversations that are happening in the machine learning space allowing for you to build your models to solve problems that help and impact the society for the better .
If you think you have more resources that could help people who want to learn and get into machine learning comment down below.