Domanda

Sto avendo difficoltà a capire la differenza tra equivariante traduzione e invariante alla traduzione .

Nel libro Deep Learning . MIT Press, 2016 (I. Goodfellow, A. Courville, e Y. Bengio), si possono trovare sulle reti convoluzionali:

  • [...] la particolare forma di condivisione parametro fa sì che lo strato di avere una proprietà chiamata equivarianza alla traduzione
  • [...] mettendo in comune contribuisce a rendere la rappresentazione diventano circa invariante per piccole traduzioni della ingresso

C'è qualche differenza tra loro o sono i termini in modo intercambiabile utilizzato?

È stato utile?

Soluzione

equivarianza e invarianza sono a volte usati in modo intercambiabile. Come le punte da @ Xi'an , è possibile trovare impieghi in letteratura statistica, per esempio sulle nozioni di invariante stimatore e soprattutto la Pitman stimatore .

Tuttavia, desidero ricordare che sarebbe meglio se entrambi i termini tenere separati , come prefisso " in - " in invariante è privativo (che significa "nessuna variazione" a tutti), mentre " equi - " in equivariante si riferisce al "variando in proporzione simile o equivalente". In altre parole, non si muovono, l'altro fa .

Partiamo da semplici caratteristiche dell'immagine, e supponiamo che l'immagine $ I $ ha un massimo unico $ m $ in posizione di pixel spaziale $ (x_m, y_m) $ , che è qui la caratteristica principale di classificazione. In altre parole: l'immagine e tutte le sue traduzioni sono "lo stesso" . Una proprietà interessante di classificatori è la loro capacità di classificare nello stesso modo alcune versioni distorte $ I '$ di $ I $ , ad esempio traduzioni di tutti i vettori di $ (u, v) $ .

Il valore massimo $ m '$ di $ I' $ invariante : $ m '= m $ : il valore è lo stesso. Mentre la sua posizione sarà a $ (x'_m, y'_m) = (x_m-u, y_m-v) $ , ed è equivariante , il che significa che è varia "ugualmente" con la distorsione .

Le formulazioni precise fornite in matematica per equivarianza dipendono dagli oggetti e trasformazioni uno ritiene quindi preferisco qui l'idea che è più spesso utilizzato nella pratica (e posso ottenere la colpa da uno stand-punto teorico).

Qui, traduzioni (o qualche azione più generica) può essere equipaggiato con la struttura di un gruppo di $ G $ , $ g $ essendo uno specifico operatore di traduzione. A funzione o caratteristica $ f $ è sotto invariante $ G $ se per tutte le immagini in una classe, e per qualsiasi $ g $ , $$ f (g (i)) = f (I) \,. $$

Diventa equivariante se esiste un altro matematico Struttura o azioni (spesso un gruppo) $ G '$ che riflette il trasformazioni in $ G $ in modo significativo . In altre parole, tale che per ogni $ g $ , si dispone di un un unico $ g '\ in G' $ in modo tale che

$$ f (g (i)) = g '(f (I)) \,. $$

