Neural Networks and Deep Learning zima 2017/18

Język wykładowy Angielski
Opiekun Jan Chorowski
Liczba godzin 30 (wyk.) 30 (prac.)
Rodzaj I2.Z - zastosowania inf.
ECTS 6
Polecany dla I roku Nie
Egzamin Tak
Tagi PD (przetwarzanie danych)

Opis przedmiotu:

Sieci neuronowe umożliwiają tworzenie programów w których zamiast konkretnych algorytmów odtwarzane są prawidłowości dostrzeżone w dużych zbiorach danych. Proces znajdowania prawidłowości w danych nazywamy uczeniem. Przykładowo, programy tłumaczące (w tym popularny Google Translate) stosują rekurencyjne wielowarstwowe sieci neuronowe nauczone na zbiorze przetłumaczonych tekstów. Podobnie działają detektory twarzy, programy rozpoznające co jest na zdjęciu, a nawet podrabiające style malarskie. Przedmiot wprowadzi państwa w podstawy stosowania sieci neuronowych oraz głębokiego uczenia (ang. Deep Learning) prowadząc od prostych modeli liniowych, przez sieci splotowe używane do rozpoznawania obrazów, aż do sieci rekurencyjnych stosowanych np. w Google Translate. Opowiem też o nowych zastosowaniach sieci, w tym o systemach sterowania robotami. Podczas zajęć omówię też klasyczne metody uczenia maszynowego, takie jak regresja liniowa i logistyczna oraz metoda wektorów nośnych (Support Vector Machine), oraz intuicyjnie przedstawię podstawy teoretyczne uczenia maszynowego. Wykładom towarzyszyć będzie pracownia na której: * Kluczowe zagadnienia zilustrowana będą małymi zadaniami. * Wprowadzone będą biblioteki do tworzenia sieci neuronowych (Tensorflow/Theano). * Większy projekt pozwoli państwu samodzielnie zmierzyć się z nauczeniem dużej sieci neuronowej rozwiązującej pewne konkretne zagadnienie (domyślnie rozpoznawanie obrazów, ale może być to dowolny inny intrygujący Państwa temat). Omawiane zagadnienia: * Wstęp do uczenia maszynowego, algorytmy uczące się, sztuczne sieci neuronowe. * Jedno- i wielowarstwowe sieci perceptronów, sieci splotowe. * Algorytmy uczenia (optymalizacji numerycznej) dla sieci neuronowych działające w trybie wsadowym i on-line. * Przeuczenie i niedouczenie modelu. Metody regularyzacji sieci. * Maszyny Wektorów Nośnych (Support Vector Machines). * Teoria uczenia, teoria PAC. * Uczenie bez nadzoru: metody faktoryzacji macierzy, sieci samo-organizujące się, autoenkodery neuronowe. * Rekurencyjne sieci neuronowe, komórka LSTM. * Nowe trendy i kierunki rozwoju sieci neuronowych: uczenie ze wzmocnieniem w grach zręcznościowych i sterowaniu. **Description in English:** ** ** Neural Networks and other Deep Learning techniques allow creation of programs that are learned rather than written. This means that instead of implementing a concrete algorithm, the program applies patterns that are automatically found in the data. In example, a translation system such as the Google Translate can be created by applying a deep neural network to a large corpus of translated documents. The lecture will start with the introduction of single- and multilayer perceptron networks to solve classification and regression problems. Nextwe will speak about convolutional networks - the workhorse of modern image recognition. Finally, we will introduce recurrent networks, and speak about new developments, such as using neural nets for robotic ocntrol. We will also discuss classical algorithms, such as linear and logistic regression and Support Vector Machines, as well as the PAC learning theory. The lecture will be accompanied by computer exercises: * Key topics will be illustrated by small exercises. * We wil introduce the Tensorflow and Theano deep learning frameworks. * A larger project will give you the opportunity to tackle a real world machine learning problem. **Tentative curriculum:** * Introduction to learning from data, learning machines, and artificial neural networks. * Single and multi-layer perceptron networks. * optimization methods for training neural networks, both online and batch oriented. * Overfitting and underfitting, network regularization. * Support Vector Machines. * Learning theory: PAC. * Unsupervised learning: matrix factorization methods, self-organizing maps, neural autoencoders. * Recurrent neural networks, LSTM cells. * New developments: applications of reinforcement learning in game playing and control.

Wykłady

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jan Chorowski
english
wt 08:00-10:00 (s. 119) 300 50 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Pracownie

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Adrian Łańcucki
english
śr 10:00-12:00 (s. 110) 18 17 0
Adrian Łańcucki
english
śr 12:00-14:00 (s. 110) 18 15 0
Jan Chorowski
english
wt 10:00-12:00 (s. 110) 18 18 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.


Konsultacje prowadzących:


Imię i nazwisko Pokój Konsultacje
Jan Chorowski 203 Fri 12:15-2pm, you must book a slot at https://calendar.google.com/calendar/selfsched?sstoken=UUtYVm5mOVkxUVRNfGRlZmF1bHR8ZmJjZmRiMzU4ODA0NDAyYTYzOTZiZjNjY2Y2ZDQwODk
Adrian Łańcucki 202 wtorek 10:15 - 12:00 (proszę umawiać się przez e-mail)