Introduction to Machine Learning

Compulsory Course (Computer Science undergraduates), Tel Aviv University, School of Computer Science, 2024

Summary

This course provides a basic introduction to machine learning (namely the field of computer science studying algorithms that learn from examples). This field underlies modern applications of AI, including machine vision, natural language processing, autonomous driving and others. The course will provide the theoretical foundations for understanding learning algorithms, describe different algorithms, and provide practical experience. Some of the topics studies are:

  • Supervised learning: PAC learning, VC dimension, perceptron, SVM, stochastic gradient descent, boosting, deep learning and decision trees
  • Unsupervised learning: principal component analysis, clustering, EM algorithm

The course comprises both theory and practice, with special emphasis on different machine learning algorithms. Theoretical topics are mathematical in nature; practical exercises are based on Python.

Syllabus

  • Introduction to the course and to machine learning.
  • Probably-approximately-correct (PAC) learning model.
  • Generalization bounds; VC dimension; Bias-variance tradeoff; Model selection.
  • Convex optimization & Gradient Descent; Surrogate loss functions; Stochastic Gradient Descent.
  • Support vector machines (SVM) & Kernels.
  • Regularization; Regression; Feature Selection.
  • Probabilistic classifiers & Multi-class Classifiers; Performance Metrics.
  • Decision trees, Bagging.
  • Boosting; Online learning.
  • Deep Learning (MLP; Backpropagation).
  • Principal Component Analysis & Clustering.
  • Generative Models; Gaussian Mixture Model (GMM) and Expectation Maximization (EM).
  • Summary, supplements.

Course number: 0368.3235