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/Pytorch).
* 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.
Materiały z poprzedniej edycji dostępne są na [stronie
przedmiotu](https://sites.google.com/a/cs.uni.wroc.pl/jch/teaching/zima2017-2018/neural-
networks-fall-17).
**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 PyTorch 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.
Materials from the last edition are on the [course
webpage](https://sites.google.com/a/cs.uni.wroc.pl/jch/teaching/zima2017-2018/neural-
networks-fall-17).
Fri 12:15-2pm, you must book a slot at https://calendar.google.com/calendar/selfsched?sstoken=UUtYVm5mOVkxUVRNfGRlZmF1bHR8ZmJjZmRiMzU4ODA0NDAyYTYzOTZiZjNjY2Y2ZDQwODk