Kursplan för Djup maskininlärning

Kursplanen innehåller ändringar
Se ändringar

Kursplan fastställd 2019-02-14 av programansvarig (eller motsvarande).

Kursöversikt

  • Engelskt namnDeep machine learning
  • KurskodSSY340
  • Omfattning7,5 Högskolepoäng
  • ÄgareMPSYS
  • UtbildningsnivåAvancerad nivå
  • HuvudområdeAutomation och mekatronik, Datateknik, Elektroteknik, Informationsteknik, Medicinteknik
  • InstitutionELEKTROTEKNIK
  • BetygsskalaTH - Mycket väl godkänd (5), Väl godkänd (4), Godkänd (3), Underkänd

Kurstillfälle 1

  • Undervisningsspråk Engelska
  • Anmälningskod 35124
  • Max antal deltagare170
  • Blockschema
  • Sökbar för utbytesstudenterNej

Poängfördelning

0117 Projekt 3 hp
Betygsskala: TH
3 hp
    0217 Inlämningsuppgift 4,5 hp
    Betygsskala: TH
    4,5 hp

      I program

      Examinator

      Gå till kurshemsidan (Öppnas i ny flik)

      Behörighet

      Grundläggande behörighet för avancerad nivå
      Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

      Särskild behörighet

      Engelska 6
      Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

      Kursspecifika förkunskaper

      För att gå kursen krävs goda kunskaper inom sannolikhetslära, linjär algebra och programmering. Det är även önskvärt att ha grundläggande färdigheter inom statistik och lärande, motsvarande exempelvis ESS101 - Modellering och simulering, SSY230 - Systemidentifiering eller TDA231 - Algoritmer för maskininlärning och slutledning men det är inte ett strikt krav.

      Syfte

      Syftet med kursen är att ge en detaljerad introduktion till djup maskininlärning. De senaste åren har djupa neuronnät dramatiskt förbättrat prestandan inom en rad olika områden inklusive talförståelse, datorseende och maskinöversättning. Vi fokuserar främst på de grundläggande principerna för hur djupa nätverk är uppbyggda och hur de tränas, men vi går även igenom en rad tekniker som är centrala i olika tillämpningar. Vår huvudsakliga målsättning är att ge en god förståelse för varför och när djup maskininlärning är användbart, kombinerat med förmågan att tillämpa dem i olika praktiska sammanhang.

      Lärandemål (efter fullgjord kurs ska studenten kunna)

      Efter avslutad kurs ska studenterna kunna

      • förklara de fundamentala principerna inom övervakat (och oövervakat) lärande, inklusive grundläggande tekniker som korsvalidering för att undvika överträning
      • beskriva de kostnadsfunktioner som typiskt optimeras inom övervakat lärande (i första hand korsentropin) och de vanligaste optimeringsmetoderna (bakåtpropagering av gradienter, mm). 
      • förklara hur de traditionella framåtriktade nätverken är uppbyggda och varför de kan approximera ¿nästan¿ alla funktioner
      • förstå svårigheterna med försvinnande gradienter och moderna verktyg för att motverka det problemet (som exempelvis ¿batch normalisation¿ och residuala nätverk)
      • sammanfatta de huvudsakliga komponenterna i faltande nueronnät och deras huvudsakliga fördelar
      • beskriva vanliga typer av återkommande neuronnät (recurrent neural networks) och var de typiskt används till
      • ge en översikt av ett antal av de många moderna sorters djupa nätverk som utvecklats de senaste åren
      • argumentera för fördelarna med generativa modeller, ¿transfer learning¿ och utökning av (augmenting) dataseten, då vi har en begränsad mängd annoterade dataexempel
      • förklara vad Markovbeslutsproblem och ¿reinforcement learning¿ (RL) är
      • använda djupa nätverk för att lösa RL-problem, exempelvis med hjälp av deep q-learning
      • träna och applicera faltande nätverk (CNN) för bilder, samt återkommande nätverk (RNN) för tillämpningar med tidsserier
      • utnyttja ett lämpligt mjukvarubibliotek designat för djupa neuronnät (som exempelvis TensorFlow eller Torch) för att lösa problem inom ett antal olika praktiska tillämpningar

      Innehåll

      • övervakat lärande genom att minimera korsentropin och med hjälp av korsvalidering
      • stokastisk gradientsökningar, bakåtpropagering samt ett antal moderna metoder för snabbare optimering
      • programmeringsspråk för att implementera djupa neuronnät
      • framåtriktade neuronnät och faltande nätverk
      • återkommande (recurrent) neuronnät, och framför allt nätverk av typen "long short term memory"
      • "transfer learning" och data-augmentering
      • "reinforcement learning" (RL), Markovbeslutsproblem, q-lärande och djupt q-lärande
      • tillämpningar av exempelvis faltande nätverk på bilder och RL på beslutsproblem

      Organisation

      Kursen innehåller webbföreläsningar (som bör ses innan lektionen), övningstillfällen (där vi går igenom material från motsvarande föreläsning), hemuppgifter, projekt och redovisningstillfällen (där vi i första hand går igenom lösningar till hemuppgifter).

      Litteratur

      Vi kommer huvudsakligen att använda boken Ian Goodfellow, Yoshua Bengio och Aaron Courville, Deep Learning, MIT Press, 2016, som finns tillgänglig på webben: http://www.deeplearningbook.org.

      Examination inklusive obligatoriska moment

      Det finns ingen skriftlig examen i den här kursen. Studenterna kommer istället utvärderas baserat på hur väl de presterat i de olika aktiviteter som ingår i kursen. Mer specifikt ges betyg baserat på resultaten från hemuppgifter och projekt, samt på hur stor andel av aktiviteterna som studenten deltagit i.

      Kursplanen innehåller ändringar

      • Ändring gjord på kurstillfälle:
        • 2020-06-25: Max antal deltagare Max antal deltagare ändrat från 140 till 170 av PA
          [Kurstillfälle 1]