Uczenie maszynowe 1000-1L24UM
Proseminarium będzie poświęcone głębokim sieciom neuronowym. Głównymi obiektami badań w tej dziedzinie są: sieć, funkcja straty oraz metoda optymalizacji. Sieć to funkcja wektorowa będąca złożeniem wielu prostszych przekształceń, czyli warstw – liczba warstw to głębokość sieci. Wartość sieci zależy od wektora argumentów oraz dodatkowo od wektora parametrów. Nieujemna funkcja straty określa błąd dopasowania parametrów sieci do danych uczących. Argumentami funkcji straty są parametry sieci, a parametrami dane uczące. Z kolei metoda optymalizacji to algorytm służący do poszukiwania lokalnego minimum funkcji straty uśrednionej na danych. Minimalizację średniej funkcji straty nazywa się “uczeniem” lub “trenowaniem” sieci.
Sieci neuronowe mają wiele różnych zastosowań: mogą tłumaczyć teksty, grać w gry, rozpoznawać mowę lub interpretować obraz z kamery robota. Na naszych zajęciach skoncentrujemy się na sieciach generatywnych – Generative AI, krócej GenAI – czyli sieciach służących do tworzenia nowych treści przypominających dane uczące, np. twarze, wiersze, muzykę czy warunki zewnętrzne, w których będzie działał robot.
Projektowanie generatywnych sieci neuronowych wymaga wiedzy i umiejętności matematycznych z różnych dziedzin. W szczególności popularne sieci w swoim domyślnym trybie działania generują obiekty startując z szumu, czyli obserwacji pochodzącej z wielowymiarowego rozkładu normalnego. Warto więc umieć rachować na rozkładach prawdopodobieństwa. Z kolei minimalizacja średniej funkcji straty wymaga zrozumienia algorytmów automatycznego różniczkowania i stochastycznego spadku po gradiencie. Ponadto – w zależności od sieci – potrzebna jest dodatkowa wiedza. I tak:
- Generative Adversarial Networks (GAN) generują obiekty w jednym kroku za pomocą “generatora”, ale w procesie uczenia potrzebują dodatkowej podsieci – “dyskryminatora”. Generator i dyskryminator aktualizują swoje parametry rywalizując ze sobą jak fałszerze pieniędzy z policją. Zrozumienie budowy i działania GANów oraz wyprowadzenie funkcji straty jest oparte na prostszym modelu logistycznym i kryterium minimaksowym. GANy wprowadzono w pracy [2], a ich nowa wersja została zaimplementowana przez NVIDIA’ę w programie styleGAN2.
- Denoising Diffusion (DD) generują treści w wielu krokach odfiltrowując szum stopniowo. Są to ciągi wielowymiarowych rozkładów normalnych, których parametry (wektory wartości oczekiwanych i macierze kowariancji) zadane są przez głębokie sieci neuronowe. Zrozumienie DD wymaga szacowania całek, ponieważ zamiast pierwotnej funkcji straty minimalizuje się jej górne oszacowanie w postaci wartości oczekiwanej po dodatkowych zmiennych. Metoda została wprowadzona w [3] i jest zaimplementowana w popularnych programach do generowania obrazów: DALL-E 3, Imagen oraz Stable Diffusion.
- Continuous Normalizing Flows to sieci, w których przejście z warstwy do warstwy modelowane jest za pomocą równania różniczkowego zwyczajnego podobnie jak przepływ płynu. Takie sieci generują nowe treści rozwiązując numerycznie równanie z warunkiem początkowym wygenerowanym z rozkładu normalnego. Nowa wersja metody została opisana w [4] i jest dostępna jako Stable Diffusion 3.
GenAI jest szczególnie atrakcyjna dla matematyków: techniki programowania tracą na znaczeniu w miarę rozwoju chatbotów pomagających w pisaniu kodu (np. GitHub Copilot), natomiast zyskują wiedza i umiejętności oparte na analizie matematycznej.
Zdecydowanie rekomendujemy uczestnikom proseminarium udział w następujących wykładach obieralnych: w semestrze zimowym: Analiza numeryczna, Optymalizacja nieliniowa, Statystyka, Statystyka bayesowska oraz Rachunek prawdopodobieństwa II; w semestrze letnim: Uczenie maszynowe oraz Wstęp do procesów stochastycznych.
Referaty studentów będą oparte głównie na monografii [1] i pracach takich, jak [2]-[4]. Referaty i prace licencjackie będą mogły być projektami zespołowymi. Prace licencjackie będą mogły mieć matematyczną formę lub stanowić opis przygotowanego programu komputerowego.
Rodzaj przedmiotu
Koordynatorzy przedmiotu
Efekty kształcenia
Student:
- rozumie podstawowe metody głębokiego uczenia maszynowego,
- umie programować sieci głębokie do predykcji i generowania nowych treści,
- potrafi wyszukiwać potrzebne informacje w literaturze i internecie,
- potrafi zrozumiale przekazywać treści matematyczne w mowie i piśmie.
Kryteria oceniania
Na podstawie wygłoszonych referatów i złożenia w systemie APD UW pracy licencjackiej.
Literatura
- C.M. Bishop and H. Bishop, Deep Learning: Foundations and Concepts, Springer 2024, https://www.bishopbook.com/
- Goodfellow, I., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., ... & Bengio, Y. (2014). Generative adversarial nets. Advances in neural information processing systems, 27.
- Ho, J., Jain, A., & Abbeel, P. (2020). Denoising diffusion probabilistic models. Advances in neural information processing systems, 33.
- Lipman, Y., Chen, R. T., Ben-Hamu, H., Nickel, M., & Le, M. (2022). Flow matching for generative modeling. arXiv preprint arXiv:2210.02747.
Więcej informacji
Więcej informacji o poziomie przedmiotu, roku studiów (i/lub semestrze) w którym się odbywa, o rodzaju i liczbie godzin zajęć - szukaj w planach studiów odpowiednich programów. Ten przedmiot jest związany z programami:
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: