Recenzja rozprawy doktorskiej Deep Neural Architectures for Algorithms and Sequential Data napisanej przez mgr Karola Kuracha.

Podobne dokumenty
Temat: Sieci neuronowe oraz technologia CUDA

Dariusz Brzeziński Instytut Informatyki, Politechnika Poznańska

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

Podstawy Sztucznej Inteligencji (PSZT)

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

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

Uczenie sieci typu MLP

Wprowadzenie do sieci neuronowych i zagadnień deep learning

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

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

Optymalizacja optymalizacji

Deep Learning na przykładzie Deep Belief Networks

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

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

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

Zastosowania sieci neuronowych

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

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

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

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

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

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

Algorytm grupowania danych typu kwantyzacji wektorów

Uczenie sieci radialnych (RBF)

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.

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Automatyczna predykcja. Materiały/konsultacje. Co to jest uczenie maszynowe? Przykład 6/10/2013. Google Prediction API, maj 2010

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

Optymalizacja ciągła

Wykład z Technologii Informacyjnych. Piotr Mika

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Zaawansowane algorytmy i struktury danych

komputery? Andrzej Skowron, Hung Son Nguyen Instytut Matematyki, Wydział MIM, UW

Wprowadzenie do teorii systemów ekspertowych

Temat: ANFIS + TS w zadaniach. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Elementy kognitywistyki III: Modele i architektury poznawcze

Algorytmy i struktury danych

dr inż. Jarosław Forenc

ID1SII4. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Metody Sztucznej Inteligencji II

RNN Sieci rekurencyjne i modelowanie sekwencji. Sieci Neronowe 1

Uczenie sieci neuronowych i bayesowskich

Wybór / ocena atrybutów na podstawie oceny jakości działania wybranego klasyfikatora.

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

Adrian Horzyk

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

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

Co to jest grupowanie

Sieci neuronowe w Statistica

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

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie

Prof. Stanisław Jankowski

Projekt Sieci neuronowe

Teoretyczne podstawy informatyki

Oprogramowanie Systemów Obrazowania SIECI NEURONOWE

MODELOWANIE RZECZYWISTOŚCI

Zastosowania sieci neuronowych

Matlab podstawy + testowanie dokładności modeli inteligencji obliczeniowej

1. Logika, funkcje logiczne, preceptron.

Ontogeniczne sieci neuronowe. O sieciach zmieniających swoją strukturę

Programowanie komputerów

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Elementy modelowania matematycznego

Sieci neuronowe w Statistica. Agnieszka Nowak - Brzezioska

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Sztuczne sieci neuronowe i sztuczna immunologia jako klasyfikatory danych. Dariusz Badura Letnia Szkoła Instytutu Matematyki 2010

METODY INŻYNIERII WIEDZY

Sztuczne siei neuronowe - wprowadzenie

AUTOMATYKA INFORMATYKA

Algorytmy sztucznej inteligencji

Machine learning Lecture 6

Sortowanie przez scalanie

Czy architektura umysłu to tylko taka sobie bajeczka? Marcin Miłkowski

SZTUCZNA INTELIGENCJA

KARTA MODUŁU KSZTAŁCENIA

8. Neuron z ciągłą funkcją aktywacji.

ALGORYTM RANDOM FOREST

OPINIA. o rozprawie doktorskiej mgr inż. Beaty Potrzeszcz-Sut, pt. Sieci neuronowe w wybranych zagadnieniach mechaniki konstrukcji i materiałów".

Rozdział 1 Sztuczne sieci neuronowe. Materiały do zajęć dydaktycznych - na podstawie dokumentacji programu Matlab opracował Dariusz Grzesiak

Sztuczne sieci neuronowe (SNN)

Recenzja rozprawy doktorskiej mgr inż. Joanny Wróbel

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

OpenAI Gym. Adam Szczepaniak, Kamil Walkowiak

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

Sztuczne sieci neuronowe

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Praca dyplomowa magisterska

ĆWICZENIE 5: Sztuczne sieci neuronowe

Inteligentne systemy przeciw atakom sieciowym

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Systemy uczące się Lab 4

Elementy kognitywistyki III: Modele i architektury poznawcze

Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania w języku C++

Transkrypt:

Prof. dr hab. Włodzisław Duch Katedra Informatyki Stosowanej, Laboratorium Neurokognitywne Uniwersytet Mikołaja Kopernika, Toruń Recenzja rozprawy doktorskiej Deep Neural Architectures for Algorithms and Sequential Data napisanej przez mgr Karola Kuracha. Praca doktorska magistra Karola Kuracha została wykonana w Instytucie Informatyki Wydziału Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego pod kierunkiem dr hab. Hung Son Nguyena, profesora UW. Na rozprawę doktorską składa się 7 publikacji, jedna strona streszczenia i 21 stron wprowadzenia. Tematyka wszystkich prac dotyczy uczenia maszynowego, sieci neuronowych o głębokiej architekturze oraz sieci rekurencyjnych. Są to obecnie zagadnienia niezwykle aktualne i ważne z punktu widzenia rozwoju informatyki i jej zastosowań. Wystarczy rzucić okiem na streszczenie i wprowadzenie by się przekonać, że jest to praca wybitna, a jej recenzja będzie prawdziwą przyjemnością. Dobrze się stało, że jej Autor nie tracił czasu na pisanie rozprawy w tradycyjny sposób. Pan Kurach podaje w 5 z załączonych prac afiliację w grupie Google Brain i zgodnie z polityką tej firmy wystawia je w otwartym dostępnie na serwerach arxiv.org. Są to publikacje konferencyjne, a więc niedoceniane przez nasz system ocen bibliometrycznych, chociaż w informatyce właśnie publikacje na bardzo wymagających konferencjach są obecnie najbardziej istotne. Procent zaakceptowanych prac na konferencjach, na których przyjęto te prace jest bardzo niewielki. Dla NIPS zaledwie 3.7% prac zostało wyróżnionych jako spotlight, w konkursie AAIA przyjęto tylko 3.9% prac, w pozostałych to poniżej 10%, z wyjątkiem International Conference on Learning Representations (ICLR), na której akceptowanych jest około ¼ nadesłanych prac. Są to konferencje o uznanej renomie, na które swoich prac nie nadsyłają przypadkowi autorzy. Poza 7 publikacjami przedstawionymi jako osiągnięcie badawcze mgr Kurach jest autorem jeszcze dwóch publikacji konferencyjnych nie dotyczących sieci neuronowych. Biorąc pod uwagę niewielki procent przyjętych publikacji i poziom tych konferencji można uznać, że wszystkie przeszły przez wnikliwe recenzje. Oświadczenia współautorów wskazują na istotny wkład mgr Kuracha do każdej z przedstawionych publikacji.

2 Wprowadzenie zawiera krótkie omówienie głębokiego uczenia, które w ostatnich latach zrobiło wielką karierę dzięki postępom w metodach uczenia wielowarstwowych sieci, szybkim procesorom (w tym rozwiązaniom opartym na GPU), oraz dużym bazom danych, głównie obrazów i sygnałów. Analiza takich danych możliwa jest tylko dzięki bardzo złożonym modelom w postaci sieci neuronowych zawierających miliony parametrów. Otwiera to zupełnie nowe możliwości zastosowań. Oprócz sieci neuronowych z jednokierunkowym przepływem (FNN), które wymagają danych wejściowych o ustalonej strukturze, ważną klasą sieci są sieci z rekurencją (RNN). Umożliwiają one mapowanie dowolnych sekwencji sygnałów na inne sekwencje. W klasycznym ujęciu RNN jest tylko jeden wektor reprezentujący ukryte aktywacje, a uczenie najczęściej realizowane jest za pomocą algorytmu wstecznej propagacji błędów w czasie (BPTT). Lepszy model opublikowany już w 1997 roku przez Hochreitera i Schmidhubera używa dodatkowego wektora reprezentującego pamięć długoterminową, stąd nazwa Long Short-Term Memory (LSTM). Do pewnego stopnia model ten odzwierciedla działanie biologicznej pamięci roboczej, w której możliwe jest utrzymanie lub zapominanie poprzednich informacji przez modulowane bramki. Formalnie jest to przekształcenie wektora wejściowego, aktywacji ukrytych elementów i aktywacji komórek pamięci na wektor wyjściowy i nowy wektor ukrytych aktywacji. Wzór 8 (str. 8) zawiera drobny błąd, zamiast g t powinno być u t. Algorytmy LSTM zostały ostatnio uzupełnione o mechanizmy uwagi oraz wykorzystanie pamięci zewnętrznej, co jeszcze bardziej zbliża je do inspiracji biologicznych, chociaż autorzy się na nie nie powołują. Pierwsze cztery prace dotyczą metod uczenia i architektur sieci neuronowych, następne trzy ambitnych zastosowań. Praca Adding Gradient Noise Improves Learning for Very Deep Networks ma aż 7 autorów i dotyczy stosunkowo prostej metody usprawnienia uczenia głębokich sieci neuronowych. Szum dodawany był w różny sposób do danych wejściowych lub parametrów sieci, służąc jak metoda regularyzacji funkcji realizowanej przez sieć. W tej pracy zaproponowano by dodawać stopniowo zmniejszający się szum Gaussowski do gradientów w stochastycznej optymalizacji parametrów sieci. Chociaż idea nie jest całkiem nowa przedstawione tu symulacje na głębokich sieciach neuronowych pokazały jej dużą przydatność. Pozwala to przezwyciężyć efekty słabej inicjalizacji w głębokich sieciach jednokierunkowych. Wiele eksperymentów wykonano na danych MNIST (rozpoznawanie ręcznie pisanych cyfr) z 20-warstwową siecią i 50 neuronami w każdej warstwie. Takie sieci trudno jest dobrze zainicjalizować i dodanie szumu do gradientów znacznie poprawia zbieżność uczenia. Na głębo-

