Administrativ information
Titel | Förökning framåt |
Varaktighet | 60 |
Modul | B |
Typ av lektion | Handledning |
Fokus | Tekniskt – Djupt lärande |
Ämne | Framåtpass |
Nyckelord
Framåtpass,Loss,
Lärandemål
- Förstå processen med ett framåtpass
- Förstå hur man beräknar en framåtpass förutsägelse, liksom förlust unplugged
- Utveckla ett framåtpass med inga moduler i Python (andra än Numpy)
- Utveckla ett framåtpass med Keras
Förväntad förberedelse
Lärande händelser som ska slutföras innan
Obligatoriskt för studenter
Ingen.
Valfritt för studenter
- Multiplikation av matriser
- Komma igång med Numpy
- Kunskap om linjär och logistisk regression ([Lecture: Linjär regression]
Referenser och bakgrund för studenter
- John D Kelleher och Brain McNamee. (2018), Grundläggande maskininlärning för prediktiv dataanalys, MIT Press.
- Michael Nielsen. (2015), Neurala nätverk och djupt lärande, 1. Beslutande press, San Francisco CA USA.
- Charu C. Aggarwal. (2018), Neurala nätverk och djupt lärande, 1. Springer
- Antonio Gulli och Sujit Pal. Djupinlärning med Keras, Packt, [ISBN: 9781787128422].
Rekommenderas för lärare
Ingen.
Lektionsmaterial
- [Problem 1 (bild)]
- [Problem 2 och problem 3 (HTML)]
- Problem 2 och problem 3 (.ipynb)
Instruktioner för lärare
- Denna handledning kommer att introducera eleverna till grunderna för framåtförökning för ett artificiellt neuralt nätverk. Denna handledning kommer att bestå av ett framåtpass med penna och papper, med Python med endast Numpy-biblioteket (för matrismanipulation) och sedan använda KERAS. Detta kommer att bygga på den grundläggande förståelsen av vilka aktiveringsfunktioner som gäller för specifika problemsammanhang och hur aktiveringsfunktionerna skiljer sig åt i beräkningskomplexitet och applikationen från penna och papper, till kod från grunden med Numpy och sedan använda en högnivåmodul -> Keras.
- Studenterna kommer att presenteras med tre problem:
- Problem 1: (Exempel 1 från föreläsningen -> Bild på RHS av denna WIKI) och bad att genomföra ett framåtpass med följande parametrar (20 minuter att slutföra):
- Sigmoid aktiveringsfunktion för det dolda lagret
- Sigmoid aktiveringsfunktion för det yttre lagret
- Förlustfunktion för mikro- och småföretag
- Problem 2: (Exempel 1 från föreläsningen) kommer studenterna att bli ombedda (med vägledning beroende på tidigare kodningserfarenhet) att utveckla ett neuralt nätverk från grunden med endast Numpy-modulen, och vikter och aktiveringsfunktioner från problem 1 (som är desamma som Exempel 1 från föreläsningen (20 minuter att slutföra).
- Problem 3: (Exempel 1 från föreläsningen och med samma exempel men slumpmässiga vikter) kommer eleverna att bli ombedda (med vägledning beroende på tidigare kodningserfarenhet) att utveckla ett neuralt nätverk med Tensorflow 2.X-modulen med inbuild Keras modul, och vikter och aktiveringsfunktioner från problem 1, och sedan använda slumpmässiga vikter (som är desamma som Exempel 1 från föreläsningen: 20 minuter att slutföra).
- Problem 1: (Exempel 1 från föreläsningen -> Bild på RHS av denna WIKI) och bad att genomföra ett framåtpass med följande parametrar (20 minuter att slutföra):
- Delmålen för dessa tre problem är att få eleverna att vänja sig vid strukturen och tillämpningen av grundläggande begrepp (aktiveringsfunktioner, topologi och förlustfunktioner) för djupinlärning.
- Keras och TensorFlow 2.X används och kommer att användas för alla framtida exempel.
Konturer
Varaktighet (min) | Beskrivning |
---|---|
20 | Problem 1: Penna och pappersimplementering av ett framåtpass (exempel från föreläsningen) |
20 | Problem 2: Utveckla ett neuralt nätverk från grunden med hjälp av Numpy (exempel från föreläsningen) |
10 | Problem 3: Utveckla ett neuralt nätverk från att använda Keras (exempel från föreläsningen med inställda vikter och slumpmässiga vikter) |
10 | Sammanfattning av processen för framåtpass |
Erkännanden
Masterprogrammet Human-Centered AI har samfinansierats av Fonden för ett sammanlänkat Europa i Europeiska unionen inom ramen för Grant CEF-TC-2020–1 Digital Skills 2020 EU-IA-0068.