A rapid development in the area of data mining is motivated by the necessity to "translate" huge amounts of
processed and stored data into meaningful information easy to use in practice. This lecture is focused on
understanding principal concepts and techniques applicable to data mining. Basic principles of their application to
novel solutions of practical tasks will be used to solve a student project as a part of the subject. Possible
application areas comprise mainly business and Web applications, but others as well. Knowledge BSc. in CS of
mathematical principles and programming is assumed.
Last update: Hric Jan, RNDr. (28.05.2020)
Obrovské množství zpracovávaných a uchovávaných dat vede ke snaze "přeložit" tyto údaje do smysluplné
informace - dobývání znalostí. Cílem přednášky je seznámit studenty se základními pojmy a technikami
používanými v oblasti dobývání znalostí. Součástí kurzu bude i jednoduchý projekt s využitím metod pro dobývání
znalostí v praxi, především v oblasti ekonomie a WWW, ale i dalších. Předpokládá se předchozí zvládnutí
základních matematických dovedností a programování na úrovni běžného bakalářského studia informatiky.
Last update: Hric Jan, RNDr. (28.05.2020)
Aim of the course -
Understand the main principles of data mining methods and learn how to apply these methods in practice.
Last update: Mrázová Iveta, doc. RNDr., CSc. (27.05.2020)
Pochopit základní principy metod dobývání znalostí z dat a naučit se využívat tyto metody pro řešení úloh z praxe.
Last update: Mrázová Iveta, doc. RNDr., CSc. (27.05.2020)
Course completion requirements -
A) The labs
Step by step, in an accompanying Moodle course, there will be published assignments and quizzes.
Assignments:
Each assignment has a deadline till which the assignment should be submitted for grading. A draft solution of an assignment can be edited at any time, but the time of submission is the time you click the button "Submit assignment". After clicking this button, you cannot edit your submission anymore, but you can ask (per e-mail) your teacher to return the assignment to the draft state. The teacher will grade each submitted assignment with 0-10 points. During the semester, you will solve 2 assignments.
A typical solution for an assignment will consist of a Jupyter notebook containing a description of the solution and a Python code used for solving the assignment.
Warning: If N≥2 participants of the course submit solutions that are very similar or identical, all these solutions will be considered as a single solution. The solution will be graded by B points according to its quality, and all students who submit it will obtain only the integer part of the value B/N points.
Quizzes:
Beside the assignments, you will solve 5 on-line quizzes for at most 25 points altogether. Each quiz will have set up also a deadline. In contrast to assignments, it will be not possible to solve any quiz after its deadline.
For obtaining credits for the seminar, it is necessary:
To solve all assignments and to obtain at least 1 point for each solution. WARNING: late solution submission will be penalized by a 1-point decrease for each started week of the delay after the deadline.
To prepare and to present a term project in the lab in the last week of the term or on a date (during the following exam period) that will be set up in the lab within the last week of the semester. The subject of the project will be discussed in the lab in the middle of the term. Each project will be graded up to 15 points according to its quality.
The quizzes are not among the necessary conditions for obtaining credits for the lab. During seminars, it is possible to obtain additional points
for demonstrating a solution to a problem assigned during a seminar – 1 point,
for demonstrating a solution submitted as a solution for an assignment in Moodle (after its deadline) – the integer part of the half of the number of points awarded for the solution (after evaluation by the teacher).
Except for the additional points, it is possible to obtain up to 60 points. All points obtained during seminars will be accounted for up to 40% of the final score on the exam. However, when a student obtains more than 60 points within labs (counting also additional points), these points will still account for only 40% of the final exam score.
Continuous work throughout the whole term is required to obtain the credits. Therefore, there will be no additional possibilities to acquire them later.
B) The lecture
The lecture will be given once a week according to the schedule. As already mentioned above, points acquired within the labs will account for up to 40% of the final score for the exam. Further, during the first lecture, a date will be set up for an online test, which will be written during a lab. The date for the online test will published in the accompanying Moodle course.
This test will be graded with 0-15% toward the final score. The exam at the end of this term will add up to the remaining 45% of the final score. The following table gives the final grade according to the achieved score:
grade 1
grade 2
grade 3
failure
100%–86%
85%–71%
70%–56%
less than 56%
Last update: Mráz František, RNDr., CSc. (19.02.2024)
A) Cvičení
V doprovodném Moodle-kurzu budou postupně zveřejňované úkoly a kvízy.
Úkoly:
Každý úkol má stanovené datum odevzdání. Řešení lze do systému vkládat postupně a průběžně ho upravovat. Časem odevzdání je čas kliknutí na tlačítko "Odevzdat úkol". Po kliknutí na toto tlačítko řešení už nelze opravovat, ale lze zažádat e-mailem učitele o vrácení do stavu rozpracování. Každý úkol bude učitelem oznámkován přidělením 0-10 bodů. Za celý semestr budou zadány 2 úkoly.
Typickým řešením úkolu bude Jupyter notebook obsahující popis řešení a kód v Pythonu použitý na vyřešení úkolu.
Upozornění: Pokud bude zjištěno, že N≥2 posluchačů odevzdalo řešení, která se nápadně podobají nebo jsou zcela totožná, budou všechna tato řešení považována za jedno řešení. Toto řešení bude ohodnoceno B body podle jeho kvality, ale každý z jeho N řešitelů získá pouze dolní celou část z B/N bodů.
Kvízy:
Kromě úkolů, budou postupně zveřejňovány on-line kvízy, za které bude možné získat dohromady maximálně 25 bodů. Každý kvíz bude mít stanovené datum, do kterého musí být vyřešen. Řešit kvíz po tomto datu nebude možné.
Pro získání zápočtu je nutné:
Vypracovat řešení obou úkolů a za řešení každého z nich získat alespoň 1 bod. POZOR: za pozdní odevzdání úkolu se strhává 1 bod za každý započatý týden po termínu odevzdání!
Vypracovat a přednést řešení projektu na jednom z posledních cvičení nebo v termínu prezentací ve zkouškovém období (jeho datum a čas bude dohodnutý na cvičení v posledním týdnu semestru). Témata projektů budou dohodnuta přibližně v půlce semestru na cvičení. Prezentace a odevzdaná řešení budou taktéž ohodnoceny dohromady 0-15 body.
Mezi výše uvedenými podmínkami nejsou uvedeny on-line kvízy. Na cvičeních lze získat dodatečné body
za předvedení řešení úkolu zadaného na cvičení – 1 bod,
za předvedení řešení úkolu zadaného a odevzdaného v Moodlu (po termínu odevzdání) – dolní celá část poloviny bodů, které budou přiděleny za odevzdané řešení.
Bez dodatečných bodů tak lze za celý semestr získat až 60 bodů. Body získané za celý semestr budou zkoušejícím započítány do celkové známky za předmět tak, aby tvořily 40% výsledného bodového hodnocení, ze kterého bude odvozena známka při zkoušce. I když student získá z cvičení více než 60 bodů (po započítání dodatečných bodů), tyto budou započítány pouze jako 40% do hodnocení zkoušky.
Získání zápočtu vyžaduje průběžnou práci přes celý semestr, a proto žádné náhradní termíny pro získání zápočtu nebudou vypsány.
B) Přednáška
Přednáška se koná jednou týdně podle rozvrhu. Jak už bylo zmíněno výše, body získané z cvičení budou započítány s vahou 40% do celkového hodnocení posluchače. Dále bude na přednášce dohodnuto datum konání on-line testu, který proběhne v rámci cvičení. Datum konání testu bude zveřejněno v doprovodném Moodle kurzu. Tento test přispěje 15% k celkovému hodnocení. Samotná zkouška na konci semestru se započítává 45% do výsledného hodnocení. Posluchač získá známku na základě celkového hodnocení podle následující tabulky
známka 1
známka 2
známka 3
nevyhověl
100%–86%
85%–71%
70%–56%
méně než 56%
Last update: Mráz František, RNDr., CSc. (19.02.2024)
Literature -
Aggarwal C. C.: Data Mining: The Textbook, Springer, 2015
Berka P.: Dobývání znalostí z databází, Academia, 2003
Liu B.: Web Data Mining, Springer, 2007
Murphy K. P.: Machine Learning: A Probabilistic Perspective, The MIT Press, 2012
Last update: Mrázová Iveta, doc. RNDr., CSc. (27.05.2020)
Aggarwal C. C.: Data Mining: The Textbook, Springer, 2015
Berka P.: Dobývání znalostí z databází, Academia, 2003
Liu B.: Web Data Mining, Springer, 2007
Murphy K. P.: Machine Learning: A Probabilistic Perspective, The MIT Press, 2012
Last update: Mrázová Iveta, doc. RNDr., CSc. (27.05.2020)
Requirements to the exam -
The exam consists of a written and oral part. The written part precedes the oral part. Failing the written part impacts failing the whole exam, i.e. the exam will be classified by the grade 4 (failed) and the exam will not continue with the oral part. When failing the oral part the next (reparative) attempt will consist again of both the written and oral parts. The final grade of the exam is set based on points awarded for the written and oral parts of the exam as well as on the points obtained for student’s work throughout the semester - see Course completion requirements.
The written part of the exam consists of three questions related to the syllabus of the lecture and/or material covered during the lab classes.
The requirements for the exam correspond to the syllabus of the lecture within the extent presented in the classes. In order to take part in the exam, it is necessary to obtain Final course credit.
Last update: Mrázová Iveta, doc. RNDr., CSc. (27.05.2020)
Zkouška se skládá z písemné a ústní části. Písemná část předchází části ústní, její nesplnění znamená, že celá zkouška je hodnocena známkou nevyhověl(a) a ústní částí se již nepokračuje. Nesložení ústní části znamená, že při příštím termínu je nutno opakovat obě části zkoušky, písemnou i ústní. Známka ze zkoušky se stanoví na základě bodového hodnocení písemné i ústní části zkoušky a bodového hodnocení získaného za práci během semestru (viz podmínky zakončení předmětu).
Písemná část zkoušky bude sestávat ze tří otázek k tématům, která korespondují se sylabem přednášky a/nebo látce procvičované na cvičení.
Požadavky ke zkoušce odpovídají sylabu předmětu v rozsahu, který byl prezentován na přednášce, resp. cvičení. Nutnou podmínkou pro účast na zkoušce je získání zápočtu.
Last update: Mrázová Iveta, doc. RNDr., CSc. (27.05.2020)
Syllabus -
Introduction to the area of data mining
Motivation for data mining and its importance for practice, an overview of frequent data mining tasks, main data mining methodologies.
Main principles of machine learning – supervised training, self-organization, semi-supervised learning, training set, test set and validation set, generalization and overfitting, Occam´s razor.
Fundamental paradigms of the data mining process
Data gathering, preparation and preprocessing – sampling, variability and confidence, discretization of numeric attributes and handling nonnumerical variables, replacement of missing and empty values, series variables.
Transformation, reduction and cleaning of the data – relationships among the attributes (similarity measures, hypothesis testing, correlation, regression, discriminant and cluster analysis), dimensionality reduction.
Validation of the obtained results – cross-validation, overall accuracy, confusion matrix, learning curve, lift curve, ROC curve, combination of models (bagging, boosting).
Techniques for association rule mining
Market basket analysis – frequent itemsets, association rules, their formulation and main characteristics.
Generation of frequent item combinations – algorithm apriori, "frequent-pattern-growth"-techniques (FP-Growth and TD-FP-Growth), combinational data analysis.
Constraint-based search for interesting rules (specification of time, items, etc.).
Methods for cluster analysis
The k-means algorithm, the choice of a suitable metric, evaluation of the obtained results (cluster validity), representation and visualization of the found clusters.
Clustering based on the fuzzy set approach (FCM-clustering), neural approach and hierarchical clustering.
Decision trees and their induction – algorithms ID3, C4.5, CART and CHAID.
Probabilistic classifiers – Bayessian models and techniques for their training and inference.
Nature-inspired models – artificial neural networks of the perceptron type, SVM-machines, ELM-networks, genetic algorithms.
Last update: Mrázová Iveta, doc. RNDr., CSc. (27.05.2020)
Úvod do problematiky dobývání znalostí
Motivace a význam dobývání znalostí v praxi, přehled základních úloh z oblasti dobývání znalostí. Metodiky pro řešení úloh z oblasti dobývání znalostí.
Základní principy strojového učení – učení s učitelem, samoorganizace, částečně řízené učení (semi-supervised learning), trénovací, testovací a validační množina, generalizace a přeučení, Occamova břitva.
Základní paradigmata procesu dobývání znalostí
Pořizování, příprava a předzpracování dat – vzorkování, variabilita a věrohodnost, diskretizace numerických atributů a zpracování nenumerických proměnných, náhrada chybějících a prázdných hodnot, řadové proměnné.
Transformace, redukce a čištění dat – vztahy mezi veličinami (odhad vzájemné podobnosti vzorů, testování hypotéz, korelační, regresní, diskriminační a shluková analýza), redukce dimenzionality.