3 kich sieciach typu End-to-End Memory (Sukhbaatar i inn., 2015) przeznaczonych do odpowiedzi na pytania (Q/A system) wymagające dedukcyjnego bądź indukcyjnego wnioskowania błąd również znacząco zmalał. Architektura Neural Programmer (Neelakantan i inn 2015) służy do szukania odpowiedzi na zadawane pytania, wykorzystując informacje dostępne w bazie danych. Dodawanie szumu do gradientów polepszało znacząco wyniki we wszystkich eksperymentach. Podobnie było z architekturą Convolutional Gated Recurrent Networks (CGRN, Kaiser & Sutskever, 2015), która może się nauczyć konstruować dowolny algorytm. Liczba poprawnych wyników zwiększyła się dwukrotnie. W pracy Neural Random-Access Machines Kurach, Andrychowicz i ich opiekun Ilya Sutskever idąc śladami Neuronowej Maszyny Turinga (Graves i inn. 2014) definiują głęboką architekturę neuronową której operacje bazowe obejmują manipulację wskaźnikami i dostępem do pamięci. Sieć neuronowa, jednokierunkowa lub rekurencyjna sieć LSTM, traktowana jest tu jako uczący się kontroler, modyfikujący połączenia pomiędzy węzłami, w których znajdują się wyspecjalizowane moduły. Ich zadaniem jest odczytywanie i modyfikacja danych z rejestrów, oraz komunikacja z taśmą pamięci. W procesie uczenia zastosowano najnowsze algorytmy: nieliniowość ReLu zamiast sigmoidy, algorytm Adam stochastycznej optymalizacji, systematyczne uczenie (curriculum learning, od prostych do złożonych relacji), skalowanie gradientów, szum dodany do gradientów, warstwy renormalizujące rozkłady prawdopodobieństwa, zaburzenia funkcji kosztu zależne od entropii rozkładów neuronowego kontrolera. Stosowane tu metody uczenia pojawiły się w ostatnich kilku latach. W eksperymentach użyto 14 modułów realizujących operacje arytmetyczne i logiczne, odczytu i zapisu. Tworząc połączenia tych modułów sieć uczyła się zadań typu: odczytując z taśmy liczbę k i wektor A podaj A[k]; mając wskaźnik do miejsca i wektor skopiuj elementy na odpowiednie miejsce; mając dwie liczby całkowite p i q oraz wektor A zamień wartości A[p] z A[q]. Były też bardziej złożone zadania, np. mając wskaźnik do początku listy i wartość v znajdź wskaźnik do pierwszego węzła listy o wartości v. Dla niektórych zadań osiągnięto generalizację na dowolnie duże dane wejściowe. Tylko dwóch zadań nie udało się nauczyć bez błędów: połączyć posortowane tablice i mając dany wskaźnik do korzenia drzewa binarnego i określoną ścieżkę zwrócić końcową wartość elementu drzewa z tej ścieżki. Jest to ciekawy kierunek badań, zmierzający do wykorzystania sieci neuronowych nie tylko do rozpoznawania wzorców ale i zadań wymagających ułożenia programu działania, wymagających wykorzystania wiedzy deklaratywnej i dostępu do pamięci. W pracy Learning

