Sztuczne Sieci Neuronowe

W semestrze letnim 2020/2021 wykład odbywa się zdalnie za pośrednictwm platformy Moodle w każdy wtorek g. 12-14.
Adres kursu w Moodle: https://moodle.umk.pl/WFAIIS/course/view.php?id=41

Zaliczenie odbędzie się na podstawie egzaminu oraz dwóch projektów zaliczeniowych.
Wynik egzaminu to 50% oceny końcowej, każdy z projektów to 25% do oceny.
Projekt składa się z aplikacji oraz raportu zawierającego opis metody i implementacji,
opis działania i przykładowe wyniki działania programu oraz ich interpretację. Pierwszy projekt to samodzielna implementacja od podstaw wybranej sieci neuronowej, np. w postaci demonstracji działania wybranego algorytmu z wykładu.
Drugi projekt polega na zastosowaniu oprogramowania lub frameworku do głębokiego uczenia (np. TendorFlw, Keras) do bardziej ambitnych zadań.

Sztuczne sieci neuronowe - slajdy ze wszystkich wykładów w jednym pliku (plik aktualizowany w mairę postępu wykładu)

    • CI, AI, ML, NN, DL - definicje, uporządkowanie pojęć
    • rys historyczny;
    • rodzaje uczenia: uczenie nadzorowane, nienadzorowane i uczenie z krytykiem
    • ogólnie o procesie uczenia sieci: architektura + funkcja kosztu + alg. uczenia + ocena jakości sieci
    • ogólne własności modeli neuronowych
    • Biologiczny model neuronu i inspiracje biologiczne
    • Model neuronu McCulloch-Pitts'a
    • Rodzaje sieci: jednokierunkowe, rekurencyjne, dynamiczne, konwolucyjne, …
    • Generalizacja, ewaluacja treningu, przeuczenie i niedouczenie modelu
    • Zbiór walidacyjny i metoda wczesnego zatrzymania
    • Dobór liczby neuronów sieci
    • Regularyzacja L2, L1
    • Upraszczanie sieci (pruning): metody wrażliwościowe redukcji, Optimal Brain Damage
    • Sieci rozrastające się: korelacja kaskadowa
    • Regularyzacja poprzez modyfikację danych treningowych
    • Dodatkowe materiały:
    • Kiedy model jest głęboki?
    • Głębokie vs. „płytkie” modele, dlaczego głębokość ma znaczenie?
    • Modele hierarchiczne i uczenie się reprezentacji wiedzy
    • Przykładowe zastosowania: MNIST, CIFAR, ASR, …
    • Modele end-to-end
    • Problemy uczenia głębokich sieci: niestabilny gradient, przeuczenie, koszt pamięci (ilość parametrów uczenia), koszt czasu treningu (duże dane)
    • Głębokie sieci jednokierunkowe (DNN)
    • Sieci z jednostkami ReLU, modyfikacje ReLU (PReLU, ELU, ReLU6), Maxout - przykłady zastosowań
    • Algorytm uczenia SGD z momentem Nesterova, AdaGrad, RMSProp, Adam, AdaDelta
    • Do poczytania:

„Klasyczne” sieci neuronowe

Deep Learning