Wprowadzenie do sieci neuronowych i zagadnień deep learning

Podobne dokumenty
Wrocław University of Technology. Uczenie głębokie. Maciej Zięba

Systemy agentowe. Sieci neuronowe. Jędrzej Potoniec

Systemy agentowe. Sieci neuronowe. Jędrzej Potoniec

Deep Learning na przykładzie Deep Belief Networks

Elementy inteligencji obliczeniowej

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

STRATEGIA DOBORU PARAMETRÓW SIECI NEURONOWEJ W ROZPOZNAWANIU PISMA

Dariusz Brzeziński Instytut Informatyki, Politechnika Poznańska

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

Systemy agentowe. Uwagi organizacyjne. Jędrzej Potoniec

AUTO-ENKODER JAKO SKŠADNIK ARCHITEKTURY DEEP LEARNING

MATLAB Neural Network Toolbox uczenie sieci (dogłębnie)

Zastosowanie optymalizacji rojem cząstek (PSO) w procesie uczenia wielowarstwowej sieci neuronowej w problemie lokalizacyjnym

Wstęp do głębokich sieci neuronowych. Paweł Morawiecki IPI PAN

Algorytmy wstecznej propagacji sieci neuronowych

Zastosowanie optymalizacji rojem cząstek (PSO) w procesie uczenia wielowarstwowej sieci neuronowej w problemie lokalizacyjnym, kontynuacja badań

WYKORZYSTANIE SIECI NEURONOWEJ DO BADANIA WPŁYWU WYDOBYCIA NA SEJSMICZNOŚĆ W KOPALNIACH WĘGLA KAMIENNEGO. Stanisław Kowalik (Poland, Gliwice)

Zastosowania sieci neuronowych

RNN Sieci rekurencyjne i modelowanie sekwencji. Sieci Neronowe 1

Drzewa decyzyjne. Inteligentne Obliczenia. Wydział Mechatroniki Politechniki Warszawskiej. Anna Sztyber

Sieci M. I. Jordana. Sieci rekurencyjne z parametrycznym biasem. Leszek Rybicki. 30 listopada Leszek Rybicki Sieci M. I.

Zastosowanie sieci neuronowych w problemie klasyfikacji wielokategorialnej. Adam Żychowski

Uczenie sieci neuronowych i bayesowskich

Uczenie sieci typu MLP

Wprowadzenie do uczenia maszynowego. Wstęp. (c) Marcin Sydow

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

Podstawy Sztucznej Inteligencji (PSZT)

Optymalizacja ciągła

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Wstęp do sieci neuronowych, wykład 01 Neuron biologiczny. Model perceptronu prostego.

Optymalizacja optymalizacji

Systemy agentowe. Uczenie ze wzmocnieniem. Jędrzej Potoniec

Widzenie komputerowe

Rozpoznawanie obrazów

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Metody systemowe i decyzyjne w informatyce

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład III 2016/2017

Algorytmy sztucznej inteligencji

Prof. Stanisław Jankowski

Machine learning Lecture 6

Technologie cyfrowe semestr letni 2018/2019

Algorytm do rozpoznawania człowieka na podstawie dynamiki użycia klawiatury. Paweł Kobojek, prof. dr hab. inż. Khalid Saeed

Wstęp do teorii sztucznej inteligencji Wykład II. Uczenie sztucznych neuronów.

Systemy agentowe. Uwagi organizacyjne i wprowadzenie. Jędrzej Potoniec

DEKOMPOZYCJA HIERARCHICZNEJ STRUKTURY SZTUCZNEJ SIECI NEURONOWEJ I ALGORYTM KOORDYNACJI

SPOTKANIE 4: Klasyfikacja: Regresja logistyczna

Inteligentne systemy informacyjne

Wstęp do sieci neuronowych laboratorium 01 Organizacja zajęć. Perceptron prosty

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Literatura. Sztuczne sieci neuronowe. Przepływ informacji w systemie nerwowym. Budowa i działanie mózgu

I EKSPLORACJA DANYCH

Podstawy sztucznej inteligencji

SID Wykład 8 Sieci neuronowe

Prognozowanie kierunku ruchu indeksów giełdowych na podstawie danych historycznych.

MATLAB Neural Network Toolbox przegląd

