Il est assez intuitif que la plupart des topologies / architectures de réseaux de neurones ne soient pas identifiables. Mais quels sont les résultats bien connus sur le terrain? Existe-t-il des conditions simples qui permettent / empêchent l’identifiabilité? Par exemple,
- tous les réseaux avec des fonctions d'activation non linéaires et plusieurs couches cachées ne sont pas identifiables
- tous les réseaux avec plus de deux unités cachées ne sont pas identifiables
Ou des choses comme celles-ci. REMARQUE : je ne dis pas que ces conditions empêchent l'identification (bien qu'elles me semblent de très bons candidats). Ce ne sont que des exemples de ce que je veux dire par «conditions simples».
Si cela aide à affiner la question, n'hésitez pas à ne considérer que les architectures à action directe et récurrentes. Si cela ne suffit toujours pas, je serais satisfait d'une réponse qui couvrirait au moins une architecture parmi MLP, CNN et RNN. J'ai jeté un rapide coup d'œil sur le Web, mais il semble que la seule discussion que j'ai pu trouver était sur Reddit. Allez, les gens, nous pouvons faire mieux que Reddit ;-)
Réponses:
Les FFN monocouches linéaires ne sont pas identifiés
La question a été modifiée depuis pour exclure ce cas; Je le retiens ici car la compréhension du cas linéaire est un exemple simple du phénomène d'intérêt.
Considérons un réseau neuronal à action directe avec 1 couche cachée et toutes les activations linéaires. La tâche est une tâche de régression OLS simple.
Nous avons donc le modèley^= XA B et l'objectif est
pour un choix deA , B de forme appropriée. UNE est les poids d'entrée à cachés, et B est le poids caché à la sortie.
Il est clair que les éléments des matrices de poids ne sont pas identifiables en général, car il existe un certain nombre de configurations possibles pour lesquelles deux paires de matricesA , B avoir le même produit.
Les FFN monocouches non linéaires ne sont toujours pas identifiés
À partir du FFN monocouche linéaire, nous pouvons également observer la non-identifiabilité dans le FFN monocouche non linéaire .
Par exemple, l'ajout d'untanh la non-linéarité à l'une des activations linéaires crée un réseau non linéaire. Ce réseau n'est toujours pas identifié, car pour toute valeur de perte, une permutation des poids de deux (ou plus) neurones sur une couche, et de leurs neurones correspondants sur la couche suivante, entraînera également la même valeur de perte.
En général, les réseaux de neurones ne sont pas identifiés
Nous pouvons utiliser le même raisonnement pour montrer que les réseaux de neurones ne sont pas identifiés dans toutes les paramétrisations, sauf très particulières.
Par exemple, il n'y a aucune raison particulière pour que les filtres convolutionnels se produisent dans un ordre particulier. Il n'est pas non plus nécessaire que les filtres convolutifs aient un signe particulier, car les poids suivants pourraient avoir le signe opposé pour "inverser" ce choix.
De même, les unités d'un RNN peuvent être permutées pour obtenir la même perte.
Voir aussi: Peut-on utiliser MLE pour estimer les poids du réseau neuronal?
la source
Là au moinsn ! optima global lors de l'ajustement d'un réseau neuronal à une couche, constitué de n les neurones. Cela vient du fait que, si vous échangez deux neurones à un niveau spécifique, puis que vous échangez les poids attribués à ces neurones au niveau suivant, vous obtiendrez exactement le même ajustement.
la source