Pourquoi les CNN concluent-ils avec des couches FC?

11

D'après ma compréhension, les CNN se composent de deux parties. La première partie (couches conv / pool) qui fait l'extraction d'entités et la deuxième partie (couches fc) qui fait la classification des entités.

Étant donné que les réseaux neuronaux entièrement connectés ne sont pas les meilleurs classificateurs (c'est-à-dire qu'ils sont surclassés par les SVM et les RF la plupart du temps), pourquoi les CNN concluent-ils avec des couches FC, plutôt que disons un SVM ou un RF?

Mary93
la source

Réponses:

4

Ce n'est pas si simple. Tout d'abord, un SVM est, en quelque sorte, un type de réseau neuronal (vous pouvez apprendre une solution SVM par rétropropagation). Voir Qu'est-ce * qu'un * réseau de neurones artificiels? . Deuxièmement, vous ne pouvez pas savoir à l'avance quel modèle fonctionnera le mieux, mais avec une architecture entièrement neuromorphique, vous pouvez apprendre les poids de bout en bout, tout en attachant un SVM ou RF à la dernière couche cachée, l'activation d'un CNN est simplement une procédure ad hoc . Il peut être plus performant et non, nous ne pouvons pas le savoir sans tester.

La partie importante est qu'une architecture entièrement convolutionnelle est capable d'apprentissage de la représentation, ce qui est utile pour une multitude de raisons. Pour une fois, cela peut réduire ou éliminer complètement l'ingénierie des fonctionnalités dans votre problème.

Concernant les couches FC, elles sont mathématiquement équivalentes aux couches convolutionnelles 1x1. Voir le post de Yann Lecun , que je transcris ci-dessous:

Dans les réseaux convolutifs, il n'existe pas de «couches entièrement connectées». Il n'y a que des couches de convolution avec des noyaux de convolution 1x1 et une table de connexion complète.

C'est un fait trop rarement compris que les ConvNets n'ont pas besoin d'avoir une entrée de taille fixe. Vous pouvez les entraîner sur des entrées qui produisent un seul vecteur de sortie (sans étendue spatiale), puis les appliquer à des images plus grandes. Au lieu d'un seul vecteur de sortie, vous obtenez alors une carte spatiale des vecteurs de sortie. Chaque vecteur voit des fenêtres d'entrée à différents emplacements sur l'entrée.

Dans ce scénario, les «couches entièrement connectées» agissent réellement comme des convolutions 1x1.

Pyromane
la source
0

Si vous connaissiez le théorème du déjeuner gratuit (Wolpert & Macready), vous ne seriez pas si accroché à un classificateur et demandez pourquoi ce n'est pas le meilleur. Le théorème de la NFL déclare essentiellement que "dans l'univers de toutes les fonctions de coût, il n'y a pas de meilleur classificateur". Deuxièmement, les performances du classificateur "dépendent toujours des données".

Le théorème du vilain petit canard (Watanabe) déclare essentiellement que "dans l'univers de tous les ensembles de fonctionnalités, il n'y a pas de meilleur ensemble de fonctionnalités."

Le théorème de Cover déclare que si , c'est-à-dire que la dimensionnalité des données est plus grande que la taille de l'échantillon, alors un problème de classification binaire est toujours séparable linéairement.p>n

À la lumière de ce qui précède, ainsi que du rasoir d'Occam , il n'y a jamais rien de mieux qu'autre chose, indépendamment des données et de la fonction de coût.

J'ai toujours soutenu que les CNN en eux-mêmes ne sont pas des ensembles de classificateurs pour lesquels la diversité (kappa vs erreur) peut être évaluée.

wrktsj
la source