Wstępne szkolenie w głębokiej sieci neuronowej splotowej?

Odpowiedzi:

39

Nie jestem pewien, czy to dokładnie odpowiada na twoje pytanie, ale z tego, co rozumiem, dlaczego nie widzisz ludzi trenujących ( mam na myśli to w nienadzorowanym sensie ), ponieważ wprowadzono różne innowacje w czysto nadzorowanym szkoleniu, które sprawiły, że wstępne szkolenie bez nadzoru nie jest konieczne (kto teraz wie, jakie problemy i problemy przyniesie przyszłość?).

Jedną z głównych innowacji było odejście od sigmoidalnych (sigmoidalnych, tanh) jednostek aktywacyjnych, które mogą nasycać / mieć obszary o prawie płaskiej krzywiźnie, a zatem bardzo mało gradientu jest propagowane do tyłu, więc nauka jest niewiarygodnie powolna, jeśli nie całkowicie zatrzymana dla wszystkich praktycznych celów i cele. W artykułach Glorot, Bordes i Bengio Sieci neuronowe z prostymi prostownikami wykorzystały rektyfikowane jednostki liniowe (ReLU) jako funkcje aktywacyjne zamiast tradycyjnych jednostek sigmoidalnych. ReLU mają następującą postać: . Zauważ, że są one nieograniczone, a dla części dodatniej ma stały gradient 1.f(x)=max(0,x)

W artykułach Glorot, Bordes i Bengio zastosowano ReLU dla wielowarstwowych perceptronów, a nie sieci konwekcyjnych. Poprzedni artykuł Jaka jest najlepsza architektura wieloetapowa do rozpoznawania obiektów przez Jarreta i innych z grupy NYU Yanna LeCuna zastosowała nieliniowości korygujące, ale dla jednostek sigmoidalnych, więc miały one funkcje aktywacyjne w postaci f(x)=|tanh(x)|, itp. W obu artykułach zaobserwowano, że stosowanie nieliniowości korygującej wydaje się wypełniać znaczną część luki między metodami czysto nadzorowanymi a metodami wstępnie nadzorowanymi bez nadzoru.

Kolejną innowacją jest to, że opracowaliśmy znacznie lepsze inicjalizacje dla sieci głębokich. Korzystając z pomysłu standaryzacji wariancji w różnych warstwach sieci, ustalono dobre ogólne zasady na przestrzeni lat. Jednym z pierwszych, najbardziej popularnych, było Glorot i Bengio Zrozumienie trudności szkolenia głębokich sieci feedforward, które umożliwiły inicjalizację głębokich sieci w ramach hipotezy aktywacji liniowej, a później - zgłębianie głębokich prostownikówprzez grupę członków zespołu Microsoft Research, którzy modyfikują inicjalizację wagi Glorot i Bengio, aby uwzględnić nieliniowości korygujące. Inicjalizacja wagi jest bardzo ważna w przypadku bardzo głębokich sieci. Dla sieci 30-warstwowej inicjalizacja masy MSR działała znacznie lepiej niż inicjalizacja wagi Glorot. Pamiętaj, że artykuł Glorot ukazał się w 2010 roku, a artykuł MSR ukazał się w 2015 roku.

Nie jestem pewien, czy artykuł ImageNet Classification with Deep Convolutional Neural Networks autorstwa Alexa Krizhevsky'ego, Ilyi Sutskever i Geoffa Hintona był pierwszym, który wykorzystał ReLU dla sieci konwekcyjnych, ale miał on największy wpływ. W tym artykule widzimy, że ReLU dla sieci konwekcyjnych przyspieszają naukę, o czym świadczy jeden z ich wykresów CIFAR-10, który pokazuje, że sieci ReLU mogą osiągać niższe wskaźniki błędów treningu szybciej niż sieci konwekcyjne inne niż ReLU. Te jednostki ReLU nie cierpią z powodu zanikających problemów związanych z gradientem / nasyceniem sigmoidalnym i mogą być używane do szkolenia znacznie głębszych sieci. Jedną z innych dużych innowacji było zastosowanie treningu Dropout, stochastycznego wstrzykiwania hałasu lub techniki uśredniania modelu (w zależności od twojego punktu widzenia), która pozwala nam trenować głębsze, większe sieci neuronowe dłużej bez nadmiernego dopasowania.

