B-MBIOBML4.5 ECTSQ2EnglishMaster
Basic Machine Learning for Bioinformatics
FaculteitFaculty of Science
NiveauMaster
Studiejaar2026-2027
Beschrijving
Course goals
-understands and can explain the difference between unsupervised and supervised learning.
-can write their own cost function and gradient descent function for supervised learning problems.
-can write their own implementation of linear regression, logistic regression, and basic (dense) neural networks.
-can use the basics of linear algebra to vectorise these implementations for speed and readability.
- Understands the concept of overtraining and the bias / variance tradeoff and can use cross-validation, regularisation and learning curves to assure generalisation potential of learned predictors.
-can pick good hyperparameters for learning algorithms.
-can write their own implementation of k-nearest neighbour and hierarchical clustering, and perform dimensionality reduction using PCA.
-knows the different metrics for classifier performance, how to calculate them, and when to use them (ROC-AUC, accuracy, precision and recall, etc.)
-knows the basics of working with scikit-learn, a modern, comprehensive framework for machine learning in Python.
-knows the basics of visualisation for machine learning (ROC curves, learning curves, etc.).
-has applied the above knowledge to a group project based on real biological data.
Content
Enter Machine Learning. A term that calls forth visions of AI overlords for some, but is so much more pedestrian in most of its applications (yet I, for one, welcome our AI overlords, if they so happen to read this). In this course, we start with the basics: what is the difference between supervised and unsupervised learning (and what we want the computer to do in each case), how do we formulate something that the computer can optimise on its own given training data, and how do we then iteratively optimise this? With these basics of cost functions and gradient descent (or more elaborate optimisation methods) under our belt, we then look at several well-known algorithms and implement them ourselves using only Python, numpy and pandas to gain in-depth understanding in the first week, before moving on to the modern scikit-learn library which does all the heavy lifting for you in the second week. We top it off with a group project on a biological dataset where your team tries to build the best classifier for that dataset. Along the way we look at clustering and dimensionality reduction, and gain cursory knowledge of linear algebra, which is the language that machine learning algorithms are formulated in and which you will use to do so as well.
When you are done with this course, you should be well-equipped to independently learn about more complex classifiers (Random Forests, convolutional neural networks, etc.) or unsupervised methods, and to apply ML to real-world biological problems. This course also lays the foundations for the more theoretical and higher-level understanding you’ll gain in Analytics and Algorithms for Omics Data (BMB508219).
Reviews0 reviews
Nog geen reviews voor dit vak. Wees de eerste!
Heb jij dit vak gevolgd?
Deel je ervaring met toekomstige studenten. Inloggen met je Universiteit Utrecht mailadres duurt één minuut.
Schrijf een review