Problemy i alternatywy dla metod głębokiego uczenia się?


17

W ciągu ostatnich 50 lat wzrost / spadek / wzrost popularności sieci neuronowych działał jako coś w rodzaju „barometru” badań AI.

Z pytań na tej stronie jasno wynika, że ​​ludzie są zainteresowani zastosowaniem głębokiego uczenia się (DL) do szerokiej gamy trudnych problemów.

Mam zatem dwa pytania:

  1. Praktycy - Jakie są główne przeszkody w stosowaniu DL „od razu po wyjęciu z pudełka” do twojego problemu?
  2. Badacze - Jakich technik używasz (lub opracowałeś), które mogą pomóc rozwiązać praktyczne problemy? Czy mieszczą się w zakresie DL, czy oferują alternatywne podejście?

3
Jeśli masz dwa pytania, powinieneś zadać dwa pytania.
bpachev

1
Są wyraźnie powiązane.
NietzscheanAI

Odpowiedzi:


5

Podsumowując, w głębokim uczeniu się stosuje się dwa główne problemy.

  • Po pierwsze, obliczeniowo, jest wyczerpująca. Normalne procesory wymagają dużo czasu, aby wykonać nawet podstawowe obliczenia / szkolenie w trybie głębokiego uczenia. GPU są więc zalecane, jednak nawet w wielu sytuacjach mogą nie wystarczyć. Typowe modele głębokiego uczenia się nie wspierają teoretycznego czasu przebywania w wielomianach. Jeśli jednak przyjrzymy się stosunkowo prostszym modelom w ML dla tych samych zadań, zbyt często mamy matematyczne gwarancje, że czas szkolenia wymagany dla takich prostszych algorytmów jest w wielomiany. Dla mnie jest to prawdopodobnie największa różnica.

    Istnieją jednak rozwiązania, które mogą temu zaradzić. Jednym z głównych podejść jest optymalizacja algorytmów DL tylko do kilku iteracji (zamiast patrzeć na rozwiązania globalne w praktyce, wystarczy zoptymalizować algorytm do dobrego rozwiązania lokalnego, podczas gdy kryterium „dobrego” określa użytkownik).

  • Inną kwestią, która może być nieco kontrowersyjna dla młodych entuzjastów głębokiego uczenia się, jest to, że algorytmom głębokiego uczenia się brakuje teoretycznego zrozumienia i uzasadnienia. Głębokie sieci neuronowe są z powodzeniem stosowane w wielu sytuacjach, w tym rozpoznawania pisma odręcznego, przetwarzania obrazu, samochodów samobieżnych, przetwarzania sygnałów, NLP i analizy biomedycznej. W niektórych przypadkach nawet przekroczyli ludzi. Jednak powiedziawszy, nie są pod żadnym pozorem, teoretycznie tak solidne jak większość metod statystycznych.

    Nie będę wchodził w szczegóły, raczej pozostawiam to tobie. Istnieją zalety i wady dla każdego algorytmu / metodologii, a DL nie jest wyjątkiem. Jest to bardzo przydatne, co zostało udowodnione w wielu sytuacjach i każdy młody naukowiec musi nauczyć się przynajmniej podstaw DL. Jednak w przypadku stosunkowo prostych problemów lepiej jest stosować znane metody statystyczne, ponieważ mają one wiele teoretycznych wyników / gwarancji na ich poparcie. Co więcej, z punktu widzenia uczenia się, zawsze lepiej jest zacząć od prostych podejść i najpierw je opanować.


Przez „w wielomianach” masz na myśli „w czasie wielomianowym”, prawda? Czy masz referencję na poparcie tego?
NietzscheanAI

Tak, dokładnie o to mi chodzi. Jasne, można to udowodnić w wielu sytuacjach ... Zacznę od najprostszego możliwego przykładu, po prostu szkolenie sieci z trzema węzłami, a dwie warstwy to problem NP-Complete, jak pokazano tutaj. ( Citeseerx.ist.psu. edu / viewdoc /… ). Pamiętaj, że ten artykuł jest bardzo stary, a teraz mamy więcej pomysłów na poprawę w praktyce, z pewną heurystyką, ale teoretycznie nie ma lepszych wyników.
Sibghat Ullah

