On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 10 Combinazione di classificatori Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com http://www.onairweb.com/corsopr A.A. 2016-2017 Ennio Ottaviani- 2017
Introduzione La combinazione di classificatori (ensemble learning) si propone di addestrare M classificatori diversi per lo stesso problema e di combinare i risultati Le differenze possono essere sia di tipo metodologico (metodi diversi) sia di impiego dai dati (sottoinsiemi di dati diversi)
Introduzione Combinando classificatori si riduce in generale il rischio di overfitting Si ottengono spesso prestazioni migliori perché gli errori di solito non sono correlati Occorrono comunque strategie di diversificazione e di combinazione la cui scelta non è immediata La strategia più naturale non è ottimale in termini di decorrelazione degli errori (molti classificatori possono trovare difficili gli stessi dati)
Boosting L idea centrale del boosting è di addestrare in classificatori in modo sequenziale anziché in parallelo Ogni dato viene pesato ed ogni nuovo classificatore viene addestrato pesando maggiormente i dati classificati dai precedenti in modo errato In questo modo la combinazione risulta più efficiente e gli errori tendono a ridursi Questo rende possibile anche l impiego di classificatori molto semplici (weak) che producono per boosting un classificatore motlo robusto (strong)
Boosting La combinazione finale è di tipo lineare con pesi determinati automaticamente durante il training La differenza sta nella procedura di training dei singoli h i
Algoritmo ADABoost
Algoritmo ADABoost Il numero di classificatori deboli T è fissato, ma può essere aumentato se necessario, senza ripartire da zero I pesi iniziali possono essere uniformi oppure (meglio) riflettere le probabilità a priori delle classi Il coefficiente α t potrebbe anche essere negativo La formula di combinazione si può dimostrare che è ottimale in base al requisito di minimo errore, espresso in forma opportuna I classificatori deboli spesso sono basati su singole features (stub)
Evoluzione A partire dal metodo ADABoost originale, sono state proposte numerose varianti che cercano di migliorare i diversi aspetti del processo Il metodo è stato generalizzato con successo al caso di N classi, mantenendo inalterata la struttura logica dell algoritmo Per la sua generalità ed efficacia il boosting è oggi uno dei temi di ricerca applicata più attivi di tutto il PR L ottimalità del meccanismo di combinazione ne ha favorito l uso in problemi considerati molto difficili
Esempio
Esempio
Esempio
Esempio
Esempio
Face detection Localizzare automaticamente i volti presenti in una immagine generica, a prescindere da: posizione scala orientamento illuminazione posa espressione
Face detection Il problema del face detection richiede prima di tutto di definire quali sono le feature da rilevare per valutare la presenza/assenza di un volto in una zona assegnata L approccio classico (Viola & Jones) prevede il calcolo delle feature di Haar (differenze tra grigi medi di regioni rettangolari) Tali features sono però molto deboli, non rappresentando nulla di semantico, e per ottenere risultati occorre gestire al meglio la loro combinazione
Feature di Haar
Feature di Haar Ogni immagine di training (volto o non volto) viene riscalata a dimensione fissa e vengono calcolate tutte le possibili feature di Haar Il numero di features possibili è molto elevato (>> del numero dei pixel), per cui l addestramento può durare molto ADABoost seleziona un (piccolo) sottoinsieme di feature utili
Risultati Il database di training ha 4916 esempi positivi (volti) di dimensione 24x24 pixel 10000 esempi negativi sono stati estratti da immagini casuali senza volti Le feature di Haar possibili sono 160000 ma ADABoost ne ha selezionate circa 6000 Volti a scala diversa vengono gestiti durante il test mediante scalatura dell immagine (o del detector) La ricerca nelle immagini di test viene fatta per scansione a tappeto a passo fissato
Risultati Alcune immagini del training set
Risultati Schema dell intero processo di face detection secndo Viola & Jones
Risultati
Vehicle detection