Machine Learning with Python: from Linear Models to Deep Learning
Massachusetts Institute of Technology via edX

679

 Write review
Overview
If you have specific questions about this course, please contact us atsdsmm@mit.edu.
Machine learning methods are commonly used across engineering and sciences, from computer systems to physics. Moreover, commercial sites such as search engines, recommender systems (e.g., Netflix, Amazon), advertisers, and financial institutions employ machine learning algorithms for content recommendation, predicting customer behavior, compliance, or risk.
As a discipline, machine learning tries to design and understand computer programs that learn from experience for the purpose of prediction or control.
In this course, students will learn about principles and algorithms for turning training data into effective automated predictions. We will cover:
 Representation, overfitting, regularization, generalization, VC dimension;
 Clustering, classification, recommender problems, probabilistic modeling, reinforcement learning;
 Online algorithms, support vector machines, and neural networks/deep learning.
Students will implement and experiment with the algorithms in several Python projects designed for different practical applications.
This course is part of theMITx MicroMasters Program in Statistics and Data Science. Master the skills needed to be an informed and effective practitioner of data science. You will complete this course and three others from MITx, at a similar pace and level of rigor as an oncampus course at MIT, and then take a virtuallyproctored exam to earn your MicroMasters, an academic credential that will demonstrate your proficiency in data science or accelerate your path towards an MIT PhD or a Master's at other universities. To learn more about this program, please visit https://micromasters.mit.edu/ds/.
Syllabus
Lectures :
 Introduction
 Linear classifiers, separability, perceptron algorithm
 Maximum margin hyperplane, loss, regularization
 Stochastic gradient descent, overfitting, generalization
 Linear regression
 Recommender problems, collaborative filtering
 Nonlinear classification, kernels
 Learning features, Neural networks
 Deep learning, back propagation
 Recurrent neural networks
 Recurrent neural networks
 Generalization, complexity, VCdimension
 Unsupervised learning: clustering
 Generative models, mixtures
 Mixtures and the EM algorithm
 Learning to control: Reinforcement learning
 Reinforcement learning continued
 Applications: Natural Language Processing
Projects :
 Automatic Review Analyzer
 Digit Recognition with Neural Networks
 Reinforcement Learning
Taught by
Regina Barzilay and Tommi Jaakkola
Tags
Related Courses
Reviews
2.9 rating, based on 29 reviews

5The negative reviews of this course on class central had me on guard for a chaotic learning experience as I began this course. However, the course greatly exceeded those low expectations. This leads me to believe that the course may have undergone some...

A good midtheoretical course on Machine Learning algorithms I believe the reasons of many negative reviews for this course is due to a mismatch between students' expectations and content actually delivered. I agree that it is not the "best" MIT course,...

I have finished several online courses the last 3 years. I can safely say that this is the worst online course I have ever seen. The lectures are very bad and short. There are almost no examples. I guess the logic of the course is to provide some short...

