Göm menyn

732G12 Data Mining

Kursinformation

HT 2024

HT 2024

Kursen är under uppbyggnad för 2024. Senast uppdaterad 2024-09-16

Notera att det blivit några ändringar i schemat (2024-08-08), se timeedit för uppdaterat schema.

Kursmaterial vecka per vecka




Undervisnings och kursupplägg


Undervisningen kommer att ske på campus. Föreläsningarna kommer att hållas i sal, och datorlaborationer kommer att ske i datorsal. Josef Wilzén är lärare och examinator på kursen. R och R-Studio används som programvara.

  • 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.: Partiska och teoretiska övningar


Användbara länkar:

  • Schema: timeeidt
  • Kursplanen: här.
  • Kodmanual finns här. Notera att denna inte är uppdaterad för årets omgång.
  • Dataset till vissa uppgifter finns här.
  • Information om SU-salar, remote access till dessa mm finns här: länk
  • Kursmaterialet till kursen ligger på en github-sida som finns här.


Kurslitteratur 2024:


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.


Innehåll


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.

Kursen ger en introduktion till:

  • Introduktion maskininlärning/Data Mining, modellval, variabelselektion, regularisering
  • Klassificering och regession: Trädmodeller, splines, k-närmaste grannar, neurala nätverk
  • Ensemblemetoder
  • Klusteranalys


Examination


Kursen examineras genom:

  • Projekt: Görs i par, skriftlig och muntlig redovisning, U/G
  • Datortenta i SU-sal: Individuell, U/G/VG, glöm inte att anmäla er


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, modellval, generaliseringsfel, variabelselektion, Ridge regression, LASSO regression.

Josef är bortrest måndag och tisdag, så därför kommer det att vara två föreläsningar på onsdagen. För att ni ska kunna utnyttja kurstiden väl så ska ni läsa nedanstående innan föreläsningarna på onsdag:

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 till att läsa i litteraturen innan föreläsningarna, annars kan det bli svårt att hinna med kursmaterialet under veckan!

F1 Slides: pdf (uppdaterad)

F2 Slides: pdf (uppdaterad)

Anteckningar:

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.


D1: pdf (uppdaterad)

Information om SU-salar, remote access till dessa mm finns här: länk





Kursvecka 2: Icke-linjär regression, splines, k-nearest neighbors,


Läsning i ISL

  • 2.2.3 The Classification Setting (K-Nearest Neighbors)
  • 7.1 -7.7

Läsning i IDM

  • 2.2.1-2.4.5, 2.4.9-2.4.10 (fokus på fram till och med 2.4.3)
  • 6.3

Video:

F3 Slides: pdf (uppdaterad)

F4 Slides: pdf (uppdaterad)

D2: pdf (uppdaterad)





Kursvecka 3: Trädmodeller, Naive Bayes, Ensemblemetoder


F5 Trädmodeller, Slides: pdf (uppdaterad) kod

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 modellval, korsvalidering mm

R-paketet: rpart

Videor:


F6 Naive Bayes, Ensemblemetoder, Slides: pdf (uppdaterad)

Läsning i ISL:

  • 2.2.3 The Classification Setting (The Bayes Classifier)
  • 5.2 The Bootstrap
  • 8.2 Bagging, Random Forests, Boosting

Läsning i IDM

  • 6.1
  • 6.4
  • 6.10

Videor:


D3: pdf (uppdaterad)





Kursvecka 4: 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 innan föreläsningen:



Introduktion till gradient descent: (ca 35 min)


Nedan följer några videor som ger en högnivå introduktion till neurala nätverk: (ca 60 min)


Läsning i ISL:

  • 10 intro, 10.1-10.2
  • 10.7 intro, 10.7.1, 10.7.2, 10.7.4
  • 10.8 Interpolation and Double Descent

Läsning i IDM

  • 6.7 till 6.8.2


tensorflow playground kan ni testa interaktivt hur olika modeller fungerar, testa att ändra olika inställningar och tryck sen på "run".

Här finns ett enkelt räkneexempel på hur ett neuralt nätverk (MLP) beräknar anpassade värden: länk



På onsdagen den 11/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.


F7 Slides: pdf (uppdaterad) kod



Labb

Installera keras på egen dator: Vi kommer att använda keras i Rstudio för att skatta olika neurala nätverk. Följ instruktioner här (ISL) och här (posit). Det kan lite tid att få allt att fungera, så börja installera så snart som möjligt.

D4: pdf (uppdaterad)

CHEAT SHEET for Keras Utvärdering vid klassificering kan göras med funktionen class_evaluation_keras().





Kursvecka 5: 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)
  • Autoencoders


Se dessa videor om optimering:

Se dessa videor om regularisering:

Batch normalization:

Autoencoders:

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


F8 Slides: pdf (uppdaterad)


D5: pdf (uppdaterad)

CHEAT SHEET for Keras Utvärdering vid klassificering kan göras med funktionen class_evaluation_keras().





Kursvecka 6: 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)

F9 Slides: pdf

F10 Slides: pdf

Andra slides baserade på IDM finns här och här

D6: pdf





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:

  • rmd pdf bib Notera att det finns instruktioner i denna mall.

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


Efter kursen

Mer info kommer.