- Admission : /en/education/bachelor/computer-science-and-communication-systems/admission/
- Study program : /en/education/bachelor/computer-science-and-communication-systems/study-program/
- Structure of studies : /en/education/bachelor/computer-science-and-communication-systems/structure-of-studies/
- Career perspectives : /en/education/bachelor/computer-science-and-communication-systems/career-perspectives/
- Exchange programs : /en/education/bachelor/computer-science-and-communication-systems/exchange-programs/
- People : /en/education/bachelor/computer-science-and-communication-systems/people/
- Admission : /en/education/bachelor/computer-science-and-communication-systems/admission/
- Study program : /en/education/bachelor/computer-science-and-communication-systems/study-program/
- Structure of studies : /en/education/bachelor/computer-science-and-communication-systems/structure-of-studies/
- Career perspectives : /en/education/bachelor/computer-science-and-communication-systems/career-perspectives/
- Exchange programs : /en/education/bachelor/computer-science-and-communication-systems/exchange-programs/
- People : /en/education/bachelor/computer-science-and-communication-systems/people/
Study program
Course description
Back-
Objectives
At the end of the lecture the student is able to:
- Identify use cases for machine learning techniques.
- Understand the concepts of learning from data, supervised vs. unsupervised learning, generative vs. discriminative classification.
- Understand the basic principles of machine learning algorithms, including k-nearest neighbors classifier (KNN), k-means clustering, Bayes classifier, decision trees, support vector machines (SVM), artificial neural networks (ANN), convolutional neural networks (CNN).
- Understand how to combine multiple features and classifiers to a multiple classifier system (MCS).
- Use machine learning frameworks, such as Python's Scikit-Learn, to perform classification and clustering tasks on real data.
- Apply k-fold cross-validation to optimize meta-parameters of the machine learning techniques.
-
Content
--- Introduction ---
Machine learning is a branch of artificial intelligence that studies algorithms, which are capable to ''learn automatically''. Such algorithms do not provide a ''hard-coded'' solution but instead learn from examples how to solve complex problems. Machine learning is heavily used in today's industry for tasks including classification (speech recognition, gesture recognition, image recognition), prediction (evolution of weather, stock market), verification/detection (biometric authentication), and data mining (clustering of complex data).
--- Method ---
The lecture is composed of both theoretical and practical sessions. The practical sessions consist of several individual exercises, as well as a larger group exercise. For programming, Python and its Scikit-Learn framework is used, among others.
--- Content ---
Part I - Basic Principles (20%)
- Classification
- Clustering
Part II - Machine Learning Algorithms: Theory and Application (60%)
- Bayes Classifier
- Decision Trees
- Support Vector Machines (SVM)
- Artificial Neural Networks (ANN)
- Convolutional Neural Networks (CNN)
Part III - Advanced Applications (20%)
- Advanced Machine Learning
- Multiple Classifier Systems (MCS)
Type of teaching and workload
Course specification
Evaluation methods
- Continuous assessment Written work, Practical exercises / Evaluated reports
- Exam: oral (20 min.)
Course grade calculation method
The final grade is composed of a graded group exercise (40%) and an individual written test (60%).
Intructor(s) and/or coordinator(s)
Alain Jungo, Beat Wolf