Plan Szkolenia
Kurs podzielony jest na trzy oddzielne dni, z których trzeci jest opcjonalny.
Dzień 1 - Machine Learning i Deep Learning: koncepcje teoretyczne
1. Wprowadzenie do sztucznej inteligencji Machine Learning & Deep Learning
- Historia, podstawowe pojęcia i powszechne zastosowania sztucznej inteligencji, dalekie od fantazji związanych z tą dziedziną.
- Kolektywna inteligencja: agregowanie wiedzy współdzielonej przez wielu wirtualnych agentów
- Algorytmy genetyczne: rozwój populacji wirtualnych agentów poprzez selekcję.
- 5] zwykle: definicja.
- Rodzaje zadań: uczenie nadzorowane, uczenie nienadzorowane, uczenie ze wzmocnieniem
- Rodzaje działań: klasyfikacja, regresja, grupowanie, szacowanie gęstości, redukcja wymiarowości
- Przykłady algorytmów Machine Learning: regresja liniowa, Naive Bayes, Random Tree
- Uczenie maszynowe VS Deep Learning: problemy, w których Machine Learning pozostaje aktualnym stanem wiedzy (Random Forests & XGBoosts).
2. Podstawowe koncepcje sieci neuronowej (zastosowanie: perceptron wielowarstwowy)
- Przypomnienie podstaw matematycznych.
- Definicja sieci neuronowej: klasyczna architektura, funkcje aktywacji i wagi dla poprzednich aktywacji, głębokość sieci itp.
- Definicja uczenia sieci neuronowej: funkcje kosztu, propagacja wsteczna, stochastyczne opadanie gradientu, maksymalne prawdopodobieństwo.
- Modelowanie sieci neuronowej: modelowanie danych wejściowych i wyjściowych w zależności od rodzaju problemu (regresja, klasyfikacja itp.). Przekleństwo wymiarowości. Rozróżnienie między danymi wielocechowymi a sygnałem. Wybór funkcji kosztu w zależności od danych.
- Aproksymacja funkcji za pomocą sieci neuronowej: prezentacja i przykłady
- Przybliżanie rozkładu za pomocą sieci neuronowej: prezentacja i przykłady.
- Powiększanie danych: jak zrównoważyć zbiór danych
- Uogólnianie wyników sieci neuronowej.
- Inicjalizacja i regularyzacja sieci neuronowej: regularyzacja L1/L2, normalizacja wsadowa itp.
- Algorytmy optymalizacji i zbieżności.
3. Popularne narzędzia ML/DL
Prosta prezentacja z zaletami, wadami, pozycją w ekosystemie i zastosowaniem.
- Narzędzia do zarządzania danymi: Apache Spark, Apache Hadoop.
- Popularne narzędzia Machine Learning: Numpy, Scipy, Sci-kit
- Wysokopoziomowe frameworki DL: PyTorch, Keras, Lasagne
- Niskopoziomowe frameworki DL: Theano, Torch, Caffe, Tensorflow
Dzień 2 - Sieci konwolucyjne i rekurencyjne
4. Sieci konwolucyjne Neural Networks (CNN).
- Prezentacja CNN: podstawowe zasady i zastosowania
- Podstawowe działanie CNN: warstwa konwolucyjna, użycie jądra, padding i stride, generowanie map cech, warstwy łączące. Rozszerzenia 1D, 2D i 3D.
- Prezentacja różnych architektur CNN, które reprezentują aktualny stan wiedzy w klasyfikacji obrazów: LeNet, VGG Networks, Network in Network, Inception, Resnet. Prezentacja innowacji wprowadzonych przez każdą architekturę i ich bardziej globalnych zastosowań (splot 1x1 lub połączenia szczątkowe).
- Wykorzystanie modelu uwagi.
- Zastosowanie w typowym scenariuszu klasyfikacji (tekst lub obraz).
- CNN do generowania: super-rozdzielczość, segmentacja piksel po pikselu. Prezentacja głównych strategii rozszerzania mapy cech do generowania obrazów.
5. Sieci rekurencyjne Neural Networks (RNN).
- Prezentacja sieci RNN: podstawowe zasady i zastosowania.
- Podstawowe działanie RNN: ukryta aktywacja, wsteczna propagacja w czasie, wersja rozwinięta.
- Rozwój w kierunku GRU (Gated Recurrent Units) i LSTM (Long Short Term Memory). Prezentacja różnych stanów i zmian wprowadzonych przez te architektury.
- Zbieżność i problemy z zanikającym gradientem
- Rodzaje klasycznych architektur: przewidywanie szeregów czasowych, klasyfikacja itp.
- Architektura kodera-dekodera RNN. Wykorzystanie modelu uwagi.
- Zastosowania NLP: kodowanie słów/znaków, tłumaczenie.
- Zastosowania wideo: przewidywanie następnego wygenerowanego obrazu sekwencji wideo.
Dzień 3 - Modele generacyjne i Reinforcement Learning.
6. Modele generacyjne: Variational AutoEncoder (VAE) i Generative Adversarial Networks (GAN).
- Prezentacja modeli generacyjnych, powiązanie z CNN z dnia 2.
- Autoenkoder: redukcja wymiarowości i ograniczona generacja
- Wariacyjny autoenkoder: model generacyjny i aproksymacja rozkładu danych. Definicja i wykorzystanie przestrzeni ukrytej. Sztuczka reparametryzacji. Zastosowania i zaobserwowane ograniczenia
- Generatywne sieci adwersarzy: podstawowe zasady. Architektura dwóch sieci (generator i dyskryminator) z naprzemiennym uczeniem, dostępne funkcje kosztu.
- Zbieżność GAN i napotkane trudności.
- Ulepszona zbieżność: Wasserstein GAN, BeGAN. Odległość poruszania się po ziemi.
- Zastosowania do generowania obrazów lub zdjęć, generowania tekstu, superrozdzielczości.
rozdzielczość.
7. Deep Reinforcement Learning.
- Prezentacja uczenia ze wzmocnieniem: kontrola agenta w środowisku zdefiniowanym przez stan i możliwe działania.
- Wykorzystanie sieci neuronowej do aproksymacji funkcji stanu
- Deep Q Learning: odtwarzanie doświadczeń i zastosowanie do sterowania grą wideo.
- Optymalizacja polityki uczenia się. Polityka włączona i polityka wyłączona. Architektura krytyka aktorów. A3C.
- Zastosowania: kontrola prostej gry wideo lub systemu cyfrowego.
Wymagania
Poziom inżyniera
Opinie uczestników (1)
Świetny kontakt z uczestnikami, wiedza praktyczna co bardzo się ceni. Dostosowanie toku / tempa. Duuuży plus, mega pozytywny instruktor, aż szkoda że szkolenie trwało tylko 2 dni.