Learning and understanding mathematics is key to understand machine learning algorithms, as machine learning algorithms is applied mathematics. Mathematics is just a language as all other language but it is so unambiguous and precise than we could explain phenomenon using it. Understanding Mathematics is very crucial for machine learning, and by understanding it means what each step means both theoretically and geometrically (not applicable in all branch of mathematics).
The growth in the field of machine learning in last decade has become lightning fast due to many reason,
- Available of datasets
- Hardware to support the computation (one of the most important reason)
- Exceptional results using deep learning
The sub field of machine learning called deep learning is heavily based on mathematics and without understanding mathematics you will only be a script kiddie in this field. The discussion does not ends here, as if the field is growing fast then in that case your learning should also be fast but most importantly clear.
In this article I will discuss the methods I use to learn mathematics for machine learning fast and effective, and before even starting you must keep this in mind that anybody can learn this field you don’t have to be some super genius, all you need is thrive to learn and most importantly consistency to do the things daily even if you don’t like doing it on some days.
There are specifically four branches of mathematics that are used in machine learning,
- Linear algebra
- Probability and statistics
- information theory
though discussing what to learn is not the goal of this article but for the sake of information I have provided.
Identify what to learn
This is a very essential step of learning as before even start what to learn you must know what not to learn as for any beginner the mathematics involve in machine learning can somewhat be over whelming at first, so that means you must understand this, you cannot learn all things at once no one can, as learning is not a goal it is a process itself. There are couple of things you can workout to eliminate options in front of you,
- Pick a goal like learning a particular topic or building a minor project, it will be very beneficial if you choose some minor project as your goal. After setting up the goal find out all the mathematics involve in it and only learn up till that and don’t get distracted in between.
- If you find any topic which is based on the understanding of many other topics then try to understand it in abstract manner at first.
Using above tricks you will eliminate many options and learn only what you need to take your game to next level.
How you learn
This is more of self observation, some people understand better using audio, video some with written text and some are comfortable with both, and most important point is no method is better than other as long you are learning consistently. If I have less time than i prefer watching lectures on topics at 2x or 3x but if I had time then I prefer to go through some standard books on particular topics which will provide very in-depth knowledge. You must observe yourself as what type of learning you are most comfortable with rather than trying hard to learn in some other manner as if you are beginner the most important thing is to learn not what is the way of learning you use. Though it is recommended you should develop habit of reading, specifically equations as it will help you to read research paper which is essential to keep yourself updated with this field.
Choose the right option
Choosing the right option of the place from where you will learn, is very crucial. If the material you have chosen for your learning is not good for you, then chances are you will quit before even starting.There is no such thing as good or bad for learning, it all depends which is good for you, The main point you need to consider is try breath-first approach rather than depth first, try out different options present on internet and find out which one suits your frequency. I would recommend rather than approach math first before even taking any machine learning course is not a good idea as after taking a machine learning course it will take you to a place from where you can select what to learn and even compare options you have.
Balancing between depth-first and breath-first
Going too deep in one topic or learning every topic at only abstract level are both not a good situation to live in, you must find a right balance between these two trade-off, what I would suggest is go deep only till at the point you understand every bit of your project as why things are happening. If you successfully arrived at this point then its time to go through next topic as for any beginner going too deep in one topic will make you consume your time rather making you learn to build something out of it.
Learning mathematics can be sometime over whelming or boring so it is essential to keep two things in mind,
- if possible try to understand things in geometric manner as it will help you to build strong understanding about concepts.
- Never hesitate to look out for help, I know this might be difficult for some people, but the reality is no one can know it all we all learn by helping each other.