Nie widziałem dokładnie takiego pytania i dlatego zadaję nowe pytanie.
To, co mnie interesuje, to nie definicja sieci neuronowej, ale zrozumienie faktycznej różnicy z głęboką siecią neuronową.
Więcej kontekstu: wiem, czym jest sieć neuronowa i jak działa propagacja wsteczna. Wiem, że DNN musi mieć wiele ukrytych warstw. Jednak 10 lat temu w klasie dowiedziałem się, że posiadanie kilku warstw lub jednej warstwy (nie licząc warstw wejściowych i wyjściowych) było równoważne pod względem funkcji, które sieć neuronowa jest w stanie reprezentować (patrz uniwersalne twierdzenie aproksymacyjne Cybenko ) i że posiadanie im więcej warstw, tym bardziej skomplikowana jest analiza bez wzrostu wydajności. Oczywiście tak już nie jest.
Przypuszczam, że może niesłusznie, że różnice dotyczą raczej algorytmu uczenia i właściwości niż struktury, dlatego naprawdę doceniłbym, gdyby odpowiedź mogła podkreślić przyczyny, które umożliwiły przejście do DNN (np. Dowód matematyczny lub losowa gra z sieciami) ?) i pożądane (np. szybkość konwergencji?)
źródło
Odpowiedzi:
Zacznijmy od trywialnej: Głęboka sieć neuronowa jest po prostu siecią przekazującą z wieloma ukrytymi warstwami.
To mniej więcej wszystko, co można powiedzieć o definicji. Sieci neuronowe mogą być cykliczne lub sprzężone zwrotnie; te z wyprzedzeniem nie mają żadnych pętli na wykresie i można je układać w warstwach. Jeśli istnieje „wiele” warstw, to mówimy, że sieć jest głęboka .
Jak wiele warstw ma sieć mieć w celu zakwalifikowania się jako głęboko? Nie ma jednoznacznej odpowiedzi na to pytanie (to trochę tak, jakby zapytać, ile ziaren tworzy stos ), ale zwykle posiadanie dwóch lub więcej ukrytych warstw liczy się jako głębokie. Natomiast sieć z tylko jedną ukrytą warstwą jest tradycyjnie nazywana „płytką”. Podejrzewam, że nastąpi tu inflacja, a za dziesięć lat ludzie mogą pomyśleć, że wszystko z mniej niż, powiedzmy, dziesięcioma warstwami jest płytkie i nadaje się tylko do ćwiczeń w przedszkolu. Nieformalnie „głęboka” sugeruje, że sieć jest trudna w obsłudze.
Oto dostosowana stąd ilustracja :
Ale prawdziwym pytaniem, które zadajesz, jest oczywiście: dlaczego posiadanie wielu warstw byłoby korzystne?
Myślę, że dość zadziwiającą odpowiedzią jest to, że nikt tak naprawdę nie wie. Istnieje kilka typowych wyjaśnień, które pokrótce omówię poniżej, ale żadne z nich nie zostało w przekonujący sposób udowodnione, że jest prawdziwe i nie można nawet być pewnym, że posiadanie wielu warstw jest naprawdę korzystne.
Mówię, że jest to zdumiewające, ponieważ głębokie uczenie się jest bardzo popularne, co roku bije wszelkie rekordy (od rozpoznawania obrazów, przez grę Go, po automatyczne tłumaczenie itp.), Jest wykorzystywane przez przemysł itp. Itd. I nadal nie jesteśmy całkiem pewni, dlaczego to działa tak dobrze.
Swoją dyskusji na temat głębokiego Uczenie książki Goodfellow, Bengio i Courville który wyszedł w 2017 roku i jest powszechnie uważany za książka o głębokiej nauki. (Jest dostępny bezpłatnie online.) Odpowiednia sekcja to 6.4.1 Uniwersalne właściwości i głębokość aproksymacji .
Ty to napisałeś
Musisz odwoływać się do tak zwanego uniwersalnego twierdzenia aproksymacyjnego , udowodnionego przez Cybenko w 1989 r. I uogólnionego przez różnych ludzi w latach 90. Mówi w zasadzie, że płytka sieć neuronowa (z 1 ukrytą warstwą) może aproksymować dowolną funkcję, czyli w zasadzie może się wszystkiego nauczyć . Dotyczy to różnych nieliniowych funkcji aktywacyjnych, w tym rektyfikowanych jednostek liniowych, z których korzysta obecnie większość sieci neuronowych (w tym podręczniku Leshno i in. 1993 ).
Jeśli tak, to dlaczego wszyscy używają sieci głębokich?
Naiwna odpowiedź brzmi: ponieważ działają lepiej. Oto rysunek z książki Deep Learning, który pokazuje, że pomaga mieć więcej warstw w jednym konkretnym zadaniu, ale to samo zjawisko często obserwuje się w różnych zadaniach i domenach:
Wiemy, że płytka sieć może działać równie dobrze, jak te głębsze. Ale tak nie jest; i zwykle nie. Pytanie brzmi --- dlaczego? Możliwe odpowiedzi:
Książka Deep Learning opowiada się za punktorem nr 1 i nr 3. Po pierwsze, argumentuje, że liczba jednostek w płytkiej sieci rośnie wykładniczo wraz ze złożonością zadań. Aby płytka sieć była użyteczna, może być bardzo duża; być może znacznie większy niż głęboka sieć. Opiera się to na wielu dokumentach wykazujących, że płytkie sieci w niektórych przypadkach potrzebują wykładniczo wielu neuronów; ale to, czy np. klasyfikacja MNIST czy gra Go to takie przypadki, nie jest do końca jasne. Po drugie, książka mówi:
Myślę, że obecny „konsensus” jest taki, że jest to kombinacja punktów 1 i 3: w rzeczywistych zadaniach głęboka architektura jest często korzystna, a płytka architektura byłaby nieefektywna i wymagałaby znacznie większej liczby neuronów dla tej samej wydajności.
Ale nie jest to udowodnione. Rozważ np. Zagoruyko i Komodakis, 2016, Wide Residual Networks . Pozostałe sieci z ponad 150 warstwami pojawiły się w 2015 roku i wygrały różne konkursy rozpoznawania obrazów. Był to duży sukces i wyglądał jak przekonujący argument na rzecz głębi; oto jedna postać z prezentacji pierwszego autora na resztkowym papierze sieciowym (zauważ, że czas mylnie idzie tutaj w lewo):
Ale powyższy dokument pokazuje, że „szeroka” sieć resztkowa z „tylko” 16 warstwami może przewyższać „głęboką” sieć z ponad 150 warstwami. Jeśli to prawda, wówczas cały punkt powyższej figury załamuje się.
A może Ba i Caruana, 2014: Czy sieci głębokie naprawdę muszą być głębokie? :
Jeśli to prawda, oznaczałoby to, że prawidłowe wyjaśnienie jest raczej moją kulą # 2, a nie # 1 lub # 3.
Jak powiedziałem - nikt tak naprawdę nie jest tego pewien.
Uwagi końcowe
Postęp osiągnięty w głębokim uczeniu się w ciągu ostatnich 10 lat jest naprawdę niesamowity, ale większość tego postępu osiągnięto metodą prób i błędów, a nadal brakuje nam bardzo podstawowego zrozumienia, co dokładnie sprawia , że sieci głębokie działają tak dobrze. Nawet lista rzeczy, które ludzie uważają za kluczowe dla ustanowienia skutecznej głębokiej sieci, wydaje się zmieniać co kilka lat.
Renesans głęboka nauka rozpoczęła się w 2006 roku, kiedy Geoffrey Hinton (który pracuje w sieciach neuronowych do 20+ lat bez większego zainteresowania ze strony innych) opublikował kilka papierów przełomowych oferuje skuteczny sposób trenowania głębokie sieci ( papier Science , Neural papier obliczeń ) . Sztuczka polegała na tym, aby przed rozpoczęciem opadania gradientu stosować bez nadzoru trening wstępny . Dokumenty te zrewolucjonizowały tę dziedzinę i przez kilka lat ludzie uważali, że kluczem jest bezobsługowy wstępny trening.
Następnie w 2010 r. Martens wykazał, że głębokie sieci neuronowe można trenować metodami drugiego rzędu (tak zwanymi metodami wolnymi od Hesji) i że mogą one przewyższać sieci szkolone przez szkolenie wstępne: Głębokie uczenie się dzięki optymalizacji wolnej od Hesji . Następnie w 2013 r. Sutskever i in. pokazał, że stochastyczne zejście gradientowe z kilkoma bardzo sprytnymi sztuczkami może przewyższyć metody wolne od Hesji: o znaczeniu inicjalizacji i rozmachu w głębokim uczeniu się . Około 2010 r. Ludzie zdali sobie sprawę, że zastosowanie rektyfikowanych jednostek liniowych zamiast jednostek sigmoidalnych stanowi ogromną różnicę dla spadku gradientu. Rezygnacja pojawiła się w 2014 r. Pozostałe sieci pojawiły się w 2015 r. Ludzie wciąż wymyślają coraz bardziej skuteczne sposoby szkolenia głębokich sieci ito, co 10 lat temu wydawało się kluczowym wglądem, dziś jest dziś często uciążliwe. Wszystko to w dużej mierze wynika z prób i błędów, a wiedza na temat tego, co sprawia, że niektóre rzeczy działają tak dobrze, a niektóre nie, jest niewielka . Trening głębokich sieci jest jak wielki worek sztuczek. Udane lewy są zwykle zracjonalizowane post factum.
Nie wiemy nawet, dlaczego głębokie sieci osiągają plateau wydajności; zaledwie 10 lat ludzie obwiniali lokalne minima, ale obecnie uważa się, że nie o to chodzi (kiedy płaskowyże występów gradienty zwykle pozostają duże). To jest takie podstawowe pytanie dotyczące sieci głębokich i nawet o tym nie wiemy .
Aktualizacja: To mniej więcej temat rozmowy NIPS 2017 Ali Rahimi na temat uczenia maszynowego jako alchemii: https://www.youtube.com/watch?v=Qi1Yry33TQE .
[Ta odpowiedź została całkowicie przepisana w kwietniu 2017 r., Więc niektóre poniższe komentarze nie mają już zastosowania.]
źródło
Jak dotąd dobra odpowiedź, choć jest kilka rzeczy, o których nikt tu nie wspominał, oto moje 0,02 $
Odpowiem tylko w formie opowieści, powinno sprawić, że wszystko będzie bardziej zabawne i jasne. Nie ma tutaj. W trakcie tego procesu powinieneś być w stanie zrozumieć, na czym polega różnica.
Istnieje wiele powodów, dla których DNN iskrzyły, kiedy to zrobiły (gwiazdy musiały się zrównać, podobnie jak wszystkie podobne rzeczy, to tylko kwestia właściwego miejsca, właściwego czasu itp.).
Jednym z powodów jest dostępność danych, dużo danych (dane oznaczone). Jeśli chcesz być w stanie uogólnić i nauczyć się czegoś takiego jak „ogólne priory” lub „uniwersalne priory” (zwane też podstawowymi elementami składowymi, które można ponownie wykorzystać między zadaniami / aplikacjami), potrzebujesz dużej ilości danych. I dzikie dane, dodam, nie sterylne zestawy danych starannie zapisane w laboratorium z kontrolowanym oświetleniem i tak dalej. Mechaniczny Turek umożliwił to (etykietowanie).
Po drugie, możliwość szybszego szkolenia większych sieci przy użyciu układów GPU przyspieszyła eksperymenty. Jednostki ReLU przyspieszyły obliczenia również i zapewniły ich regularyzację, ponieważ trzeba było użyć większej liczby jednostek w jednej warstwie, aby móc skompresować te same informacje, ponieważ warstwy były teraz bardziej rzadkie, więc dobrze poszło z rezygnacją. Pomogli też w ważnym problemie, który występuje, gdy układasz wiele warstw. Więcej o tym później. Różne liczne sztuczki, które poprawiły wydajność. Jak użycie mini-partii (co w rzeczywistości szkodzi końcowemu błędowi) lub zwojów (które w rzeczywistości nie wychwytują tak dużej wariancji jak lokalne pola odbiorcze), ale są obliczeniowo szybsze.
W międzyczasie ludzie zastanawiali się, czy podobają im się bardziej chude lub bardziej pucołowate, mniejsze lub wyższe, z piegami lub bez, itp. Optymalizacja była taka, że syczą, czy hukają, więc badania zmierzały w kierunku bardziej złożonych metod treningu, takich jak gradient sprzężony i metoda Newtona, w końcu wszyscy zdali sobie sprawę, że nie ma darmowego lunchu. Sieci pękały.
Tym, co spowolniło, był znikający problem z gradientem . Ludzie szli jak: whoa, to daleko, stary! W skrócie oznacza to, że trudno było wyregulować błąd na warstwach bliższych wejściom. Gdy dodajesz więcej warstw do ciasta, robi się zbyt chwiejne. Nie można ponownie propagować znaczącego błędu z powrotem do pierwszych warstw. Im więcej warstw, tym gorzej. Porażka.
Niektóre osoby doszły do wniosku, że zastosowanie entropii krzyżowej jako funkcji utraty (cóż, znowu, klasyfikacja i rozpoznawanie obrazów) zapewnia pewnego rodzaju regularyzację i pomaga zapobiegać nasyceniu sieci, a z kolei gradient nie był w stanie tak dobrze ukryć.
Co sprawiło, że wszystko stało się możliwe, to szkolenie wstępne dla poszczególnych warstw przy użyciu metod bez nadzoru. Zasadniczo bierzesz kilka auto-koderów i uczysz się coraz mniej abstrakcyjnych reprezentacji, gdy zwiększasz współczynnik kompresji. Wagi z tych sieci zostały użyte do zainicjowania nadzorowanej wersji. To rozwiązało problem znikającego gradientu w inny sposób: już zaczynasz nadzorowany trening z dużo lepszej pozycji początkowej. Więc wszystkie inne sieci wstały i zaczęły się buntować. Ale sieci i tak wymagały nadzoru, w przeciwnym razie nie byłoby możliwe utrzymanie dużych zbiorów danych.
Teraz ostatnia część, która w końcu prowadzi do twojej odpowiedzi, która jest zbyt złożona, aby w skrócie: dlaczego więcej warstw, a nie tylko jedna. Ponieważ możemy! oraz ponieważ deskryptory kontekstu i niezmiennika. i baseny.
Oto przykład: masz zestaw danych obrazów, jak zamierzasz trenować plan NN przy użyciu tych danych? Cóż, naiwnie, weźmy powiedzmy każdy wiersz i łączymy go w jeden długi wektor i to jest twój wkład. Czego się uczysz? Cóż, niektóre rozmyte nonsensowne funkcje, które mogą nie wyglądać niczym, z powodu wielu różnych typów wariancji zawartych w obiektach na obrazie i nie można odróżnić istotnych i nieistotnych rzeczy. W pewnym momencie sieć musi zapomnieć, aby móc ponownie nauczyć się nowych rzeczy. Więc jest problem z pojemnością. Jest to bardziej nieliniowa dynamika, ale intuicja polega na tym, że musisz zwiększyć liczbę neuronów, aby móc włączyć więcej informacji do swojej sieci.
Chodzi o to, że jeśli po prostu wprowadzisz obraz jako jeden element, dodanie dodatkowych warstw nie zrobi dla ciebie zbyt wiele, ponieważ nie jesteś w stanie nauczyć się abstrakcji , co jest bardzo ważne. Holistyczne podejście nie działa więc tak dobrze, chyba że robisz prostsze rzeczy z siecią, takie jak skupianie się na określonym typie obiektu, więc ograniczasz się do jednej klasy i wybierasz niektóre globalne właściwości jako cel klasyfikacji.
Co jest do zrobienia? Spójrz na krawędź ekranu i spróbuj przeczytać ten tekst. Problem? Choć jest to głupie, musisz spojrzeć na to, co czytasz. W przeciwnym razie jest zbyt rozmyte / rozdzielczość nie jest wystarczająca / ziarnistość. Nazwijmy obszar ostrości polem recepcyjnym. Sieci również muszą być w stanie się skupić. Zasadniczo zamiast używać całego obrazu jako danych wejściowych, przesuwasz przesuwane okno wzdłuż obrazu, a następnie używasz go jako danych wejściowych do sieci (nieco mniej stochastycznych niż to, co robią ludzie). Teraz masz również możliwość uchwycenia korelacji między pikselami, a tym samym obiektami, a także możesz odróżnić śpiącego kota siedzącego na kanapie i odwróconego skoku na bungee kota. Zgrabna, przywrócona wiara w ludzkość. Sieć może uczyć się lokalnych abstrakcji na obrazie na wielu poziomach. Sieć uczy się filtrów,
Podsumowując: pola receptywne / zwoje, nienadzorowana inicjalizacja, rektyfikowane jednostki liniowe, zanikanie lub inne metody regularyzacji. Jeśli podchodzisz do tego bardzo poważnie, polecam przyjrzeć się głębokiemu uczeniu się Schmidhubera w sieciach neuronowych: przegląd tutaj jest adres URL przedruku http://arxiv.org/abs/1404.7828
I pamiętaj: duża nauka, głębokie dane. Słowo.
źródło
Mówiąc ogólnie, główna różnica w stosunku do klasycznych sieci neuronowych polega na tym, że mają one znacznie więcej ukrytych warstw.
Chodzi o to, aby dodać etykiety do warstw, aby utworzyć kilka warstw abstrakcji:
Na przykład głęboka sieć neuronowa do rozpoznawania obiektów :
Możesz znaleźć dobre wyjaśnienie tego pytania w Quora .
A jeśli jesteś zainteresowany tym tematem, chciałbym rzucić okiem na tę książkę .
źródło
Na początku trochę mnie również myliła różnica między sieciami neuronowymi (NN) a głębokimi sieciami neuronowymi (DNN), jednak niestety „głębokość” odnosi się tylko do liczby parametrów i warstw. Możesz to potraktować jako zmianę marki w ramach tak zwanej „kanadyjskiej mafii”.
Kilka lat temu miałem również sieci neuronowe jako część klasy i robiliśmy rozpoznawanie cyfr, aproksymację fal i podobne aplikacje, używając NN, który miał wiele ukrytych warstw i wyjść oraz cały ten jazz, który ma DNN. Jednak wtedy nie mieliśmy mocy obliczeniowej.
Powodem, dla którego przejście do DNN było możliwe i pożądane, są postępy w rozwoju sprzętu. Mówiąc najprościej, teraz możemy obliczać więcej, szybciej i bardziej równolegle (DNN na GPU), podczas gdy wcześniej czas był wąskim gardłem dla NN.
Jak wspomniano na stronie Wikipedii poświęconej głębokiemu uczeniu się , część „głęboka” odnosi się głównie do tego, że cechy oddziałują w sposób nieliniowy na wielu warstwach, a zatem wykonuje wyodrębnianie i przekształcanie elementów. Dokonano tego również w standardowych NN, jednak w mniejszej skali.
Na tej samej stronie, tutaj masz definicja "Głęboka sieć neuronowa (DNN) jest sztuczne sieci neuronowe (ANN) z wielu warstw ukrytych jednostek między warstwami wejściowych i wyjściowych.
źródło
O ile mi wiadomo, tak zwana dzisiejsza Deep Neural Network (DNN) nie różni się zasadniczo ani filozoficznie od starej standardowej sieci neuronowej (NN). Chociaż teoretycznie można aproksymować dowolny NN za pomocą płytkiego NN z tylko jedną ukrytą warstwą, nie oznacza to jednak, że obie sieci będą działały podobnie, gdy będą szkolone przy użyciu tego samego algorytmu i danych treningowych. W rzeczywistości rośnie zainteresowanie szkoleniem płytkich sieci, które działają podobnie do sieci głębokich. Jest to jednak możliwe dzięki szkoleniu najpierw głębokiej sieci, a następnie szkoleniu płytkiej sieci naśladowaniakońcowy wynik (tj. wynik przedostatniej warstwy) głębokiej sieci. Widzisz, głębokie architektury sprzyjają temu, że dzisiejsze techniki treningowe (propagacja wsteczna) działają lepiej, gdy neurony są ułożone w hierarchiczną strukturę.
Kolejne pytanie, które można zadać, to: dlaczego sieci neuronowe (w szczególności DNN) stały się nagle tak popularne. Według mnie, magiczne składniki, które ostatnio stały się tak popularne w DNN, to:
A. Ulepszone zestawy danych i możliwości przetwarzania danych
1. Udostępniono zestawy danych na dużą skalę z milionami różnorodnych zdjęć
2. Szybka implementacja GPU została udostępniona publicznie
B. Ulepszone algorytmy szkoleniowe i architektury sieciowe
1. Rektyfikowane jednostki liniowe (ReLU) zamiast sigmoidu lub tanh
2. Głębokie architektury sieci ewoluowały przez lata
A-1) Do niedawna, przynajmniej w Computer Vision, nie mogliśmy trenować modeli na milionach oznaczonych obrazów; po prostu dlatego, że zestawy danych o takiej wielkości nie istniały. Okazuje się, że oprócz liczby obrazów ziarnistość zestawu etykiet jest również bardzo ważnym czynnikiem decydującym o sukcesie DNN (patrz ryc. 8 w tym artykule Azizpour i in.).
A-2) Wiele wysiłku inżynieryjnego włożono w umożliwienie szkolenia DNN, które dobrze sprawdzają się w praktyce, w szczególności nadejście implementacji GPU. Jedna z pierwszych udanych implementacji DNN GPU, działa na dwóch równoległych GPU; jednak szkolenie DNN zajmuje około tygodnia na 1,2 miliona obrazów 1000 kategorii przy użyciu wysokiej klasy procesorów graficznych (patrz ten artykuł autorstwa Kriżewskiego i in.).
B-1) Zastosowanie prostych rektyfikowanych jednostek liniowych (ReLU) zamiast funkcji sigmoidalnych i tanh jest prawdopodobnie największym elementem składowym umożliwiającym szkolenie DNN. Zauważ, że funkcje sigmoidalne i tanh mają prawie zerowy gradient prawie wszędzie, w zależności od tego, jak szybko przechodzą od niskiego poziomu aktywacji do wysokiego; w skrajnym przypadku, gdy przejście jest nagłe, otrzymujemy funkcję kroku, która ma nachylenie zero wszędzie, z wyjątkiem jednego punktu, w którym następuje przejście.
B-2) Historia rozwoju architektur sieci neuronowych na przestrzeni lat przypomina mi, w jaki sposób ewolucja zmienia strukturę organizmu w przyrodzie. Udostępnianie parametrów (np. W warstwach splotowych), regularyzacja porzucania, inicjalizacja, harmonogram tempa uczenia się, buforowanie przestrzenne, podpróbkowanie w głębszych warstwach i wiele innych sztuczek, które są obecnie uważane za standardowe w szkoleniu DNN zostały opracowane, ewoluowane, dostosowane do potrzeb lat, aby szkolenie głębokich sieci było możliwe tak, jak jest dzisiaj.
źródło
Różnica między „głębokim” NN a standardowym NN jest czysto jakościowa: nie ma definicji tego, co oznacza „głęboki”. „Głębokie” może oznaczać wszystko, od bardzo wyrafinowanych architektur używanych przez Google, Facebooka i współpracowników, które mają 50-80 lub więcej warstw, po 2 architektury ukryte (łącznie 4 warstwy). Nie zdziwiłbym się, gdybyś mógł znaleźć artykuły, które twierdzą, że uczą się na głębokim poziomie za pomocą jednej ukrytej warstwy, ponieważ „głęboki” niewiele znaczy.
„Sieć neuronowa” to także słowo, które nie ma bardzo precyzyjnego znaczenia. Obejmuje niezwykle duży zestaw modeli, od losowych maszyn boltzmana (które są nieukierunkowanymi grafami) do architektur z różnymi funkcjami aktywacyjnymi. Większość NN będzie trenowana przy użyciu backprop, ale nie musi tak być, więc nawet algorytmy szkoleniowe nie są bardzo jednorodne.
Ogólnie rzecz biorąc, głębokie uczenie się, głębokie NN i NN stały się słowami kluczowymi, które wychwytują wiele podejść.
Dobre odniesienia wprowadzające do „tego, co się zmieniło”: Dogłębne uczenie się reprezentacji: Patrząc w przyszłość , Bengio, 2013 to dobra recenzja + perspektywa na przyszłość. Zobacz także: Czy głębokie sieci naprawdę muszą być głębokie? Ba i Caruana, 2013, które pokazują, że głęboka głębia może nie być przydatna do reprezentacji, ale do nauki.
źródło
Aby rozwinąć odpowiedź Davida Gasqueza, jedną z głównych różnic między głębokimi sieciami neuronowymi a tradycyjnymi sieciami neuronowymi jest to, że nie używamy po prostu propagacji wstecznej dla głębokich sieci neuronowych.
Dlaczego? Ponieważ propagacja wsteczna trenuje późniejsze warstwy bardziej efektywnie niż trenuje wcześniejsze warstwy - w miarę postępów w sieci wcześniej błędy stają się mniejsze i bardziej rozproszone. Tak więc sieć dziesięciowarstwowa będzie w zasadzie składać się z siedmiu warstw losowych wag, po których następują trzy warstwy dopasowanych wag, i będzie równie dobrze jak sieć trójwarstwowa. Zobacz tutaj po więcej.
Przełomem koncepcyjnym jest więc traktowanie oddzielnych problemów (warstw oznakowanych) jako oddzielnych problemów - jeśli najpierw spróbujemy rozwiązać problem budowy ogólnie dobrej pierwszej warstwy, a następnie spróbujemy rozwiązać problem budowy ogólnie dobrej drugiej warstwy, w końcu będziemy mieli głęboką przestrzeń funkcji, którą będziemy mogli wykorzystać do rozwiązania naszego rzeczywistego problemu.
źródło
NN:
DNN:
Przejście do DNN wynika z trzech niezależnych przełomów, które miały miejsce w 2006 r.
Jeśli chodzi o twierdzenia na temat NN, to pytanie odnosi się do:
źródło
Myślę, że powinieneś cofnąć się i zobaczyć, że spowodowało to odrodzenie się w płytkiej sztucznej inteligencji - np. Worek słów do analizy sentymentów i innych aplikacji językowych, a wizualna worek słów była wiodącym podejściem do rozpoznawania obrazów przed DNN. Nikt nie mówi, że worek słów to prawdziwy model języka, ale jest to skuteczne rozwiązanie inżynierskie. Powiedziałbym więc, że DNN to lepszy „wizualny worek słów” - patrz np. Szegedy i in. 2013 Intrygujące właściwości sieci neuronowych i Nguyen i in. Głębokie sieci neuronowe można łatwo oszukać: przewidywania o wysokim poziomie pewności dla nierozpoznawalnych obrazów, w których jasne jest, że nie uczymy się struktur wyższego rzędu itp. (Lub cokolwiek, co jest twierdzone dla DNN).
źródło
Źródło: Arno Candel
źródło