4 Efficient Algorithms with Hierarchical Attentive Memory (Andrychowicz, Kurach) zaproponowano ogólny mechanizm uwagi wykorzystujący hierarchiczną pamięć (model HAM) w postaci binarnego drzewa, co pozwala na zmniejszenie czasu dostępu do Θ(log n). Podobne mechanizmy wykorzystywano dotychczas w metodach opartych na podobieństwie do wyszukiwania najbliższych sąsiadów. Ostatnio mechanizmy uwagi pojawiły się w kilku pracach wykorzystujących zewnętrzną pamięć w połączeniu z głębokimi sieciami neuronowymi. Model HAM został przetestowany w połączeniu z siecią LSTM jako kontrolerem i MLP jako predyktorem kierunku przesuwania się po drzewie, oceniając gradienty metodą REINFORCE (Williams 1992), oraz stosując liczne usprawniające uczenie metody z opisanej powyżej pracy. Kombinacja LSTM i HAM pozwoliła na podstawie przykładów nauczyć się takich operacji jak łączenie posortowanych tablic, czy naukę algorytmu sortowania, który działa w czasie Θ(n log n) i można go zastosować do bardziej złożonych problemów niż były nauczone w czasie treningu. Takie zadania to dość naturalne zastosowanie hierarchicznej pamięci opartej na binarnym drzewie. Nie działa to jednak idealnie i pojawiają się drobne błędy, które autorzy mają nadzieję usunąć dzięki dalszym usprawnieniom mechanizmów uczenia się. Przydatność samego modułu HAM w połączeniu z siecią MLP przetestowano też z bardzo dobrym wynikiem ucząc tego systemu podstawowych operacji PUSH/POP realizujących kolejkę FIFO i kolejkę priorytetową. Poszukując metod pozwalających automatycznie odkrywać efektywne algorytmy Zaremba, Kurach i Fergus skupili się na operacjach na macierzach. W pracy Learning to Discover Efficient Mathematical Identities pokazali, jak wyrażenia symboliczne można przedstawić za pomocą sekwencji reguł gramatycznych w schemacie gramatyk atrybutywnych. Składanie symbolicznych wyrażeń jest NP-trudne, prowadzi do eksplozji kombinatorycznej. Używając sieci rekurencyjnych trenowanych na prostych drzewach z symbolicznymi wyrażeniami w węzłach algorytm uczy się reguł składania wyrażeń (gramatyki) w sposób dający prawidłowy rezultat tańszym kosztem. Pierwszym przykładem jest obliczanie sum(sum(a*b)), co przy prostym sumowaniu po wszystkich trzech indeksach wymaga Θ(nmp) operacji, a przy optymalnym podejściu tylko Θ(n(m+p)) operacji. Sprawdzanie czy złożenie operacji daje właściwy wyniki można zrobić w prosty sposób używając numerycznych przykładów, lub używając rekursywnych sieci neuronowych mapując symboliczne wyrażenia na wektory w wysokowymiarowej przestrzeni. Dla operacji macierzowych zawierających potęgi k lub niższe wystarczy 30 wymiarów. Zbiór wszystkich poprawnych wyrażeń do stopnia k jest najpierw mapowany

