Source(s) :
https://github.com/ZuzooVn/machine-learning-for-software-engineers/blob/master/README.md
Some Frequently Asked Questions by ML Enthusiasts :
Can I learn and get a job in Machine Learning without studying CS Master and PhD?
“You can, but it is far more difficult than when I got into the field.” Drac Smith
“I’m hiring machine learning experts for my team and your MOOC will not get you the job (there is better news below). In fact, many people with a master’s in machine learning will not get the job because they (and most who have taken MOOCs) do not have a deep understanding that will help me solve my problems.” Ross C. Taylor
“First, you need to have a decent CS/Math background. ML is an advanced topic so most textbooks assume that you have that background. Second, machine learning is a very general topic with many sub-specialties requiring unique skills. You may want to browse the curriculum of an MS program in Machine Learning to see the course, curriculum and textbook.” Uri
“Probability, distributed computing, and Statistics.” Hydrangea
There are two sides to machine learning:
Practical Machine Learning: This is about querying databases, cleaning data, writing scripts to transform data and gluing algorithm and libraries together and writing custom code to squeeze reliable answers from data to satisfy difficult and ill-defined questions. It’s the mess of reality.
Theoretical Machine Learning: This is about math and abstraction and idealized scenarios and limits and beauty and informing what is possible. It is a whole lot neater and cleaner and removed from the mess of reality.
There are an overwhelming number of resources to begin your journey. The last thing you should be worried about is not finding the right resources for you.
This is a curated list of all the resources you need to study for all the topics and subtopics http://ujjwalkarn.github.io/Machine-Learning-Tutorials/.
It is rather important to understand your area of interests and the most suitable way of learning.
It is important to carefully choose your path and create your own curriculum for achieving your goals. It is you who has to design your own curriculum.
Bye Bye.
Just kidding around. Chill. We’re not going to leave you high and dry.
There is NO common syllabus or curriculum for everyone. This guide essentially encourages you to develop your own schedule based on your likes and dislikes by giving you a window to the curriculum followed by the other Data Scientists and students along with a plethora of resources needed for the same.
Here are some things you should know
First things first.
You absolutely need to know about the fundamentals of programming very well. No amount of maths and statistics will help you make your Machine Learning Model if you do not know how to translate your formulas, calculations and pseudocode into optimized code. Maybe this is why many Machine Learning engineers recommend first getting a job as an SDE and then transition your way into Machine Learning.
Make no mistake, you’ve all the tools (libraries, frameworks) at your tips which can do the heavy lifting for you and can eliminate code you need to write for manually carrying out the calculations. Nevertheless, knowledge of algorithms and being able to write their basic-code from scratch is of utmost importance.
Being able to translate your pseudocode into a program requires the knowledge of Data Structures and Algorithms which is, in fact, a prerequisite for anything related to computer science and programming. Make sure you know the basic data structures well and can write moderately optimized algorithms.
Last but not least,
No matter what path you choose or what learning resources you settle on, you’ll need to study with full determination irrespective of the number of hours you give per day.
Make sure your curriculum and daily schedule does not exhaust you out completely.
Your physical and mental health MATTERS. Take a break for a few days if you feel like. Do not over-pace.
Do the uncool things:- Take care of your health. Eat a good diet. Have plenty of water. Do some sort of physical exercise.
Pre-requisites
Understand these terms and try to figure out the relations between them
Data Science
Artificial Intelligence
Machine Learning
Deep learning
Data Mining / Data Analysis / Business Intelligence
Big Data
Data Engineering
Intermediate Python Programming
Read https://www.analyticsvidhya.com/blog/2015/06/machine-learning-basics/
A lot of hunger, passion, dedication, motivation etc etc
Find a goal/motivation that is an application of Artificial Intelligence / Machine Learning.
It can be MarI/O (https://www.youtube.com/watch?v=qv6UVOQ0F44), T-rex run (https://www.youtube.com/watch?v=sB_IGstiWlc), Stock Prediction (https://www.youtube.com/watch?v=-M_KCH7sqmI), Social Chat/Conversational Bots, Recommendation System etc etc.
Regardless of the domain (Computer Vision, Natural Language Processing, Speech Recognition etc) you want to end up in, you need to learn some basic Machine Learning Algorithms.
There are various ways of going about this.
Read some approaches that people have suggested here:-
If you are good with textbooks, most recommended books in the industry are
By Trevor Hastie, Robert Tibshirani, Jerome Friedman T
This textbook is heavy on maths and is the best guide to give you an awesome understanding of ML Algorithms and the necessary maths.
by Gareth James, Daniela Witten, Trevor Hastie and Rob Tibshirani
In case the maths in the book above feels unbearable, ISLR is a decently good enough book to learn all the necessary concepts with lesser heavy maths and some programming involved as well.
Read this post:- (https://www.reddit.com/r/MachineLearning/comments/5z8110/d_a_super_harsh_guide_to_machine_learning/)
Some alternative books for learning algorithms in no particular order:
Most of the following books do not give a deeper understanding of Linear Algebra and Statistics
You’ll get the pdf, epub and Mobi versions of all the books above with minimal effort. If you don’t, send me a message here (https://t.me/LameDinosaur).
Starting Chapters of The Deep Learning Book is a good resource for the recap of mathematical concepts. (Linear algebra, Probability and Information Theory, Numerical Computations)
https://github.com/janishar/mit-deep-learning-book-pdf/tree/master/chapter-wise-pdf
Some good resources to learn Linear Algebra are:-
Must watch:- https://www.youtube.com/watch?v=kjBOesZCoqc&index=1&list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab
https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/
Starting Chapters of The Deep Learning Book
https://github.com/janishar/mit-deep-learning-book-pdf/tree/master/chapter-wise-pdf
Video Content / MOOCs to learn Machine Learning
Now coming to MOOCs and video contents, All AKTU guys know the importance of it (Last min prep) :)
Anyways there are tons and tons of machine learning and AI courses but some do misguide you or you will not be able to grasp the basics. So where to start?
Okay so if you are a newbie and get scared easily by large mathematical formulas etc. Go with this course: https://www.coursera.org/learn/machine-learning. This course will help you get started with machine learning though not with python but you will get the gist of what you will be getting into. Also, this course is taught by one of the great computer scientist Andrew Ng.
Another really good course: Machine Learning Course by Applied AI. This course will start from the beginning i.e from python scratch and will teach you relevant maths and statistics required along with it. This course is paid though but there are ways to get it free ;).
If you like to learn some theory of AI and ML do go through these archived lectures on AI: https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-034-artificial-intelligence-fall-2010/lecture-videos/. It is also taught by one of the great computer scientist Pattrick H. Winston. But remember this course is just an add on it does not cover machine learning as a whole but it will do help you get your concept clear in some topics.
Remember when it comes to MOOC no single course is best you need to look up videos, lectures from other websites, books to get your concept clear. Never ever really on one course or book. Explore and learn.
Other good courses in machine learning are:
https://www.udacity.com/course/machine-learning–ud262. A free Udacity course to get you started.
https://www.udacity.com/course/intro-to-machine-learning-nanodegree–nd229. This is a paid course and will deepen your knowledge about machine learning.
Machine Learning course by Stanford University. http://cs229.stanford.edu/syllabus.html. This course is all theory.
A youtube playlist that will help you know about various algorithms in machine learning: https://www.youtube.com/playlist?list=PLE6Wd9FR–Ecf_5nCbnSQMHqORpiChfJf
Another set of lectures from the machine learning department at CMU: http://www.cs.cmu.edu/~tom/10701_sp11/lectures.shtml
https://work.caltech.edu/telecourse.html. A short course to get a deeper understanding of some algorithms.
Deep learning playlist by Oxford: https://www.youtube.com/playlist?list=PLE6Wd9FR–EfW8dtjAuPoTuPcqmOV53Fu. This course is an add on course, you will require machine learning knowledge. This just to get your concepts clearer.
https://www.udacity.com/course/machine-learning-engineer-nanodegree–nd009t . This should be done only when you know certain machine learning algorithms. This course will help you to get familiar with writing production-level code. This is a paid course but again there are ways to get it free.
https://www.coursera.org/specializations/deep-learning. A good course to get you started with deep learning. Caution: Machine Learning Knowledge required.
After getting hands-on experience with machine learning, do get your hands dirty with machine learning competitions on Kaggle, Top Coder, Hackerearth etc. If anything unclear feel free to contact me on any social media platform. Just search Animesh Seemendra.
Special Thanks to Revant Gupta and Animesh Seemendra for writing such a detailed curriculum.