ID2223 Skalbar maskininlärning och djupinlärning 7,5 hp

Scalable Machine Learning and Deep Learning

  • Utbildningsnivå

    Avancerad nivå
  • Huvudområde

    Datalogi och datateknik
  • Betygsskala

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

Kurstillfällen/kursomgångar

HT19 TIVNM för programstuderande

HT18 TIVNM för programstuderande

Lärandemål

Kursen behandlar fundamenta inom distribuerade maskininlärningsalgoritmer och fundamenta inom deep learning. Vi täcker grunderna i maskininlärning och introducerar tekniker och system som låter maskininlärningsalgoritmer bli effektivt parallelliserade. Kursen kompletterar kurser inom maskininlärning och distribuerade system, med fokus på både ämnet deep learning och på gränsområdet mellan distribuerade system och maskininlärning. Kursen förbereder studenter för examensarbetet, och även för forskarstudier inom området data science och distribuerad databehandling.

Huvudmålet med denna kurs att ge studenterna en solid grund för att förstå storskaliga maskininlärningsalgoritmer, speciellt deep learning, och tillämpningsområden för dessa.

Efter avklarad kurs, kommer studenterna att

  • kunna återimplementera en klassisk maskininlärningsalgoritm som till exempel en skalbar maskininlärningsalgoritm
  • kunna designa och träna ett lagrat neuronnät
  • tillämpa ett tränat lagrat neuronnät för att göra användbara prediktioner eller klassifikationer i ett tillämpningsområde
  • kunna förklara prestandaavvägningar vid parallellisering av maskininlärningsalgoritmer liksom begränsningar i olika nätverksmiljöer
  • kunna identifiera lämpliga distribuerade maskininlärningsalgoritmer för att effektivt lösa klassificerings- och mönsterigenkänningsproblem.

Kursens huvudsakliga innehåll

Ämnen:

  • Maskininlärningsalgoritmer
  • Skalbara ramverk för att parallellisera maskininlärningsalgoritmer
  • Distribuerade maskininlärningsalgoritmer, som t.ex. distribuerad linjär regression och distribuerad logistisk regression
  • Linjär algebra, sannolikhetsteori och numeriska beräkningar
  • Djupa neuronnätverk
  • Regularisering och optimering vid träning av djupa neuronnätverk
  • Sekvensmodellering 
  • Tillämpningar av deep learning

Behörighet

Rekommenderade förkunskaper

Grundkunskaper i distribuerade system och programmeringsmodeller, programmeringsspråk (Scala, Java, Python).

Det är önskvärt att du har antingen någon erfarenhet från eller har tagit en kurs inom dessa ämnen: Maskininlärning, Linjär Algebra och Probability Theory.

Litteratur

Material från kursen hämtas från aktuella forskningspublikationer samt även från denna kursbok:

Deep Learning, Yoshua Bengio, Ian Goodfellow and Aaron Courville, MIT Press.

Examination

  • LAB1 - Programmeringsuppgifter, 3,0, betygsskala: P, F
  • TEN1 - Tentamen, 4,5, betygsskala: A, B, C, D, E, FX, F

Skriftlig tentamen. Laborativa uppgifter.

Ges av

EECS/Datavetenskap

Examinator

Amir Payberah <payberah@kth.se>

Versionsinformation

Kursplan gäller från och med VT2019.
Examinationsinformation gäller från och med VT2019.