Administrativ information
Titel | Härledning och tillämpning av återutbredning |
Varaktighet | 60 |
Modul | B |
Typ av lektion | Handledning |
Fokus | Tekniskt – Djupt lärande |
Ämne | Härledning och genomförande av Backpropagation |
Nyckelord
Backpropagation, aktiveringsfunktioner, avviation,
Lärandemål
- Utveckla en förståelse för gradient och inlärningshastighet
- Härled backpropagation för dolda och yttre lager
- Implimenting Backpropagation urkopplad och ansluten med hjälp av olika aktiveringsfunktioner
Förväntad förberedelse
Lärande händelser som ska slutföras innan
Obligatoriskt för studenter
- Kalkylrevidering (derivat, partiella derivat, kedjeregeln)
Valfritt för studenter
Ingen.
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.
Instruktioner för lärare
- Denna handledning kommer att introducera eleverna till grunderna i backpropagation inlärningsalgoritmen för ett artificiellt neuralt nätverk. Denna handledning kommer att bestå av härledning av backpropagation algoritmen med hjälp av penna och papper, sedan tillämpningen av backpropagation algoritmen för tre olika dolda lager aktiveringsfunktioner (Sigmoid, Tan H och ReLu), med Python med endast Numpy bibliotek (för matris manipulation) och sedan använda KERAS.. Detta kommer att bygga på den grundläggande förståelsen olika aktiveringsfunktioner när ett neuralt nätverk lär sig och hur aktiveringsfunktionerna skiljer sig åt i beräkningskomplexitet och applikationen från penna och papper, till kod från början med hjälp av Numpy och sedan använda en högnivåmodul -> Keras.
- Anmärkning: Topologin är densamma som Lecture 1/Tutorial 1, men vikterna och ingångarna är olika, du kan naturligtvis använda samma vikter.
- Studenterna kommer att presenteras med fyra problem (den första är valfri eller som ytterligare material):
- Problem 1: Härledning av bakåtpropagationsalgoritmen (med hjälp av Sigmoid-funktionen för de inre och yttre aktiveringsfunktionerna och MSE som förlustfunktion), kommer eleverna att uppmanas att härleda tillbakapropagationsformeln (20 minuter att slutföra).
- Problem 2: Eleverna kommer att tillämpa tre aktiveringsfunktioner för en enda viktuppdatering (SGD backpropagation), med penna och papper i (20 minuter):
- Sigmoid (dold skikt), Sigmoid (ytterskikt) och MSE
- Tan H (dold skikt), Sigmoid (ytterskikt) och MSE
- ReLU (dold skikt), Sigmoid (ytterskikt) och MSE
- Problem 3: Eleverna kommer att bli ombedda (med vägledning beroende på tidigare kodning erfarenhet) att utveckla ett neuralt nätverk från början med endast Numpy modulen, och vikter och aktiveringsfunktioner där alternativet att välja från någon dold lager aktiveringsfunktion tillhandahålls för att uppdatera vikterna med SGD (20 minuter att slutföra).
- Problem 4: Eleverna kommer att bli ombedda (med vägledning beroende på tidigare kodningserfarenhet) att utveckla ett neuralt nätverk med Tensorflow 2.X-modulen med inbuild Keras-modulen och vikter och aktiveringsfunktioner, och sedan använda slumpmässiga vikter för att slutföra en eller flera viktuppdateringar. Vänligen inte eftersom Keras använder en något annorlunda MSE-förlust, minskar förlusten snabbare i exemplet Keras.
- Keras MSE = förlust = square(y_true – y_pred)
- Handledning MSE = förlust = (kvadrat(y_true – y_pred))*0,5
- Delmålen för dessa tre problem, är att få eleverna att förstå backpropagation algoritmen, tillämpa den så att för hypermeter tuning, eleverna kommer att kunna bättre förstå hyperparameter effekter.
Konturer
Varaktighet (min) | Beskrivning |
---|---|
20 (valfritt) | Problem 1: härledning av ryggpropagationsformeln med hjälp av Sigmoid-funktionen för de inre och yttre aktiveringsfunktionerna och MSE som förlustfunktion (Valfritt) |
20 | Problem 2: Eleverna kommer att tillämpa tre aktiveringsfunktioner för en enda viktuppdatering (SGD backpropagation), med penna och papper i (20 minuter): |
20 | Problem 3: Eleverna kommer att utveckla ett neuralt nätverk från grunden med hjälp av endast Numpy modulen, där användaren kan välja från någon av tre dolda lager aktiveringsfunktioner där koden kan förforma tillbakapropagation |
10 | Problem 4: Eleverna kommer att använda Tensorflow 2.X modulen med inbuild Keras modul, preform backpropagation med SGD. |
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.