SPOTKANIE 11: Reinforcement learning

Sztuczne sieci neuronowe (SNN)

Sieci neuronowe i ich ciekawe zastosowania. Autor: Wojciech Jamrozy III rok SMP / Informatyka

Sztuczne Sieci Neuronowe. Wiktor Tracz Katedra Urządzania Lasu, Geomatyki i Ekonomiki Leśnictwa, Wydział Leśny SGGW

Inteligentne systemy przeciw atakom sieciowym

Podstawy sztucznej inteligencji

UCZENIE WIELOWARSTWOWYCH SZEROKICH SIECI NEURONOWYCH Z FUNKCJAMI AKTYWACJI TYPU RELU W ZADANIACH KLASYFIKACJI

Metody eksploracji danych 2. Metody regresji. Piotr Szwed Katedra Informatyki Stosowanej AGH 2017

Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Sieć przesyłająca żetony CP (counter propagation)

Podstawy Sztucznej Inteligencji

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

BIOCYBERNETYKA SIECI NEURONOWE. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

Przykład optymalizacji struktury sztucznej sieci neuronowej metodą algorytmów genetycznych

Politechnika Warszawska

Metody systemowe i decyzyjne w informatyce

synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.

HAŁASU Z UWZGLĘDNIENIEM ZJAWISK O CHARAKTERZE NIELINIOWYM

ZASTOSOWANIE AUTORSKIEJ METODY WYZNACZANIA WARTOŚCI PARAMETRÓW NOWOCZESNYCH SYSTEMÓW TECHNICZNYCH DO PŁUGÓW I OPRYSKIWACZY POLOWYCH

ALGORYTMY SZTUCZNEJ INTELIGENCJI

Temat: Sieci neuronowe oraz technologia CUDA

Neural Networks (The Machine-Learning Kind) BCS 247 March 2019

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

wiedzy Sieci neuronowe

Sieci neuronowe do przetwarzania informacji / Stanisław Osowski. wyd. 3. Warszawa, Spis treści

Filip Graliński. Ku sztucznym sieciom neuronowym

6. Perceptron Rosenblatta

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Wprowadzenie do Sieci Neuronowych Laboratorium 05 Algorytm wstecznej propagacji błędu

METODY INŻYNIERII WIEDZY

Klasyfikacja z milionami etykiet

Wstęp do sieci neuronowych, wykład 01 Neuron biologiczny. Model perceptronu prostego.

Optymalizacja systemów

SYSTEM WSPOMAGAJĄCY ROZPOZNAWANIE ZNAKÓW JĘZYKA MIGOWEGO OPARTY NA SZTUCZNEJ SIECI NEURONOWEJ

MODELOWANIE RZECZYWISTOŚCI

Wprowadzenie do Sieci Neuronowych Laboratorium 06 Algorytm wstecznej propagacji błędu

Uczenie sieci radialnych (RBF)

Sztuczne sieci neuronowe. Uczenie, zastosowania

Metody klasyfikacji danych - część 2 p.1/55

Transkrypt:

Wprowadzenie do sieci neuronowych i zagadnień deep learning Inteligentne Obliczenia Wydział Mechatroniki Politechniki Warszawskiej Anna Sztyber INO (IAiR PW) Deep learning Anna Sztyber 1 / 28

Deep learning sieci neuronowe o dużej liczbie warstw nowe struktury sieci metody regularyzacji algorytmy uczenia przeznaczone dla dużych zbiorów danych zastosowania rozpoznawanie obrazów i mowy klasyfikacja tekstu tłumaczenie maszynowe generacja muzyki metoda automatycznej selekcji i generacji cech INO (IAiR PW) Deep learning Anna Sztyber 2 / 28

Rys historyczny perceptron [Rosenblatt, 1958] algorytm wstecznej propagacji błędów 60 AI winter 80 nowe algorytmy uczenia [Rumelhart et al., 1986, Hinton et al., 2006] nowe rozwiązania sprzętowe (GPU) deep learning - sieci o dużej liczbie warstw (100-200) INO (IAiR PW) Deep learning Anna Sztyber 3 / 28

Deep learning Deep Learning 101 - Demystifying Deep Learning and Machine Learning with Tensorflow, Keras, TFLearn - Antonio Gulli INO (IAiR PW) Deep learning Anna Sztyber 4 / 28

Perceptron By Perceptron. Mitchell, Machine Learning, p87., https://commons.wikimedia.org/wiki/file:rosenblattperceptron.png o j = ϕ(w 1j x 1 + + w nj x n + θ j ) INO (IAiR PW) Deep learning Anna Sztyber 5 / 28

Funkcje aktywacji ϕ(z) = 1 1+exp z ϕ(z) = tgh(z) = exp(z) exp( z) exp(z)+exp( z) ϕ(z) = max(0, z) INO (IAiR PW) Deep learning Anna Sztyber 6 / 28

Perceptron wielowarstwowy MLP - Multi Layer Perceptron, Dense Network warstwa wejściowa warstwy ukryte warstwa wyjściowa każdy neuron warstwy poprzedniej połączony ze wszystkimi neuronami warstwy następnej INO (IAiR PW) Deep learning Anna Sztyber 7 / 28

Softmax często stosowane jako warstwa wyjściowa dla problemów klasyfikacji Dla M klas otrzymujemy z warstwy poprzedniej: z 1, z 2,..., z M Przekształcenie: σ(z i ) = exp(z i) Mi=1 exp(z i ) Normalizacja otrzymujemy liczby z zakresu (0,1) o sumie równiej 1 możliwa interpretacja jako rozkład prawdopodobieństwa INO (IAiR PW) Deep learning Anna Sztyber 8 / 28

Funkcje kosztu Błąd średniokwadratowy (MSE): Entropia krzyżowa: 1 n n (y i ŷ i ) 2 i=1 dla dwóch klas (binary cross-entrophy) 1 n (y i log(ŷ i ) + (1 y i ) log(1 ŷ i )) n i=1 dla wielu klas (categorical cross-entrophy) 1 n M y ic log(ŷ ic ) n i=1 c=1 INO (IAiR PW) Deep learning Anna Sztyber 9 / 28

Algorytm wstecznej propagacji błędów w ij w ij α J w ij INO (IAiR PW) Deep learning Anna Sztyber 10 / 28

Algorytm wstecznej propagacji błędów forward: wyznaczamy wyjścia sieci i wartość funkcji kosztu J backward: chcemy wyznaczyć J w ij pochodne w warstwie i można wyznaczyć na podstawie pochodnych w warstwie i + 1 obliczenia od warstwy ostatniej do pierwszej chain rule - wzór na pochodną funkcji złożonej Obecnie dostępne jest wiele narzędzi, które krok backward wykonują w sposób automatyczny INO (IAiR PW) Deep learning Anna Sztyber 11 / 28

Narzędzia Caffe2 Microsoft Cognitive Toolkit (CNTK) Matlab Neural Network Toolbox MXNET PyTorch Tensorflow Keras... INO (IAiR PW) Deep learning Anna Sztyber 12 / 28

Algorytmy optymalizacji Metoda gradientu prostego gradient descent - w każdym kroku wyznaczamy wyjścia dla wszystkich przykładów ze zbioru uczącego Problemy: stochastic gradient descent - dla jednego przykładu ze zbioru uczącego batch gradient descent - dla n przykładów ze zbioru uczącego oscylacje zanikające lub wybuchające gradienty Modyfikacje: momentum rmsprop [Hinton et al., ] Adam [Kingma and Ba, 2014]... INO (IAiR PW) Deep learning Anna Sztyber 13 / 28

Dropout Srivastava, Nitish, et al. Dropout: a simple way to prevent neural networks from overfitting, JMLR 2014 Na podstawie: [Budhiraja, 2016] INO (IAiR PW) Deep learning Anna Sztyber 14 / 28

Dropout metoda regularyzacji w każdej iteracji uczenia każdy neuron jest pomijany z prawdopodobieństwem p zarówno przy wyliczaniu wyjść, jak i uaktualnianiu wag uwaga na przeskalowanie funkcji aktywacji w nauczonym modelu wykorzystujemy wszystkie neurony interpretacja: uczymy jednocześnie wiele różnych modeli, analogia: ensemble INO (IAiR PW) Deep learning Anna Sztyber 15 / 28

Sieci konwolucyjne (splotowe) CNN - Convolutional Neural Networks INO (IAiR PW) Deep learning Anna Sztyber 16 / 28

Sieci konwolucyjne przetwarzanie obrazów obraz reprezentowany w postaci macierzy pikseli - zachowywana jest korelacja przestrzenna detekcja cech za pomocą zestawu filtrów o uczonych wagach ten sam zestaw filtrów stosowany do każdego miejsca detekcja niezależnie od przesunięcia znaczne ograniczenie liczby wag INO (IAiR PW) Deep learning Anna Sztyber 17 / 28

Operacja splotu Filtr: Obraz wejściowy: Splot: INO (IAiR PW) Deep learning Anna Sztyber 18 / 28

Stride określa przesunięcie filtru w kolejnych krokach ma wpływ na wielkość danych wyjściowych INO (IAiR PW) Deep learning Anna Sztyber 19 / 28

Padding uzupełnianie zerami brzegów obrazka pozwala na zachowanie tego samego rozmiaru po operacji splotu INO (IAiR PW) Deep learning Anna Sztyber 20 / 28

Pooling Rodzaje: uogólnienie operacji z poprzednich kroków redukcja wymiaru z złożoności filtry warstw kolejnych obejmują większy obszar obrazu max pooling mean pooling INO (IAiR PW) Deep learning Anna Sztyber 21 / 28

Sieci rekurencyjne RNN - Recurrent Neural Networks wyjście sieci zależy od wejść i poprzedniego stanu modelowanie sekwencji problemy dla długich sekwencji: zanikające lub wybuchające gradienty INO (IAiR PW) Deep learning Anna Sztyber 22 / 28

Modele INO (IAiR PW) Deep learning Anna Sztyber 23 / 28

Gated recurrent unit (GRU) z i = σ(w z [y i 1, x i ] + b z ) r i = σ(w r [y i 1, x i ] + b r ) ý i = tgh(w [r i y i 1, x i ]) y i = (1 z i )y i 1 + z i ý i INO (IAiR PW) Deep learning Anna Sztyber 24 / 28

Long short term memory (LSTM) f i = σ(w f [y i 1, x i ] + b f ) s i = σ(w r [y i 1, x i ] + b s ) ĉ i = tgh(w c [y i 1, x i ] + b c ) c i = f i c i 1 + s i ĉ i t i = σ(w t [y i 1, x i ] + b t ) y i = t i tgh c i INO (IAiR PW) Deep learning Anna Sztyber 25 / 28

O czym nie było Reinforcement learning GANs Autoencoders Embeddings Transfer learning kursy dla zainteresowanych: deeplearning.ai INO (IAiR PW) Deep learning Anna Sztyber 26 / 28

Literatura I Budhiraja, A. (2016). Dropout in (deep) machine learning. Medium, https://medium.com/@amarbudhiraja/ https-medium-com-amarbudhiraja-learning-less-to-learn-better-dropout-in-deep-machine-learning-74334da4b Goodfellow, I., Bengio, Y., and Courville, A. (2016). Deep Learning. MIT Press. http://www.deeplearningbook.org. Gulli, A. Deep learning 101 - demystifying deep learning and machine learning with tensorflow, keras, tflearn - antonio gulli. https://docs.google.com/presentation/d/1xd65lc8bv4jazwqeg672j-v2e5mfwpgnuobcb6tfkyq/edit#slide=id.p. Hinton, G., Srivastava, N., and Swersky, K. Overview of mini-batch gradient descent. Neural Networks for Machine Learning, http://www.cs.toronto.edu/ tijmen/csc321/slides/lecture_slides_lec6.pdf. Hinton, G. E., Osindero, S., and Teh, Y.-W. (2006). A fast learning algorithm for deep belief nets. Neural Comput., 18(7):1527 1554. Kingma, D. P. and Ba, J. (2014). Adam: A method for stochastic optimization. CoRR, abs/1412.6980. Rosenblatt, F. (1958). The perceptron: A probabilistic model for information storage and organization in the brain. Psychological Review, pages 65 386. INO (IAiR PW) Deep learning Anna Sztyber 27 / 28

Literatura II Rumelhart, D. E., Hinton, G. E., and Williams, R. J. (1986). Learning representations by back-propagating errors. Nature, 323:533 536. INO (IAiR PW) Deep learning Anna Sztyber 28 / 28