Home Curriculum Learning Log Bookshelf
Curriculum – Machine Learning Sabbatical
Constructed in collaboration with a-martyn
Summary
- Time: 3 months full-time
- Prequesites: Python programming, A-level / intermediate undergraduate level maths
This curriculum aims to provide a 3-month course teaching the prerequisite mathematics and foundational principles of machine learning. We have opted for a bottom-up approach focussing on fundamental principles whilst also allowing scope for applied experimentation.
Three tracks of study are pursued in parallel:
- Foundational track: Structured course-based study of fundamental concepts that apply broadly across machine learning including mathematics, statistics and core learning algorithms.
- Applied track: Goal driven projects intended to test understanding and application of knowledge, and build strong communication of machine learning concepts
- Practice track: A "little and often" track; small programming exercises and mathematical problems. Intended to keep maintain and enhance practical skills.
1. Foundational Track
Introduction to Machine Learning (60 hrs)
Mathematics
Supervised Learning & Statistics (90 hrs)
- Course: Foundations of Machine Learning by Bloomberg ML EDU
- Textbooks:
- Hands-On Machine Learning with Scikit-Learn and TensorFlow (Aurélien Géron)
- The Elements of Statistical Learning (Hastie, Friedman, and Tibshirani)
- An Introduction to Statistical Learning
- Understanding Machine Learning: From Theory to Algorithms (Shalev-Shwartz and Ben-David)
- Machine Learning: a Probabilistic Perspective by Kevin Murhy
- Data Science for Business (Provost and Fawcett)
UPDATE
Supervised Learning & Statistics (60 hrs)
Unsupervised Learning / Graphical Models
- Course: TBD
- Textbook: TBD
2. Applied track
- Build a dataset from scratch
- Look for problems where dataset can be built quickly
- 20% increasing to 50% of course time as knowledge progresses
- Projects should be fun, and have toy-like quality
- Focus on demonstrable deliverables (1 per week)
3. Practice track
Software Engineering
Mathematics
Linear Algebra
Caclulus
Probability and Statistics
Time commitments
- 60% Foundational Track
- 20% Applied Track
- 20% Practice Track
- 1 Meetup / Week
Desired outcomes
- [x] Machine Learning by Andrew Ng coursera accreditation.
- [x] Mathematics for Machine Learning: Linear Algebra accreditation.
- [x] Mathematics for Machine Learning: Multivariate Calculus accreditation.
- [x] Mathematics for Machine Learning: PCA accreditation.
- [ ] Completed Homeworks from Foundations of Machine Learning published as Jupyter notebooks.
- [ ] 12 Jupyter notebooks demonstrating fundamental topics in machine learning.
- [ ] At least one demonstrable applied ML project.
- [ ] An offer of employment :)