I’ve been interested in machine learning for a while, but never really had the chance take a real Machine Learning course. A small part on Machine Learning was included in the Artificial Intelligence course I took at KAIST in South Korea, but it was very small. At KTH where I study now they have many courses in Machine Learning, but unfortunately none of which fit my schedule this semester.
One course that actually fits my schedule is however the free online Machine Learning course given at Coursera. Coursera is a website which provides many different MOOCs (Massive open online courses) of which many are free. The course I’m taking, in Machine Learning, is totally free.
Machine Learning course on Coursera
This course gives a good introduction to various Machine Learning topics including:
- Supervised learning (parametric/non-parametric algorithms, support vector machines, kernels, neural networks).
- Unsupervised learning (clustering, dimensionality reduction, recommender systems, deep learning).
- Best practices in machine learning (bias/variance theory; innovation process in machine learning and AI)
It’s not focused on the very deep mathematical topics, but instead serves as a good introduction on how to actually apply the concepts in practical applications.
The format of the class is very simple. Each week there are multiple videos introducing various parts of that week’s topic. In every video there are also usually one or a couple of optional review questions, which makes you listen and think more actively. There are also graded review questions for the whole week, which serve as a good way of repeating and reviewing the material. Finally there is also one graded programming exercise per week, with a few different subtasks. The exercises are completed in the free and open source GNU Octave or the proprietary MATLAB, and then submitted to the judging system for automatic verification and grading. If you have 80% score or higher when the course ends you’ll pass it and get a statement of accomplishment from the teacher.
Time needed to take this course
On the course website it says that you probably need around 5 to 7 hours per week to watch the videos, answer the review questions and finish the programming exercises. This is a pretty good estimate. The first week I spent some more time on this because I had some problems with getting Octave to run on my Windows computer, but the week after that took only around 4 hours or so. Of course I know both programming and have taken some of math courses at KTH, but even without this background it shouldn’t be too hard to do the exercises.
Review after the first few weeks
This course will run for 10 weeks in total, and we’ve now just finished week 3. So far I like the course and have learnt a lot. It’s been on a pretty good level too. I’ve learnt new things, without having to spend too much time on it. I’ve also learnt the basic math behind many of the algorithms used in the class, and can easily look them up to deepen my understanding of the more advanced math. After finishing the course I’ll try to write a longer review on what I learnt and what I thought of the course.
And by the way, the course started on 3rd of March, but you can still register and do the first few weeks of work to catch up with the schedule.