The purpose of the course is to introduce the student to Machine Learning, so that the student can develop applications by using some of the most common Machine Learning techniques and model architectures.

The student will gain knowledge of:

• What Machine Learning is good for, and its limitations

• Several popular applications of Machine Learning

• Supervised, unsupervised and reinforcement learning

• The types of predictions that machine learning solutions can make, including regression as well as binary and multiclass classification

• A few of the most common Machine Learning model architectures, including artificial neural network

• The development process for Machine Learning applications

• Key issues after having trained a model, such as over- and underfitting

The student can:

• Develop Machine Learning applications that are based on supervised learning

• Develop a Machine Learning application using a deep learning neural network architecture, and at least one other model architecture that is not based on neural networks

• Can use basic techniques for validation and fine-tuning of trained models

• Can use basic techniques for data preparation

• Use at least one popular programming framework to develop Machine Learning applications

The student will achieve competences:

• to be able to compare different model architectures, and reason about which one will be best suited to solve a specific problem.