Skip to content


Programming for Machine Learning 7.5 credits

Programmering för maskininlärning
First cycle, D0036E
Course syllabus valid: Autumn 2022 Sp 1 - Present
The version indicates the term and period for which this course syllabus is valid. The most recent version of the course syllabus is shown first.

Education level
First cycle
Grade scale
G U 3 4 5
Computer Science and Engineering
Subject group (SCB)
Computer Technology
Main field of study
Computer Science and Engineering

Entry requirements

In order to meet the general entry requirements for first cycle studies you must have successfully completed upper secondary education and documented skills in English language and and completed courses of 60 credits, of which at least 7.5 credits programming and 22.5 credits mathematics. Mathematical knowledge must include Calculus, Linear Algebra and Logic or Statistics. Good knowledge in English, equivalent to English 6

More information about English language requirements


The selection is based on 1-165 credits.

Course Aim
After completion of the course, the student should be able to:​

  • Demonstrate knowledge in designing object-oriented programs and capacity to plan and carry out advanced tasks in the form of implementation of programs designed to solve specific machine learning problems.​
  • Demonstrate the ability to use data structures, algorithms and tools available in state-of-the-art machine learning libraries to solve problems in a modern object-oriented language. 
  • Demonstrate the ability to critically analyze and evaluate technical solutions in the form of existing programs for machine learning, as well as predict and evaluate sequences of events in these.​

  • Variables and program states, choice, iteration, recursion.​
  • Arithmetic and logic expressions, strings and text processing.​
  • Generalisation, parametrisation and function abstraction.​
  • Dynamic data structures, the file concept, error handling, and standard libraries for machine learning.
  • Introduction to object-oriented program development and development environments.​
  • Problem solving, program structure and documentation.

Each course occasion´s language and form is stated and appear on the course page on Luleå University of Technology's website.

Lectures, read and view self-study material, mandatory quizzes, laboratory work in the form of computer programming exercises.

If there is a decision on special educational support, in accordance with the Guideline Student's rights and obligations at Luleå University of Technology, an adapted or alternative form of examination can be provided.

Written examination with differentiated numerical grades, as well as oral and written presentation of programming exercises.
Passing the programming exercises part of the course requires approval of all individual exercises. 

Fredrik Sandin

Literature. Valid from Autumn 2022 Sp 1
Programming (book)
Title: Think Python: How to Think Like a Computer Scientist
Author: Allen B. Downey
Publisher: O'Reilly Media
ISBN: 9781491939369

Programming (online alternative)
Title: Think Python: How to Think Like a Computer Scientist
Author: Allen B. Downey
Publisher: Green Tea Press
Link for download:

Machine learning (book)
Title: Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition
Author: Aurélien Géron
Publisher: O'Reilly Media, Inc.
ISBN: 9781492032649

Course offered by
Department of Computer Science, Electrical and Space Engineering

CodeDescriptionGrade scaleCrStatusFrom periodTitle
0001Written examG U 3 4 54.50MandatoryA22
0002Programming exercisesU G#3.00MandatoryA22

Study guidance
Study guidance for the course is to be found in our learning platform Canvas before the course starts. Students applying for single subject courses get more information in the Welcome letter. You will find the learning platform via My LTU.

Syllabus established
by Jonny Johansson, HUL SRT 11 Feb 2022

Last revised