Nazwa przedmiotu:
Zaawansowane uczenie maszynowe
Koordynator przedmiotu:
Rajmund Kożuszek
Status przedmiotu:
Fakultatywny dowolnego wyboru
Poziom kształcenia:
Studia II stopnia
Program:
Informatyka
Grupa przedmiotów:
Przedmioty techniczne - zaawansowane
Kod przedmiotu:
ZUM
Semestr nominalny:
2 / rok ak. 2021/2022
Liczba punktów ECTS:
4
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
1. liczba godzin kontaktowych – 35 godz.,w tym: a. obecność na wykładach: 30 godz., b. udział w konsultacjach związanych z treścią wykładu: 1 godz., c. udział w konsultacjach związanych z realizacją projektu: 4 godz., 2. praca własna studenta – 75 godz., w tym: a. przygotowanie do wykładów (przejrzenie materiałów z wykładu i dodatkowej literatury, próba rozwiązania ćwiczeń domowych sformułowanych na wykładzie): 15 godz., b. realizacja projektu: 10 godz. (zapoznanie się z literaturą i oprogramowaniem) + 40 godz. (wykonanie zadań projektowych) + 10 godz. (sporządzenie dokumentacji) = 60 godz., c. przygotowanie do kolokwiów: 10 godz. Łączny nakład pracy studenta wynosi: 120 godz., co odpowiada 4 pkt. ECTS.
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1,25 pkt. ECTS, co odpowiada 35 godz. kontaktowym
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
2 pkt. ECTS, co odpowiada 60 godz. realizacji projektu
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt15h
  • Lekcje komputerowe0h
Wymagania wstępne:
 Biegła umiejętność programowania w przynajmniej jednym z języków: C, C++, Java, Python, R.  Znajomość podstaw statystyki opisowej i testowania istotności statystycznej.  Znajomość podstaw teoretycznych uczenia maszynowego: model PAC, wymiar VC.  Znajomość podstawowych algorytmów uczenia maszynowego: drzewa decyzyjne, naiwny klasyfikator bayesowski, model liniowy.
