SU1/USU

Machine Learning I : FNSPE-CTU in Prague

COURSE DESCRIPTION

An introductory course to the theory and practice of machine learning, recognition, and artificial intelligence

SU1/USU is an introductory course on Machine learning. The students learn traditional techniques of feature-based classification (K-NN, SVM, and Bayessian classifiers), iterative and hierarchical clustering (K-means, agglomerative and divisive), and feature selection/extraction (PCA, forward and backward selection, floating search, branch and bound). The course consists of plenary lectures and computer exercises in Python. This course should be followed by DIZO, SU2, and possibly SFTO.

VICE CHANCELLOR

The first Lab is held in person at the same location as the lecture!

We will vote on the distance learning format.

COURSE SCHEDULE [2025/2026]

The lectures are held in the building of UTIA CAS, Pod vodárenskou věží 4, Prague 8. Transportation: metro C, stop Ládví. Meet students in the lobby 10 minutes before the start of the class.

24.09. - 09:30 lecture IN-PERSON

01.10. - 09:30 lecture IN-PERSON

08.10. - 09:30 lecture IN-PERSON

15.10. - 09:30 labs ON-LINE

22.10. - 09:30 lecture IN-PERSON

29.10. - CANCELED

05.11. - 09:30 lecture IN-PERSON

12.11. - 09:30 lecture IN-PERSON

19.11. - 09:30 labs ON-LINE

26.11. - 09:30 lecture IN-PERSON

03.12. - 09:30 labs ON-LINE

10.12. - 09:30 labs ON-LINE

17.12. - 09:30 labs ON-LINE

07.01. - 09:30 labs for undefended projects ON-LINE

The exercises take place online on Zoom.

Lecture time: Wednesday, 09:30 - 12:00.

All students, who signed up for the course in KOS, will receive an email with time confirmation and other instructions.

COURSE OUTLINE

  • Introduction to artificial intelligence, basic concepts

  • Decision-making and recognition as an optimization problem

  • Theory of feature recognition, "handcrafted" and "learned" features

  • Intuitive classifiers with learning - NN classifier, k-NN classifier, linear classifier

  • Support Vector Machines (SVM) classifiers, simple neural networks

  • Bayesian approach to recognition

  • Classification without learning - cluster analysis in the posterior of features, iterative and hierarchical methods

  • Dimensionality reduction of the feature space, PCA, discriminant analysis

COURSE HANDOUTS

The files contain most of the slides used. This is not the complete lecture content; the knowledge recorded in the files is insufficient to pass the exam!

COMPULSORY LITERATURE

RECOMMENDED LITERATURE

[1] Duda R.O. et al., Pattern Classification, (2nd ed.), John Wiley, New York, 2001

  • An excellent textbook that covers most of the lectures in depth. Free download on several servers. Some parts of the book are obsolete.

[2] Feature selection [CZ].

  • Supplementary text.

MATERIALS FOR LABS

Will be published during the semester.

Lab 1 - SU101 - 15. 10. 2025 - 09:30 a.m.

Introduction to Colab, GitHub, Python, Machine learning, Linear Regression, K-NN

Lab 2 - SU102 - 19. 11. 2025 - 09:30 a.m.

SVM, Naive Bayes, K-Means Clustering

Lab 3 - SU103 - 03. 12. 2025 - 09:30 a.m.

SVM, Naive Bayes, K-Means Clustering

Lab 4 - SU104 - 10. 12. 2025 - 09:30 a.m.

SVD, PCA, LDA

Lab 5 - SU105 - 17. 12. 2025 - 09:30 a.m.

RANSAC, AdaBoost

Lab 0 - SU100 - 07. 01. 2026 - 09:30 a.m.

Final project prezentation

LABS

We are going to take a step into the world of Machine Learning using Python. In order to do that, you should know the basics of Python. Please review the following section before attending the labs. Necessary information for completing all labs will be provided here. If you have any questions, please contact novozamsky@utia.cas.cz

The exercises will be in Czech, but all materials and texts will be in English.

REQUIREMENTS

Zoom account

GitHub account

Gmail account for Colab is recommended

Browser

PYTHON CRASH COURSE

You should know:

LABS START HERE!

At the beginning of every lab session, join Zoom Meeting, where you receive a link for a GitHub classroom assignment. It contains all codes for online/offline studying.

  1. Zoom link: https://cesnet.zoom.us/j/96331545797
  2. Get a link from your teacher, e.g. https://classroom.github.com/a/YspbK****
  3. Sign in to GitHub
  4. If necessary, click on the "Authorize GitHub Classroom" button
  5. Find your name in the list (only for the first assignment)
  6. Click on "Accept the assignment"
  7. Go to colab.research.google.com
  8. Click on "Authorize Google Colab"
  9. Click on "GitHub" (or File > Open Notebook > GitHub)
  10. Type your GitHub user name (check "Include private repos")
  11. Find the desired repository and the notebook file
  12. Loading (In case of "Error", press "Retry")
  13. If necessary, click on the "Authorize with GitHub" button
  14. Edit the notebook
  15. Save in GitHub (File > Save a copy in GitHub)

Search