Upravne informacije
Naslov | Izpeljava in uporaba retropropagacije |
Trajanje | 60 |
Modul | B |
Vrsta lekcije | Tutorial |
Osredotočenost | Tehnično – poglobljeno učenje |
Tema | Izpeljava in implementacija Backpropagation |
Ključne besede
Backpropagation, aktivacijske funkcije, odstopanje,
Učni cilji
- Razvoj razumevanja gradienta in stopnje učenja
- Izpeljati nazaj propagacijo za skrite in zunanje plasti
- Implimentacija Backpropagation odklopljena in priključena z različnimi aktivacijskimi funkcijami
Pričakovana priprava
Učenje Dogodki, ki jih je treba dokončati pred
Obvezno za študente
- Revizija računa (izvedenci, delni derivati, pravilo verige)
Neobvezno za študente
Nobenega.
Reference in ozadje za študente
- John D Kelleher in Brain McNamee. (2018), Osnove strojnega učenja za napovedno podatkovno analitiko, MIT Press.
- Michael Nielsen. (2015), Neural Networks and Deep Learning, 1. Odločni tisk, San Francisco CA ZDA.
- Charu C. Aggarwal. (2018), Neural Networks and Deep Learning, 1. Springer
- Antonio Gulli, Sujit Pal. Globoko učenje s Kerasom, Packt, [ISBN: 9781787128422].
Priporočeno za učitelje
Nobenega.
Gradivo za učne ure
Navodila za učitelje
- Ta vadnica bo učencem predstavila osnove algoritma za učenje backpropagation za umetno nevronsko mrežo. Ta vadnica bo sestavljena iz izpeljave algoritma backpropagation z uporabo peresa in papirja, nato pa uporaba algoritma backpropagation za tri različne funkcije aktivacije skrite plasti (Sigmoid, Tan H in ReLu), z uporabo Pythona s samo knjižnico Numpy (za manipulacijo matrik) in nato z uporabo KERAS.. To bo temeljilo na temeljnem razumevanju različnih funkcij aktiviranja, ko se nevronska mreža nauči in kako se funkcije aktiviranja razlikujejo v računalniški kompleksnosti in aplikaciji od peresa in papirja do kode iz nič z uporabo Numpyja in nato z uporabo modula na visoki ravni -> Keras.
- Opomba: Topologija je enaka kot Predavanje 1/Tutorial 1, vendar so uteži in vhodi različni, seveda lahko uporabite enake uteži.
- Dijakom bodo predstavljeni štirje problemi (prva je izbirna ali kot dodatno gradivo):
- Težava 1: Izpeljava algoritma backpropagation (z uporabo funkcije Sigmoid za notranje in zunanje aktivacijske funkcije ter MSE kot funkcije izgube), bodo študenti pozvani, da izpeljejo formulo za povratno propagacijo (20 minut za dokončanje).
- Težava 2: Študenti bodo uporabili tri aktivacijske funkcije za eno posodobitev teže (SGD backpropagation), z uporabo peresa in papirja (20 minut):
- Sigmoid (Skrita plast), Sigmoid (Outer Layer) in MSE
- Tan H (Skrita plast), Sigmoid (Outer Layer) in MSE
- ReLU (Skrita plast), Sigmoid (Outer Layer) in MSE
- Težava 3: Študenti bodo pozvani (z navodili glede na predhodne izkušnje s kodiranjem) za razvoj nevronske mreže iz nič z uporabo modula Numpy ter uteži in aktivacijske funkcije, kjer je na voljo možnost izbire iz katere koli funkcije aktivacije skritega sloja za posodobitev uteži z uporabo SGD (20 minut za dokončanje).
- Težava 4: Študenti bodo pozvani (z navodili glede na predhodne izkušnje kodiranja) za razvoj nevronske mreže z uporabo modula Tensorflow 2.X z vgrajenim modulom Keras in utežmi in aktivacijskimi funkcijami, nato pa z uporabo naključnih uteži za dokončanje ene ali več posodobitev teže. Prosimo, ne glede na to, da Keras uporablja rahlo drugačno izgubo MSE, izguba se v primeru Keras hitreje zmanjša.
- Keras MSE = izguba = kvadrat(y_true – y_pred)
- Vadnica MSE = izguba = (kvadrat(y_true – y_pred))*0.5
- Podcilji za te tri Težave, je, da bi učenci razumeli algoritem backpropagation, ga uporabili, tako da bodo za hipermeter tuning učenci lahko bolje razumeli učinke hiperparametrov.
Obris
Trajanje (mini) | Opis |
---|---|
20 (neobvezno) | Težava 1: izpeljava formule za povratno propagacijo z uporabo funkcije Sigmoid za notranjo in zunanjo aktivacijsko funkcijo ter MSE kot funkcijo izgube (neobvezno) |
20 | Težava 2: Študenti bodo uporabili tri aktivacijske funkcije za eno posodobitev teže (SGD backpropagation), z uporabo peresa in papirja (20 minut): |
20 | Težava 3: Študenti bodo razvili nevronsko mrežo iz nič z uporabo modula Numpy, kjer lahko uporabnik izbere katero koli od treh funkcij aktivacije skrite plasti, kjer lahko koda vnaprej oblikuje nazaj propagacijo. |
10 | Težava 4: Študenti bodo uporabili modul Tensorflow 2.X z vgrajenim modulom Keras, predoblikovanjem povratne propagacije z uporabo SGD. |
10 | Ponovite postopek prednjega prehoda |
Priznanja
Program Masters umetne inteligence, ki je bil vključen v človeka, je bil sofinanciran z instrumentom za povezovanje Evrope Evropske unije v okviru nepovratnih sredstev (CEF-TC-2020–1 Digital Skills 2020-EU-IA-0068).