ID2222 Data Mining 7.5 credits


  • Education cycle

    Second cycle
  • Main field of study

    Computer Science and Engineering
  • Grading scale

    A, B, C, D, E, FX, F

Course offerings

Intended learning outcomes

The course studies fundamentals of data mining, data stream processing, and machine learning algorithms for analyzing very large amounts of data. We will use big data processing platforms, such as MapReduce, Spark and Apache Flink, for implementing parallel algorithms, as well as computation systems for data stream processing, such as Storm and InfoSphere.

After this course, students will be able to mine different types of data, e.g., high-dimensional data, graph data, and infinite/never-ending data (data streams); as well as to program and build data-mining applications. They are also expected to know how to solve problems in real-world applications, e.g., recommender systems, association rules, link analysis, and duplicate detection. Moreover, they will master various mathematical techniques, e.g., linear algebra, optimization, and dynamic programming.

Course main content

  • Introduction to Data Mining
  • Frequent Itemsets
  • Finding Similar Items
  • Clustering
  • Recommendation Systems
  • Mining Data Streams
  • Dimensionality Reduction
  • Large-Scale Machine Learning



The contents of the course are derived from the following two textbooks:

A. Rajaraman and J.  D. Ullman, Mining of massive datasets. Cambridge University Press, 2012 (alternative: J. Han, M. Kamber, J. Pei, Data Mining: Concepts and Techniques, 3-rd Ed., Morgan Kaufmann, 2012)


  • LAB1 - Programming Assignments, 3.0, grading scale: P, F
  • TEN1 - Examination, 4.5, grading scale: A, B, C, D, E, FX, F

Written examination. Laboratory tasks.

Offered by

EECS/Computer Science


Vladimir Vlassov <>


Course syllabus valid from: Spring 2019.
Examination information valid from: Spring 2019.