Limit liczby studentów:
30
Cel przedmiotu:
Celem przedmiotu jest zapoznanie studentów z zaawansowanymi zagadnieniami dotyczącymi uczenia maszynowego i jego zastosowań do tworzenia modeli predykcyjnych. Jest to wiodący obszar badań naukowych w zakresie sztucznej inteligencji, a opracowane w wyniku tych badań algorytmy znajdują liczne zastosowania praktyczne. Przegląd rozszerzonych wariantów wybranych podstawowych algorytmów uczenia się oraz wybranych zaawansowanych algorytmów uczenia się i technik stosowanych do poprawienia jakości tworzonych za ich pomocą modeli predykcyjnych przygotowuje studentów do ich stosowania i implementowania, a także do podjęcia prac badawczych w dziedzinie uczenia maszynowego.
Treści kształcenia:
Wykład: 1. Wprowadzenie i rekapitulacja podstaw (4 godz.) Definicja uczenia się; zadania indukcyjnego uczenia się; nadmierne dopasowanie; obciążenie indukcyjne; wybrane wyniki obliczeniowej teorii uczenia się; przegląd podstawowych algorytmów uczenia się, metod oceny jakości modeli oraz narzędzi ze statystyki i teorii informacji. 2. Rozszerzenia drzew decyzyjnych (2 godz.) Metody przycinania drzew decyzyjnych; metody obsługi brakujących wartości atrybutów przy tworzeniu i stosowaniu drzew decyzyjnych; drzewa regresji, drzewa modeli. 3. Rozszerzenia naiwnego klasyfikatora bayesowskiego (2 godz.) Sieć bayesowska; reprezentacja łącznego rozkładu prawdopodobieństwa; nie całkiem naiwny klasyfikator bayesowski; klasyfikator bayesowski jako model liniowy. 4. Regresja liniowa i logistyczna (3 godz.) Model liniowy; estymacja parametrów modeli liniowego; diagnostyka modelu liniowego; techniki przełamywania ograniczenia liniowości; model logistyczny; logarytmiczna funkcja straty; estymacja parametrów modelu logistycznego; zastosowanie do kalibracji predykcji probabilistycznych innych modeli; regularyzacja. 5. Maszyny wektorów nośnych i metody jądrowe (3 godz.) Odległość od granicy decyzyjnej; maksymalizacja marginesu klasyfikacji liniowo-progowej; postać prymalna i dualna zadania maksymalizacji marginesu; wektory nośne dla zadania regresji; sztuczka jądrowa; typy funkcji jądrowych. 6. Modele zespołowe (2 godz.) Zasada modelowania zespołowego; metody tworzenia i łączenia modeli bazowych; algorytmy typu bagging, las losowy, boosting i ich specjalizowane warianty. 7. Modele wrażliwe na koszty pomyłek (2 godz.) Macierz kosztów pomyłek; uwzględnianie kosztów pomyłek przy predykcji; uwzględnianie kosztów pomyłek przy tworzeniu modeli. 8. Klasyfikacja nienadzorowana i jednoklasowa (3 godz.) Zadanie grupowania; miary niepodobieństwa; grupowanie typu k-środków; grupowanie gęstościowe; miary jakości grupowania; jednoklasowe maszyny wektorów nośnych; las izolacyjny; wskaźniki nietypowości na podstawie niepodobieństwa do sąsiadów i grup; detekcja anomalii i nowości. 9. Transformacja reprezentacji (2 godz.) Selekcja atrybutów przez filtrowanie; selekcja atrybutów przez opakowanie; proste transformacje atrybutów: standaryzacja, normalizacja, kodowanie binarne; transformacje redukujące wymiarowość. 10. Pogłębiona ocena jakości modeli (2 godz.) Informacyjne kryteria jakości modeli; uzupełniające miary jakości klasyfikacji i regresji; obciążenie i wariancja oceny; ocena pośrednia i końcowa; nadmierne dopasowanie oceny; selekcja modeli. 11. Aktualne zagadnienia badawcze (2 godz.) Przegląd aktualnych kierunków prac badawczych. Projekt: Projekt realizowany w zespołach 2-osobowych umożliwi zdobycie praktycznych doświadczeń w zakresie stosowania algorytmów maszynowego uczenia się oraz prowadzenia związanych z nimi prac badawczych. Będzie on swoim zakresem obejmować:  eksperymenty z użyciem dostępnych bibliotek dostarczających implementacji algorytmów uczenia maszynowego,  samodzielną implementację lub modyfikację dostępnej implementacji algorytmu uczenia maszynowego i badanie jego właściwości,  zadania wymagające doboru odpowiednich metod uczenia maszynowego, ich zastosowania oraz analizy jakości uzyskanych wyników.
Metody oceny:
Realizacja przedmiotu obejmuje następujące formy zajęć:  wykład prowadzony w wymiarze 2 godz. tygodniowo,  projekt realizowany samodzielnie w zespołach,  konsultacje. Aktywizacji studentów służą:  interaktywna formuła wykładu,  dostarczane po każdym wykładzie notatki podsumowujące jego treść z zachętą do zadawania pytań oraz notatki Q&A zawierające odpowiedzi na pytania studentów,  dostarczane po każdym wykładzie ćwiczenia sprawdzające przyswojenie omawianych zagadnień,  wymóg konsultacji interpretacji tematu i zakresu projektu,  wymóg przedstawienia do oceny wstępnej dokumentacji projektu,  wymóg konsultacji zmian interpretacji tematu i zakresu projektu wprowadzanych po ocenie dokumentacji wstępnej. Sprawdzanie założonych efektów kształcenia realizowane jest przez:  ocenę wiedzy i umiejętności wykazanych na sprawdzianie pisemnym,  ocenę wiedzy i umiejętności związanych z realizacją zadań projektowych – ocena wykonanych prac implementacyjnych, eksperymentalnych i jakości dokumentacji,  formatywną ocenę związaną z rozwiązywaniem ćwiczeń domowych formułowanych na wykładzie, udziałem w konsultacjach i interaktywną formą prowadzenia wykładu.
Egzamin:
nie
Literatura:
1. I. H. Witten, E. Frank, M. A. Hall, C. J. Pal: Data Mining: Practical Machine Learning Tools and Techniques. Morgan Kaufmann, 2016. 2. Bishop, C: Pattern Recognition and Machine Learning. Springer, 2011. 3. T. Mitchell: Machine Learning. McGraw Hill, 1997. 4. Y. S. Abu-Mostafa, M. Magdon-Ismail, H.-T. Lin: Learning from Data: A Short Course. AMLBook, 2012. 5. P. Cichosz: Data Mining: Explained Using R. Wiley, 2015. 6. Biblioteka Weka. 7. Pakiety języka R. 8. Pakiety języka Python.
Witryna www przedmiotu:
https://usosweb.usos.pw.edu.pl/kontroler.php?_action=katalog2/przedmioty/pokazPrzedmiot&prz_kod=103A-INSZI-MSP-ZUM
Uwagi:
(-)

Efekty uczenia się