Codes and Projects for Machine Learning Course, University of Tabriz.
Chapter 1: Introduction (video)
- download slides in Persian (pdf)
- Linear regression
- Gradient descent algorithm (video)
- Multi-variable linear regression
- Polynomial regression (video)
- Normal equation
- Locally weighted regression
- Probabilistic interpretation (video)
- Download slides in Persian (pdf)
- Python basics
- Creating vectors and matrices in
numpy
- Reading and writing data from/to files
- Matrix operations (video)
- Colon (:) operator
- Plotting using
matplotlib
(video) - Control structures in python
- Implementing linear regression cost function (video)
Chapter 4: Logistic Regression (video)
- Classification and logistic regression
- Probabilistic interpretation
- Logistic regression cost function
- Logistic regression and gradient descent
- Multi-class logistic regression
- Advanced optimization methods
- Download slides in Persian (pdf)
- Artificial Intelligence: A Modern Approach (3rd Edition), pages 725-727
- An Introduction to Statistical Learning: with Applications in R, pages 130-137
- The Elements of Statistical Learning: Data Mining, Inference, and Prediction, pages 119-128
Chapter 5: Regularization (video)
- Overfitting and Regularization
- L2-Regularization (Ridge)
- L1-Regularization (Lasso)
- Regression with regularization
- Classification with regularization
- Download slides in Persian (pdf)
Chapter 6: Neural Networks (video)
- Milti-class logistic regression
- Softmax classifier
- Training softmax classifier
- Geometric interpretation
- Non-linear classification
- Neural Networks (video: part 2)
- Training neural networks: Backpropagation
- Training neural networks: advanced optimization methods
- Gradient checking
- Mini-batch gradient descent
- Download slides in Persian (pdf)
- Step by step Implementation of a multi-layer neural network in Python
- Backpropagation algorithm: Step by step example
- Activation functions (Sigmoid, Tanh, ReLU, PReLU, Maxout) and weight initialization methods
- How to solve problems using neural networks
- Dropout: A Simple Way to Prevent Neural Networks from Overfitting
- Neurons and how they work
- Neural Networks and Deep Learning; Michael Nielsen: This book is a very good place to start learning about neural networks and deep learning.
- Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville: For a more technical review of neural networks and deep learning, I recommend this book.
- Motivation: optimal decision boundary
- Support vectors and margin
- Objective function formulation: primal and dual
- Non-linear classification: soft margin
- Non-linear classification: kernel trick
- Multi-class SVM
- Download slides in persian (pdf)
- Optimization: Convex Optimization, Stephan Boyd, Stanford
- Linear algebra: pdf
- Calculus: Khan Accademy
- Probability: Khan Accademy
- Regression and Gradient Descent
- Classification, Logistic Regression and Regularization
- Multi-Class Logistic Regression
- Neural Networks Training
- Neural Networks Implementing
- Clustering
- Dimensionallity Reduction and PCA
- Recommender Systems