Czy sieci neuronowe mają wyjaśnienie, podobnie jak drzewa decyzyjne?

13

W drzewach decyzyjnych możemy zrozumieć wynik struktury drzewiastej, a także możemy wizualizować, w jaki sposób drzewo decyzyjne podejmuje decyzje. Drzewa decyzyjne mają więc wyjaśnienie (ich wyniki można łatwo wyjaśnić).

Czy mamy wyjaśnienia w sieciach neuronowych, podobnie jak w drzewach decyzyjnych?

navya
źródło
1
Ostatnim szkieletem agnostycznym opartym na modelu jest model LIME .
Emre
W dziedzinie rozpoznawania / klasyfikacji obiektów za pomocą sieci neuronowych popularne są mapy cieplne do wizualizacji / wyjaśniania decyzji, na przykład na heatmapping.org . Dostępne są samouczki i interaktywne pokazy.
Nikolas Rieble

Odpowiedzi:

9

Nie zgadzam się z poprzednią odpowiedzią i twoją sugestią z dwóch powodów:

1) Drzewa decyzyjne opierają się na prostych decyzjach logicznych, które łącznie mogą podejmować bardziej złożone decyzje. ALE jeśli twoje dane wejściowe mają 1000 wymiarów, a wyuczone funkcje są wysoce nieliniowe, otrzymasz naprawdę duże i ciężkie drzewo decyzyjne, którego nie będziesz w stanie odczytać / zrozumieć tylko na podstawie węzłów.

2) Sieci neuronowe są podobne do tych w tym sensie, że funkcja, której się uczą, jest zrozumiała tylko wtedy, gdy są bardzo małe. Kiedy stajesz się duży, potrzebujesz innych sztuczek, aby je zrozumieć. Jak sugerował @SmallChess, możesz przeczytać ten artykuł zatytułowany Wizualizowanie i zrozumienie sieci splotowych, w którym wyjaśniono szczególny przypadek splotowych sieci neuronowych, w jaki sposób możesz odczytać wagi, aby zrozumieć rzeczy takie jak „wykrył samochód na tym zdjęciu, głównie z powodu koła, a nie pozostałe elementy ”.

Te wizualizacje pomogły wielu naukowcom faktycznie zrozumieć słabości ich architektur neuronowych i pomogły ulepszyć algorytmy szkoleniowe.

Rudzik
źródło
:-) Uważam, że sam artykuł jest trudniejszy do zrozumienia niż sama głęboka sieć splotowa. To bardzo matematyczna praca.
HelloWorld
1
Przepraszam, zacytowałem niewłaściwy artykuł :-) Właśnie go zmieniłem, ten jest bardziej graficzny, pomysł odwrócenia połączenia internetowego nie jest trudny, jeśli wiesz, jak działa sieć. W ten sam sposób głębokie marzenie Google wykorzystuje propagację wsteczną do wyświetlania określonego wyniku w przestrzeni wejściowej.
Robin
Istnieje wideo, w którym Matt Zeiler przedstawia wiele z tych pomysłów, zwane sieciami Deconconvolution
Alex
7

Nie. Sieć neuronowa jest ogólnie trudna do zrozumienia. Wymieniasz moc predykcyjną na złożoność modelu. Chociaż możliwe jest graficzne zobrazowanie wag NN, nie mówią one dokładnie, jak podejmowana jest decyzja. Powodzenia w próbach zrozumienia głębokiej sieci.

Istnieje popularny pakiet Python (i ma papier), który może modelować lokalnie NN za pomocą prostszego modelu. Możesz rzucić okiem.

https://github.com/marcotcr/lime

Witaj świecie
źródło
1
ha ha. Wiem jak to jest. uściski : D
Dawny33
0

https://arxiv.org/abs/1704.02685 zapewniają lokalne narzędzie wyjaśniania specyficzne dla NN: deep lift. Działa poprzez propagowanie różnicy w aktywacji między instancją, którą chcesz wyjaśnić, a instancją referencyjną. Uzyskanie referencji jest nieco trudne, ale narzędzie wydaje się ogólnie interpretowalne i skalowalne. Używamy go w danych tabelarycznych.

lcrmorin
źródło