Les réseaux de neurones ont-ils une explicabilité comme les arbres de décision?


13

Dans les arbres de décision, nous pouvons comprendre la sortie de l'arborescence et nous pouvons également visualiser la façon dont l'arbre de décision prend des décisions. Les arbres de décision sont donc explicables (leur sortie peut être expliquée facilement.)

Avons-nous une explicabilité dans les réseaux neuronaux comme avec les arbres de décision?


1
Un cadre récent indépendant du modèle est le modèle LIME .
Emre

Dans le domaine de la reconnaissance / classification d'objets à l'aide de réseaux de neurones, les cartes thermiques sont populaires pour visualiser / expliquer une décision comme dans heatmapping.org . Des tutoriels et des démonstrations interactives sont disponibles.
Nikolas Rieble

Réponses:


9

Je ne suis pas d'accord avec la réponse précédente et avec votre suggestion pour deux raisons:

1) Les arbres de décision sont basés sur des décisions logiques simples qui, combinées ensemble, peuvent prendre des décisions plus complexes. MAIS si votre entrée a 1000 dimensions et que les fonctionnalités apprises sont très non linéaires, vous obtenez un arbre de décision vraiment gros et lourd que vous ne pourrez pas lire / comprendre simplement en regardant les nœuds.

2) Les réseaux de neurones sont similaires à ceux dans le sens où la fonction qu'ils apprennent n'est compréhensible que s'ils sont très petits. Lorsque vous devenez gros, vous avez besoin d'autres astuces pour les comprendre. Comme l'a suggéré @SmallChess, vous pouvez lire cet article intitulé Visualiser et comprendre les réseaux convolutionnels qui explique dans le cas particulier des réseaux de neurones convolutionnels, comment vous pouvez lire les poids pour comprendre des choses comme "il a détecté une voiture sur cette image, principalement en raison de la roues, pas le reste des composants ".

Ces visualisations ont aidé de nombreux chercheurs à réellement comprendre les faiblesses de leurs architectures neuronales et à améliorer les algorithmes de formation.


:-) J'ai trouvé le document lui-même plus difficile à comprendre que le réseau convolutionnel profond lui-même. C'est un papier très mathématique.
HelloWorld

1
Désolé, j'ai cité le mauvais article :-) Je viens de le changer, celui-ci est plus graphique, l'idée d'inverser le convnet n'est pas vraiment difficile si vous savez comment fonctionnent les convnets. De la même manière, Google Deep Dream utilise la propagation arrière pour projeter une sortie particulière dans l'espace d'entrée.
Robin

Il y a une vidéo où Matt Zeiler développe un grand nombre de ces idées, intitulée Deconconvolution networks
Alex

7

Non. Le réseau neuronal est généralement difficile à comprendre. Vous échangez un pouvoir prédictif contre la complexité du modèle. Bien qu'il soit possible de visualiser graphiquement les poids NN, ils ne vous disent pas exactement comment une décision est prise. Bonne chance pour essayer de comprendre un réseau profond.

Il existe un package Python populaire (et il a un papier) qui peut modéliser un NN localement avec un modèle plus simple. Vous voudrez peut-être y jeter un œil.

https://github.com/marcotcr/lime


1
haha. Je sais ce que ça fait. câlins : D
Dawny33

0

https://arxiv.org/abs/1704.02685 fournit un outil d'explication local spécifique à NN: deep lift. Il fonctionne en propageant la différence d'activation entre l'instance que vous souhaitez expliquer et une instance de référence. Obtenir une référence est un peu délicat, mais l'outil semble globalement interprétable et évolutif. Nous l'utilisons sur des données tabulaires.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.