Uczenie maszynowe nadzorowane 2400-M1ABUMN
Uczenie maszynowe nadzorowane (supervised machine learning) to grupa metod poszukująca zależności między danymi, na podobieństwo ekonometrii. Uczenie nadzorowane jest skoncentrowane na badaniu współwystępowania wartości cech objaśnianych i objaśniających, wykorzystując m.in. struktury drzew decyzyjnych i sieci neuronowych. Kurs jest oparty na trzech blokach tematycznych: 1) modele oparte na drzewach decyzyjnych (decision trees), 2) modele oparte na sieciach neuronowych (neural networks) zwane także głębokim uczeniem (deep learning) oraz 3) dostrajanie modeli - sposoby oceny jakości modeli i ich prognoz, doboru hiperparametrów, metody wyjaśnialnej sztucznej inteligencji (XAI, Explaninable Artificial Intelligence). Wybrane elementy z bloku 3, takie jak metody oceny modeli oraz podstawowe metryki jakości będą omawiane już w kontekście przykładów z bloków 1 i 2, natomiast pełny przegląd i dodatkowe metody (jak XAI) zostaną zaprezentowane w końcowej części kursu. Modelowanie obejmuje klasyfikatory (dla zmiennych kategorycznych) oraz modele regresyjne (dla zmiennych ciągłych). W ramach zajęć omówione zostaną aspekty teoretyczne i praktyczne uczenia nadzorowanego. Kurs jest prowadzony w programie R. W ramach każdego bloku tematycznego realizowane będą cztery etapy: a) wprowadzenie do tematu i „ręczna” konstrukcja podstawowego algorytmu, b) zapoznanie się z dostępnymi pakietami i komendami w R, ich porównanie i ocena, c) praca z najnowszą literaturą tematu, d) projekt grupowy. Celem każdego bloku jest przedstawienie szczegółowych mechanizmów jak omawiane metody działają, jakiego wyniku można oczekiwać, jakie są ich wady i zalety, a także jakie są relacje między metodami.
BLOK 1: Modele oparte na drzewach decyzyjnych
Przedstawione zostaną modele zależności między zmiennymi oparte na drzewach decyzyjnych. Początkowo omówiona zostanie budowa drzew decyzyjnych: węzły (nodes), liście (leaves), głębokość drzewa (tree depth) oraz kryteria podziału przestrzeni cech (feature space). Następnie zaprezentowane zostaną metody: CART (Classification and Regression Trees, proste drzewo decyzyjne), Lasy Losowe (Random Forest, oparty na bagging), XGBoost, LightGBM (oparte na boosting) i ich zaawansowane warianty (m.in. extra trees, isolation forest). Przedstawione zostaną sposoby modelowania zależności cech jakościowych i ilościowych. Pokazane zostaną wersje podstawowe jak i zaawansowane tych algorytmów, metody diagnostyki jakości wyniku i metody wizualizacji wyniku.
BLOK 2: Modele oparte na sieciach neuronowych
Przedstawione zostaną modele zależności między zmiennymi oparte na sieciach neuronowych. Początkowo omówione zostaną podstawowe elementy budowy sieci, takie jak sztuczne neurony, warstwy (wejściowa, ukryta, wyjściowa), wagi, funkcje aktywacyjne oraz mechanizm uczenia z wykorzystaniem propagacji wstecznej (backpropagation). Następnie zaprezentowane zostaną klasyczne sieci neuronowe (Multilayer Perceptron, sztuczna sieć neuronowa ANN), głębokie sieci neuronowe (deep neural networks), konwolucyjne sieci neuronowe (convolutional neural networks, CNN), czy sieci rekurencyjne (Long Short-Term Memory, LSTM). Modelowanie koncentruje się na wykorzystaniu algorytmów dedykowanych do zbiorów danych, w mniejszym stopniu do obrazów. Pokazane zostaną wersje podstawowe jak i zaawansowane tych algorytmów, metody diagnostyki jakości wyniku i metody wizualizacji wyniku.
BLOK 3: Dostrajanie modeli
Blok przedstawia metody poszukiwania najlepszych modeli przedstawionych w Bloku 1 i 2. Dotyczy oceny jakości prognoz (metryki m.in. accuracy, precision, recall, F1), sposobów walidacji modeli (zbiory treningowe, testowe, walidacyjne; walidacja krzyżowa), poszukiwanie najlepszych hiperparametrów modeli (grid search vs. random search), inżynieria zmiennych (feature engineering) a także metody wyjaśnialnej sztucznej inteligencji (XAI), w tym wartości SHAP, zależności częściowe, ważność zmiennych (variable importance)
Szacunkowy nakład pracy studenta: ECTS x 25h = 0h
(K) - godziny kontaktowe (S) - godziny pracy samodzielnej
wykład (zajęcia): 30h (K) 0h (S)
ćwiczenia (zajęcia): 0h (K) 0h (S)
egzamin: 0h (K) 25h (S)
konsultacje: 5h (K) 0h (S)
przygotowanie do ćwiczeń: 0h (K) 0h (S)
przygotowanie do wykładów: 0h (K) 0h (S)
przygotowanie do kolokwium: 0h (K) 0h (S)
przygotowanie do egzaminu: 0h (K) 30h (S)
…: 0h (K) 0h (S)
Razem: 35h (K) + 55h (S) = 90h
Rodzaj przedmiotu
Koordynatorzy przedmiotu
Efekty kształcenia
Po ukończeniu kursu student:
- przeprowadza krytyczną analizę zjawisk i procesów gospodarczych i społecznych
- dokonuje selektywnego wyboru literatury i argumentów, na podstawie których prowadzi własne badania
- samodzielnie gromadzi i analizuje dane
Kryteria oceniania
1) Końcowa praca analityczna w RPubs dla każdego bloku tematycznego (przygotowana samodzielnie) z wykorzystaniem metod przedstawionych podczas zajęć – po 45% dla każdej z dwóch prac (z bloku 1 i 3 oraz z bloku 2 i 3)
2) Prezentacja ustna przydzielonego artykułu naukowego (w trakcie zajęć) – 10%.
Literatura
[1] James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An introduction to statistical learning (Vol. 112, No. 1). New York: springer. Otwarty dostęp: https://www.statlearning.com/
[2] Szeliga, M. (2017). Data Science i uczenie maszynowe. Wydawnictwo Naukowe PWN.
[3] Artykuły naukowe w języku angielskim wskazane przez prowadzącego.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: