Skip to main content

Foundations of Machine Learning in Python

Level
Advanced

Course designed for advanced learners interested in understanding the foundations of Machine Learning in Python.

General: The course consists of 15 lectures (ca. 1-2 hours each) and 15 exercise sheets (for ca. 6 hours of programming each).

Institution: High-Performance Computing and Analytics Lab, University of Bonn

Course Level:  Advanced e.g. 3rd year B.Sc. or M.Sc. 4 Expert e.g. Ph.D level

Language: English Workload [hours and ECTS]: ca. 120 hours

Teachers: E. Trunz, M. Wolter

Requirements for participation: Basic Python knowledge e.g. from https://docs.python.org/3/tutorial/

Course Features
What is machine learning, and what can it do for us?
The derivative, gradients, and optimization via gradient descent.
Matrix multiplication, singular value decomposition, Linear Regression.
Mean and variance, correlation, Gaussians.
Overfitting and underfitting, classification, regression, k-nearest neighbours.
Linear separable, non-linear separable, kernel trick.
Decision trees, random forests, bias and variance problem, bagging.
K-means clustering, Gaussian mixture models, expectation-maximization.
PCA for dimensionality reduction, PCA for compression and other applications.
The MNIST-data set, artificial neurons, forward and backward pass.
The convolution operation and convolutional neural networks.
Gradient descent with momentum, Adam, early stopping, regularization
CNN for segmentation
Visualization of linear classifiers, saliency maps, integrated gradients
Pretrained-Transformers, Long-Short-Term-Memory, Gated recurrent units, text-based
Lessons of this Course
1
1
Duration:
35:24
Speaker:

Introduction of the Foundations of Machine Learning in Python course - Day 01.

High-Performance Computing and Analytics Lab, University of Bonn

2
2
Duration:
34:52

Optimization for machine learning - Day 02 lecture of the Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

3
3
Duration:
57.45

Linear Algebra for Machine Learning - Day 03 lecture of the Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

4
3
Duration:
53.39

Statistics for Machine Learning -  Day 04 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

5
5
Duration:
1:42:21
Speaker:

Statistics for Machine Learning - Day 05 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

6
6
Duration:
53.39
Speaker:

Support Vector Machines -  Day 06 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

7
7
Duration:
1:15:39
Speaker:

Decision Trees and Random Forests -  Day 07 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

8
8
Duration:
59:35
Speaker:

Clustering and Density Estimation -  Day 08 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

9
9
Duration:
51:02
Speaker:

Dimensionality Reduction -  Day 09 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

10
10
Duration:
54:12

Introduction to Neural Networks -  Day 10 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

11
11
Duration:
42:07

Initialization, Optimization, and Regularization  -  Day 12 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

12
11
Duration:
42:07

Introduction to Convolutional Neural Networks  -  Day 11 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

13
13
Duration:
16:45

U-Nets for medical Image-Segmentation  -  Day 13 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

14
14
Duration:
35:08

Explaining neural networks -  Day 14 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn

15
15
Duration:
47:45

Sequence Processing -  Day 15 lecture of the  Foundations of Machine Learning in Python course.

High-Performance Computing and Analytics Lab, University of Bonn