ml-study-plan/README.md
2020-03-19 22:55:04 +01:00

84 lines
6.2 KiB
Markdown

# The Ultimate FREE Machine Learning Study Plan
A complete study plan to become a Machine Learning Engineer with links to all FREE resources. If you finish the list you will be equipped with enough theoretical and practical experience to get started in the industry! I tried to limit the resources to a minimum, but some courses are extensive.
#### IMPORTANT:
- This list is not sponsored by any of the mentioned links! I did a lot of the courses myself and can highly recommend them!
- This list takes a lot of time and effort to finish if you want to do it properly! The list does not look that long, but don't underestimate it.
#### How to use the Plan:
- For theory lectures: Follow along, take notes, and repeat the notes afterwards.
- For practical lectures/courses: Follow along, take notes. If they provide exercises, do them!!! Do not just google the answer, but try to solve it yourself first!
- For coding tutorials: Code along, and after the video try to code it on your own again.
- Step 3 is critical! Your theoretical knowledge is worthless if you don't know how to apply it to real world problems! Do as many personal projects and competitions as you can!
## The Plan
### 0. Prerequisites
- [ ] Linear Algebra and Multivariate Calculus
- [ ] [Khan Academy - Multivariable Calculus](https://www.khanacademy.org/math/multivariable-calculus)
- [ ] [Khan Academy - Differential Equations](https://www.khanacademy.org/math/differential-equations)
- [ ] [Khan Academy - Linear Algebra](https://www.khanacademy.org/math/linear-algebra)
- [ ] [3Blue1Brown - Essence of Linear Algebra](https://www.3blue1brown.com/essence-of-linear-algebra-page/)
- [ ] Statistics
- [ ] [Khan Academy - Statistics Probability](https://www.khanacademy.org/math/statistics-probability)
- [ ] Python
- [ ] [Python Full Course 4 Hours - FreeCodeCamp on YouTube](https://www.youtube.com/watch?v=rfscVS0vtbw)
- [ ] [Advanced Python - Playlist on YouTube (Python Engineer)](https://www.youtube.com/watch?v=QLTdOEn79Rc&list=PLqnslRFeH2UqLwzS0AwKDKLrpYBKzLBy2)
- [ ] [Numpy - Free Udemy Course](https://www.udemy.com/course/deep-learning-prerequisites-the-numpy-stack-in-python/)
- [ ] Matplotlib
- [ ] [sentdex - Playlist on YouTube](https://www.youtube.com/watch?v=q7Bo_J8x_dw&list=PLQVvvaa0QuDfefDfXb9Yf0la1fPDKluPF) or
- [ ] [Corey Schafer - Playlist on Youtube](https://www.youtube.com/watch?v=UO98lJQ3QGI&list=PL-osiE80TeTvipOqomVEeZ1HRrcEvtZB_)
- [ ] [Pandas Tutorial - Playlist on Youtube (Corey Schafer)](https://www.youtube.com/watch?v=ZyhVh-qRZPA&list=PL-osiE80TeTsWmV9i9c58mdDCSskIFdDS)
### 1. Basics Machine Learning
- [ ] [Coursera Free Course by Andrew Ng](https://www.coursera.org/learn/machine-learning)
- [ ] [Machine Learning Stanford Full Course on YouTube](https://www.youtube.com/watch?v=PPLop4L2eGk&list=PLLssT5z_DsK-h9vYZkQkYNWcItqhlRJLN)
- [ ] [Machine Learning From Scratch - Playlist on YouTube (Python Engineer)](https://www.youtube.com/watch?v=ngLyX54e1LU&list=PLqnslRFeH2Upcrywf-u2etjdxxkL8nl7E)
- [ ] Books (Optional and not free, but I recommend at least the first one):
- [ ] [Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow - Aurélien Géron](https://www.amazon.com/Hands-Machine-Learning-Scikit-Learn-TensorFlow/dp/1492032646/ref=sr_1_1?crid=1J69S9GKU93E4&keywords=hands+on+machine+learning+with+scikit-learn+and+tensorflow+2&qid=1584648367&sprefix=hands+o%2Caps%2C256&sr=8-1)
- [ ] [Python Machine Learning - Sebastian Raschka](https://www.amazon.com/Python-Machine-Learning-scikit-learn-TensorFlow/dp/1789955750/ref=sr_1_1?crid=L7PEHL95RXH4&keywords=python+machine+learning&qid=1584648438&sprefix=python+ma%2Caps%2C230&sr=8-1)
- [ ] [Introduction to Machine Learning with Python - Andreas Müller](https://www.amazon.com/Introduction-Machine-Learning-Python-Scientists/dp/1449369413/ref=sr_1_1?crid=WAQPG9CEM3W&keywords=introduction+to+machine+learning+with+python&qid=1584648523&sprefix=introduc%2Caps%2C238&sr=8-1)
### 2. Deep Learning
- [ ] [Stanford Lecture - Convolutional Neural Networks for Visual Recognition](https://www.youtube.com/watch?v=vT1JzLTH4G4&list=PL3FW7Lu3i5JvHM8ljYj-zLfQRF3EO8sYv)
- [ ] Learn PyTorch (or Tensorflow)
- [ ] [pytorch.org official Tutorials](https://pytorch.org/tutorials/)
- [ ] [PyTorch Free Course on YouTube (Python Engineer)](https://www.youtube.com/watch?v=EMXfZB8FVUA&list=PLqnslRFeH2UrcDBWF5mfPGpqQDSta6VK4)
- [ ] fast.ai - Free Courses
- [ ] [Practical Deep Learning for Coders Part 1](https://www.fast.ai/)
- [ ] [Part 2](https://course.fast.ai/part2)
Optional:
- [ ] [Stanford Lecture - Natural Language Processing with Deep Learning](https://www.youtube.com/watch?v=8rXD5-xhemo&list=PLoROMvodv4rOhcuXMZkNm7j3fVwBBY42z)
- [ ] [Stanford Lecture- Reinforcement Learning](https://www.youtube.com/watch?v=FgzM3zpZ55o&list=PLoROMvodv4rOSOPzutgyCTapiGlY2Nd8u)
### 3. Competitions and Own Projects
- [ ] [Kaggle](https://www.kaggle.com/)
- [ ] Datasets (develop own projects)
- [ ] Competitions (start with Getting started section)
### 4. Prep for Interviews
- [ ] https://github.com/alexeygrigorev/data-science-interviews
## Next Level
- Make your own projects to show what you have learned.
- Reproduce paper and implement the algorithms.
- Write a blog to explain what you have learned.
- Contribute to ML/DL related open source projects (sklearn, pytorch, fastai, ...).
- Get into Kaggle competitions.
## Further readings
- https://towardsdatascience.com/the-cold-start-problem-how-to-break-into-machine-learning-732ee9fedf1d
- https://www.geeksforgeeks.org/how-to-start-learning-machine-learning/
- https://www.youtube.com/watch?v=itzmu0l93wM
- https://elitedatascience.com/learn-machine-learning#step-0
- https://medium.com/@gordicaleksa/get-started-with-ai-and-machine-learning-in-3-months-5236d5e0f230
- https://towardsdatascience.com/beginners-guide-to-machine-learning-with-python-b9ff35bc9c51
- https://www.fast.ai/2019/01/02/one-year-of-deep-learning/
GitHub:
- https://github.com/ZuzooVn/machine-learning-for-software-engineers
- https://github.com/Avik-Jain/100-Days-Of-ML-Code
- https://github.com/yanshengjia/ml-road