CS-328 / 4 crédits

Enseignant: Jakob Wenzel Alban

Langue: Anglais


Summary

Visual computing and machine learning are characterized by their reliance on numerical algorithms to process large amounts of information such as images, shapes, and 3D volumes. This course will familiarize students with a range of essential numerical tools to solve practical problems in this area.

Content

Keywords

Visual computing, machine learning, numerical linear algebra, numerical analysis, optimization, scientific computing

Learning Prerequisites

Required courses

MATH-101 (Analysis I) and MATH-111 (Linear Algebra).

 

Recommended courses

 

 

Important concepts to start the course

Students are expected to have good familiarity with at least one programming language (e.g. C/C++, Java, Scala, Python, R, Ruby...). The course itself will rely on Python, but this is straightforward to learn while taking the course.

During the first weeks of the semester, there will be tutorial sessions on using Python and Scientific Python.

Learning Outcomes

By the end of the course, the student must be able to:

  • Develop computer programs that use numerical linear algebra and analysis techniques to transform and visualize data.
  • Reason about ways of structuring numerical computations efficiently.
  • Analyze the numerical stability of programs built on top of floating point arithmetic.
  • Recognize numerical problems in visual computing applications and cast them into a form that can be solved or optimized.

Teaching methods

Lectures, interactive demos, theory and programming exercises 

Expected student activities

Students are expected to study the provided reading material and actively participate in class and in exercise sessions. They will be given both theoretical exercises and a set of hands-on programming assignments. 

Assessment methods

1. Continuous assessment during the semester via project assignments (35%)

2. Final exam (65%)

Resources

Bibliography

Slides and other resource will be provided in class.

The course textbook is 

Numerical Algorithms: Methods for Computer Vision, Machine Learning, and Graphics by Justin Solomon (freely available at the following link: http://people.csail.mit.edu/jsolomon/share/book/numerical_book.pdf)

An optional reference is

Scientific Computing: An Introductory Survey (2nd edition) by Michael Heath

Ressources en bibliothèque

Prerequisite for

Although it is not a strict prerequisite, this course is highly recommended for students who wish to pursue studies in the area of Visual Computing, in particular: CS-341 (Introduction to computer graphics), CS-440 (Advanced computer graphics), CS-442 (Computer vision), CS-413 (Computational Photography), CS-444 (Virtual Reality), and CS-445 (Digital 3D geometry processing) 

 

Dans les plans d'études

  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Numerical methods for visual computing and ML
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 1 Heure(s) hebdo x 14 semaines
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Numerical methods for visual computing and ML
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 1 Heure(s) hebdo x 14 semaines

Semaine de référence

 LuMaMeJeVe
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22