Math for Data Science
Here's an exhaustive list of learning resources (in no particular order):
====================================
1) Linear Algebra: (used in machine learning (& deep learning) to understand how algorithms work under the hood. Basically, it's all about vector/matrix/tensor operations, no black magic is involved!)
- Khan Academy Linear Algebra series (beginner friendly) (https://www.khanacademy.org/math/linear-algebra)
- Coding the Matrix course (and book) (http://codingthematrix.com/, http://academictorrents.com/details/54cd86f3038dfd446b037891406ba4e0b1200d5a)
- 3Blue1Brown Linear Algebra series (https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab)
- fastai Linear Algebra for coders course, highly related to modern ML workflow! (https://github.com/fastai/numerical-linear-algebra/blob/master/README.md)
- First course in Coursera Mathematics for Machine Learning specialization (https://www.coursera.org/specializations/mathematics-machine-learning)
- "Introduction to Applied Linear Algebra – Vectors, Matrices, and Least Squares" book (https://web.stanford.edu/~boyd/vmls/)
- MIT Linear Algebra course, highly comprehensive (https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/index.htm)
- Stanford CS229 Linear Algebra review (http://cs229.stanford.edu/section/cs229-linalg.pdf)
====================================
2) Calculus: (used in machine learning (and deep learning) to formulate the functions used to train algorithms to reach their objective, known by loss/cost/objective functions)
- Khan Academy Calculus series (beginner friendly) (https://www.khanacademy.org/math/differential-calculus, https://www.khanacademy.org/math/multivariable-calculus)
- 3Blue1Brown Calculus series (https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr)
- Second course in Coursera Mathematics for Machine Learning specialization (https://www.coursera.org/specializations/mathematics-machine-learning)
- The Matrix Calculus You Need For Deep Learning paper (https://arxiv.org/abs/1802.01528)
- MIT Single Variable Calculus (https://ocw.mit.edu/courses/mathematics/18-01sc-single-variable-calculus-fall-2010/)
- MIT Multivariable Calculus (https://ocw.mit.edu/courses/mathematics/18-02sc-multivariable-calculus-fall-2010/)
====================================
3) Statistics and Probability: (used in data science to analyze data, in order to infer helpful insights)
- Khan Academy Statistics and probability series (beginner friendly) (https://www.khanacademy.org/math/statistics-probability)
- Intro to Descriptive Statistics from Udacity (https://mena.udacity.com/course/intro-to-descriptive-statistics--ud827)
- Intro to Inferential Statistics from Udacity (https://in.udacity.com/course/intro-to-inferential-statistics--ud201)
- Statistics with R Specialization from Coursera (https://www.coursera.org/specializations/statistics)
- Stanford CS229 Probability Theory review (http://web.stanford.edu/class/cs224n/readings/cs229-prob.pdf)
====================================
Bonus materials:
- Part one of Deep Learning book (http://www.deeplearningbook.org)
- CMU Math Background for ML course (https://www.youtube.com/playlist?list=PL7y-1rk2cCsA339crwXMWUaBRuLBvPBCg)
- The Math of Intelligence playlist by Siraj Raval (https://www.youtube.com/playlist?list=PL2-dafEMk2A7mu0bSksCGMJEmeddU_H4D)
====================================
So, that was me giving away my Math bookmarks folder for the common good :D, hope that helps you expand your ML knowledge, and fight your fear of discovering what's happening behind the scenes of your sklearn/keras/pandas import statements :D
**Personal opinion: if you are a beginner in data science/ML field, I don't recommend studying all the math before starting to do actual work (projects), this bottom up approach is counter-productive and you'll get discouraged, as you started with the theory (dull?) before the practice (fun!).
My advice is to do it the other way around (top down approach), learn how to code, learn how to use the PyData stack (Pandas, sklearn, keras, etc..), get your hands dirty building real world projects, use libraries documentations and YouTube/Medium tutorials, THEN, you'll start to see the bigger picture, noticing your lack of theoretical background, to actually understand how those algorithms work, at that moment, studying math will make much more sense to you!
====================================
1) Linear Algebra: (used in machine learning (& deep learning) to understand how algorithms work under the hood. Basically, it's all about vector/matrix/tensor operations, no black magic is involved!)
- Khan Academy Linear Algebra series (beginner friendly) (https://www.khanacademy.org/math/linear-algebra)
- Coding the Matrix course (and book) (http://codingthematrix.com/, http://academictorrents.com/details/54cd86f3038dfd446b037891406ba4e0b1200d5a)
- 3Blue1Brown Linear Algebra series (https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab)
- fastai Linear Algebra for coders course, highly related to modern ML workflow! (https://github.com/fastai/numerical-linear-algebra/blob/master/README.md)
- First course in Coursera Mathematics for Machine Learning specialization (https://www.coursera.org/specializations/mathematics-machine-learning)
- "Introduction to Applied Linear Algebra – Vectors, Matrices, and Least Squares" book (https://web.stanford.edu/~boyd/vmls/)
- MIT Linear Algebra course, highly comprehensive (https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/index.htm)
- Stanford CS229 Linear Algebra review (http://cs229.stanford.edu/section/cs229-linalg.pdf)
====================================
2) Calculus: (used in machine learning (and deep learning) to formulate the functions used to train algorithms to reach their objective, known by loss/cost/objective functions)
- Khan Academy Calculus series (beginner friendly) (https://www.khanacademy.org/math/differential-calculus, https://www.khanacademy.org/math/multivariable-calculus)
- 3Blue1Brown Calculus series (https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr)
- Second course in Coursera Mathematics for Machine Learning specialization (https://www.coursera.org/specializations/mathematics-machine-learning)
- The Matrix Calculus You Need For Deep Learning paper (https://arxiv.org/abs/1802.01528)
- MIT Single Variable Calculus (https://ocw.mit.edu/courses/mathematics/18-01sc-single-variable-calculus-fall-2010/)
- MIT Multivariable Calculus (https://ocw.mit.edu/courses/mathematics/18-02sc-multivariable-calculus-fall-2010/)
====================================
3) Statistics and Probability: (used in data science to analyze data, in order to infer helpful insights)
- Khan Academy Statistics and probability series (beginner friendly) (https://www.khanacademy.org/math/statistics-probability)
- Intro to Descriptive Statistics from Udacity (https://mena.udacity.com/course/intro-to-descriptive-statistics--ud827)
- Intro to Inferential Statistics from Udacity (https://in.udacity.com/course/intro-to-inferential-statistics--ud201)
- Statistics with R Specialization from Coursera (https://www.coursera.org/specializations/statistics)
- Stanford CS229 Probability Theory review (http://web.stanford.edu/class/cs224n/readings/cs229-prob.pdf)
====================================
Bonus materials:
- Part one of Deep Learning book (http://www.deeplearningbook.org)
- CMU Math Background for ML course (https://www.youtube.com/playlist?list=PL7y-1rk2cCsA339crwXMWUaBRuLBvPBCg)
- The Math of Intelligence playlist by Siraj Raval (https://www.youtube.com/playlist?list=PL2-dafEMk2A7mu0bSksCGMJEmeddU_H4D)
====================================
So, that was me giving away my Math bookmarks folder for the common good :D, hope that helps you expand your ML knowledge, and fight your fear of discovering what's happening behind the scenes of your sklearn/keras/pandas import statements :D
**Personal opinion: if you are a beginner in data science/ML field, I don't recommend studying all the math before starting to do actual work (projects), this bottom up approach is counter-productive and you'll get discouraged, as you started with the theory (dull?) before the practice (fun!).
My advice is to do it the other way around (top down approach), learn how to code, learn how to use the PyData stack (Pandas, sklearn, keras, etc..), get your hands dirty building real world projects, use libraries documentations and YouTube/Medium tutorials, THEN, you'll start to see the bigger picture, noticing your lack of theoretical background, to actually understand how those algorithms work, at that moment, studying math will make much more sense to you!
Comments
Post a Comment