Machine Learning with Python: from Linear Models to Deep Learning

Massachusetts Institute of Technology, , Prof. Regina Barzilay 0.0 ( Reviews) 32254 Students Enrolled

FVL is learner-supported. When you buy through links on our site, we may earn an affiliate commission

Updated On 02 Feb, 19


An in-depth introduction to the field of machine learning, from linear models to deep learning and reinforcement learning, through hands-on Python projects. Course 4 of 4 in the MITx MicroMasters program in Statistics and Data Science.

Course Description

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, over-fitting, regularization, generalization, VC dimension;
  • Clustering, classification, recommender problems, probabilistic modeling, reinforcement learning;
  • On-line 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 the MITx 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 on-campus course at MIT, and then take a virtually-proctored 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/.

If you have specific questions about this course, please contact us at sds-mm@mit.edu.

What you will learn

  • Understand principles behind machine learning problems such as classification, regression, clustering, and reinforcement learning

  • Implement and analyze models such as linear models, kernel machines, neural networks, and graphical models

  • Choose suitable models for different applications

  • Implement and organize machine learning projects, from training, validation, parameter tuning, to feature engineering.


  • 6.00.1x or proficiency in Python programming 

  • 6.431x or equivalent probability theory course

  • College-level single and multi-variable calculus

  • Vectors and matrices



  • Introduction

  • Linear classifiers, separability, perceptron algorithm

  • Maximum margin hyperplane, loss, regularization

  • Stochastic gradient descent, over-fitting, generalization

  • Linear regression

  • Recommender problems, collaborative filtering

  • Non-linear classification, kernels

  • Learning features, Neural networks

  • Deep learning, back propagation

  • Recurrent neural networks

  • Recurrent neural networks

  • Generalization, complexity, VC-dimension

  • Unsupervised learning: clustering

  • Generative models, mixtures

  • Mixtures and the EM algorithm

  • Learning to control: Reinforcement learning

  • Reinforcement learning continued

  • Applications: Natural Language Processing


  • Automatic Review Analyzer

  • Digit Recognition with Neural Networks

  • Reinforcement Learning



comment person image


Sed sollicitudin risus eget nisl accumsan, nec gravida metus fringilla accumsan magna a lorem auctor sagittis.

comment person image


Etiam volutpat, orci quis vulputate sodales, metus diam scelerisque ligula, sit amet conggaugue orci ut leo. Sed mattis suscipit urna sed finibus.