Machine Learning

Teacher: Sergey Nikolenko

Summary:
This is a year-long course in machine learning presented in
2012 at the St. Petersburg Academic University. The course aims to provide a
comprehensive review of machine learning (mainly from the Bayesian perspective) in a relatively short course.
See also the course homepage.

Program

1. Introduction. History of AI. Probability theory basics. Bayes theorem and maximal a posteriori hypotheses. Example: Laplace's rule.

2. Least squares and nearest neighbors. Statistical decision theory. Linear regression. Linear regression from the Bayesian standpoint.

3. Curse of dimensionality. Example: polynomial approximation, overfitting. Regularization: ridge regression. Bias-variance-noise decomposition. How ridge regression follows from Gaussian priors.

4. Linear regression: various forms of regularization. Bayesian predictions in linear regression. Equivalent kernel. Bayesian model selection.

5. Classification. Least squares for classification. Fischer linear discriminant. Perceptron and proof of its convergence.

6. Linear discriminant analysis. Quadratic discriminant analysis. Naive Bayes. Multinomial and multivariate naive Bayes.

7. Logistic regression. Iterative reweighted least squares. Multiclass logistic regression. Probit regression. Laplace approximation. Bayesian information criterion. Bayesian logistic regression.

8. Support vector machines. Linear separation and max-margin classifiers. Quadratic optimization. Kernel trick and radial basis functions.

9. SVM variants: ν-SVM, one-class SVM, SVM for regression. Relevance vector machines: RVM for regression, RVM for classification.

10. Clustering. Hierarchical clustering. Combinatorial methods, graph algorithms for clustering. The EM algorithm, its formal justification. EM for clustering.

11. Hidden Markov models. The three problems. Dynamic programming: sum-product and max-sum. The Baum-Welch algorithm. Variations on the HMM theme.

12. Model combination. Bayesian averaging. Bootstrapping and bagging. Boosting: AdaBoost. Weak learners: decision trees, learning decision trees. Exponential error minimization. RankBoost.

13. Artificial neural networks. Two-layered networks, error functions. Backpropagation. Example: RankNet and LambdaRank.