Kolejny fajny artykuł na ten sam temat, w którym opisano także kilka sztuczek mających na celu skrócenie czasu szkolenia w praktyce. ( pdfs.semanticscholar.org/9499/… )
Sibghat Ullah

Powiedzmy, że chcemy przewidzieć cenę za coś. Prosta regresja liniowa z najmniejszym kwadratowym dopasowaniem będzie miała czas wielomianowy, podczas gdy rozwiązanie tego samego problemu z sieciami neuronowymi (nawet najprostszymi z nich) spowoduje NP całkowity problem. To bardzo duża różnica. W końcu musisz ostrożnie wybrać algorytm dla określonego zadania. Na przykład dopasowanie metodą najmniejszego kwadratu ma określone założenia, które obejmują: „Idealną funkcję, której uczy się algorytm, można nauczyć się jako liniową kombinację cech”. Jeśli to założenie jest nieważne, osiągane są również wyniki.
Sibghat Ullah

Oczywiście, po prostu dlatego, że problem (w tym przypadku znalezienie optymalnych wag) jest NP-zupełny, samo w sobie nie oznacza, że ​​nie ma skutecznych praktycznych metod znajdowania dobrych ciężarów ...
NietzscheanAI

5

Mam bardzo małe doświadczenie z ML / DL, aby nazwać siebie praktykiem, ale oto moja odpowiedź na pierwsze pytanie:

U podstawy DL dobrze rozwiązuje zadanie klasyfikacji. Nie każdy praktyczny problem można przeformułować pod względem klasyfikacji. Domena klasyfikacji musi być znana z góry. Chociaż klasyfikację można zastosować do dowolnego rodzaju danych, konieczne jest przeszkolenie NN z próbkami konkretnej domeny, w której zostanie zastosowana. Jeśli domena zostanie w pewnym momencie przełączona, zachowując ten sam model (struktura NN), będzie trzeba ją ponownie przeszkolić z nowymi próbkami. Co więcej, nawet najlepsi klasyfikatorzy mają „luki” - przykłady przeciwników można łatwo skonstruować na podstawie próbki treningowej, tak że zmiany są niewidoczne dla człowieka, ale błędnie sklasyfikowane przez wyszkolony model.


2
„Klasyfikację” można uznać za szczególny przypadek „regresji”, co prawdopodobnie jest zatem lepszą charakterystyką DL.
NietzscheanAI

3

Pytanie 2. Badam, czy obliczenia hiperwymiarowe są alternatywą dla głębokiego uczenia się. Hyper-D używa bardzo długich wektorów bitowych (10 000 bitów) do kodowania informacji. Wektory są losowe i jako takie są w przybliżeniu ortogonalne. Poprzez grupowanie i uśrednianie zbioru takich wektorów można utworzyć „zbiór”, a następnie zapytać, czy nieznany wektor należy do zbioru. Zestaw można uznać za koncept lub ogólny obraz itp. Trening jest bardzo szybki, podobnie jak rozpoznanie. To, co należy zrobić, to zasymulować domeny, w których Deep Learning się powiodło, i porównać z nim Hyper-D.


Ciekawy. Czym więc różni się to od „rzadkiej pamięci rozproszonej” Kanervy?
NietzscheanAI

Oba są opracowane przez Pentti Kanerva. Wyszukaj Obliczenia hiperwymiarowe, aby zobaczyć różnicę. Zbyt długo, aby odpowiedzieć tutaj.
Douglas G Danforth

1

Z matematycznego punktu widzenia jednym z głównych problemów w głębokich sieciach z kilkoma warstwami są zanikające lub niestabilne gradienty . Każda dodatkowa ukryta warstwa uczy się znacznie wolniej, prawie niwelując korzyści z dodatkowej warstwy.

Nowoczesne metody głębokiego uczenia się mogą poprawić to zachowanie, ale w prostych, staromodnych sieciach neuronowych jest to dobrze znany problem. Można znaleźć również pisemną analizę tutaj do głębszej analizy.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.