2 / 24 · Concetto
Convoluzione e correlazione incrociata
Quali sono i risultati di correlazione incrociata e kernel invertito per [1,2;4,5] con kernel [1,0;0,-1]?
Le lezioni sono gratuite. Iscriviti per salvare i progressi.
Stabilisci l'orientamento del kernel
La convoluzione delle reti neurali usa comunemente la correlazione incrociata: accoppia il kernel memorizzato con la finestra di ingresso senza invertirlo. La convoluzione matematica inverte il kernel. L'equazione degli indici è più utile del nome dell'operatore. Un kernel simmetrico può nascondere un errore di orientamento, quindi inizia la verifica con valori asimmetrici.
Per un solo canale, passo unitario e assenza di riempimento o dilatazione, usa:
Qui h,w individuano l'uscita e r,s un elemento del kernel. Nessuno dei due indici del kernel viene invertito.
Esempio svolto
Usa la finestra di ingresso [1,2;4,5] e il kernel [1,2;3,4]. La correlazione incrociata dà 1×1+2×2+4×3+5×4=37. Invertire entrambi gli assi del kernel dà [4,3;2,1], producendo 4+6+8+5=23. Aggiungere un bias di due produce 39 e 25. La specifica decide quale operazione è prevista.
Estendi l'ingresso a [1,2,3;4,5,6;7,8,9]. Il kernel originale produce [37,47;67,77]. La finestra in alto a destra è [2,3;5,6], i cui prodotti sommano a 2+6+15+24=47. Spostare una finestra cambia le coordinate di ingresso; non cambia mai l'ordine dei pesi memorizzati. I pesi negativi seguono la stessa regola di indicizzazione. Per esempio, [1,0,-1] sottrae esplicitamente il campione destro da quello sinistro.
Con più canali, accumula la finestra di ogni canale nello stesso elemento di uscita. Ogni canale di uscita ha la propria collezione di kernel e un bias. I canali sono indici di riduzione, anziché posizioni spaziali lungo cui scorre una finestra. La convoluzione a gruppi limita queste connessioni e richiede un'associazione esplicita dei gruppi.
Registra finestra di ingresso, ordine del kernel, prodotti parziali e bias. Verificare soltanto un array finale può non rilevare errori di indicizzazione che si compensano su casi troppo regolari. Gli esempi asimmetrici qui riducono questo rischio. Confronta le convenzioni di tensori e pesi con la documentazione ufficiale ONNX Conv; i casi numerici di questa lezione sono costruiti indipendentemente.
Prova tu
Quali sono i risultati di correlazione incrociata e kernel invertito per [1,2;4,5] con kernel [1,0;0,-1]?
Leggi la spiegazione
La correlazione incrociata è 1−5=−4. Il kernel invertito [−1,0;0,1] dà −1+5=4. Questo caso rivela l'orientamento attraverso un cambio di segno.