Questo articolo chiarisce la standardizzazione dei gruppi in modo basilare. Ho composto questo articolo dopo quello che ho imparato da Fast.ai e deeplearning.ai. Comincerò con il perché ne abbiamo bisogno, come funziona, a quel punto come incorporarlo in sistemi già pronti, per esempio, VGG.

Per quale motivo utilizziamo la standardizzazione di gruppo?

Standardizziamo il livello di informazione modificando e ridimensionando gli apparati. Per esempio, quando abbiamo evidenziazioni da 0 a 1 e alcune da 1 a 1000, dovremmo standardizzarle per accelerare l’apprendimento. Nel caso in cui lo strato informativo ne tragga profitto, perché non realizzare qualcosa di molto simile anche per le qualità degli strati nascosti, che cambiano costantemente, e ottenere più volte o un miglioramento maggiore della velocità di preparazione.

La standardizzazione del gruppo diminuisce la somma di ciò che le stime dell’unità nascosta si muovono (movimento di covarianza). Per chiarire il movimento di covarianza, che ne dite di avere un sistema profondo sul riconoscimento felino. Alleniamo le nostre informazioni solo su immagini di felini oscuri. In questo senso, nel caso in cui attualmente tentiamo di applicare questo sistema alle informazioni con i felini colorati, è ovvio; non progrediremo in modo ammirevole. Il set di preparazione e il set di previsioni sono le immagini dei due felini, ma variano un pochino. Alla fine della giornata, se un calcolo ha adattato un po’ di mappatura da X a Y, e nella remota possibilità che la circolazione di X cambi, a quel punto potremmo aver bisogno di riqualificare il calcolo dell’apprendimento cercando di adattare la diffusione di X alla trasmissione di Y. ( Deeplearning.ai: Per quale motivo Bunch Norm funziona? (C2W3L06))

Inoltre, la standardizzazione a ciuffi permette ad ogni strato di un sistema di imparare senza l’input di nessun altro un po’ più liberamente dei diversi strati.

Possiamo utilizzare tassi di apprendimento più elevati poiché la standardizzazione dei cluster assicura che non ci sia un’attuazione che sia andata veramente elevata o veramente bassa. Inoltre, con questo, le cose che già non hanno avuto l’opportunità di prepararsi, cominceranno a prepararsi.

Diminuisce il sovraadattamento alla luce del fatto che ha un leggero impatto di regolarizzazione. Come il droppout, aggiunge un po’ di clamore alle iniziazioni di ogni strato avvolto. In questo modo, nella remota possibilità che usiamo la standardizzazione a ciuffi, utilizzeremo meno dropout, cosa per la quale vale la pena essere grati alla luce del fatto che non perderemo una grande quantità di dati. Sia come sia, non dovremmo dipendere solo dalla standardizzazione di gruppo per la regolarizzazione; dovremmo utilizzarla meglio insieme al droppout.

Come funziona la standardizzazione di gruppo?

Per aumentare la stabilità di una rete neurale, la normalizzazione del lotto normalizza l’uscita di uno strato di attivazione precedente sottraendo la media del lotto e dividendo per la deviazione standard del lotto.

Sia come sia, dopo questa mossa / dimensione dei rendimenti di messa in vigore da alcuni parametri arbitrariamente installati, i carichi nello strato successivo non sono mai più ideali. SGD ( Stocastic angle drop) fissa questa standardizzazione se è un percorso per limitare il lavoro di sfortuna.

Di conseguenza, la normalizzazione in batch aggiunge due parametri addestrabili ad ogni strato, quindi l’uscita normalizzata viene moltiplicata per un parametro “deviazione standard” (gamma) ed aggiunge un parametro “medio” (beta). Alla fine della giornata, la normalizzazione a lotti permette ad SGD di fare la denormalizzazione cambiando solo questi due carichi per ogni avvio, piuttosto che perdere la forza del sistema cambiando ogni singolo carico.

Standardizzazione di gruppo e sistemi pre-preparati come VGG:

Il VGG non ha un livello standard di cluster in esso, poiché la standardizzazione dei gruppi non esisteva prima del VGG. Nella remota possibilità che lo addestriamo con esso fin dall’inizio, il peso pre-preparato trarrà profitto dalla standardizzazione delle azioni. Quindi includere un livello standard di gruppo migliora davvero ImageNet, il che è una figata. È possibile aggiungerlo a strati spessi e, inoltre, a strati convoluzionali.

Nel caso in cui incorporassimo uno standard di gruppo in un sistema pre-preparato, questo modificherebbe i carichi pre-preparati, poiché sottrarrebbe la media e lo scarto dalla deviazione standard per gli strati di emanazione e non abbiamo bisogno che ciò avvenga alla luce del fatto che abbiamo bisogno che questi carichi pre-preparati rimangano equivalenti. Lungo queste linee, quello che dobbiamo fare è incorporare uno strato standard di gruppo e dare un senso di gamma e beta in modo da fissare la variazione dei rendimenti.

Per condensare il tutto, si può considerare la standardizzazione dei gruppi come una preelaborazione ad ogni livello del sistema.