EfficientDet: Verso Un Rilevamento Di Oggetti Scalabile Ed Efficiente

Sommario:

EfficientDet: Verso Un Rilevamento Di Oggetti Scalabile Ed Efficiente
EfficientDet: Verso Un Rilevamento Di Oggetti Scalabile Ed Efficiente

Video: EfficientDet: Verso Un Rilevamento Di Oggetti Scalabile Ed Efficiente

Video: EfficientDet: Verso Un Rilevamento Di Oggetti Scalabile Ed Efficiente
Video: EfficientDet: Scalable and Efficient Object Detection 2024, Novembre
Anonim

Essendo una delle principali applicazioni nella visione artificiale, il rilevamento degli oggetti sta diventando sempre più importante in scenari che richiedono un'elevata precisione ma hanno risorse di calcolo limitate, come la robotica e le auto senza conducente. Sfortunatamente, molti rilevatori moderni ad alta precisione non soddisfano queste limitazioni. Ancora più importante, le applicazioni di rilevamento degli oggetti del mondo reale vengono eseguite su piattaforme diverse, che spesso richiedono risorse diverse.

Rilevamento di oggetti scalabile ed efficiente
Rilevamento di oggetti scalabile ed efficiente

Quindi la domanda naturale è come progettare rilevatori di oggetti accurati ed efficienti che possano anche adattarsi a un'ampia gamma di vincoli di risorse?

EfficientDet: Rilevamento di oggetti scalabile ed efficiente, adottato al CVPR 2020, introduce una nuova famiglia di rilevatori di oggetti scalabili ed efficienti. Basandosi sul lavoro precedente sul ridimensionamento delle reti neurali (EfficientNet) e incorporando una nuova rete funzionale bidirezionale (BiFPN) e nuove regole di ridimensionamento, EfficientDet raggiunge una precisione moderna mentre è 9 volte più piccolo e utilizza un calcolo significativamente inferiore rispetto ai rilevatori moderni noti. La figura seguente mostra l'architettura di rete generale dei modelli.

Immagine
Immagine

Ottimizzazione dell'architettura del modello

L'idea alla base di EfficientDet nasce dallo sforzo di trovare soluzioni per migliorare l'efficienza computazionale esaminando sistematicamente i precedenti modelli di rilevamento all'avanguardia. In generale, i rilevatori di oggetti hanno tre componenti principali: una spina dorsale che estrae le caratteristiche da una data immagine; una rete di oggetti che prende più livelli di funzioni dalla dorsale come input ed emette un elenco di funzioni combinate che rappresentano caratteristiche caratteristiche dell'immagine; e una rete di classe/scatola finale che utilizza funzioni combinate per prevedere la classe e la posizione di ciascun oggetto.

Dopo aver esaminato le opzioni di progettazione per questi componenti, abbiamo identificato diverse ottimizzazioni chiave per migliorare le prestazioni e l'efficienza. I rilevatori precedenti utilizzano principalmente ResNets, ResNeXt o AmoebaNet come dorsali, che sono meno potenti o hanno un'efficienza inferiore rispetto a EfficientNets. Con l'implementazione iniziale del backbone EfficientNet, è possibile ottenere una maggiore efficienza. Ad esempio, partendo da una linea di base RetinaNet che utilizza un backbone ResNet-50, il nostro studio sull'ablazione mostra che la semplice sostituzione di ResNet-50 con EfficientNet-B3 può migliorare la precisione del 3% riducendo il calcolo del 20%. Un'altra ottimizzazione è migliorare l'efficienza delle reti funzionali. Sebbene la maggior parte dei rilevatori precedenti utilizzi semplicemente il Downlink Pyramid Network (FPN), scopriamo che l'FPN a valle è intrinsecamente limitato a un flusso di informazioni unidirezionale. FPN alternativi come PAnet aggiungono ulteriore upstream al costo di calcoli aggiuntivi.

