Tuesday, April 4, 2017
edX: CSMM.102x Machine Learning Review
CSMM.102x Machine Learning is the second course in the Artificial Intelligence MicroMasters program offered by the University of Columbia on the edX platform. The 12-week course introduces a wide range of topics in machine learning, focusing on mathematical and probabilistic understanding of machine learning techniques. The course requires strong math skills, including knowledge of calculus, linear algebra, probability and statistics. The math in this course is more difficult than the first course in the specialization, CSMM.101x Artificial Intelligence; this is not a general introductory masters level course than any reasonably intelligent person can work through: you simply won't get very far without a strong math background. Grading is based on weekly quizzes, 4 programming projects and a final exam. You need to know how to program in Python or Octave to do the programming assignments.
Each week of CSMM.102x consists of two lecture series that cover two different but often related machine learning topics followed by a quiz. Each topic typically has 30 to 70 minutes of accompanying lecture content, so you can expect around between 1 and 2 hours of lecture per week. Course lectures are dense, often displaying a lot of math on a single slide, so you'll probably have to pause the videos or re-watch certain parts if you want to take it all in. The lecturer speaks very clearly and explains things about as well as you could expect given the nature of the material. As a math heavy course it is still hard to follow at times, but at least the instruction is a help rather than a hindrance. My only real complaint with the instructor is that his delivery is unemotional and matter-of-fact throughout, so there isn't much in the way of energy or excitement in the course. While it is not necessary to present the material, a little bit of humanity can go a long way in an otherwise difficult and sometimes monotonous course.
The first half of CSMM.102x focuses on supervised learning: machine learning problems with a well-defined target that you want to predict given some input data. Supervised learning topics the course covers include maximum likelihood estimation, linear regression, ridge regression, nearest neighbors classifiers, linear classifiers, logistic regression, support vector machines, decision trees and boosting. The second half of the course covers unsupervised machine learning: techniques that find useful patterns in data without a specific target or prediction task in mind. Unsupervised learning topics the course covers include clustering, the EM algorithm, mixture models, matrix factorization, principle component analysis and Markov models. If that sounds like a lot, it is and I didn't even list all the topics. It should be noted, however, that the course does not cover neural networks. I audited this course so I did not complete the programming assignments, but the lectures go into adequate depth that you don't really need to do any programming to get a lot out of the course.
CSMM.102x Machine Learning is a thorough introduction to machine learning geared toward math-minded students. The course takes a lot of effort to get through and the difficulty of the material combined with quizzes that allow few attempts means most students who start the course will not complete it. Considering the course's length and high level of detail, you are unlikely to remember everything you learn even if you do get through all of it, but the course materials will be a great reference to go back and refresh on specific topics later on if the need arises.
I give CSMM.102x Machine Learning 4.25 out of 5 stars: Very Good.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.