Signification d'un réseau neuronal comme boîte noire?

19

J'entends souvent les gens parler des réseaux de neurones comme d'une boîte noire que vous ne comprenez pas ce qu'ils font ou ce qu'ils signifient. En fait, je ne peux pas comprendre ce qu'ils veulent dire par là! Si vous comprenez comment fonctionne la rétropropagation, alors comment est-ce une boîte noire?

Signifient-ils que nous ne comprenons pas comment les poids qui ont été calculés ou quoi?

Jack Twain
la source
1
Peut-être que cela aiderait: colah.github.io/posts/2014-03-NN-Manifolds-Topology Cet article tente de découvrir le mécanisme sous-jacent des réseaux de neurones d'un point de vue topologique, il offre de nombreuses idées brillantes pour expliquer les performances de les réseaux de neurones.
Sol
J'aime ajouter un point à Jack, quand on regarde le MLP du point de vue de l'apprentissage automatique, les réseaux de neurones ne sont plus une boîte noire. Avec une fonction sigmoïde simple, nous pourrons interpréter la relation d'entrée et de sortie avec une équation.

Réponses:

37

Un réseau de neurones est une boîte noire dans le sens où bien qu'il puisse approximer n'importe quelle fonction, étudier sa structure ne vous donnera aucune idée de la structure de la fonction approchée.

À titre d'exemple, une utilisation courante des réseaux de neurones dans le secteur bancaire est de classer les prêteurs parmi les «bons payeurs» et les «mauvais payeurs». Vous disposez d'une matrice de caractéristiques d'entrée (sexe, âge, revenu, etc.) et d'un vecteur de résultats ("par défaut", "non par défaut", etc.). Lorsque vous modélisez cela à l'aide d'un réseau neuronal, vous supposez qu'il existe une fonction , au sens propre d'une fonction mathématique. Cette fonction f peut être arbitrairement complexe et peut changer en fonction de l'évolution de l'entreprise, vous ne pouvez donc pas la dériver à la main.CRF(C)=R

Ensuite, vous utilisez le réseau neuronal pour construire une approximation de qui a un taux d'erreur acceptable pour votre application. Cela fonctionne et la précision peut être arbitrairement petite - vous pouvez étendre le réseau, affiner ses paramètres d'entraînement et obtenir plus de données jusqu'à ce que la précision atteigne vos objectifs.F

Le problème de la boîte noire est le suivant: l'approximation donnée par le réseau de neurones ne vous donnera aucune idée de la forme de f. Il n'y a pas de lien simple entre les poids et la fonction en cours d'approximation. Même l'analyse de la caractéristique d'entrée non pertinente est un problème ouvert (voir ce lien ).

De plus, d'un point de vue statistique traditionnel, un réseau de neurones est un modèle non identifiable: étant donné un ensemble de données et une topologie de réseau, il peut y avoir deux réseaux de neurones avec des poids différents et le même résultat. Cela rend l'analyse très difficile.

À titre d'exemple de «modèles non noirs» ou de «modèles interprétables», vous disposez d'équations de régression et d'arbres de décision. Le premier vous donne une approximation sous forme fermée de f où l'importance de chaque élément est explicite, le second est une description graphique de certains rapports risques / odds relatifs.

Lucas Gallindo
la source
Comme il s'agit d'une ancienne réponse, il peut être utile pour certains de fournir des outils récemment développés: «L'approximation donnée par le réseau de neurones ne vous donnera aucune idée de la forme de f» - je dirais que SHAP fait maintenant un excellent travail d'explication du modèle, même pour les réseaux de neurones. "Même l'analyse de la caractéristique d'entrée non pertinente est un problème ouvert" - des mothods comme l'importance de la permutation, ainsi que SHAP, s'attaquent maintenant assez bien à ce problème.
Bobson Dugnutt
3

Google a publié Inception-v3 . C'est un réseau neuronal (NN) pour l'algorithme de classification d'image (raconter un chat à un chien).

Dans l'article, ils parlent de l'état actuel de la classification des images

Par exemple, GoogleNet n'utilisait que 5 millions de paramètres, ce qui représentait une réduction de 12 fois par rapport à son prédécesseur AlexNet, qui utilisait 60 millions de paramètres. De plus, VGGNet employait environ 3 fois plus de paramètres qu'AlexNet

et c'est essentiellement pourquoi nous appelons NN pour les boîtes noires. Si je forme un modèle de classification d'images - avec 10 millions de paramètres - et que je vous le remets. Que pouvez-vous en faire?

Vous pouvez certainement l'exécuter et classer les images. Cela fonctionnera très bien! Mais vous ne pouvez répondre à aucune des questions suivantes en étudiant tous les poids, les biais et la structure du réseau.

  • Ce réseau peut-il distinguer un Husky d'un caniche?
  • Quels objets sont faciles à classer pour l'algorithme, lesquels sont difficiles?
  • Quelle partie d'un chien est la plus importante pour pouvoir la classer correctement? La queue ou le pied?
  • Si je photoshop une tête de chat sur un chien, que se passe-t-il et pourquoi?

Vous pouvez peut-être répondre aux questions en exécutant simplement le NN et voir le résultat (boîte noire), mais vous ne changez pas de comprendre pourquoi il se comporte comme il le fait dans les cas marginaux.

bottiger
la source
Je pense qu'au moins une des questions (`` Quelle partie d'un chien est la plus importante pour pouvoir la classer correctement? La queue ou le pied? '') Est tout à fait satisfaisante, si vous regardez l'article et la vidéo de Matt Zeiler sur la déconvolutition réseaux
Alex