J'ai du mal à comprendre la différence entre équivariant de traduction et invariant de traduction .
Dans le livre Deep Learning . MIT Press, 2016 (I. Goodfellow, A. Courville et Y. Bengio), on peut trouver sur les réseaux convolutifs:
- [...] la forme particulière de partage des paramètres donne à la couche une propriété appelée équivariance par rapport à la traduction
- la mise en commun permet de rendre la représentation approximativement invariante par rapport aux petites traductions de l'entrée
Y a-t-il une différence entre eux ou les termes sont-ils utilisés indifféremment?
Réponses:
L'équivariance et l'invariance sont parfois utilisées de manière interchangeable. Comme l'a souligné @ Xi'an , vous pouvez trouver des utilisations dans la littérature statistique, par exemple sur les notions d' estimateur invariant et en particulier d' estimateur de Pitman .
Cependant, je voudrais mentionner qu'il serait préférable que les deux termes restent séparés , car le préfixe " in " dans invariant est privatif (signifiant "aucune variance"), tandis que " équi- " dans équivariant se réfère à "variable". dans une proportion similaire ou équivalente ". En d'autres termes, l'un ne bouge pas, l'autre le fait .
Commençons par de simples caractéristiques d’image et supposons que l’imageje ait un maximum unique m pour la position spatiale du pixel ( xm,ym) , qui est ici la principale caractéristique de classification. En d'autres termes: une image et toutes ses traductions sont "les mêmes" . Une propriété intéressante des classificateurs est leur capacité à classer de la même manière certaines versions déformées je′ de je , par exemple des traductions par tous les vecteurs ( u , v ) .
La valeur maximalem′ de je′ est invariante : m′= m : la valeur est la même. Alors que son emplacement sera à ( x′m, y′m) = ( xm- u , ym- v ) , il est équivariant , ce qui signifie qu’il varie "de manière égale" avec la distorsion .
Les formulations précises données en mathématiques pour l'équivariance dépendent des objets et des transformations que l'on considère, je préfère donc ici la notion la plus utilisée dans la pratique (et je peux être blâmé d'un point de vue théorique).
Ici, les traductions (ou une action plus générique) peuvent être équipées de la structure d'un groupeg , g étant un opérateur de traduction spécifique. Une fonction ou une caractéristique F est invariante sous g si, pour toutes les images d'une classe, et pour tout g ,
F( g( Je) ) = f( Je).
Il devient équivalent s'il existe une autre structure mathématique ou action (souvent un groupe)g′ qui reflète les transformations de g de manière significative . En d' autres termes, de telle sorte que pour chaque g , vous avez une expérience unique d' un g′∈ G′ tel que
Dans l'exemple ci-dessus sur le groupe de traductions,g et g′ sont identiques (et donc g′= G ): une traduction entière de l'image correspond à la même traduction exacte de l'emplacement maximal.
Une autre définition commune est:
J'ai toutefois utilisé desg et des g′ potentiellement différents , car parfois F( Je) et g( Je) ne sont pas dans le même domaine. Cela se produit par exemple dans les statistiques multivariées (voir, par exemple , les propriétés d'équivariance et d'invariance des fonctions quantiles multivariées et connexes, et le rôle de la normalisation ). Mais ici, l'unicité de la cartographie entre g et g′ permet de revenir à la transformation initiale g .
Souvent, les gens utilisent le terme invariance parce que le concept d'équivariance est inconnu ou tout le monde utilise l'invariance, et l'équivariance semble plus pédante.
Pour mémoire, d’autres notions connexes (notamment en mathématiques et en physique) sont appelées covariance , contravariance , invariance différentielle .
En outre, l'invariance par translation, au moins approximative ou dans une enveloppe, a été une quête de plusieurs outils de traitement du signal et de l'image. Notamment, des transformations à plusieurs taux (banques de filtres) et à plusieurs échelles (ondelettes ou pyramides) ont été conçues au cours des 25 dernières années, par exemple sous le capot de transformées en ondelettes (pour une revue sur les ondelettes 2D, panorama sur les représentations géométriques multi-échelles ). Les ondelettes peuvent absorber quelques variations d'échelle discrètes. Toutes ces invariances (approximatives) viennent souvent avec le prix de la redondance dans le nombre de coefficients transformés. Mais ils sont plus susceptibles de produire des caractéristiques invariantes ou équivariantes.
la source
Les termes sont différents:
Équivariant par traduction signifie qu'une traduction d'entités en entrée entraîne une traduction équivalente en sorties. Donc, si votre motif 0,3,2,0,0 sur l’entrée entraîne 0,1,0,0 dans la sortie, le motif 0,0,3,2,0 peut conduire à 0,0,1, 0
Invariant à la traduction signifie qu'une traduction d'entités en entrée ne modifie pas du tout les sorties. Donc, si votre motif 0,3,2,0,0 sur l’entrée donne 0,1,0 dans la sortie, le motif 0,0,3,2,0 entraînerait également 0,1,0
Pour que les cartes de caractéristiques dans les réseaux de convolution soient utiles, elles ont généralement besoin d’un équilibre entre les deux propriétés. L'équivariance permet au réseau de généraliser la détection des contours, des textures et des formes à différents endroits. L'invariance permet de localiser avec moins de précision les caractéristiques détectées. Ce sont deux types complémentaires de généralisation pour de nombreuses tâches de traitement d'image.
la source
Il suffit d'ajouter mes 2 centimes
et il est exécuté en utilisant les propriétés suivantes
L'utilisation de couches entièrement connectées dans le système frontal rend le classifieur sensible à la position de la fonctionnalité dans une certaine mesure, en fonction de la structure du backend: plus il est profond et plus l'opérateur de conversion invariant (Pooling) utilisé est important
Il a été montré dans Quantifier translation-invariance dans des réseaux de neurones convolutionnels que, pour améliorer l'invariance de traduction du classifieur CNN, au lieu d'agir sur le biais inductif (architecture, profondeur, pooling,…), il est plus efficace d'agir sur le biais de l'ensemble de données )
la source