mirror of
https://github.com/python-engineer/ml-study-plan
synced 2024-11-23 19:14:59 +00:00
4b1b6bf98e
added python crash course and learning python.
98 lines
7.7 KiB
Markdown
98 lines
7.7 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.
|
|
|
|
Watch the video on YouTube for instructions:
|
|
[![Alt text](https://img.youtube.com/vi/dYvt3vSJaQA/hqdefault.jpg)](https://www.youtube.com/watch?v=dYvt3vSJaQA)
|
|
|
|
#### 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! You don't have to wait with step 3 until you finished the other parts, I recommend starting with a side project or kaggle competition after you finished part 1.1 (Andrew Ng's course).
|
|
|
|
## 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)
|
|
- [ ] [Udacity - Introduction to Machine Learning](https://www.udacity.com/course/intro-to-machine-learning--ud120)
|
|
- [ ] [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)
|
|
- [ ] [8 Fun Machine Learning Projects For Beginners](https://elitedatascience.com/machine-learning-projects-for-beginners)
|
|
|
|
### 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
|
|
|
|
## Further resources added by the community
|
|
- [ ] [Book: Automate The Boring Stuff with Python](https://automatetheboringstuff.com/) (Till Chapter 6 for Python Basics, the remaining chapters include the applications of Python)
|
|
- [ ] [Book: Python Crash Course by Erric Matthes](https://ehmatthes.github.io/pcc_2e/regular_index/)
|
|
- [ ] [Book: Learning Python by Mark Lutz](https://www.oreilly.com/library/view/learning-python-5th/9781449355722/)
|
|
- [ ] [Basics of Neural Networks, how they learn and some of the involved Mathematics(3Blue1Brown series)](https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi)
|
|
- [ ] [Article on Beginner Level Datasets](https://medium.com/machine-learning-india/getting-started-in-data-science-beginner-level-datasets-376ffe60c6fe)
|
|
- [ ] [Article on Life Cycle of a Data Science Project](https://medium.com/machine-learning-india/the-life-cycle-of-a-data-science-project-d614d8d233b7)
|