I am an Android programmer. Now, I would like to learn machine learning. I know it requires a mathematical background, like statistics, probability, calculus and linear algebra. However, I am a bit lost. Where should I start from? Can someone provide me a road map for how to learn the mathematical background required for machine learning?
You should begin from Dr Andrew Ng machine learning course on Coursera. It's probably the most popular course for newcomers in machine learning. It's a free course.
You should also grab "Elements of Statistical Learning" ebook PDF. It's a free book.
You may want to focus on:
- Cross validation
- Bias-variance tradeoff
- Decision surface
- Gradient descent
If you are interested to deepen your statistical concepts before diving into machine learning, i would recommend Introduction to Statistics: Descriptive Statistics course in edX
where you'll learn
- The fundamental concepts and methods of statistics
- How to intepret graphical and numerical summaries of data
- Understand the reasoning behind the calculations, the assumptions under which they are valid, and the correct interpretation of results
The link for course is edX
This will definitely clarify your stat background with added benefit of certification.
Some of the fundamental mathematical concepts required in ML field are as follows:
- Linear Algebra
- Analytic Geometry
- Matrix Decompositions
- Vector Calculus
- Probability and Distribution
- Continuous Optimization
A very recent book availble at Mathematics for Machine Learning covers all these aspects and more.