Predmet: Principi dubokog učenja
(22 -
EAI002) Osnovne informacije
Matične organizacione jedinice predmeta
Program predmeta
Program se primenjuje od 16.09.2020.. Cilj predmeta je da student razume principe funkcionisanja dubokih neuronskih mreža i da se osposobi za njihovu efikasnu implementaciju pri rešavanju velikog broja praktičnih problema mašinskog učenja. Studenti koji uspešno savladaju gradivo na predmetu umeju da samostalno:
- kreiraju, obuče i primene duboke neuronske mreže različitih arhitektura nad raznorodnim podacima;
- evaluiraju i analiziraju performanse modela;
- modifikuju hiperparametre tako da se dobije tačniji i robustniji model;
- jasno definišu, interpretiraju i diskutuju postojeće algoritme;
- efikasno prate nove naučne radove i razumeju nova rešenja u oblasti dubokog učenja. Teorijska nastava
Model duboke neuronske mreže: elementi (neuron i aktivacione funkcije, parametri mreže), ciljne funkcije (kvadratno rastojanje i unakrsna entropija).
Optimizacija za obuku dubokih modela: određivanje parametara mreže, algoritam propagacije unazad, algoritam gradijentnog opadanja (batch, stohastički, mini-batch), momentum, Nestorov ubrzani gradijent, Adagrad, Adadelta, RMSProp, Ada, AdaMaks, Adam, Nadam, AMSGrad.
Regularizacija za duboko učenje: L1, L2 regularizaicija, dropout i razlike između njih.
Konvolucione neuronske mreže: konvolucija i pomeranje po ulaznim podacima, dodavanje nula, agregacija informacija i rad s više kanala. Upoznavanje sa arhitektura koje se koriste u praksi (AlexNet, VGG (Visual Geometry Group), NiN (Network in Network), GoogLeNet, ResNet, DenseNet).
Modelovanje vremenskih sekvenci: rekurentne mreže i statistički pristup preko Markovljevih modela. Obuka s povratkom u vremenu i načini efikasnog preslikavanja sekvence u sekvencu (pohlepna pretraga, iscrpna pretraga, beam search).
Poređenje arhitektura savremenih rekurentnih neuronskih mreža: Gated Recurrent Units (GRU), Long Short Term Memory (LSTM) i Bidirectional Recurrent Neural Networks (BRNN).
Mehanizmi pažnje u dubokom učenju odnosno matematičkom modelovanju.
Neuronske mreže na grafu: podaci organizovani u graf, reprezentacija čvorova, klasifikacija čvorova, predikcije nad grafom ili delovima grafa, učenje novih veza i sl.
Autoenkoderi: procena mogućnosti reprezentacije modela u zavisnosti od veličine neuronske mreže, kao i mogućnosti učenja retke reprezentacije ulaznih podataka ili uklanjanja šuma.
Duboki generativni modeli: modeli za učenje raspodele višedimenzionalnih ulaznih podataka, (varijacioni i generativni autoenkoderi VAE, GAN).
Metode za interpretaciju odluka (explainable AI) kao što su: interpretabilni lokalni surogati, analiza okluzija, integrirani gradijenti i propagacije relevantnosti po slojevima mreže.
Praktični metodološki saveti s primerima primene: saveti za implementaciju modela i prednostima pojedinih arhitektura neuronskih mreža.
Za svaku nastavnu jedinicu će se utvrditi predznanje i prilagoditi nivo i obim predavanja.
Praktična nastava
Cilj računarskih vežbi je da osposobe studenata za samostalnu implementaciju naučenih metoda. Biće demonstrirani svi relevantni praktični aspekti dubokog učenja – inicijalizacija, regularizacija, normalizacija, podešavanje hiperparametara, optimizacioni postupci, evaluacija. Domaći zadaci imaju za cilj da ohrabre studente da samostalno realizuju naučene metode i tako uoče potencijalne propuste u svom znanju, dok u izradi projekta treba da se primeni sinteza stečenih znanja za rešavanje izabranog realnog problema. Projekti mogu da se realizuju i kroz saradnju s privrednim subjektima, u smislu mogućnosti izbora teme, tj. konkretnog problema koji će biti rešavan. Predavanja, računarske vežbe u odgovarajućem softveru (Python, PyTorch/TensorFlow/Keras) u cilju implementacije usvojenih teorijskih osnova, domaći zadaci kao jednostavniji problemi za samostalno rešavanje uz implementaciju, konsultacije sa predavačima, aktivno učenje kroz projekat, istraživanje i analizu novijih naučnih publikacija. Gostujuća predavanja stručnjaka iz privrede.
|