Welcome!
So glad you’ve decided to embark on this journey with us.
Just like any evolving computer science field, Machine Learning and Artificial Intelligence thrive on curiosity, an open mind, and a commitment to lifelong learning.
The renowned AI/ML educator and expert, Andrej Karpathy, shared some wisdom:
In essence? Commit to the journey, clock in those hours, and always measure your growth against your past self. It's a stellar mantra for diving into any new domain.
Now, without further ado, let's dive in!
- Self-study Roadmap for Machine Learning and AI
Here, you'll find an evolving collection of resources aimed to lay down the core principles of Machine Learning for you, regardless of whether you're looking to make a career leap or just fuel a personal passion. The goal? Simply to kickstart your journey. While I've mapped out a pathway here, yours could be entirely different. Think of this repo as your personal learning buffet — sample what resonates with your palate.
Though I've packed in a lot, this isn't an exhaustive trove. Every learner carves out a unique trail, and with that in mind, I've made this a collaborative space. I eagerly await input from both seasoned ML veterans and those just dipping their toes. Let's co-create a richer repository!
Before diving deep, it's essential to understand the fundamental difference between Machine Learning (ML) and Artificial Intelligence (AI). Here's a straightforward breakdown inspired by this source:
Artificial Intelligence (AI): Think of AI as the broader goal of autonomous machine intelligence. It's about crafting systems that can perform tasks requiring human-like intellect - tasks such as discovery, inference, and reasoning.
Key Domains in AI:
- Natural Language Processing: Understanding and generating human language.
- Computer Vision: Making sense of visual data.
- Text to Speech: Converting written text into spoken words.
- Motion/Robotics: Making machines move or perform tasks.
- Generative AI: Systems that can create content.
-
- many more
Machine Learning (ML): ML is a subset of AI. It's about giving machines access to data and letting them learn and make decisions on their own. No manual coding of rules; the machine learns from the data.
Main Types of ML:
- Supervised Machine Learning: Think of this as a "guided learning". The machine learns from labeled data, with some human oversight.
- Unsupervised Machine Learning: Here, the machine dives into data on its own, finding patterns and insights without being explicitly directed.
- Deep Learning: This goes deeper (pun intended) into machines mimicking the human brain. The "depth" here refers to the multi-layered neural networks behind these systems.
Embarking on a journey into Machine Learning and AI? Here's a rundown of the pivotal skills to master. Remember, the learning curve varies—those with backgrounds in Math, Computer Science or software development might breeze through certain areas. Nonetheless, these are the common denominators in the ML and AI toolkit:
Linear Algebra, Calculus and Probability/Statistics
- Coursera: Mathematics for Machine Learning and Data Science by DeepLearning.AI (Paid)
- A friendly introduction to linear algebra for ML (Free)
Python stands out as the go-to programming language for Machine Learning and AI. If you're diving into most courses, they'll expect you to have a grasp on Python basics. As you progress, you'll be introduced to its pivotal libraries like numpy, pandas, tensorflow, and more.
- Kaggle: Basic Python (Free)
- Coursera: Python Crash Course (Paid)
- Coursera: Python for Data Science, AI and Development by IBM (Paid)
- Kaggle: Pandas (Free)
- Numpy
- Matplotlib
- Tensorflow - Note: Most large scale deployments uses this.
- Pytorch - Note: Most of the research field uses this.
- Standford: CS229: Machine Learning Full Course by Andrew Ng (Free)
- Introduction to Machine Learning by Kaggle (Free)
- Harvard CS50: Artificial Intelligence with Python - Full Course (Free)
- DeepLearning.AI : Introduction to Machine Learning by Andrew Ng (Paid)
- Coursera: Introduction to Machine Learning by Duke University (Paid)
- Coursera: Introduction to Machine Learning by AWS (Paid)
- Neural Networks: Zero to Hero by Andrej Karpathy (Free)
- Intermediate Machine Learning by Kaggle (Free)
- MIT 6.S091: Introduction to Deep Reinforcement Learning by Lex Fridman (Free)
- Practical Deep Learning by Fast.AI (Free)
- Step by Step to Machine Learning with Sagemaker by AWS (Free)
- Deep Reinforcement Learning for Python by Nicholas Renotte (Free)
- Data Cleaning by Kaggle (Free)
- Kadenze: Machine Learning for Musicians and Artists (Paid)
- Coursera: Artificial Creativity by The New School Parsons (Paid)
- Coursera: Natural Language Processing by Deeplearning.AI (Paid)
- Deep Learning for Music Analysis and Generation by Yi-Hsuan Yang(Free)
- Deeplearning.AI: Generative AI with LLMs by AWS (Paid)
- Lets Build GPT: From scratch, in code, spelled out by Andrej Karpathy (Free)
- A Hacker’s Guide to Language Models (Free)
Some of these skills you might already have knowledge in, but also may be learned as you go.
- Setting up your IDE
- VS Code (or any IDE of your choice)
- Anaconda Python
- Jupyter Notebook and it’s derivatives (ie. Google Colab)
- Data Science
- Data Science on AWS (Free)
- Git and Github
- Software Development
- Cloud Infrastructure
- Watching Neural Networks Learn
- Gradient descent, how neural networks learn by 3Blue1Brown
- Why Neural Networks can learn (almost) anything by Emergent Garden
- How to learn to code fast using ChatGPT by Tina Huang
- Insights from Andrew Ng.
- Beginner advice from Andrej Karpathy.
- Challenge yourself: recreate and rebuild models.
- Dive deep: aim to replicate results from renowned research papers.
- Start small: there's magic in building bite-sized projects.
- Initial commit: October 19, 2023