5 na wektory w tej przestrzeni a potem pogrupowany w klastry równoważnych wyrażeń. Dla k=6 utworzono 1687 klastrów. Taka reprezentacja pozwala na identyfikację właściwych wyrażeń za pomocą sieci rekurencyjnej, która klasyfikuje złożone wyrażenia mapowane do tej przestrzeni. W eksperymentach z odkrywaniem równoważnych wyrażeń porównano 3 różne strategie szukania rozwiązań. Udało się odkryć algorytmy obliczające różne wyrażenia macierzowe dające skalarny wynik, np. sumę obustronnych iloczynów macierzy dla wszystkich binarnych wektorów (vah) k. Naiwne oceny wymagają Θ(2 2n ) operacji, a odkryty algorytm redukuje to do Θ(n 3 ). Najlepszą strategią wydają się n-gramy (używano 2-5-gramów). Perspektywa automatycznej transformacji naiwnych programów w efektywne obliczeniowo rozwiązania jest tu widoczna. Jest jednak jeszcze sporo do poprawienia ale i tak rezultaty są już teraz bardzo interesujące. Pozostałe trzy prace dotyczą zastosowań omawianych metod. Detecting Methane Outbreaks from Time Series Data with Deep Neural Networks (Pawłowski, Kurach, 2015) zawiera wyniki konkursu przewidywania niebezpiecznego poziomu koncentracji metanu. Dane pochodziły z polskich kopalni, zebrano je z 28 sensorów i miały postać szeregów czasowych zawierających 51700 rekordów, każdy rekord zawierał 16800 odczytów, w sumie ponad 868 mln wartości (3.5 GB). Są to więc dane dużych rozmiarów, bardzo niezbalansowane (2% ostrzeżeń, reszta odczytów uznana za normalne), większość szeregów czasowych się mocno nakładała. Autorzy zastosowali tu sieć LSTM i komitet wielowarstwowych sieci MLP osiągając bardzo dobry wynik i plasując się na 6 miejscu na 52 uczestników w konkursie na konferencji IJCRS 2015 (jednak różnice w stosunku do pozycji drugiej były niewielkie, a użyto surowych danych z sensorów). Podobne podejście, opisane w pracy Predicting Dangerous Seismic Activity with RNN (Kurach, Pawłowski, 2016) zastosowano w konkursie przewidywania niebezpiecznej aktywności sejsmicznej w kopalniach. Rezultaty konkursu będą ogłoszone na konferencji AAIA 2016 w połowie września. Ostatnia praca, Smart Reply: Automated Response Suggestion for Email jest sygnowana przez 11 osób z korporacji Google i została zaimplementowana w wersji Google Inbox mobilnej poczty. Mgr Kurach należał do grupy 4 osób, które ten projekt zainicjowały i koordynowały. Ich zadaniem było stworzenie programu Smart Reply sugerującego krótkie, sensowne odpowiedzi na emaile. Ponieważ ta aplikacja obsługuje miliony użytkowników autorzy oceniają, że 10% odpowiedzi na emaile przechodzące przez Inbox jest generowanych przez ich system wymagało to spełnienia wielu warunków. Sieć rekurencyjna LSTM została wy-

6 trenowana na wielkim korpusie 238 mln emaili, użyto biblioteki TensorFlow do jej nauki na masowo równoległym systemie komputerowym. Cała aplikacja jest dalece nietrywialna i wymagała zastosowania wielu wyrafinowanych technik uczenia maszynowego i analizy języka naturalnego. Zarówno w tej jak i we wszystkich poprzednich pracach autorzy włożyli dużo wysiłku w szczegółową ocenę zalet i wad opracowanych przez siebie rozwiązań, jak i porównania z innymi możliwymi podejściami. Omówione powyżej prace składające się na rozprawę doktorska pokazują jednoznacznie głęboką wiedzę mgr Kuracha w dziedzinie uczenia maszynowego, sieci neuronowych i metod statystycznych. Jest współautorem wielu nowych idei, które znalazły zastosowanie w nowych systemach, umożliwiając znaczny postęp w zastosowaniu sieci neuronowych i metod uczenia maszynowego do rozwiazywania realnych problemów. O jego umiejętnościach i wiedzy świadczą też udziały w dwóch konkursach analizy dużych i trudnych danych. Jego rozprawa doktorska dotyczy najnowszej i bardzo ważnej tematyki, a rezultaty jego badań zostały opublikowane i przedstawione na bardzo wymagających konferencjach. Ustawowe wymogi dotyczące prac doktorskich zostały więc w pełni spełnione. Ze względu na wagę tych osiągnięć naukowych uważam, że jest to praca zasługująca na wyróżnienie i wnioskuję o dopuszczenie jej Autora do dalszych etapów przewodu doktorskiego. Włodzisław Duch, Toruń, 25 sierpnia 2016