Trasformatore di rilevamento open source AI di Facebook (DETR)

Contenuti

introduzione

Occasionalmente, una libreria o un framework di machine learning cambia il panorama del settore. Attualmente, Facebook ha aperto una struttura del genere: DETR o DEtection Transformer.

Trasformatore di senso

In questo post, capiremo rapidamente il concetto di rilevamento di oggetti e poi ci immergeremo direttamente in DETR e cosa porta.

Rilevamento di oggetti a colpo d'occhio

Una visione artificiale, il rilevamento degli oggetti è un compito in cui vogliamo che il nostro modello distingua gli oggetti in primo piano dallo sfondo e preveda le posizioni e le categorie degli oggetti presenti nell'immagine. Gli attuali approcci di deep learning tentano di risolvere il compito di rilevamento degli oggetti come un ostacolo di classificazione o un ostacolo di regressione o entrambi..

Come esempio, nell'algoritmo RCNN, diverse regioni di interesse sono identificate dall'immagine di input. Successivamente, queste regioni sono classificate come oggetti o come sfondo e, finalmente, un modello di regressione viene utilizzato per generare i riquadri di delimitazione per gli oggetti identificati.

La struttura YOLO (Guardi una volta sola), d'altra parte, gestisce il rilevamento degli oggetti in modo diverso. Prende l'intera immagine in una singola istanza e prevede le coordinate del riquadro di delimitazione e le probabilità di classe per questi riquadri.

Per ulteriori informazioni sul rilevamento di oggetti, guarda questi post:

Vi presentiamo DEtection TRansformer (DETR) di Facebook AI

Come hai visto nella sezione precedente, gli attuali algoritmi di deep learning eseguono il rilevamento di oggetti in più passaggi. Soffrono anche del problema dei quasi duplicati, In altre parole, falsi positivi. Per semplificare, I ricercatori di Facebook AI hanno ideato DETR, un approccio innovativo ed efficiente per risolvere il problema del rilevamento degli oggetti.

La carta originale è qui, il codice open source è quie puoi consultare il taccuino Colab qui.

trasformatore di rilevamento

Fonte: https://arxiv.org/pdf/2005.12872.pdf

Questo nuovo modello è abbastanza semplice e non è necessario installare alcuna libreria per utilizzarlo. DETR tratta un ostacolo per il rilevamento di oggetti come un ostacolo di previsione impostato direttamente con l'aiuto di un'architettura encoder-decodificatore basata su trasformatore. Per set, Intendo il set di riquadri di delimitazione. I trasformatori sono la nuova generazione di modelli di deep learning che si sono comportati in modo eccezionale nel dominio della PNL.

Gli autori di questo post hanno valutato DETR su uno dei set di dati di rilevamento degli oggetti più popolari., COCO, rispetto a una linea di base R-CNN molto competitiva più veloce.

Nei risultati, il DETR ha ottenuto prestazioni comparabili. Più accuratamente, DETR dimostra prestazioni significativamente migliori su oggetti di grandi dimensioni. Nonostante questo, non ha funzionato altrettanto bene su piccoli oggetti. Sono sicuro che i ricercatori lo scopriranno molto presto.

Architettura DETR

L'architettura generale di DETR è abbastanza semplice da capire. Contiene tre componenti principali:

  • una spina dorsale della CNN
  • un trasformatore encoder-decodificatore
  • una semplice rete passante

trasformatore di rilevamento oggetti

Fonte: https://arxiv.org/pdf/2005.12872.pdf

Qui, La dorsale della CNN genera una mappa delle caratteristiche dall'immagine di input. Successivamente, l'output della dorsale CNN viene convertito in una mappa di caratteristiche unidimensionale che viene passata all'encoder Transformer come input. L'output di questo encoder è N numero di incorporamenti a lunghezza fissa (vettore), dove N è il numero di oggetti nell'immagine assunti dal modello.

Il decodificatore del trasformatore decodifica questi incorporamenti alle coordinate del riquadro di delimitazione con l'aiuto del meccanismo di attenzione del decodificatore e del codificatore stesso..

In sintesi, le reti neurali feedforward prevedono coordinate centrali normalizzate, l'altezza e la larghezza dei riquadri di delimitazione e il livello lineare prevedono l'etichetta della classe utilizzando una funzione softmax.

Pensieri finali

Questo è un quadro davvero entusiasmante per tutti gli appassionati di deep learning e visione artificiale.. Un grande ringraziamento a Facebook per aver condiviso il loro approccio con la community.

È ora di allacciarsi le cinture e utilizzarlo per il nostro prossimo progetto di deep learning!!

Iscriviti alla nostra Newsletter

Non ti invieremo posta SPAM. Lo odiamo quanto te.