Dydaktyka / Wstęp do Deep Learning

Wstęp do Deep Learning

W przygotowaniu: kurs o podstawach deep learningu dla danych pomiarowych, obejmujący teorię, eksperymenty obliczeniowe, walidację modeli i praktykę w Pythonie.

Status

Kurs jest w przygotowaniu. Strona pełni obecnie funkcję informacyjną: pokazuje planowany zakres przedmiotu, wymagania wstępne i sposób pracy. Materiały dydaktyczne, notebooki i zadania zostaną dodane później.

O kursie

Wstęp do Deep Learning będzie kursem łączącym podstawy uczenia głębokiego z praktyczną analizą danych pomiarowych. Przedmiot ma prowadzić od najważniejszych pojęć i mechanizmów modeli głębokich do samodzielnego projektowania, trenowania, walidacji i interpretacji eksperymentów obliczeniowych.

Planowana forma zajęć obejmuje 30 godzin wykładu oraz 30 godzin laboratorium komputerowego. Kurs ma działać w trybie testuj i wnioskuj: krótkie bloki teorii będą łączone z demonstracjami, eksperymentami w kodzie i analizą wyników.

Dla kogo

Kurs jest przeznaczony dla studentów kierunku Informatyka Stosowana i Systemy Pomiarowe, studia I stopnia, 3 rok, semestr zimowy. Przedmiot jest do wyboru i prowadzony w języku polskim.

Wymagania wstępne obejmują:

  • analizę matematyczną i algebrę liniową na poziomie studiów I stopnia
  • podstawy rachunku prawdopodobieństwa i statystyki
  • podstawy przetwarzania danych pomiarowych
  • podstawy programowania w Pythonie
  • umiejętność analizy wyników i krytycznej interpretacji wykresów oraz metryk

Cele kształcenia

Celem kursu jest zrozumienie podstawowych mechanizmów deep learningu i przełożenie ich na praktykę pracy z danymi eksperymentalnymi.

Najważniejsze cele:

  • zrozumienie pojęć takich jak gradient descent, backpropagation, funkcje kosztu i regularyzacja
  • projektowanie, trenowanie i walidacja modeli ANN, CNN oraz autoenkoderów
  • dobór metryk i ocena uogólniania modeli
  • planowanie eksperymentów obliczeniowych i dokumentowanie testów
  • analiza wpływu hiperparametrów na wyniki
  • praca z typowymi problemami danych eksperymentalnych: szumem, brakami danych, niezbalansowaniem klas i zmiennością warunków pomiaru

Planowany zakres

Planowany zakres kursu obejmuje:

  • pojęcia ML i DL oraz specyfikę danych pomiarowych
  • pipeline analizy: dane, model, walidacja, wnioski
  • Gradient Descent
  • podstawy ANN: forward propagation, loss/cost, backpropagation, learning rate
  • regresję i klasyfikację
  • głębokość i szerokość modeli oraz liczbę parametrów
  • overfitting i diagnostykę train/validation/test
  • regularyzację L1/L2, batch training i minibatches
  • normalizację danych, batch normalization, funkcje aktywacji, funkcje straty i optymalizatory
  • augmentację danych i interpretację metryk
  • inicjalizację wag
  • podstawy CNN: konwolucję, pooling, interpretację cech i przygotowanie danych obrazowych
  • transfer learning, fine-tuning, domain shift i walidację na danych z innego rozkładu

Sposób zaliczenia

Zaliczenie laboratorium jest planowane jako ciągła kontrola pracy na zestawach zadań problemowych realizowanych w notebookach. Zadania będą obejmować m.in. dobór hiperparametrów, porównywanie optymalizatorów, analizę regularyzacji i ocenę metryk na danych niezbalansowanych.

Zaliczenie wykładu jest planowane jako projekt: analiza wybranego zestawu danych pomiarowych lub jego kontrolowanej symulacji, zakończona krótkim raportem. Raport powinien opisywać problem, parametry, metryki, przebieg eksperymentu i wnioski.

Literatura

Planowane źródła podstawowe:

  • Ian Goodfellow, Yoshua Bengio, Aaron Courville, Deep Learning, MIT Press
  • Aurélien Géron, Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow
  • dokumentacja PyTorch

Źródła uzupełniające:

  • Christopher M. Bishop, Pattern Recognition and Machine Learning
  • Kevin P. Murphy, Probabilistic Machine Learning
  • dokumentacja i tutoriale bibliotek używanych podczas zajęć