Administrativ information
Titel | Förökning framåt |
Varaktighet | 60 |
Modul | B |
Typ av lektion | Föreläsning |
Fokus | Tekniskt – Djupt lärande |
Ämne | Framåtpass |
Nyckelord
Framåtpass, förlust,
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
Ingen.
Obligatoriskt för studenter
Ingen.
Valfritt för studenter
- Multiplikation av matriser
- Komma igång med Numpy
- Kunskap om linjär och logistisk regression (från Period A Machine Learning: Föreläsning: Linjär regression, GLR, GAD)
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
Instruktioner för lärare
Denna föreläsning kommer att introducera eleverna till grunderna för framåtförökning för ett artificiellt neuralt nätverk. Detta kommer att introducera eleverna till topologin (vikter, synapser, aktiveringsfunktioner och förlustfunktioner). Eleverna kommer då att kunna göra ett framåtpass med penna och papper, använda Python med endast Numpy-biblioteket (för matrismanipulation) och sedan använda KERAS som en del av handledningen i samband med detta LE. Detta kommer att bygga grundläggande förståelse för vilka aktiveringsfunktioner som gäller för specifika problemsammanhang och hur aktiveringsfunktionerna skiljer sig åt i beräkningskomplexitet. I föreläsningen kommer den yttre skiktsaktiveringsfunktionen och motsvarande förlustfunktioner att undersökas för användningsfall som binomialklassificering, regression och flerklassklassificering.
- Översikt över ett neuralt nätverk
- Definition av termer/komponenter
- Vikter och aktiveringsfunktioner
- Förlustfunktioner, som en för vilken problemsammanhang
- Använda matriser för att genomföra ett framåtpass
Anmärkning:
- Användning av Sigmoid i det yttre lagret och MSE som förlustfunktion.
- Med tine begränsningar valdes en singular approach/topologi/problemsammanhang. Vanligtvis skulle man börja med regression för ett framåtpass (med MSE som förlustfunktion) och för att härleda tillbakapropagation (således har en linjär aktiveringsfunktion i utgångsskiktet, där detta minskar komplexiteten i härledningen av bakåtpropageringsfunktionen), då skulle man vanligtvis flytta till en binär klassificeringsfunktion, med sigmoid i utgångsskiktet och en binär kors-entropiförlustfunktion. Med tidsbegränsningar kommer denna uppsättning föreläsningar att använda tre olika exempel dolda aktiveringsfunktioner, men kommer att använda ett regressionsproblem sammanhang. För att lägga till komplexiteten hos en sigmoidaktiveringsfunktion i utgångsskiktet, regressionsproblemet som används i de två första föreläsningarna i denna uppsättning, baseras problemexemplet på ett normaliserat målvärde (0–1 baserat på ett procentuellt kvalitetsproblem 0–100 %), vilket innebär att sigmoid används som en aktiveringsfunktion i utgångsskiktet. Detta tillvägagångssätt gör det möjligt för eleverna att enkelt migrera mellan regression och binära klassificeringsproblem, genom att helt enkelt bara ändra förlustfunktionen om ett binärt klassificeringsproblem, eller om ett icke-normaliserat regressionsproblem används, tar studenten helt enkelt bort funktionen för yttre lageraktivering.
- Kärnkomponenter är tillämpningen av, med hjälp av ett högnivåbibliotek, i detta fall KERAS via TensorFlow 2.X-biblioteket.
- Penna och papper är valfria och används endast för att visa fram- och bakpropagationsderivationen och applikationen (med hjälp av exemplen från föreläsningsbilderna).
- Python-kod utan användning av högnivåbibliotek, används för att visa hur enkelt ett neuralt nät (med exemplen från föreläsningsbilderna). Detta möjliggör också diskussion om snabb numerisk/matrismultiplikation och introducerar varför vi använder GPU/TPU som ett valfritt element.
- Keras och TensorFlow 2.X används och kommer att användas för alla framtida exempel.
Konturer
Varaktighet (min) | Beskrivning |
---|---|
10 | Definition av neurala nätverkskomponenter |
15 | Vikter och aktiveringsfunktioner (Sigmoid, TanH och ReLu) |
15 | Förlustfunktioner (Regression, binomialklassificering och aktivering av flera klasser) |
15 | Använda matriser för ett framåtpass |
5 | Recap på framåtpasset |
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.