For upskilling on AI/ML, I prefer taking a top-down approach i.e. starting with high level concepts then proceeding to more foundational topics (read: delve more into the theory) . I liked taking the breadth-first approach (rather than a depth-first approach) to initially understand AI/ML. Once I had a solid foundation, I easily pivoted to learning a specific topic, like masked regional CNNs, for building expertise through real-world experience.
I took multiple courses and read several authors at the same time. You want to find the right sources of information for you and there are so many options out there, so explore. Sometimes I need to read or watch something a few times from different folks before it just clicks. This ultimately accelerated my learning of concepts. Completion of courses should not be the ultimate goal as some courses cover trivial topics and others go too deep into other topics.
Theory vs Practice
It was critical that I pair my theory learnings with practical implementation, e.g. short coding exercises that implement the algorithm from scratch or small projects that use the algorithm’s prediction. I think Jeremy Howard’s free courses on fastai have demonstrated that this approach works really well. It is much more engaging to train your first ML model before delving into the theory behind it so that I could ask questions that are meaningful to me. This led to focused learning and promoted better retainment/recall.
Paid vs Free
There is so much free AI/ML content that it seems silly to pay it. However, if you want targeted learning and you are short on time to design your own curriculum then you should consider paid courses. However, all are not made equal and there are plenty of low-cost options (<$100) for AI/ML.
Beginner vs Advanced Starters
We are all starting from different places of knowledge and experience, but trying to get to one place of common understanding of AI/ML concepts. Everyone can take distinct paths to get there. For example, my approach to learning AI/ML is perhaps best suited to folks who share my non-Computer Science but Engineering-based background. Alternatively, complete newcomers to AI/ML may need to cover more math concepts before delving into some foundational topics. As such, there are different resources depending on from where you start and whether you have casual Interest vs deep interest.
AI/ML Courses:
- Elements of AI (free) – by University of Helsinki
- Part 1 Introduction to AI good for folks with casual Interest in AI, no math or programming required.
- Part 2- Building AI is good for folks who want to delve deeper into the ML algorithms. It is offered at 3 skill levels from non-coder to advanced Pythonistas.
- Fastai courses (free) – Practical Deep Learning for Coders, Part 2 Deep Learning from the Foundations, A Code First Introduction to NLP, Computational Linear Algebra, Practical Data Ethics
- Data Analysis With Python (free) – covers data types, NumPy, Pandas then delves into ML starting with Linear Regression.
- Andrew Ng’s Machine Learning (paid) – develop ML models from scratch. Really great for building that foundation! Looks like the 2014 course and 2018 class lecture videos are on YouTube for free.
- Google’s AI Education (free/paid) – multimedia (courses, podcasts, guides) platform for learning about several aspects of ML including Data Preparation, ML Fairness and deployment.
- Full Stack Deep Learning (free) – Strong course on how to approach developing and deploying deep learning models, but a lot of the content is applicable to machine learning in general such as data management, infrastructure and tooling and team structure. Lecture slides from the UW Masters version of this course can be found here.
- Harvard’s Data Science (free) – follow the end to end flow of data.
- Udacity’s Intro to Deep Learning with PyTorch (free) – another deep learning course to check out
AI/ML books:
- Pattern Recognition & Machine Learning by Bishop (free) – classic book covering the fundamentals. If you enjoy theory and want a through coverage of concepts in ML, this is the book for you.
- Fastai Deep Learning for Coders (free) – published as Jupyter Notebooks. There is also the official book available for purchase by Jeremy Howard called Deep Learning for Coders with Fastai and PyTorch AI Applications Without a PhD.
- Data Science from Scratch (paid) – Works out examples in Python
- Hands on Machine Learning with Scikit-Learn and Tensorflow (paid)- Lots of practical examples
- Machine Learning Yearning by Andrew Ng (free)- aims to teach ML as well as structure ML projects
- Deep Learning (free) – covers the basics of Neural Networks
- Elements of Statistical Learning (free) – good for broad coverage of statistical concepts behind ML algorithms
Podcasts:
- Data Skeptic has short episodes that cover various ML concepts
- Machine Learning Guide (free) -Great introductory audio course for those of us on the go
- TWIML AI – Formally This Week in ML & AI is hosted by Sam Charrington who asks really strong questions to the latest and greatest AI/ML researchers.
- Practical AI – aims to make AI accessible to everyone
Extra Data Science Topics to Cover
You should start learning breadth-first to gain a more general understanding of the meaning and purpose of Data Science as well as all things AI/ML. Then, you can enhance your knowledge of other topics related to working with data such as:
- Databases
- SQL
- Dashboarding in Tableau, Spotfire, Qlik or Power BI
- Ethics of AI/ML –
- Check out University of Helsinki’s online course on AI Ethics (free)
- Invisible Women: Exposing data bias in a world designed for men by Caroline Criado Perez
- Weapons of Math Destruction by Cathy O’Neil – Interesting read about how Data Science perpetuates cultural and other kinds of biases
- DevOps/MLOps
- Other free online goodies from the University of Helsinki with Devops With Docker, DevOps with Kubernetes (for more advanced users with experience deploying web apps)
- Agile Project Management with tools such as Jira, Trello or Azure DevOps
- The Unicorn Project: A Novel about Developers, Digital Disruption, and Thriving in the Age of Data – fictional story about a DevOps transformation at a large company. This book underwrites the importance of DevOps.
- Spark- Apache Spark has Java, Scala, Python and R APIs for processing and analyzing big data
- Cloud Computing – AWS is the most popular cloud provider but there is also Google Cloud Platform (GCP), and Microsoft Azure.
- Shell Scripting – Resource
To become truly competent at AI/ML, you will need to allocate >100 hours. You cannot become an expert in 2 weeks and even after you have mastered the basics behind developing classification/regression and clustering algorithms, you will need to learn how to handle data in the wild before deploying your models effectively. In short, you will always have more to learn so think of Data Science as a large, hairy topic on your lifelong learner journey. Check out our article on Staying Up-To-Date on AI/ML for some help with your journey.
Random Tidbits
Reaktor is an online education company that partnered with University of Helsinki to create the awesome Elements of AI course. They have other cool courses like Starting Up geared towards creating new entrepreneurs. Check out more courses outside of AI here.See How to Learn Machine Learning, The Self-Starter Way for more resources!