GitPedia

Coursera ml py

Python programming assignments for Machine Learning by Prof. Andrew Ng in Coursera

From nsoojin·Updated June 18, 2026·View on GitHub·

If you've finished the amazing introductory Machine Learning on Coursera by Prof. Andrew Ng, you probably got familiar with Octave/Matlab programming. With this repo, you can re-implement them in Python, step-by-step, visually checking your work along the way, just as the course assignments. The project is written primarily in Python, distributed under the MIT License license, first published in 2017. It has gained significant community traction with 1,434 stars and 489 forks on GitHub. Key topics include: andrew-ng-course, andrew-ng-machine-learning, andrew-ng-ml-course, anomaly-detection, coursera-machine-learning.

Coursera Machine Learning Assignments in Python

author python license contribution

title_image

About

If you've finished the amazing introductory Machine Learning on Coursera by Prof. Andrew Ng, you probably got familiar with Octave/Matlab programming. With this repo, you can re-implement them in Python, step-by-step, visually checking your work along the way, just as the course assignments.

How to start

Dependencies

This project was coded in Python 3.6

  • numpy
  • matplotlib
  • scipy
  • scikit-learn
  • scikit-image
  • nltk

Installation

The fastest and easiest way to install all these dependencies at once is to use Anaconda.

Important Note

There are a couple of things to keep in mind before starting.

  • all column vectors from octave/matlab are flattened into a simple 1-dimensional ndarray. (e.g., y's and thetas are no longer m x 1 matrix, just a 1-d ndarray with m elements.)
    So in Octave/Matlab,
    matlab
    >> size(theta) >> (2, 1)
    Now, it is
    python
    >>> theta.shape >>> (2, )
  • numpy.matrix is never used, just plain ol' numpy.ndarray

Contents

Exercise 1

  • Linear Regression
  • Linear Regression with multiple variables

Exercise 2

  • Logistic Regression
  • Logistic Regression with Regularization

Exercise 3

  • Multiclass Classification
  • Neural Networks Prediction fuction

Exercise 4

  • Neural Networks Learning

Exercise 5

  • Regularized Linear Regression
  • Bias vs. Variance

Exercise 6

  • Support Vector Machines
  • Spam email Classifier

Exercise 7

  • K-means Clustering
  • Principal Component Analysis

Exercise 8

  • Anomaly Detection
  • Recommender Systems

Solutions

You can check out my implementation of the assignments here. I tried to vectorize all the solutions.

Contributors

Showing top 1 contributor by commit count.

View all contributors on GitHub →

This article is auto-generated from nsoojin/coursera-ml-py via the GitHub API.Last fetched: 6/18/2026