Da Afshine Amidi e Shervine Amidi
Descrizione
l’Architettura di un tradizionale CNN Convolutional reti neurali, noto anche come CNNs, sono un tipo specifico di reti neurali che sono generalmente composto dai seguenti strati:
La convoluzione livello e la messa in comune di strato può essere regolata con precisione rispetto a hyperparameters che sono descritti nelle sezioni successive.,
Tipi di livello
Convolution layer (CONV) Il convolution layer (CONV) utilizza filtri che eseguono operazioni di convoluzione mentre esegue la scansione dell’input I I with rispetto alle sue dimensioni. I suoi iperparametri includono la dimensione del filtro F F and e stride S S.. L’output risultante $O is è chiamato feature map o activation map.
Nota: la fase di convoluzione può essere generalizzata anche ai casi 1D e 3D.,
Pooling (POOL) Il livello di pooling (POOL) è un’operazione di downsampling, tipicamente applicata dopo un livello di convoluzione, che esegue un’invarianza spaziale. In particolare, il pooling massimo e medio sono tipi speciali di pooling in cui viene preso rispettivamente il valore massimo e medio.,ione seleziona il valore massimo della corrente vista
• Più comunemente usato
• Utilizzato in LeNet
Completamente Connesso (FC) completamente collegati strato (FC) opera su una superficie piatta di ingresso dove ogni ingresso è collegato a tutti i neuroni., Se presente, i livelli FC si trovano solitamente verso la fine delle architetture CNN e possono essere utilizzati per ottimizzare obiettivi come i punteggi di classe.
Filtro iperparametri
Il livello di convoluzione contiene filtri per i quali è importante conoscere il significato dei suoi iperparametri.,
Dimensioni di un filtro, Un filtro di dimensione $F\times F$ applicato ad un input contenente $C$ canali è un $F \times F \times C$ volume che esegue circonvoluzioni su un input di dimensione $I \times I \times C$ e produce un output funzione di mappa (chiamato anche l’attivazione della mappa) di dimensione $O \times O \times 1$.
Nota: l’applicazione di $K$ filtri di dimensione $F\times F$ i risultati in uscita, in funzione di una mappa di dimensioni $O \times O \times K$.,
Stride Per un’operazione convoluzionale o di pooling, la stride S S den indica il numero di pixel con cui la finestra si sposta dopo ogni operazione.
Zero-padding Zero-padding indica il processo di aggiunta di zer P zer zeri a ciascun lato dei confini dell’input.,led di seguito:
Tuning hyperparameters
Parametro di compatibilità in convoluzione strato Da notare che $I$ la lunghezza dell’input di dimensione del volume, $F$ la lunghezza del filtro, $P$ la quantità di zero imbottitura, $S$ stride, quindi la dimensione di output $O$ della funzionalità della mappa lungo la dimensione è data da:
Comprendere la complessità del modello, al fine di valutare la complessità di un modello, è spesso utile per determinare il numero di parametri che la sua architettura avrà., In un dato livello di un convolutional rete neurale, è fatto come segue:
Nell’esempio riportato di seguito, abbiamo $F_1 = F_2 = 3$ e $S_1 = S_2 = 1$, che dà $R_2 = 1 + 2\cdot 1 + 2\cdot 1 = 5$.
Funzioni di attivazione comunemente utilizzate
Unità lineare rettificata Il livello di unità lineare rettificata (ReLU) è una funzione di attivazione g g used che viene utilizzata su tutti il volume. Mira a introdurre non linearità alla rete., Le sue varianti sono riassunte nella tabella seguente:
Softmax Il passo softmax può essere visto come una funzione logistica generalizzata che prende come input un vettore di punteggi x x\in\mathbb{R}^n outputs e emette un vettore di probabilità di output p p\in\mathbb{R}^n through attraverso una funzione softmax alla fine dell’architettura. È definito come segue:
Rilevamento oggetti
Tipi di modelli Esistono 3 tipi principali di algoritmi di riconoscimento oggetti, per i quali la natura di ciò che è previsto è diversa., They are described in the table below:
Image classification | Classification w., dell’oggetto | • Rileva un oggetto in una foto • Predice la probabilità di oggetto e di dove si trova |
• Rileva fino a diversi oggetti in una foto • Predice la probabilità di oggetti e dove si trovano |
Tradizionale CNN | Semplificato YOLO, R-CNN | YOLO, R-la CNN |
Rilevamento Nell’ambito del rilevamento di oggetti, diversi metodi sono utilizzati a seconda se si desidera solo per individuare l’oggetto o l’individuazione di una forma più complessa nell’immagine., I due principali sono riassunte nella tabella di seguito:
Intersezione corso Unione Intersezione di corso Unione, anche conosciuto come $\textrm{IoU}$ è una funzione che quantifica come correttamente posizionato la previsione di una casella di delimitazione $B_p$ è sulla reale bounding box $B_a$. È definito come:
Scatole di ancoraggio La boxe di ancoraggio è una tecnica utilizzata per prevedere le caselle di delimitazione sovrapposte., In pratica, la rete è autorizzata a prevedere più di una casella contemporaneamente, in cui ogni previsione della casella è vincolata ad avere un determinato insieme di proprietà geometriche. Ad esempio, la prima previsione può potenzialmente essere una scatola rettangolare di una data forma, mentre la seconda sarà un’altra scatola rettangolare di una forma geometrica diversa.
Soppressione non-max La tecnica di soppressione non-max mira a rimuovere i riquadri di delimitazione sovrapposti duplicati di uno stesso oggetto selezionando quelli più rappresentativi. Dopo aver rimosso tutte le caselle aventi una previsione di probabilità inferiore a 0.,6, i seguenti passaggi vengono ripetuti mentre rimangono delle caselle:
Per una determinata classe,
• Passo 1: scegli la casella con la probabilità di previsione più grande.
• Passo 2: Scartare qualsiasi casella con an\textrm{IoU}\geqslant0.5 with con la casella precedente.
YOLO Si guarda solo una volta (YOLO) è un algoritmo di rilevamento di oggetti che esegue i seguenti passaggi:
• Passo 1: Dividere l’immagine di input in un\G \ volte G grid griglia.,
• Passo 2: Per ogni cella della griglia di eseguire una CNN che predice $y$ il seguente formato:
dove $p_c$ è la probabilità di rilevare un oggetto, $b_x,b_y,b_h,b_w$ sono proprietà dei rilevati bouding scatola, $c_1,…, c_p is è una rappresentazione a caldo di quale delle classi p p were sono state rilevate e k k is è il numero di caselle di ancoraggio.
• Passo 3: Eseguire l’algoritmo di soppressione non max per rimuovere eventuali caselle di delimitazione sovrapposte duplicate.,
R-CNN Regione con Convolutional Reti Neurali (R-CNN) è un oggetto algoritmo di rilevamento che prima segmenti di immagine per trovare potenziali rilevanti riquadri di delimitazione e quindi eseguire l’algoritmo di rilevamento per trovare più probabile oggetti in quei riquadri di delimitazione.,
Nota: sebbene l’algoritmo originale sia computazionalmente costoso e lento, le architetture più recenti hanno permesso all’algoritmo di funzionare più velocemente, come Fast R-CNN e Faster R-CNN.
Faccia di verifica e riconoscimento
Tipi di modelli di Due tipi principali del modello sono riassunte nella tabella di seguito:
Faccia di verifica | riconoscimento facciale |
• È la persona giusta?,r• * Ricerca one-to-one | |
Un Colpo di Apprendimento Un Colpo di Apprendimento è un volto di verifica algoritmo che utilizza un limitato set di training per imparare una somiglianza funzione che quantifica come diversi due immagini. La funzione di somiglianza applicata a due immagini è spesso nota d d (\textrm {image 1}, \ textrm {image 2}).,$
Neurale stile di trasferimento
Motivazione L’obiettivo della neurali stile di trasferimento è quello di generare un’immagine $G$ sulla base di un dato contenuto in $C$ e un determinato stile di $S$.,
l’Attivazione In un dato livello di $l$, l’attivazione è notato $a^{}$ ed è di dimensioni $n_H\times n_w\times n_c$
Nota: lo stile di matrice per lo stile di immagine e l’immagine generata notato $G^{(I)}$ e $G^{(G)}$ rispettivamente.,
Generale funzione di costo Il costo totale funzione è definita come una combinazione di contenuti e di stile le funzioni di costo, ponderata con i parametri $\alpha,\beta$, come segue:
Nota: un valore più alto di $\alpha$ rendere il modello più attenzione sui contenuti, mentre un valore più alto di $\beta$ renderà interessa di più lo stile.,
Architetture che utilizzano trucchi computazionali
Generative Adversarial Network Le reti Generative Adversarial, note anche come GANs, sono composte da un modello generativo e da un modello discriminativo, in cui il modello generativo mira a generare l’output più veritiero che verrà immesso nel discriminativo che mira a differenziare l’immagine generata e vera.
Nota: i casi d’uso che utilizzano varianti di GAN includono il testo all’immagine, la generazione di musica e la sintesi.,
ResNet L’architettura di rete residua (chiamata anche ResNet) utilizza blocchi residui con un numero elevato di livelli destinati a diminuire l’errore di formazione. Il blocco residuo ha la seguente equazione caratterizzante:
Inception Network Questa architettura utilizza moduli inception e mira a dare una prova a diverse circonvoluzioni al fine di aumentare le sue prestazioni attraverso la diversificazione delle caratteristiche. In particolare, utilizza il trucco conv 1 \ times1 conv convolution per limitare il carico computazionale.