732G12 Data Mining
Kursinformation
HT 2023
Senast uppdaterad 2023-10-09
Kurslitteratur 2023:
An Introduction to Statistical Learning with Applications in R (ISL) av Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani 2st ed. 2021
Finns gratis online här: länk
Introduction to Data Mining, Global Edition (IDM) av Pang-Ning Tan, Michael Steinbach, Anuj Karpatne och Vipin Kumar Second edition, ISBN: 9780273769224
Denna bok finns inte gratis.
Allmänt
Undervisningen kommer att ske på campus. Föreläsningarna kommer att hållas i sal, och datorlaborationer kommer att ske i datorsal. Se timeeidt för schema
Denna kurs är en introduktion till metoder för att analysera och hitta intressant information från komplexa och/eller stora datamängder. Kursen behandlar olika algoritmer och grundbegrepp inom klassificering, icke-linjär regression samt klustring.
Kursplanen finns här.
Johan Alenlöv är lärare och examinator på kursen.
Innehåll
Kursen ger en introduktion till:
- Introduktion maskininlärning/Data Mining, modelval, variabelselektion, regularisering
- Klassificering och regession: Trädmodeller, k närmaste grannar, neurala nätverk
- Ensemblemetoder
- Klusteranalys
Undervisningsmaterial och upplägg
- Föreläsning, F . Föreläsningen introducerar nya koncept och lägger grunden för datorlaborationen. Till varje föreläsning finns läsanvisningar till kursboken och ev. extramaterial.
- Datorlaboration, D.
Under kursen kommer även ett obligatoriskt projekt att genomföras.
R och R-Studio används som programvara.
Information om SU-salar, remote access till dessa mm finns här: länk
Kodmanual finns här. Notera att denna inte är uppdaterad för årets omgång.
Dataset till vissa uppgifter finns här.
Spellistor med videor:
Här finns några spellistor med videor. Notera att dessa täcker fler ämnen än vad kursen gör. Under varje kursvecka finns det mer detaljerade hänvisningar till olika videor.
Kursvecka 1: Introduktion till maskininlärning och data mining
Innehåll: Introduktion till maskininlärning och data mining. Modellering, modelval, generaliseringsfel, variabelselektion, Ridge regression, LASSO regression.
F1 Slides: pdf (uppdaterad 2023)
F2 Slides: pdf (uppdaterad 2023)
Läsning i ISL:
- kapitel 1
- Kapitel 2.1 2.2, 4.1, 4.6, 5.1, 6.1, 6.2, 6.4
Repetition
- 4.3 Logistic Regression
Läsning i IDM:
- kapitel 1
- 2.1-2.3 Läs översiktligt, många koncept har ni stött på i tidigare kurser
Se dessa videor:
Frivillig fördjupning: Lecture notes on ridge regression: här finns fördjupning och många detaljer, bla hur skattningarna går till för Ridge och LASSO.
Kursvecka 2: Trädmodeller, Naive Bayes, k-nearest neighbors, Ensemblemetoder
F3 Trädmodeller, Slides: pdf (uppdaterad 2023)
Läsning i ISL:
- 8.1
Läsning i (IDM)
- 2.4 Tanken är att ni kan komma tillbaka hit vid behov under kursens gång
- 3.1-3.8 Teori om beslutsträd, men även om modelval, korsvalidering
mm
- Notera att kaptiel 3 finns som sample chapter
R-paketet: rpart
Se dessa videor:
- Decision Trees
- Hunts Algorithm
- Decision Trees (Solved Problem) (räkneexempel)
- Generalization Error
- Gradient Descent, Step-by-Step
F4 Naive Bayes, k-nearest neighbors, Ensemblemetoder, Slides: pdf (uppdaterad 2023)
Läsning i ISL:
- 2.2.3 The Classification Setting (The Bayes Classifier, K-Nearest Neighbors)
- 5.2 The Bootstrap
- 8.2 Bagging, Random Forests, Boosting
Läsning i IDM
- 6.1
- 6.3
- 6.4
- 6.10
Se dessa videor:
- K-Nearest Neighbor (KNN)
- Naive Bayes Classifier
- Naive Bayes Classification (Solved Problem)
- Ensemble Methods
- Bagging (Bootstrap Aggregation)
- Random Forest
- Bootstrap Classifier Evaluation
- Hyperparameter
Kursvecka 3: Neurala Nätverk 1
Teori
Notera att det inte är någon föreläsning i början av denna kursvecka. Ni ska göra följande:
Introduktion till gradient descent
Nedan följer några videor som ger en högnivå introduktion till neurala nätverk: (ca 60 min)
- But what is a Neural Network?
- Gradient descent, how neural networks learn
- What is backpropagation really doing?
- Backpropagation calculus
Läsning i ISL:
- 10 intro, 10.1-10.2
- 10.7 intro, 10.7.1, 10.7.2, 10.7.4
Läsning i IDM
- 6.7 till 6.8.2
På tensorflow playground kan ni testa interaktivt hur olika modeller fungerar, testa att ändra olika inställningar och tryck sen på "run".
På onsdag den 8/9 kommer jag hålla i en föreläsning, och då kommer jag utgå från att ni har gått igenom ovanstående material.
Slides: pdf (uppdaterad 2023)
Labb
Installera keras: Vi kommer att använda keras i Rstudio för att skatta olika neurala nätverk. Följ instruktioner i kodmanualen. Det kan lite tid att få allt att fungera, så börja installera så snart som möjligt.
D3: pdf (uppdaterad 2022)
CHEAT SHEET for Keras Utvärdering vid klassificering kan göras med funktionen class_evaluation_keras().
Kursvecka 4: Neurala Nätverk 2
Denna vecka kommer vi fortsätta med neurala nätverk, och kolla närmare på:
- Optimieringen
- Regularisering
- Faltade nätverk (Convolutional neural network)
Se dessa videor om optimering:
Se dessa videor om regularisering:
- Overfitting in a Neural Network explained
- Regularization in a Neural Network explained
- Deep Neural Network Regularization - Part 1
- Why Regularization Reduces Overfitting
- Dropout Regularization
- Other Regularization Methods
Läsning i ISL
- 10.3
- 10.7.2, 10.7.4
Läsning i Data Mining and Machine Learning: Fundamental Concepts and Algorithms, länk till kapitel 26
26.4 Regularization
26.3 Convolutional Neural Networks:
- Ni behöver inte ha koll på alla matematiska detaljer här
- Fokusera på koncepten: Kolla på exemplen och figurerna
Faltade nätverk: läs här
Slides: pdf (uppdaterad 2023)
D4: pdf (uppdaterad 2022)
CHEAT SHEET for Keras Utvärdering vid klassificering kan göras med funktionen class_evaluation_keras().
Kursvecka 5: Klusteranalys
Läsning i ISL:
- 12.1 The Challenge of Unsupervised Learning
- 12.4 Clustering Methods
Läsning i IDM
- 5.1
- 5.2
- 5.3
- 2.2.1-2.4.5, 2.4.9-2.4.10
- 5.4
- 5.5
- 8.1
Frivillig fördjupning:
- 12.2 Principal Components Analysis (ISL)
- 12.3 Missing Values and Matrix Completion (ISL)
Slides: pdf (uppdaterad 2023)
Kursvecka 7 och framåt: Projekt
Nu ska ni arbeta med projektet och förbereda er inför datortentan.
Projekt
Generella instruktioner finns här. Uppdaterad 2023.
Utgå från denna mall för er rapport:
Fler mallar som kan vara till hjälp:
Deadline för projektet finns här Ladda upp er pdf-fil på Samarbetsytan i kursrummet på Lisam innan dess. Seminariet är 2022-10-23. Efter opponeringen på seminariet ska ni komplettera er rapport, och den kompletterade rapporten ska lämnas in i en inlämning på Lisam.
Litteratur som ni kan ha nytta av under projektet:
- IDM: 2, 6.11, 10
- ISL: 13
Tenta
Tentan är en datortenta i SU-sal. Glöm inte att anmäla er!
Övrig information
Github
Kursmaterialet til kursen ligger på en github-sida som finns här.
Efter kursen
Mer info kommer.