Innowacje konwekcyjne były kontynuowane w zawrotnym tempie, prawie wszystkie metody wykorzystujące ReLU (lub niektóre modyfikacje, takie jak PReLU z Microsoft Research), Dropout i szkolenia wyłącznie nadzorowane (SGD + Momentum, być może niektóre techniki adaptacyjnej szybkości uczenia się, takie jak RMSProp lub ADAGrad ).

Na dzień dzisiejszy wiele najwyżej działających sieci konwekcyjnych wydaje się mieć charakter wyłącznie nadzorowany. Nie oznacza to, że wstępne szkolenie lub stosowanie nienadzorowanych technik może nie być ważne w przyszłości. Ale niektóre niewiarygodnie głębokie sieci konwekcyjne zostały przeszkolone, dopasowały lub przewyższyły wydajność na poziomie człowieka w bardzo bogatych zestawach danych, wykorzystując jedynie nadzorowane szkolenie. W rzeczywistości uważam, że najnowsze zgłoszenie Microsoft Research do konkursu ImageNet 2015 miało 150 warstw. To nie jest literówka. 150

Jeśli chcesz używać wstępnego szkolenia bez nadzoru dla sieci konwekcyjnych, myślę, że najlepiej byłoby znaleźć zadanie, w którym „standardowe” nadzorowane szkolenie sieci konwekcyjnych nie sprawdza się tak dobrze i wypróbować wstępne szkolenie bez nadzoru.

W przeciwieństwie do modelowania w języku naturalnym, trudno jest znaleźć zadanie bez nadzoru, które pomaga w odpowiednim nadzorowanym zadaniu, jeśli chodzi o dane obrazu. Ale jeśli wystarczająco rozejrzysz się po Internecie, zobaczysz, że niektórzy z pionierów głębokiego uczenia się (Yoshua Bengio, Yann LeCun, by wymienić tylko kilka) mówią o tym, jak ważna ich zdaniem nauka bez nadzoru jest i będzie.

Indie AI
źródło
1
Widziałem w tutorialu Stanforda o ConvNet, że szkolenie wstępne odbywa się w splotowych sieciach neuronowych. tutaj jest link: cs231n.github.io/transfer-learning Czy są one różne? skoro faktycznie robią to samo, prawda?
Rika
2
Hej, przepraszam za spóźnioną odpowiedź. Uczenie się przez transfer odbywa się bardzo często. Jest on używany, aby uniknąć żmudnego zadania trenowania od zera, a zamiast tego korzystać z funkcji wyszkolonych w dużym zbiorze danych, takim jak ImageNet, a zamiast tego szkolimy tylko klasyfikator oprócz tych funkcji. Zaktualizowałem moją odpowiedź, aby sprecyzować, że w dzisiejszych czasach nie widzi się zbyt wiele wstępnych szkoleń bez nadzoru , co nie jest równoznaczne z uczeniem się przez transfer. Dziękuje za komentarz.
Indie AI
+1. Bardzo dobra odpowiedź. To, czego mi brakuje, to dyskusja lub komentarz na temat tego, czy to, co mówisz (tj. Że nie ma potrzeby wstępnego szkolenia) dotyczy konkretnie sieci neuronowych splotowych (jeśli tak, dlaczego?) Lub dowolnych sieci głębokich, w tym innych niż splotowe.
ameba mówi Przywróć Monikę
14

