/CS228T.2012

The programming assignments from CS228T offered in Spring 2012 at Stanford

Primary LanguageObjective-C

Programming assignment for CS228T Spring 2012

Probabilistic graphical models - Advanced methods

This repo contains the programming assignments from Spring 2012 offering of CS228T at Stanford. All the assignments were developed specifically for Spring 2012 version of the course, by Kevin Murphy, Daniel Selsam, and Sanjeev Satheesh. The code in this repo does not contain the solutions to the assignments. Instead, test scripts are provided for each assignment, so that once you fill in the required code, you can test it yourself for correctness. Note that passing the tests does not always guarantee that your code is correct.

This file contains instructions for all of the programming assignments. Most of the details are relegated to the comments and the provided code itself.

Here are the list of topics covered in these assignments (the repo is organized according to the technique):

  1. Online learning Bayesian inference, stochastic gradient descent for training an binary classifier. Online EM for GMM
  2. Markov Chain Monte Carlo (MCMC) Gibbs sampling and Collapsed Gibbs sampling for GMM
  3. Expectation Propagation (EP) EP for implementing TrueSkill(R)
  4. Support Vector Machines (SVMs) Structural SVM, Latent structural SVM and parallel structural SVM using ADMM
  5. Structure learning Markov network structure learning with block L1 regularization
  6. Variational inference for LDA
  7. Bayesian non-parametrics (BNP)

Dependencies

  • Matlab or Octave. Matlab is preferred, and you additionally require the Statistics and Neural network toolboxes.
  • PMTK3

License

You are free to use these assignments as you wish. If you do use them, please drop us an email. The solutions are not open, they will be available with the TA of the current offering of the course.

Bugs

If you encounter any bugs, please report it on github in the issues section.