Machine learning is a key to analyze data in different science and engineering disciplines. This course will provide an introduction to the fundamental methods at the core of machine learning, including -but not limited to- classification, regression analysis, clustering, and dimensionality reduction. This course is designed for Bachelor students in different disciplines who employ machine learning algorithms in their fields. Students will learn about the basic concepts of machine learning and will apply the learned concepts on the practical problems using open source libraries from the Python programming ecosystem. The course will also briefly cover neural networks and will be closed by a short introduction to deep learning. Classes on theoretical aspects will be complemented by practical lab sessions. In this course we do not concentrate on a specific type of data and various datasets will be used in the practical example.
Upon completion of the course, the students will be able to understand basic principles of ML techniques and to apply them for simple problems.
Students are expected to have knowledge of basic programming skills. While this course will also provide an introduction to the basics of the Python programming language for machine learning, the students need some background in programming for the programming assignments. Moreover, familiarity with the basic probability theory as well as linear algebra is necessary. Along with introducing the concepts of machine learning, the lectures will provide a refresher on relevant concepts from calculus and linear algebra. However, familiarity with these concepts would be necessary.
Cost function and optimization
Nearest neighbor and KNN
Non-supervised learning, clustering
Dimensionality reduction and PCA
Ensemble and boosting methods
Neural Networks I
Neural Networks II
Introduction to Deep learning
ECTS: 5 (Lecture+Lab session)
Class time: Tuesdayss, 11:30 - 13:00, Fridays 13:00-14:30
Location: Big Blue Button (meeting link on STUDIP)