Skip to content

echow/ml-matlab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ML-MATLAB is a collection of MATLAB live scripts that illustrate concepts in machine learning. They can be used in the classroom or for self-study. These scripts have been used to teach the undergraduate course Computational Foundations of Machine Learning at Georgia Institute of Technology.

Each script usually ends with a section called "Taking it further" which offers some ideas for experimenting with the live script and learning more about the concepts that are illustrated. If you are a student, we encourage you to try out some of these ideas!

The goals behind these scripts are:

  • Provide a way to understand statistics and machine learning concepts through seeing code (how equations translate into code) and also allow experimentation by modifying the data and algorithms.

  • Show how easy it is to implement many machine learning algorithms directly in MATLAB, and provide a starting point for students' own implementations.

Since we primarily want to see the machine learning algorithms in their barest forms, the scripts generally do not use the machine learning tools built into MATLAB (an exception is the script for support vector machines). However, some examples of MATLAB tools may be included in the future for those who want to do more advanced prototyping of machine learning ideas in MATLAB.

Below, there are links to a web/html versions of the live scripts, for your convenience. If you want to experiment with the live scripts in MATLAB, download the scripts via github (in the live directory), or open the script directly in MATLAB Online using the buttons below.

The scripts are released with the MIT license. Feel free to modify and use the scripts as you need, while retaining the MIT license. Feedback and open-source contributions are welcome!

Statistics Background

Solving linear least squares problems and linear regression

least_squares.html Open in MATLAB Online

Estimating the variance of a distribution

estimate_variance.html Open in MATLAB Online

Student's t-distribution

t_distribution.html Open in MATLAB Online

Chi-squared distribution

chi2_distribution.html Open in MATLAB Online

Distribution of the noise variance

noise_variance_distribution.html Open in MATLAB Online

Overfitting and Regularization

Polynomial regression

polynomial_regression.html Open in MATLAB Online

Polynomial regression: bias and variance

polyregr_bias_variance.html Open in MATLAB Online

Polynomial ridge regression

polyregr_ridge.html Open in MATLAB Online

Why does L1 regularization (LASSO) tend to give sparse solutions?

lasso_sparsity.html Open in MATLAB Online

Models that are a linear combination of basis functions

lincombo_model.html Open in MATLAB Online

Bayesian Inference

Bayesian inference for estimating the mean

bayesian_inference.html Open in MATLAB Online

Predictive distributions

predictive_distribution.html Open in MATLAB Online

Nonlinear models

nonlinear_model.html Open in MATLAB Online

Bayesian simulation

bayesian_simulation.html Open in MATLAB Online

Markov chain Monte Carlo

mcmc.html Open in MATLAB Online

Gaussian processes and Gaussian process regression

gaussian_processes.html Open in MATLAB Online

Classification

Linear and quadratic discriminants

discriminants.html Open in MATLAB Online

Logistic regression

logistic_regression.html Open in MATLAB Online

Logistic regression with nonlinear basis functions

logregr_basisfun.html Open in MATLAB Online

Support vector classifiers

support_vector_classifiers.html Open in MATLAB Online

Support vector machines

support_vector_machines.html Open in MATLAB Online

Neural networks

neural_networks.html Open in MATLAB Online

Miscellaneous and Advanced Topics

Stochastic gradient descent

stochastic_gradient_descent.html Open in MATLAB Online

Nystrom low-rank approximation for kernel matrices

nystrom.html Open in MATLAB Online

About

Machine Learning with MATLAB live scripts

Resources

License

Stars

Watchers

Forks

Languages