I like Professor Regina Barzilay's part and TAs are awesome. Professor Tommi Jaakkola  I am sure is a wonderful person and extraordinary researcher but his teaching style makes me feel like I am the stupidest person in the planet. This course would have been lot better had they let TAs do all the lecturing. I thought every MIT professor were as good as Walter Lewin or Patrick Winston. I now know I was wrong, terribly wrong!
If you are enrolled in this course, compare how they teach support vector machine in the terribly delivered course with how Professor Patrick Winson taught it. (https://www.youtube.com/watch?v=_PwhiWxHK8o).

This is an excellent course, well taught by both professors, with challenging problem sets and exams, and with interesting programming assignments in python. There are prerequisites in terms of probability, statistics, linear algebra and python coding, but this is intended to be taken as the final course in the micromasters so much is covered in previous courses, and the prerequisites are clearly stated. I enjoyed and learnt a lot from this course (it’s not a watered down, easy version but that it what makes it rewarding and worthwhile). If you have the right background and prerequisites, do not be put off by the previous reviewers!

I agree with the other review that it is the worst MITx course ever. We usually watch MITx courses and feel inspired. After watching most MITx courses on youtube, I feel like most students fail because they don't get good education such as the one at MIT. However, this course is absolute disgrace to be called a MIT course.

7“Any fool can make something complicated. It takes a genius to make it simple.”  Woody Guthrie
I hope the course team thinks through this quote before they repeat that it is a 'graduate level' course as a justification on why this course is poorly delivered. 
I finished the course and received a certificate and i can easily say that it is one of the best courses online. People are leaving negative reviews because the course is about 80% independent work, which is perfectly fine since it is a GRADUATE course,...

Worst MIT courses I ever took. Lectures are ineffective and boring. If this course was to be put on youtube, there will be significantly more dislikes than the likes, that is why they do not put it on youtube.

When I see the other reviews, I wonder if we did pursue the same course. This course is for the most part a complete work on machine learning and people are warned that this course will take up a significant amount of time (I do believe the course mentions...

Extremely recommended to understand basic ML algorithms and the underlying mathematics. People focusing on learning ML libraries and application aspects only, may feel a bit overwhelmed. For students not familiar with probability or matrix algebra the course would require an extra effort.

Do not recommend. Lectures are fairly thin. They often mention new terms without providing a definition. There is a ton of homework and most is on material not covered by lecture. There are no handouts/notes or textbook that accompany the course. You'll spend 1218 hours per week, 10% on lectures, 90% on homework which is often poorly worded and confusing. The forums are full of desperate calls for help. Basically you'll be teaching yourself the material. If you stick through it, at the end you'll be good at deciphering cryptic math problems, not so much at applying machine learning concepts to the real world.

I agree that if you don't have enough time or you are behind on some off the prerequisites that this course will confuse a lot of people, but what seems difficult in the beginning becomes easy in the end and I find that I understand some of the more complex ML books a lot better now. My score should be rather good, but I will go over everything again after the course is done, to have it really stick in my head.
but if you want a course that just shows you the highlevel logic and then the functions/packages, then this course is not for you. 
very bad teaching style, where to even start. Below I try to highlight few that stand out:
1. No continuity between lectures and assignments
2. No good examples covered in lectures
3. Sentences very verbose, you will have to repeat the video multiple times to understand the message professor is trying to deliver.
Overall, so many concepts are not covered or taught effectively that I felt I learnt only 10% of the course put together. 
I think the reviews below are very harsh. It's true that it is not as good as the Stanford one I followed on Coursera, but still the Python projects are interesting and well done. I feel that the videos are short on purpose, to give you the most important information. This leaves possibility for personal work if you want to dig further. Some people might be frustrated not to get more details directly in the package.

Great course. Very well structured. The course is divided in 5 units each with its own exercises, a homework and an project to be coded in python.
The exercises can be solved pretty straightforward from the content of the lectures and some googling. (Effort: 5 to 10 hours a week)
Homeworks are a bit more chanlenging and require more research (Effort: 8 to 10 hours a week)
Projects are great, very chalenging but extremely rewarding. You will need a basic course of python. (Effort: 14 hours a week on average)
In general you will need a solid background in calculus, and linear algebra. There is no textbook but most of the concepts are available on line and there is a lot of information. 
Only a bot built by Prof. Jaakkola can give 5 star to this course. Most people who disliked this course was not because it was difficult but because it was horribly delivered. I signed up to this course for the rigor! If people were really put off by the rigor and depth of the course, people would have given bad ratings to other courses such as Probability. However, this is not the case.

Definitely a very overloaded course. I do not recommend it at all, besides very expensive the certificate and super high probabilities of losing the investment

This is a REAL course, for REAL students. This is not a MOOC where you fool yourself that you learned something. It is just a real university course that keeps away all the idiots.

The course is good if you want to go over hours of unnecessary calculus exercises but not that great if you want to get the intuition behind or learn how to apply Python libraries to machine learning problems. There are two professors, professor Barzilay is good at explaining the intuition behind the problems. Professor Jaakola lessons are worse than reading a textbook. No insight and sometimes barely comprehensible. It assumes mastering of Python and provides almost no instruction on how to use the language.