Nell'esempio di cui sopra sul gruppo di traduzioni, $ g $ e $ g '$ sono lo stesso (e quindi $ G '= G $ ): un dizionario intero dell'immagine riflette come la stessa esatta definizione della posizione massima.

Un'altra definizione comune è:

$$ f (g (i)) = g (f (I)) \,. $$

Io però usato potenzialmente diverso $ G $ e $ G '$ perché sometimes $ f (I) $ e $ g (I) $ non sono nello stesso dominio. Questo accade ad esempio in statistica multivariata (si veda ad esempio equivarianza e proprietà di invarianza di quantile multivariata e funzioni correlate, e il ruolo standardizzazione ). Ma qui, l'unicità del mapping tra $ g $ e $ g '$ permette di tornare a la trasformazione originale $ g $ .

Spesso, la gente usa il termine invarianza perché il concetto equivarianza è sconosciuta, o tutti usano altro invarianza, e equivarianza sembrerebbe più pedanti.

Per la cronaca, altre nozioni correlate (esp. In matematica e fisica) sono definiti di covarianza , controvarianza , differenziale invarianza .

Inoltre, traduzione-invarianza, come almeno approssimata, o in busta, è una ricerca di diversi strumenti di segnale e di elaborazione delle immagini. In particolare, multi-rate (filter-banche) e multi-scala (wavelet o piramidi) trasformazioni sono state progettate negli ultimi 25 anni, per esempio sotto il cofano di shift-invariante, ciclo-filatura, stazionario, complesso, a doppio albero trasformate wavelet (per una recensione su piccole onde 2D, una panoramica sulle rappresentazioni geometriche multiscala ). Le wavelet possono assorbire alcune varianti scala discreta. Tutte le tesi (approssimativi) invarianze spesso con il prezzo della ridondanza del numero dei coefficienti di trasformazione. Ma sono più propensi a cedere shift-invariante, o cambio marcia-equivariante.

Altri suggerimenti

I termini sono diversi:

  • equivariante traduzione significa che una traduzione di ingresso offre risultati in un dizionario equivalente di uscite. Quindi, se il vostro modello 0,3,2,0,0 sui risultati di ingresso nel 0,1,0,0 nell'output, allora il modello 0,0,3,2,0 potrebbe portare a 0,0,1, 0

  • Invariant traduzione significa che una definizione di funzioni di input non doe modifica le uscite affatto. Quindi, se il vostro modello 0,3,2,0,0 sui risultati di ingresso in 0,1,0 nell'output, allora il modello 0,0,3,2,0 porterebbe anche a 0,1,0

Per le mappe funzionalità nelle reti convoluzionali per essere utile, che in genere hanno bisogno di entrambe le proprietà di un certo equilibrio. L'equivarianza consente alla rete di bordo generalizzare, consistenza, forma rilevamento in luoghi diversi. L'invarianza permette ubicazione precisa delle caratteristiche rilevate alla materia meno. Questi due tipi complementari di generalizzazione per vari compiti di elaborazione delle immagini.

Basta aggiungere il mio 2 centesimi

Per quanto riguarda un'operazione classificazione delle immagini risolto con un tipico CNN Architettura costituito da un Backend (Convoluzioni + NL + eventualmente Spatial pool) che svolge Rappresentazione apprendimento e di un front-end (es Livelli completamente connesso, MLP) che risolve il compito specifico, in questa classificazione immagine caso, l'idea è quella di costruire una funzione $ f: I \ rightarrow L $ in grado di mappare dal dominio spaziale $ I $ (immagine di ingresso) per il Semantic dominio $ L $ (Label Set) in un processo in 2 fasi che è

  • Backend (Rappresentanza Learning): $ f: I \ rightarrow \ mathcal {} L $ associa l'ingresso al Latent Semantic Spazio
  • Frontend (compito specifico Solver): $ f: \ mathcal {L} \ rightarrow L $ mappe dal Latent Semantic Spazio per l'etichetta finale Spazio

e viene eseguita utilizzando le seguenti proprietà

  • equivarianza spaziale, in riferimento ConvLayer (Spatial 2D convoluzione + NonLin esempio relu) come uno spostamento in ingresso strato produce uno spostamento in Output Layer (Nota: si tratta del livello, non il singolo convoluzione dell'operatore)
  • invarianza spaziale, per quanto riguarda l'Operatore pool (ad esempio Max pool passa sopra il valore massimo nel suo campo recettivo indipendentemente dalla sua posizione spaziale)

Il più vicino al livello di input, il più vicino al dominio puramente spaziale $ I $ e la più importante proprietà equivarianza spaziale che permette di costruire gerarchica spazialmente equivariante (sempre più) rappresentazione semantica

Il più vicino al frontend, il più vicino al latente dominio puramente semantica $ \ mathcal {L} $ e il più importante l'invarianza spaziale come lo specifico significato dell'immagine si desidera essere indipendente dalle posizioni spaziali delle caratteristiche

Uso dei livelli completamente connesse in frontend rende il classificatore sensibile alla posizione funzione in una certa misura, a seconda della struttura backend: il più profondo e quanto più l'operatore traduzione invariante (pool) utilizzato

E 'stato dimostrato in Quantificare Traduzione-invarianza in convoluzionali Reti Neurali che per migliorare la CNN Classifier traduzione Invariance, invece di agire sul bias induttivo (architettura quindi la profondità, il raggruppamento, ...) è più efficace agire in sbieco set di dati (aumento di dati)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top