I recenti tentativi di utilizzare Neural Architecture Search (NAS) hanno scoperto un'architettura NAS-FPN più complessa. Tuttavia, sebbene questa struttura di rete sia efficace, è anche irregolare e altamente ottimizzata per un'attività specifica, rendendo difficile l'adattamento ad altre attività. Per risolvere questi problemi, proponiamo una nuova rete di funzioni bidirezionali BiFPN, che implementa l'idea di combinare funzioni multistrato da FPN / PANet / NAS-FPN, che consente la trasmissione delle informazioni sia dall'alto verso il basso che dal basso verso l'alto. utilizzando connessioni regolari ed efficaci.

Immagine
Immagine

Per migliorare ulteriormente l'efficienza, proponiamo una nuova tecnica di sintesi rapida normalizzata. Gli approcci tradizionali di solito trattano tutti gli input a FPN allo stesso modo, anche a risoluzioni diverse. Tuttavia, osserviamo che le caratteristiche di input con risoluzioni diverse spesso contribuiscono in modo diseguale alle funzioni di output. Pertanto, aggiungiamo peso extra a ciascuna funzione di input e lasciamo che la rete impari l'importanza di ciascuna. Sostituiremo anche tutte le circonvoluzioni regolari con circonvoluzioni meno costose e profondamente separabili. Con questa ottimizzazione, il nostro BiFPN migliora ulteriormente la precisione del 4% riducendo i costi di calcolo del 50%.

La terza ottimizzazione prevede il raggiungimento del miglior compromesso tra precisione ed efficienza sotto vari vincoli di risorse. Il nostro lavoro precedente ha dimostrato che la scalabilità congiunta di profondità, larghezza e risoluzione di una rete può migliorare significativamente le prestazioni di riconoscimento delle immagini. Ispirati da questa idea, proponiamo un nuovo metodo di scaling composito per i rilevatori di oggetti che aumenta collettivamente la risoluzione/profondità/larghezza. Ciascun componente di rete, ovvero dorsale, oggetto e rete predittiva di blocchi/classi, avrà un fattore di scala complesso che controlla tutte le dimensioni di scala utilizzando regole euristiche. Questo approccio semplifica la determinazione della scalabilità del modello calcolando un fattore di scala per un determinato vincolo di risorsa di destinazione.

Combinando il nuovo backbone e BiFPN, progettiamo prima una piccola linea di base EfficientDet-D0 e poi applichiamo il ridimensionamento composto per ottenere EfficientDet-D1 su D7. Ogni modello seriale ha un costo computazionale più elevato, copre un'ampia gamma di vincoli di risorse da 3 miliardi di FLOP a 300 miliardi di FLOPS e fornisce una maggiore precisione.

Modello di prestazione

Valutazione di EfficientDet sul set di dati COCO, un set di dati di riferimento ampiamente utilizzato per il rilevamento di oggetti. EfficientDet-D7 raggiunge una precisione media media (mAP) di 52,2, ovvero 1,5 punti in più rispetto al precedente modello moderno, utilizzando 4 volte meno parametri e 9,4 volte meno calcoli

Immagine
Immagine

Abbiamo anche confrontato la dimensione dei parametri e la latenza CPU/GPU tra EfficientDet e i modelli precedenti. Con vincoli di precisione simili, i modelli EfficientDet funzionano 2-4 volte più velocemente sulla GPU e 5-11 volte più velocemente sul processore rispetto ad altri rilevatori. Sebbene i modelli EfficientDet siano principalmente destinati al rilevamento di oggetti, ne testiamo l'efficacia anche in altre attività come la segmentazione semantica. Per eseguire le attività di segmentazione, modifichiamo leggermente EfficientDet-D4 sostituendo la testina di rilevamento e la perdita e la perdita di teste mantenendo lo stesso backbone ridimensionato e BiFPN. Confrontiamo questo modello con i precedenti modelli di segmentazione moderni per Pascal VOC 2012, un set di dati di test di segmentazione ampiamente utilizzato.

Immagine
Immagine

Date le loro eccezionali prestazioni, si prevede che EfficientDet serva come nuova base per la futura ricerca sul rilevamento di oggetti e potenzialmente renderà utili in molte applicazioni del mondo reale modelli di rilevamento di oggetti altamente accurati. Quindi ha aperto tutti i punti di interruzione del codice e del modello preaddestrato su Github.com.