Jak można zrozumieć z powyższych odpowiedzi, szkolenie wstępne zostało „opracowane”, gdy wydarzyło się wiele rzeczy. Chcę jednak wyjaśnić moje rozumienie:

  1. Dawno temu w 2010 roku wszystkim zależało na treningu wstępnym. Oto świetny artykuł na ten temat , którego nie widziałem.
  2. Nieco wcześniej, zanim Alex Krizhevsky, Ilya Sutskever i Geoff Hinton opublikowali artykuł z imagenetem, ludzie nadal wierzyli, że cechy mają znaczenie, ale koncentrowali się głównie na uczeniu się bez nadzoru, a nawet na samokształceniu, aby je wytworzyć.
  3. Nietrudno zrozumieć, dlaczego - elementy składowe sieci neuronowych w tym czasie nie były tak solidne i bardzo powoli konwergowały się w użyteczne funkcje. Wiele razy nawet spektakularnie zawiodły. Trening wstępny był przydatny, gdy dysponujesz dużą ilością danych, możesz uzyskać dobrą inicjalizację SGD.
  4. Kiedy uruchomiono relu, sieci zbiegały się szybciej. Kiedy pojawiły się nieszczelne relu i nowsze rozwiązania, sieci neuronowe stały się bardziej niezawodnymi maszynami, jeśli chodzi o zbliżenie do realnego wyniku. Gorąco polecam, abyś zagrał ze świetną wersją demonstracyjną sieci neuronowych , którą napisał ten utalentowany googler , zobaczysz, o czym mówię.
  5. Przechodząc do naszej głównej kwestii, to nie znaczy, że jakaś forma szkolenia wstępnego nie jest ważna w głębokim uczeniu się. Jeśli chcesz uzyskać najnowocześniejsze wyniki, musisz wykonać wstępne przetwarzanie danych (na przykład ZCA) i odpowiednio wybrać początkowe wagi - to bardzo dobra praca na ten temat .

Widzisz, trening wstępny zmienił się w formę na wstępne przetwarzanie i inicjalizację wag, ale pozostał w funkcji i stał się bardziej elegancki.

Na koniec, uczenie maszynowe jest bardzo modne. Osobiście stawiam, jak Andrew Ng, że nauka bez nadzoru i samouków będzie dominować w przyszłości, więc nie róbcie z tego religii :)

Rhadar
źródło
13

Istnieje kilka dokumentów, ale nie tak bardzo jak autoencodery lub RBM. Myślę, że powodem jest linia czasu NN. Skumulowane RBM i autoencoder są wprowadzane odpowiednio w 2006 i 2007 roku. Po zatrudnieniu ReLU w 2009 r. Częściowe zaniechanie uczenia się bez nadzoru jest przerywane (gdy jest wystarczająca ilość danych, aby uczyć się w ramach bezpośredniego uczenia się nadzorowanego). Mimo że sieć Convolution (lub LeNet) została wynaleziona w 1989 roku , nie można jej było trenować tak głębokiej struktury aż do 2012 roku, czyli po popularyzacji bezpośredniego nadzorowanego uczenia się za pomocą ReLU. Więc naukowcy, jak sądzę, wyszkolili go głównie poprzez bezpośrednie uczenie się pod nadzorem.

yasin.yazici
źródło
Zgadzasz się więc, że nie ma jeszcze szkolenia wstępnego w głęboko splotowej sieci neuronowej?
RockTheStar
4
@RockTheStar nie, są, ale nie tak bardzo jak poprzednie dwa. research.microsoft.com/pubs/200804/CNN-Interspeech2013_pub.pdf to badanie wykorzystało to. Oto krótki cytat; „Zauważamy, że szkolenie wstępne poprawia zarówno DNN, jak i CNN, z wyjątkiem CNN w TIMIT, w którym szkolenie wstępne nie pomogło. Ogólnie rzecz biorąc, względna poprawa stosowania wstępnego szkolenia dla CNN jest mniejsza niż w DNN”.
yasin.yazici