Tesi Magistrale - Francesco Paparella

Transcript

Tesi Magistrale - Francesco Paparella
UNIVERSITÀ DEGLI
STUDI DI BARI
“ALDO MORO”
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA MAGISTRALE IN INFORMATICA
TESI DI LAUREA
IN
ELABORAZIONE DI IMMAGINI E TECNICHE FUZZY
ANNOTAZIONE FUZZY E RETRIEVAL
DI FORME MEDIANTE CLUSTERING
SEMI-SUPERVISIONATO
Relatrice:
Chiar.ma Prof.ssa Giovanna CASTELLANO
Correlatrice:
Dott.ssa Maria Alessandra TORSELLO
Laureando:
Francesco PAPARELLA
Anno Accademico 2011/2012
INDICE
ELENCO DELLE FIGURE ........................................................................................... 1
ELENCO DELLE TABELLE ........................................................................................ 3
INTRDOZUIONE ........................................................................................................... 7
CAPITOLO I.
ANNOTAZIONE DI IMMAGINI ............................................................................... 10
1.1 Cos’è l’annotazione di immagini ........................................................................ 11
1.2 Tecniche per l’annotazione di immagini ............................................................ 14
1.2.1
Vantaggi e svantaggi delle tecniche per l’annotazione di
immagini ............................................................................................... 16
1.3 Annotazione automatica vs. manuale ................................................................. 17
1.4 Valutare l’efficacia dell’annotazione .................................................................. 18
1.4.1
Precision e recall .................................................................................... 18
1.4.1.1 Precision e recall per immagini ................................................. 18
1.4.2
Parole chiave con recall maggiore di 0 .................................................. 19
1.4.3
Punteggio normalizzato ......................................................................... 19
1.5 Annotazione di immagini con apprendimento non supervisionato .................... 20
1.5.1
Modelli parametrici ............................................................................... 20
1.5.2
Modelli non parametrici ........................................................................ 25
1.6 Annotazione di immagini con apprendimento supervisionato ........................... 27
1.6.1
Classificazione basata su scene globali ................................................. 29
1.6.2
Classificazione basata su oggetti locali ................................................. 32
1.6.3
Classificazione multi-livello .................................................................. 34
1.7 Annotazione di forme: una breve panoramica .................................................... 36
CAPITOLO II.
IMAGE RETRIEVAL ..................................................................................................38
2.1 Introduzione ........................................................................................................39
2.2 Text based Vs. Content based .............................................................................45
2.3 Il processo di Content Based Image Retrieval ....................................................47
2.4 Esempi di sistemi CBIR......................................................................................49
CAPITOLO III.
CLUSTERING DI FORME SEMI-SUPERVISIONATO .........................................52
3.1 Introduzione al clustering ...................................................................................53
3.1.1
Definizioni e notazione..........................................................................54
3.1.2
I passi di un processo di clustering ........................................................55
3.1.3
Misure di similarità................................................................................56
3.1.4
Approccio fuzzy ....................................................................................58
3.2 Algoritmo Fuzzy C-Means non supervisionato ..................................................60
3.2.1
Fuzzy clustering .....................................................................................60
3.2.2
Descrizione dell’algoritmo ....................................................................64
3.2.3
I dati .......................................................................................................67
3.3 Algoritmo Fuzzy C-Means semi-supervisionato ................................................67
3.3.1
Clustering di forme semi-supervisionato ...............................................69
3.3.2
Annotazione fuzzy di forme ..................................................................73
CAPITOLO IV.
SPERIMENTAZIONE ..................................................................................................78
4.1 Introduzione ........................................................................................................79
4.2 Sperimentazione algoritmo Fuzzy C-Means non supervisionato .......................81
4.3 Sperimentazione algoritmo Fuzzy C-Means semi-supervisionato .....................86
4.3.1
Sperimentazione con numero di cluster pari a 10..................................86
4.3.1.1 Etichettatura manuale .............................................................87
4.3.1.2 Etichettatura random ..............................................................99
4.3.1.3 Etichettatura automatica .......................................................111
4.3.1.4 Fuzzy C-Means non supervisionato .....................................124
4.3.1.5 Valutazione dei risultati........................................................128
4.3.1.6 Annotazione fuzzy ................................................................130
4.3.2
Sperimentazione con numero di cluster pari a 15................................ 133
4.3.2.1 Etichettatura manuale ........................................................... 134
4.3.2.2 Etichettatura random ............................................................ 140
4.3.2.3 Etichettatura automatica ....................................................... 146
4.3.2.4 Fuzzy C-Means non supervisionato ..................................... 152
4.3.2.5 Valutazione dei risultati........................................................ 158
4.3.2.6 Annotazione fuzzy................................................................ 161
4.3.3
Valutazione delle sperimentazioni ...................................................... 163
4.4 Sperimentazione retrieval ................................................................................. 165
4.4.1
Introduzione ......................................................................................... 165
4.4.2
Risultati sperimentali con numero di cluster pari a 10 ........................ 167
4.4.3
Risultati sperimentali con numero di cluster pari a 15 ........................ 175
4.4.4
Valutazione dei risultati ....................................................................... 182
4.5 Sperimentazione immagini reali ....................................................................... 182
4.5.1
Introduzione ......................................................................................... 182
4.5.2
Annotazione fuzzy ............................................................................... 185
4.5.3
Retrieval .............................................................................................. 190
4.5.4
Valutazione dei risultati ....................................................................... 197
CAPITOLO V.
CONCLUSIONI E SVILUPPI FUTURI ................................................................... 198
5.1 Possibili sviluppi futuri ..................................................................................... 199
BIBLIOGRAFIA ........................................................................................................ 201
ELENCO DELLE FIGURE
Figura 1.1: Architettura di un sistema di image annotation ................................................ 13
Figura 1.2: Processo di training del modello di co-occorrenza ........................................... 21
Figura 1.3: Processo di test del modello di co-occorrenza .................................................. 21
Figura 1.4: Modello di Barnard e Forsyth ........................................................................... 23
Figura 1.5: Modello Corr-LDA ........................................................................................... 24
Figura 1.6: Modello GCap ................................................................................................... 26
Figura 1.7: Sistema di annotazione di immagini basato sulla classificazione ..................... 28
Figura 1.8: Insieme delle istanze positive e negative .......................................................... 33
Figura 1.9: Esempio di concetto di ontologia utilizzato da Gao et. al. ................................ 35
Figura 2.1: Architettura di un sistema CBIR ....................................................................... 48
Figura 2.2: Schermata del sistema SQUID .......................................................................... 49
Figura 2.3: Schermata del sistema MARS........................................................................... 50
Figura 2.4: Schermata del sistema CIRES........................................................................... 50
Figura 2.5: Schermata del sistema QUICKLOOK. ............................................................. 51
Figura 3.1: Sequenza dei passi di un processo di clustering ............................................... 55
Figura 3.2: Confronto tra cluster fuzzy (F e F ) e cluster hard (H e H ) ......................... 59
Figura 3.3: Panoramica dell’approccio proposto ................................................................. 68
Figura 4.1: Immagini di esempio del data-set di riferimento .............................................. 79
Figura 4.2: Valori DCC ottenuti con l’algoritmo FCM non supervisionato ....................... 85
Figura 4.3: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM semi-supervisionato ................................................................................................... 95
Figura 4.4: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM semi-supervisionato ................................................................................................ 107
Figura 4.5: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM semi-supervisionato ................................................................................................ 120
Figura 4.6: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM non supervisionato .................................................................................................. 125
Figura 4.7: Confronto delle cardinalità delle categorie dominanti con numero di
cluster pari a 10................................................................................................................. 128
Figura 4.8: Confronto delle cardinalità delle categorie dominanti con numero
di forme da etichettare pari a 72 ....................................................................................... 129
Pagina |1
Elenco delle figure
Figura 4.9: Box-plot rappresentante la distribuzione delle forme etichettate................... 130
Figura 4.10: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM semi-supervisionato ................................................................................................ 136
Figura 4.11: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM semi-supervisionato ................................................................................................ 142
Figura 4.12: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM semi-supervisionato ................................................................................................ 148
Figura 4.13: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo
FCM non supervisionato .................................................................................................. 154
Figura 4.14: Confronto delle cardinalità delle categorie dominanti con numero di
cluster pari a 15................................................................................................................. 159
Figura 4.15: Confronto delle cardinalità delle categorie dominanti con numero
di forme da etichettare pari a 72 ....................................................................................... 159
Figura 4.16: Box-plot rappresentante la distribuzione delle forme etichettate................. 161
Figura 4.17: Confronto tra le due tipologie di algoritmi .................................................. 164
Figura 4.18: Panoramica dell’approccio proposto ............................................................ 166
Figura 4.19: Esempio di query ottenute applicando l’algoritmo FCM
semi-supervisionato e non supervisionato ........................................................................ 167
Figura 4.20: Valori di precision con numero di cluster pari a 10 ..................................... 172
Figura 4.21: Valori di recall con numero di cluster pari a 10 ........................................... 172
Figura 4.22: Box-plot rappresentante la distribuzione dei valori di precision ................. 173
Figura 4.23: Box-plot rappresentante la distribuzione dei valori di recall ....................... 174
Figura 4.24: Valori di precision con numero di cluster pari a 15 ..................................... 179
Figura 4.25: Valori di recall con numero di cluster pari a 15 ........................................... 179
Figura 4.26: Box-plot rappresentante la distribuzione dei valori di precision ................. 180
Figura 4.27: Box-plot rappresentante la distribuzione dei valori di recall ....................... 181
Figura 4.28: Immagini di esempio del data-set reale........................................................ 183
Figura 4.29: Valori di precision ........................................................................................ 194
Figura 4.30: Valori di recall ............................................................................................. 194
Figura 4.31: Box-plot rappresentante la distribuzione dei valori di precision ................. 195
Figura 4.32: Box-plot rappresentante la distribuzione dei valori di recall ....................... 196
Pagina |2
ELENCO DELLE TABELLE
Tabella 4.1: Suddivisione delle categorie presenti nel data-set ........................................... 80
Tabella 4.2: Risultati algoritmo FCM con numero di cluster pari a 9 ................................. 81
Tabella 4.3: Risultati algoritmo FCM con numero di cluster pari a 10 ............................... 82
Tabella 4.4: Risultati algoritmo FCM con numero di cluster pari a 11 ............................... 82
Tabella 4.5: Risultati algoritmo FCM con numero di cluster pari a 12 ............................... 83
Tabella 4.6: Risultati algoritmo FCM con numero di cluster pari a 13 ............................... 83
Tabella 4.7: Risultati algoritmo FCM con numero di cluster pari a 14 ............................... 84
Tabella 4.8: Risultati algoritmo FCM con numero di cluster pari a 15 ............................... 84
Tabella 4.9: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 12 ......................................................................................................... 87
Tabella 4.10: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 24 ......................................................................................................... 87
Tabella 4.11: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 36 ......................................................................................................... 88
Tabella 4.12: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 48 ......................................................................................................... 89
Tabella 4.13: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 60 ......................................................................................................... 90
Tabella 4.14: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 72 ......................................................................................................... 92
Tabella 4.15: Tabella riepilogativa relativa alla etichettatura “manuale” ........................... 94
Tabella 4.16: Tabella relativa alla prova migliore dell’etichettatura “manuale” ................ 95
Tabella 4.17: Prototipi relativi alla prova migliore con etichettatura “manuale” ................ 98
Tabella 4.18: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 12 ......................................................................................................... 99
Tabella 4.19: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 24 ......................................................................................................... 99
Tabella 4.20: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 36 ...................................................................................................... 100
Tabella 4.21: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 48 ...................................................................................................... 101
Pagina |3
Elenco delle tabelle
Tabella 4.22: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 60 ...................................................................................................... 102
Tabella 4.23: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 72 ...................................................................................................... 104
Tabella 4.24: Tabella riepilogativa relativa alla etichettatura “random”.......................... 106
Tabella 4.25: Tabella relativa alla prova migliore dell’etichettatura “random” ............... 107
Tabella 4.26: Prototipi relativi alla prova migliore con etichettatura “random” .............. 110
Tabella 4.27: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 12 ...................................................................................................... 111
Tabella 4.28: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 24 ...................................................................................................... 112
Tabella 4.29: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 36 ...................................................................................................... 113
Tabella 4.30: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 48 ...................................................................................................... 114
Tabella 4.31: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 60 ...................................................................................................... 115
Tabella 4.32: Composizione della matrice “cat_clust” con numero di forme
da etichettare pari a 72 ...................................................................................................... 117
Tabella 4.33: Tabella riepilogativa relativa alla etichettatura “automatica” .................... 119
Tabella 4.34: Tabella relativa alla prova migliore dell’etichettatura “automatica” ........ 120
Tabella 4.35: Prototipi relativi alla prova migliore con etichettatura “automatica” ......... 123
Tabella 4.36: Tabella relativa alla prova migliore dell’algoritmo FCM non
supervisionato ................................................................................................................... 124
Tabella 4.37: Prototipi relativi alla prova migliore dell’algoritmo FCM
non supervisionato ............................................................................................................ 127
Tabella 4.38: Tabella relativa alla sperimentazione con numero di cluster
pari a 10 ............................................................................................................................ 128
Tabella 4.39: Valori di media, deviazione standard, minimo e massimo per .................. 129
Tabella 4.40 : Composizione del data-set di test .............................................................. 131
Tabella 4.41: Tabella riassuntiva relativa all’annotazione con numero di cluster
pari a 10 ............................................................................................................................ 132
Tabella 4.42: Valori di precision e recall per il processo di annotazione ......................... 133
Tabella 4.43: Tabella riepilogativa relativa alla etichettatura “manuale” ........................ 134
Pagina |4
Elenco delle tabelle
Tabella 4.44: Tabella relativa alla prova migliore dell’etichettatura “manuale” ............. 135
Tabella 4.45: Prototipi relativi alla prova migliore con etichettatura “manuale” ............. 139
Tabella 4.46: Tabella riepilogativa relativa alla etichettatura “random”.......................... 140
Tabella 4.47: Tabella relativa alla prova migliore dell’etichettatura “random” ............... 141
Tabella 4.48: Prototipi relativi alla prova migliore con etichettatura “random” .............. 145
Tabella 4.49: Tabella riepilogativa relativa alla etichettatura “automatica” .................... 147
Tabella 4.50: Tabella relativa alla prova migliore dell’etichettatura “automatica” ......... 147
Tabella 4.51: Prototipi relativi alla prova migliore con etichettatura “automatica” ......... 151
Tabella 4.52: Tabella relativa alla prova migliore dell’algoritmo FCM non
supervisionato ................................................................................................................... 153
Tabella 4.53: Prototipi relativi alla prova migliore dell’algoritmo FCM
non supervisionato ............................................................................................................ 157
Tabella 4.54: Tabella relativa alla sperimentazione con numero di cluster
pari a 15 ............................................................................................................................ 158
Tabella 4.55: Valori di media, deviazione standard, minimo e massimo......................... 160
Tabella 4.56: Tabella riassuntiva relativa all’annotazione con numero di cluster
pari a 15 ............................................................................................................................ 162
Tabella 4.57: Valori di precision e recall per il processo di annotazione ......................... 163
Tabella 4.58: Valori di precision e recall con etichettatura “manuale” ............................ 168
Tabella 4.59: Valori di precision e recall con etichettatura “random” ............................. 168
Tabella 4.60: Valori di precision e recall con etichettatura “automatica” ........................ 170
Tabella 4.61: Valori di precision e recall eseguendo l’algoritmo FCM
non supervisionato ............................................................................................................ 171
Tabella 4.62: Valori di media, deviazione standard, minimo e massimo
relativi alla precision ........................................................................................................ 173
Tabella 4.63: Valori di media, deviazione standard, minimo e massimo
relativi alla recall .............................................................................................................. 174
Tabella 4.64: Valori di precision e recall con etichettatura “manuale” ............................ 175
Tabella 4.65: Valori di precision e recall con etichettatura “random” ............................. 176
Tabella 4.66: Valori di precision e recall con etichettatura “automatica” ........................ 177
Tabella 4.67: Valori di precision e recall eseguendo l’algoritmo FCM
non supervisionato ............................................................................................................ 178
Tabella 4.68: Valori di media, deviazione standard, minimo e massimo
relativi alla precision ........................................................................................................ 180
Pagina |5
Elenco delle tabelle
Tabella 4.69: Valori di media, deviazione standard, minimo e massimo
relativi alla recall .............................................................................................................. 181
Tabella 4.70: Composizione del data-set di test costituito da immagini reali .................. 183
Tabella 4.71: Tabella riassuntiva relativa all’annotazione ............................................... 185
Tabella 4.72: Valori di precision e recall per il processo di annotazione ......................... 187
Tabella 4.73: Esempi di risultati dell’annotazione ........................................................... 188
Tabella 4.74: Valori di precision e recall con etichettatura “manuale” ............................ 190
Tabella 4.75: Valori di precision e recall con etichettatura “random” ............................. 191
Tabella 4.76: Valori di precision e recall con etichettatura “automatica” ........................ 192
Tabella 4.77: Valori di precision e recall eseguendo l’algoritmo FCM
non supervisionato ............................................................................................................ 193
Tabella 4.78: Valori di media, deviazione standard, minimo e massimo
relativi alla precision ........................................................................................................ 195
Tabella 4.79: Valori di media, deviazione standard, minimo e massimo
relativi alla recall .............................................................................................................. 196
Pagina |6
INTRODUZIONE
La diffusione esponenziale delle grandi collezioni di immagini digitali ha dato luogo ad un
interesse crescente per i tool automatici in grado di memorizzare, organizzare e recuperare in
modo efficiente le immagini. Questo ha reso possibile la crescita di una promettente area di
ricerca conosciuta come Content-Based Image Retrieval (CBIR) che coinvolge la
progettazione e lo sviluppo di sistemi capaci di utilizzare delle caratteristiche visuali di basso
livello come texture, colore e forma per il processo di indicizzazione e recupero delle
immagini [1], [2].
L’estrazione di caratteristiche di basso livello collegate alla visualizzazione dei
contenuti di una immagine è un compito abbastanza semplice e piuttosto diretto. Inoltre, l’uso
di caratteristiche di basso livello permette la definizione di misure di similarità adatte a
sviluppare efficaci metodi da utilizzare nei processi CBIR. Tuttavia, molti utenti incontrano
delle difficoltà nel formulare query di ricerca specificando direttamente attributi visuali di
basso livello. Infatti, l’essere umano tende a riconoscere immagini e ad esprimere il loro
contenuto in relazione a concetti di alto livello, cioè essi di solito formulano le loro query in
linguaggio naturale utilizzando dei concetti semantici. Quindi, uno dei principali problemi che
incide pesantemente sulle performance dei sistemi CBIR è rappresentato dal “semantic gap”,
definito come “la mancanza di coincidenza tra l’informazione automatica estratta dai dati
visuali e la conoscenza semantica cioè l’interpretazione che lo stesso dato visuale ha per un
utente in una data situazione” [3].
In letteratura, sono stati proposti differenti approcci per scoprire la correlazione
nascosta tra le caratteristiche visuali di basso livello e i concetti di alto livello [4], [5]. Tra
questi, un approccio lineare è l’annotazione di immagini conosciuta come “image labellling”
che consiste nella associazione di una descrizione testuale ai contenuti di una immagine
fornendo così la capacità fondamentale di indicizzare semanticamente immagini [6], [7].
L’annotazione manuale di immagini è soggettiva, tempo e processo soggetti ad errori. Quindi,
l’aumentare dello sforzo di ricerca ha indirizzato verso la definizione di metodi automatici per
l’annotazione di immagini basata su contenuti visuali di basso livello [8], [9], [10].
L’annotazione di immagini può essere definita come il processo che assegna etichette testuali
a immagini allo scopo di descrivere le categorie semantiche espresse nella immagine. Nella
annotazione di immagini, diverse questioni da affrontare riguardano: la scelta delle
caratteristiche di basso livello per descrivere il contenuto visuale di una immagine, la
Pagina |7
Introduzione
definizione delle categorie semantiche e l’associazione di una nuova immagine per le
categorie rilevate.
In particolare, la scelta delle caratteristiche di basso livello è un dogma centrale nella
annotazione di immagini. Molti lavori hanno dimostrato che le caratteristiche visuali come
colore, texture e posizionamento, sono insufficienti per esprimere le informazioni che possono
essere ottenute attraverso una analisi delle forme degli oggetti presenti nelle immagini [11],
[12], [13], [14]. La forma gioca un ruolo critico per la rappresentazione di oggetti contenuti
nelle immagini diventando una caratteristica fondamentale in molte applicazione di computer
vision e comprensione delle immagini per scopi di indicizzazione e recupero. Infatti un
notevole aumento delle informazioni è contenuto nei contorni degli oggetti, quindi secondo la
comunità scientifica la forma deve essere considerata come uno strumento fondamentale per
descrivere gli oggetti in una immagine. Inoltre, la forma è una importante caratteristica
strettamente correlata alla percezione umana. Infatti, molti utenti tendono a percepire le
immagini come una composizione di oggetti singoli identificati dalla loro forma ed essi di
solito riconoscono immagini basate sulla forma degli oggetti contenuti nelle immagini
fornendo un esempio o disegnandole [15], [16] .
Per quanto riguarda la definizione delle categorie semantiche, molti degli approcci per
l’annotazione delle immagini assumono l’esistenza a priori di un numero di categorie
semantiche altamente dipendente dal dominio delle immagini considerate. Comunque, in
molti casi il numero delle categorie semantiche non è noto in anticipo. Gli esperti spesso
possono avere alcuni tipi di conoscenza circa il dominio dell’immagine come l’appartenenza
di un numero di immagini a delle specifiche categorie semantiche. Naturalmente, l’efficacia
dell’intero processo di annotazione delle immagini può beneficiare di metodi che sono capaci
di spiegare alcuni tipi di conoscenza del dominio per scoprire automaticamente un numero di
categorie semantiche con i corrispondenti prototipi visuali. Tipicamente l’associazione di una
immagine alle categorie semantiche è un processo crisp, cioè una immagine è classificata
esattamente in una categoria semantica [17], [18]. Comunque, a causa della presenza di
rumore e ambiguità nella caratteristiche di una immagine, risulta molto difficile o addirittura
impossibile classificare precisamente una immagine in una categoria semantica. Pertanto,
l’incertezza sottostante il processo di annotazione può essere opportunamente catturata
etichettando immagini con parole chiavi multiple derivanti da un processo di annotazione
fuzzy, il quale assegna etichette multiple ad una immagine assieme a valori riguardanti il
grado di appartenenza di una stessa immagine ad ciascuna categoria semantica [19], [20],
[21].
Pagina |8
Introduzione
Per affrontare tutti questi aspetti, in questo lavoro di tesi viene presentato un algoritmo
per l’annotazione fuzzy di forme. L’idea fondamentale di questo algoritmo è quella di fornire
al clustering un meccanismo di supervisione parziale, il quale rappresenta una guida utile
durante il processo di scoperta automatica dei prototipi visuali delle forme, che rappresentano
un certo numero di categorie semantiche. Il fuzzy clustering semi-supervisionato consente di
identificare le categorie semantiche raggruppando insieme forme simili sfruttando la
conoscenza del dominio espressa in termini di poche forme etichettate. Tale conoscenza può
essere acquisita in differenti modi. Per esempio, essa può essere esplicitata da un esperto del
dominio oppure derivata automaticamente dalle collezioni di forme disponibili come verrà
descritto nei capitoli successivi. Al termine del processo di clustering, per ogni cluster si
determina un prototipo di forma. Successivamente, ad ogni prototipo è associata manualmente
una etichetta testuale corrispondente alla specifica categoria semantica. Infine, per etichettare
una nuova forma, i suoi descrittori visuali sono confrontati con i descrittori visuali di tutti i
prototipi e i valori di similarità sono utilizzati per creare un insieme fuzzy che esprime i gradi
di appartenenza della forma ad ogni categoria semantica identificata.
La tesi si articola nel seguente modo:
•
capitolo 1: viene introdotto il processo di annotazione delle immagini, le tecniche
utilizzate e presenti in letteratura ed infine ci si soffermerà in particolare
sull’annotazione di forme;
•
capitolo 2: riporta una breve panoramica sull’image retrieval e sui sistemi presenti in
letteratura;
•
capitolo 3: descrizione dell’algoritmo implementato e analisi delle varie fasi che lo
compongono;
•
capitolo 4: descrizione delle due sperimentazioni condotte, la prima utilizzata per
valutare le capacità dell’algoritmo e la seconda per valutare la performance del
processo di retrieval;
•
capitolo 5: riporta le conclusioni e i possibili sviluppi futuri relativi al lavoro di tesi
svolto.
Pagina |9
CAPITOLO I
ANNOTAZIONE
DI IMMAGINI
Pagina |10
Capitolo I – Annotazione di Immagini
In questo capitolo viene riportata una breve panoramica relativa allo stato dell’arte
dell’annotazione delle immagini, ed in particolare ci si soffermerà sulle tecniche presenti in
letteratura. Infine verrà introdotto il concetto di shape clustering.
1.1 COS’È L’ANNOTAZIONE DI IMMAGINI?
Per accedere e recuperare in maniera efficiente ed efficace le immagini, la soluzione più
comunemente adottata è quella di contrassegnare le immagini con dei metadati che esprimano
effettivamente la semantica del contenuto rappresentato; questo modo di procedere è appunto
definito come “Image Annotation”.
Se l'immagine è descritta mediante informazioni di tipo testuale, allora le tecniche di
ricerca testuale possono essere usate per migliorare la ricerca delle immagini. Tuttavia si è
sentiti la necessità di migliorare la generazione di tali metadati rendendola automatica, tale
operazione prende il nome di “Automatic Image Annotation”. Utilizzando questo metodo si ha
la possibilità di effettuare ricerche sulle immagini utilizzando sistemi CBIR più efficaci.
Molti ricercatori hanno proposto varie tecniche volte a colmare il problema noto come
“gap semantico”. Nel tentativo di risolvere tale problematica, molti si sono trovati dinanzi ad
un ulteriore ostacolo, cioè la forte dipendenza del sistema dal data-set utilizzato per la fase di
apprendimento.
Le ricerche sull'annotazione di immagini sono state condotte da molti ricercatori sulla
base delle esigenze e delle immagini da annotare. Ad esempio, nell’articolo “A Survey of
Methods for Image Annotation” si suddivide l'approccio dell'image annotation in tre categorie
distinte:
1) annotazione con testo libero;
2) annotazione con parole chiave;
3) annotazione basata sulle ontologie.
Nell’articolo “Automatically Annotating Images with Keywords: A Review of Image
Annotation Systems” gli autori, descrivono gli studi condotti, nei quali hanno esaminato ben
50 sistemi di annotazione di immagini utilizzando macchine volte a supervisionare le tecniche
di apprendimento atte all'annotazione delle immagini utilizzate per mappare le caratteristiche
o
Pagina |11
Capitolo I – Annotazione di Immagini
di basso livello, le features, assegnandogli concetti di alto livello, cioè semantica.
Inoltre sempre nel 2008, Jiayu nella sua tesi di dottorato “Automatic Image Annotation
and Object Detection” propone un'ulteriore classificazione per l'image annotation, secondo
tale classificazione l'annotazione delle immagini può essere condotta mediante tre approcci:
i.
statistic approach (approccio statistico): le tecniche statistiche sono molto popolari
nell'ambito dell'information retrieval, ma recentemente i ricercatori hanno iniziato ad
applicarle anche nell'ambito dell'annotazione automatica di immagini, riscontrando
promettenti risultati. L'idea alla base di tali tecniche è il valutare la possibilità che i
documenti facciano riferimento alla query sottoposta dall'utente. I documenti sono
ordinati in base a tale probabilità;
ii.
vector-space related approach (approccio basato su vettori correlati): esso risulta
essere particolarmente usato nell'ambito dell'information retrieval, soprattutto per
quanto riguarda la ricerca di documenti testuali. Generalmente, il documento è
rappresentato mediante vettori, ciascuno dei quali contiene le occorrenze delle parole
presenti nel relativo documento. La lunghezza del vettore è pari alla dimensione del
vocabolario. Tale approccio applicato all'annotazione automatica delle immagini,
tratta le immagini come fossero documenti testuali, paragonando gli oggetti visuali
alle parole di un testo e considerando inoltre i descrittori delle feature dell'immagine
per la generazione del vettore;
iii.
classification approach (classificazione): prevede l'assegnazione di una parola
all'immagine classificandola come appartenente ad un gruppo fra un elenco
inizialmente definito. Ognuno di questi gruppi è caratterizzato dal significato della
parola ad esso associata. Fornendo al sistema di classificazione una immagine non
annotata, tale algoritmo ne certifica il gruppo di appartenenza e la annota con la parola
corrispondente. L'annotazione multipla può essere fatta assumendo che una immagine
possa appartenere a più classi contemporaneamente.
Dalle date e dal numero di pubblicazioni riguardanti l'image annotation, risulta
evidente che esso rappresenta un'area di studio su cui si stanno focalizzando numerose attività
di ricerca, soprattutto a causa del grande impatto che avrebbe sulla ricerca delle immagini
all'interno di vaste collezioni e in particolare sulla ricerca di immagini via Web.
Pagina |12
Capitolo I – Annotazione di Immagini
Lo schema di un generico sistema di Image Annotation è riportato qui di seguito:
Image
Segmentation
n
Block baseed
Region based
Feature
extraction
Texture
Color
Shape
Annotation
Pattern
classification
Annotated Image
Figura 1.1: Architettura di un sistema di image annotation
Pagina |13
Capitolo I – Annotazione di Immagini
1.2 TECNICHE PER L’ANNOTAZIONE DI IMMAGINI
L’annotazione delle immagini può essere effettuata con tre differenti tecniche:
1) manuale: l'utente, volta per volta, deve inserire manualmente le parole chiave che
descrivono il contenuto dell'immagine;
2) automatica: all'insaputa dell'utente il sistema sulla base delle features riesce a
ricavare la semantica del contenuto e associa delle parole chiave predefinite
all'immagine;
3) semi-automatica: il sistema ha bisogni di interagire con l'utente, mediante feedback
e query fornite dall'utente stesso.
Le tre tecniche si differenziano sostanzialmente nel lavoro necessario per
l'inizializzazione del sistema in modo che quest’ultimo produca un risultato corretto. Di
seguito vengono esaminati i singoli aspetti.
Inizializzazione del sistema:
Per quanto riguarda l'annotazione manuale, lo sforzo che l'utente deve eseguire
affinché il sistema possa produrre risultati, risulta essere notevole in quanto è costretto ad
associare manualmente le parole chiave ogni qualvolta una nuova immagine viene inserita
nell'archivio di immagini. Completamente opposto è il caso dell'annotazione automatica, in
cui l'interazione da parte dell'utente nella fase preliminare risulta essere completamente
assente.
Si può intuire che nel caso dell'annotazione semi-automatica, si abbia un compromesso
fra le due tecniche precedentemente descritte, infatti in tale caso vi è interazione fra utente e
sistema, ma risulta essere minima, in quanto prevede solo l'inserimento di una query.
Task della macchina:
Non ci sono solo differenze riguardanti il lavoro svolto dall'utente, ma anche il sistema
stesso nei tre casi svolge compiti alquanto differenti.
Nell’annotazione manuale, il sistema non fa altro che memorizzare le immagini con le
relative parole chiave associate, pertanto il sistema effettua interrogazioni sull'archivio di
immagini sulla base delle parole chiave, senza dover utilizzare ulteriori elaborazioni.
Pagina |14
Capitolo I – Annotazione di Immagini
Nel caso dell’'annotazione automatica lo sforzo da parte del sistema risulta essere
alquanto gravoso, infatti è proprio il sistema ad analizzare ciascuna immagine, a valutarne il
contenuto visivo e ad estrarne le keywords che la descriveranno e che verranno utilizzate in
fase di ricerca.
Infine la tecnica di annotazione semi-automatica risulta essere sempre un
compromesso fra le due precedenti, infatti il sistema in questo caso analizza la query fornita
dall'utente e ne estrae le informazioni semantiche con lo scopo di migliorare l'annotazione
delle immagini.
Contributo da parte dell'utente:
Il contributo dell'utente nei tre tipi di annotazione non solo si distingue per quanto
riguarda le operazioni compiute, ma anche per quanto riguarda il momento in cui l'utente
interagisce con il sistema per il processo di annotazione.
Per quanto riguarda l'annotazione di tipo manuale, l'interazione dell'utente con il
sistema si ha, come abbiamo visto in precedenza, nella fase di inizializzazione del sistema
stesso, e tale interazione è volta a fornire al sistema i mezzi necessari per poter effettuare una
ricerca basata sul contenuto.
In precedenza si è detto che l'annotazione di tipo automatica non presentava nessun
tipo di interazione al momento dell'inizializzazione del sistema, ed infatti, in modo
completamente opposto all'annotazione manuale, la totalità dell'interazione si ha nella fase
finale del processo di annotazione, in cui l'utente verifica la correttezza e l'accuratezza del
risultato ottenuto.
Come nei precedenti casi, l'annotazione semi-automatica rappresenta una mediazione
fra le altre due tecniche completamente opposte fra loro, infatti l'interazione fra l'utente e il
sistema si ha durante tutto il corso del processo di annotazione e inoltre l'utente collabora con
il sistema per la corretta annotazione delle immagini nella collezione.
Pagina |15
Capitolo I – Annotazione di Immagini
1.2.1 VANTAGGI
E
SVANTAGGI
DELLE
TECNICHE
PER
L’ANNOTAZIONE DI IMMAGINI
Ciascuna delle tecniche descritte nel paragrafo precedente presenta dei vantaggi e degli
svantaggi, che andremo ad analizzare e valutare qui di seguito:
1) Annotazione manuale:
o vantaggi: fra le tecniche risulta essere la più accurata, in quanto le keywords
vengono fornite dall'utente;
o svantaggi: risulta essere molto dispendiosa in termini di tempo e si incontrano
delle difficoltà nel caso di grandi quantità di immagini.
2) Annotazione automatica:
o vantaggi: risulta essere fra le tre tecniche la più efficiente in termini di tempo e
risorse;
o svantaggi: risulta essere molto incline agli errori durante la fase di
assegnazione delle keyword, pertanto è la meno accurata fra le tre tecniche.
3) Annotazione semi-automatica:
o vantaggi: la qualità dell'annotazione viene migliorata mediante l'interazione tra
il sistema e l'utente;
o svantaggi: il tempo dedicato all'annotazione automatica è molto inferiore
rispetto a quello dedicato a quella manuale.
Dall'analisi dei vantaggi e degli svantaggi possiamo concludere che una maggiore
qualità dei risultati, data dall'annotazione manuale, è inversamente proporzionale all'efficienza
del sistema in termini di tempo, medesimo discorso vale per quanto riguarda l'annotazione
automatica in cui viene ottimizzata al massimo l'efficienza a discapito dell'efficacia, infatti
risulta essere la tecnica più rapida, ma contemporaneamente la più soggetta ad errore.
Pagina |16
Capitolo I – Annotazione di Immagini
Per ottenere risultati ottimali è preferibile cercare un compromesso fra le due tecniche
dato dall'annotazione semi-automatica, la quale risulta essere molto efficiente se comparata
con l'annotazione manuale e molto accurata se comparata con quella automatica.
1.3 ANNOTAZIONE AUTOMATICA VS. MANUALE
Nel paragrafo precedente abbiamo messo a confronto le tre tecniche di annotazione cercando
di individuare le differenze sostanziali che le separano. In questo paragrafo verranno messe a
confronto l'annotazione automatica e quella manuale.
Come vedremo tali tecniche non si discostano l'una dall'altra solo per le differenze
sostanziali e di natura generica prima precedentemente, come lo sforzo richiesto dall'utente e
la precisione con cui eseguono l'annotazione, ma presentano anche differenze più sottili e su
cui è opportuno riflettere .
Nell’articolo “Automatic annotation of images from the practitioner perspective”,
vengono messe in evidenza due importanti limitazioni dell'annotazione automatica rispetto a
quella manuale. La prima limitazione è data dal fatto che le parole chiave generate dalle
tecniche di annotazione automatica si riferiscono unicamente alle entità visibili all'interno
dell'immagine, anche se l'utente spesso tende a valutare solo gli elementi di maggior peso o
addirittura lo scenario presente nell'immagine. Questo problema è dovuto al fatto che i
concetti espressi e le informazioni sul contesto, che l'uomo può percepire dall'immagine, non
possono essere facilmente rilevati dalle features che tali algoritmi di annotazione riescono ad
estrapolare. Il secondo limite che l'annotazione automatica presenta è dovuto alla natura
generica delle etichette presenti nel vocabolario. Infatti Enser afferma che gli oggetti hanno
proprietà comuni dal punto di vista degli stimoli visivi ed hanno bisogno di un minimo di
interpretazione da parte dell'osservatore in modo da poter essere distinti.
In conclusione possiamo affermare che nonostante queste limitazioni l’annotazione
automatica ha ancora un valore fondamentale; in quanto, anche se, almeno per il momento,
non è possibile far si che l'annotazione risenta dell'interpretazione concettuale dell'immagine,
la possibilità di annotare semplici oggetti raffigurati nelle immagini, sarebbe di enorme aiuto
considerando la mole di immagini esistenti al giorno d'oggi.
Pagina |17
Capitolo I – Annotazione di Immagini
1.4 VALUTARE L’EFFICACIA DELL’ANNOTAZIONE
Una volta che le immagini di prova sono state contrassegnate con sistemi di auto-annotazione,
le qualità di annotazione devono essere valutate per il confronto delle prestazioni tra i diversi
sistemi.
Un certo numero di metriche di valutazione sono stati utilizzati dai ricercatori, alcune
delle quali vengono descritte qui di seguito.
1.4.1 PRECISION E RECALL
Precision e recall, sono due tra le più popolari metriche utilizzate per la comparazione dei
sistemi di information retieval, ma sono anche ampiamente usati per valutare l’efficacia
dell’approccio dell’auto-annotazione.
Nella comunità dell’information retrieval, la precision di una query è definita come il
rapporto tra il numero dei documenti restituiti dal sistema e il numero totale dei documenti
restituiti, mentre la recall è definita come il rapporto tra il numero totale dei documenti
restituiti e il numero totale dei documenti rilevanti presenti nel database. Ci sono due versioni:
per immagini e per documenti.
Nel paragrafo successivo verrà analizzata relativa alle
immagini, in quanto risulta essere quella attinente al progetto di tesi svolto.
1.4.1.1
PRECISION E RECALL PER IMMAGINI
La precision e la recall nel caso delle immagini, sono calcolate sulla base del test di una
singola immagine. Per ogni immagine di test, la precision è definita come il rapporto del
numero delle parole che sono classificate correttamente e il numero di parole classificate.
Mentre la recall è definita come il rapporto tra il numero di parole che sono classificate
correttamente e il numero di parole oppure annotate manualmente.
Matematicamente, esse sono calcolate nel seguente modo:
Pagina |18
Capitolo I – Annotazione di Immagini
dove:
a) r: è il numero di parole classificate correttamente;
b) n: è il numero di etichette manuali nell’immagine di test;
c) w: è il numero di parole classificate in modo errato.
I valori finali di precision e recall sono ottenuti dalla media dei valori calcolati
sull’intero insieme delle immagini di test.
1.4.2 PAROLE CHIAVE CON RECALL MAGGIORE DI 0
Duygulu, usa anche il numero della parole chiave aventi un valore di recall maggiore di 0 e
che mostra la diversità delle parole corrette che possono essere classificate con l’annotazione
automatica. Una parola chiave ha un valore di recall maggiore di 0, se classifica correttamente
una o più.
1.4.3 PUNTEGGIO NORMALIZZATO
Barnard nel 2003, propone l’utilizzo del punteggio normalizzato, il quale è calcolato tramite
l’equazione riportata qui di seguito e viene utilizzata per la valutazione della annotazione
autoamtica:
dove:
a) r, n e w: hanno la stessa definizione utilizzata nel paragrafo 1.4.1.1;
b) N: è il numero di parole presenti nel vocabolario.
Pagina |19
Capitolo I – Annotazione di Immagini
Esso è uguale a:
o 1 se l’immagine è correttamente annotata;
o -1 se è classificato l’esatto complemento dell’insieme attuale di parole;
o 0 per una qualsiasi classificazione.
Infine, come sostenuto da Hare e Lewis nel 2005, il punteggio normalizzato è
massimo quando sono prodotti risultati in cui abbiamo poca rumorosità, quando essa non è
desiderata.
1.5 ANNOTAZIONE DI IMMAGINI CON APPRENDIMENTO NON
SUPERVISIONATO
I metodi di apprendimento non supervisionato per l’annotazione di immagini hanno una
caratteristica in comune, cioè essi considerano le parole chiave come un tipo di caratteristica,
ovvero le caratteristuche testuali, in modo tale da essere distinte da quelle visuali.
Questo approccio può essere suddiviso ulteriormente in due gruppi: modelli
parametrici e modelli non parametrici. Tutti i modelli parametrici hanno fase di formazione
per stimare i parametri di modello. In contrasto, i modelli non parametrici non devono
necessariamente stimare qualche parametro di modello nella fase di formazione, ma essi
hanno bisogno dell’intero data-set di training quando devono annotare una nuova immagine.
1.5.1 MODELLI PARAMETRICI
Il primo tentativo di annotazione automatica di immagini considerando le parole come
caratteristiche testuali è forse il lavoro di Mori et. al. [22], in cui essi propose un modello di
co-occorrenza per rappresentare le relazioni tra le parole chiavi e le caratteristiche visuali.
Ogni immagine è convertita in un insieme di aree di immagini aventi forma rettangolare
utilizzando una griglia regolare. Le aree delle immagini relative ai dati di training sono
raggruppate in un certo numero di cluster. Per ogni immagine di training, si propagano le sue
parole chiave ad ogni area delle immagini presenti nella stessa immagine. La distribuzione
Pagina |20
Capitolo I – Annotazione di Immagini
condizionata delle parole chiave di ogni cluster relativo alle aree, può essere stimato da
distribuzioni empiriche sui dati i training. Data una nuova immagine, la distribuzione
condizionale di ogni parola chiave relativa a ciascuna area dell’immagine è aggregata per
generare la distribuzione condizionale delle parole chiavi delle immagini di test.
Figura 1.2: Processo di training del modello di co-occorrenza
Figura 1.3: Processo di test del modello di co-occorrenza
Pagina |21
Capitolo I – Annotazione di Immagini
Il grave inconveniente del modello di co-occorrenza è dovuta all’assunzione
dell’annotazione di alcune parole chiave ad una immagine, ed esse sono propagate a ciascuna
regione presente nell’immagine con uguale probabilità. Questa assunzione è violata in molte
situazioni reali, in quanto molte parole chiavi sono nomi di oggetti come “sole”, “acqua”,
“cielo”. L’aspetto di questa tipologia di concetti in una immagine è di solito una piccola
porzione di una immagine all’interno dell’intera immagine. Così Durygulu et. al. [23] propose
un modello di traduzione automatica per l’annotazione delle immagini, il quale è
essenzialmente un miglioramento del modello di co-occorrenza di Mori. Essi rappresentano
una immagine come un insieme di regioni di immagini ottenute dalla segmentazione e dalla
esecuzione del vettore di quantizzazione su ciascuna delle caratteristiche relative alle regioni.
Le regioni dell’immagine quantizzate con i vettori sono trattate come “parole visuali” e la
relazione tra queste e le parole chiavi testuali piò essere pensata come quella tra una lingua,
come il francese, ed un’altra lingua come il tedesco. L’insieme dei dati di training è analogo
all’insieme di due lingue. Data una immagine di test, il processo di annotazione è simile al
processo di traduzione delle parole visuali in parole chiavi tessiturali usando un lessico
appreso dall’insieme di due lingue. Essi hanno trovato che un modello di traduzione
relativamente semplice usato per la traduzione delle lingue, cioè il modello di Brown et. al.
[24] produce risultati migliori rispetto ad altri modelli di traduzione disponibili. In modo
simile al modello di co-occorrenza, i parametri di apprendimento del modello di traduzione
sono anche le probabilità di distribuzione condizionata, ma il modello di traduzione non deve
propagare le parole chiave di una immagine a ogni regione con uguale probabilità. Invece, le
probabilità di associazione di una parola chiave testuale a una parola visuale è presa come
una variabile nascosta e stimata attraverso l’algoritmo di massimizzazione attesa
(Expectation-Maximization) [25].
Un approccio simile al modello di traduzione automatica è usato dal modello di
Markov [26] proposto da Ghoshal et. al. [27]. In questo approccio, ogni parola chiave testuale
è rappresentato da uno stato nascosto, il quale può generare caratteristiche visuali a seguito di
una distribuzione di probabilità per Stato. Il processo di training mira a trovare la migliore
corrispondenza tra le regioni dell’immagine e stima i parametri per ogni stato. Il processo di
annotazione di una nuova immagine è equivalente a recuperare lo stato nascosto
più
probabile di ogni regione dell’immagine. Una maggiore differenza tra l’approccio HMM e il
modello di traduzione automatica è che l’approccio HMM modella le distribuzioni continue di
caratteristiche visuali, mentre il modelli di traduzione rappresenta la distribuzione delle parole
Pagina |22
Capitolo I – Annotazione di Immagini
chiave di ogni regione dell’immagine quantizzata da un vettore. Comunque, il modello HMM
assume che un processo di traduzione fra differenti stati (parole chiavi testuali) che non è
necessariamente supportata da dati reali.
Invece di modellare la distribuzione condizionale delle parole chiave testuali basate su
caratteristiche visuali, alcuni ricercatori hanno proposto metodi per modellare la distribuzione
congiunta di caratteristiche testuali e visuali. Un tentativo è stato fatto da Barnard e Forsyth
[28]. Essi definirono un documento come una combinazione di caratteristiche visuali e
testuali. Un modello fattoriale gerarchico è proposto per modellare la distribuzione congiunta
di caratteristiche visuali e testuali, come illustrato nella figura 1.4.
Figura 1.4: Modello di Barnard e Forsyth
Il modello assume che un documento appartiene ad un cluster, il quale è denotato dai
nodi foglia nell’albero gerarchico. Dati il documento e il relativo cluster di appartenenza, il
documento è generato dai nodi basandosi sul percorso ottenuto percorrendo l’albero dal nodo
radice ai nodi foglia. Ogni aspetto sul percorso può generare regioni di immagini e
caratteristiche testuali seguendo per un aspetto le distribuzioni di probabilità. Inoltre differenti
cluster hanno diversi percorsi di attraversamento ed ognuno ha dei modelli di congiunzione
separati. Peraltro, tutti gli aspetti sono organizzati in una struttura gerarchica, gli aspetti sono
Pagina |23
Capitolo I – Annotazione di Immagini
molto compatti e essi possono modellare i punti in comune tra i cluster. Comunque, questo
modello è ottimizzato per il clustering di immagini invece di collegare la parole testuali alle
regioni dell’immagine.
Per l’annotazione delle immagini, l’obiettivo generale è trovare una relazione
condizionale tra le caratteristiche dell’immagine e le caratteristiche testuali. A tal fine, Blei e
Jordan [29] proposero il modello Corr-LDA in cui le dipendenze delle parole testuali dalle
regioni dell’immagine sono modellate esplicitamente. Questo viene illustrato nella figura 1.5,
in cui z denota l’aspetto che genera una regione r, y è l’aspetto che genera una parola w,
mentre α e Ɵ denotano i parametri che generano z. N e M sono rispettivamente il numero di
regioni e il numero di parole. La freccia da z a w indica che la generazione di una parola w
dipende dal fattore che genera una regione.
Figura 1.5: Modello Corr-LDA
Zhang et. al. [30] propose un modello semantico probabilistico per rappresentare la
distribuzione congiunta delle caratteristiche di una immagine e delle parole testuali. Essi
assumono che ci sono un numero di semantiche nascoste in una immagine, ogni semantica ha
una probabilità di generare la caratteristica visuale globale e le parole testuali. Data una
specifica semantica, la generazione delle caratteristiche visuali e delle parole testuali sono
indipendenti da ogni altro. La maggior differenza tra questo approccio e quello di Blei e
Jordan è quella di prendere una immagine nel suo complesso all’interno di un insieme di
regioni.
Pagina |24
Capitolo I – Annotazione di Immagini
1.5.2 MODELLI NON PARAMETRICI
Differente dal modello parametrico, un modello non parametrico non ha un processo di
training.
Joen et. al. [31] formularono il problema di annotazione automatica delle immagini
come un recupero di informazioni cross lingual e hanno applicato il modello “relevance
cross-media” (CMRM) alla annotazione di immagini. Sebbene tale modello, prova a
modellare la distribuzione congiunta delle caratteristiche visuali e delle parole testuali, esso
non è un modello non parametrico, come il K-NN [32] per il modello di classificazione.
L’idea essenziale è di trovare le immagini di training che sono simili alle immagini di test e
propagare la loro annotazione alle immagini di test. CMRM non assume qualunque forma
della distribuzione di probabilità congiunta sulle caratteristiche visuali e testuali affinché essi
non hanno una fase di addestramento per stimare i modelli parametrici. Uno svantaggio dei
modelli CMRM è che il vettore quantizza le regioni dell’immagine in masse di immagini e
questo può ridurre la capacità discriminate di questo modello. Così Mammatha et. al. [33]
hanno proposto un modello migliorato, cioè il modello di rilevanza cross-media continuo
(CRM). Esso preserva il vettore di caratteristiche continuo di ogni regione e questo offre un
maggior potere discriminante.
Feng et. al. [34] proposero una ulteriore estensione del modello CRM chiamato
modello di rilevanza multiplo di Bernoulli (MBRM). Essi suggerirono che l’assunzione di
una distribuzione multinomiale di parole chiavi in CRM e CMRM favorisce concetti
importanti nelle immagini e uguale lunghezza di annotazione per ogni immagine. Così essi
proposero di modellare la distribuzione delle parole chiave dell’annotazione di una immagine
come una distribuzione multipla di Bernoulli, la quale rappresenta soltanto lo stato (valore
binario) di esistenza/non esistenza di ogni parola. I risultati sperimentali mostrarono che
MBMR supera CMRM e CRM per l’annotazione di video, nei quali la lunghezza
dell’annotazione di ogni immagine varia molto e la questione più importante è l’esistenza di
un concetto piuttosto che la sua importanza.
Tutti i metodi menzionati predicono ogni parola indipendentemente da una immagine
di test. Essi possono modellare la correlazione tra le parole chiavi e le caratteristiche visuali,
ma non sono in grado di modellare la correlazione tra die parole testuali. Per risolvere questo
problema, Jin et. al. [35] proposero un modello che estende CMRM [34]. Esso definisce un
modello di linguaggio come una distribuzione multinomiale di parole. Invece di stimare la
Pagina |25
Capitolo I – Annotazione di Immagini
distribuzione condizionale di una singola parola, essi stimano la distribuzione condizionale di
un modello di linguaggio. La correlazione fra le parole può essere spiegata da un vincolo sulla
distribuzione multinomiale la cui somma della distribuzione delle singole parole deve essere
uguale a 1. Così la predizione di una parola ha effetto sulla predizione di un’altra parola.
Pan et. al. [36] proposero un approccio basato su grafo (GCap) per l’annotazione
automatica di immagini. Essi rappresentano una immagine come un insieme di regioni,
ognuna delle quali è descritta da un vettore di caratteristiche visuali. Un grafo è costruito sulla
base dei dati di training. Essi definiscono tre tipologie di nodi in questo grafo:
i.
nodi “immagine”, che rappresentano una immagine;
ii.
nodi “regione”, che rappresenta una regione dell’immagine;
iii.
nodi “parola”, che rappresenta una parola chiave testuale.
Il collegamento tra i nodi rappresenta la relazione fra differenti unità (immagini,
regioni e parole), ed esso include:
1) collegamento all’attributo dell’immagine: connette una immagine alle sue parole
chiavi e ai nodi delle caratteristiche visuali;
2) collegamento alle regioni: connette ogni nodo di una regione ai k nodi più vicini alle
regioni limitrofe.
Figura 1.6: Modello GCap
Pagina |26
Capitolo I – Annotazione di Immagini
Data una immagine di test, le regioni dell’immagine sono ottenute da una
segmentazione dell’immagine non supervisionata. Un nodo di una immagine rappresenta
l’immagine di test e parecchi nodi delle regioni rappresentano le regioni dell’immagine di test
e sono aggiunti al grafo costruito sull’insieme di training. Dato che le parole testuali di una
immagine di test mancano, non ci sono collegamenti diretti tra i nodi dell’immagine di test a
un qualsiasi nodo della parola chiave. Il processo di annotazione è modellato come un
cammino casuale con ripartenza (RWR) [37] sul grafo. Lo stato fisso di probabilità di un
cammino casuale per arrivare ad un nodo di una parola testuale da un nodo di una immagine
di test è la probabilità di annotazione di questa parola ad una immagine. In modo analogo al
modello CMRM, questo approccio è anche un modello non parametrico. Dato che esso
necessita di memorizzare i dati di training in una struttura a grafo, esso non è efficiente e non
è applicabile ad applicazioni che utilizzano data-set molto grandi.
Liu et. al. [38] proposero un modello di grafo adattivo per l’annotazione di immagini.
Essi costruiscono anche un grafo sui dati di training. Ma a differenza di GCap [36], c’è
soltanto una tipologia di nodo, cioè il nodo immagine. Ogni nodo immagine è connesso al kesimo nodo più vicino. Il modello grafico è adattivo nel senso che il numero dei nodi più
vicini connessi a ogni nodo immagine, k, è differente da ogni altro e deciso aa un processo
adattivo. La similarità fra due nodi immagine è una misura globale pesata. La probabilità di
annotazione di ogni parola alle immagini è rappresentata da una matrice con punteggio. Per
una immagine non annotata, la matrice è ottenuta aggiornando iterativamente la matrice
ottenuta dall’algoritmo [39].
1.6 ANNOTAZIONE
DI
IMMAGINI
CON
APPRENDIMENTO
SUPERVISIONATO
Oltre a considerare le parole chiave annotate a immagini come una tipologia di caratteristiche
nei metodi non supervisionati, diamo ora uno sguardo a differenti classi di etichette. Così
facendo, il processo di annotazione di una immagine con una parola chiave diventa simile a
quello di classificare l'immagine se essa appartiene a una particolare classe. Questa è la
motivazione
alla
base
dell’annotazione
di
immagini
basata
sulla
classificazione
dell’immagine.Vale la pena notare che, sebbene l’annotazione di immagini è emersa come un
argomento attivo solo nel corso dell'ultimo decennio, il problema della classificazione delle
oo
Pagina |27
Capitolo I – Annotazione di Immagini
immagini ha una storia molto più lunga. Nei primi giorni antecedenti al 1990, la
classificazione delle immagini si è principalmente focalizzata su alcuni settori particolari,
come le immagini provenienti dai radar [40], mediche [41], multi-spettrali [42], quelle
provenienti dal telerilevamento, ecc.. Solamente nel corso degli ultimi anni, l'attenzione si è
riversata sulle immagini generali come le fotografie dei consumatori, forse perché questo tipo
di immagini sono più facilmente reperibili grazie anche ai rapidi progressi che si sono avuti
nella qualità del dispositivo di acquisizione. Più recentemente, l'annotazione automatica delle
immagini è stata collegata alla classificazione delle immagini e nella maggior parte dei casi, il
suo obiettivo è quello di fornire l'indicizzazione e il recupero delle immagini in database di
immagini di grandi dimensioni.
Gli approcci esistenti per l’annotazione di immagini basata sulla classificazione si
suddividono in tre categorie:
1. metodi di classificazione orientati su scene globali: sono in grado di estrarre un
descrittore globale offerta da un'immagine e quindi
di fornire un classificatore
statistico per la classificazione delle immagini. Esempi di questo tipo di etichette di
classe includono “campagna”, “paesaggio”, “outdoor” e così via. Il compito è quello
di classificare l'immagine nel suo complesso;
2. metodi di classificazione locali: classificano le immagini con i nomi degli oggetti. Il
contenuto di immagine assegnato alle etichette è di solito una parte dell'immagine.
Esempi di queste etichette di classe sono “balloon”, “acqua”, “persone” e così via;
3. metodi di classificazione multi-livello: assegnano etichette di classe ad una struttura
gerarchica, che comprende sia classi oriente alle scene e sia classi orientate agli
oggetti.
Figura 1.7: Sistema di annotazione di immagini basato sulla classificazione
Pagina |28
Capitolo I – Annotazione di Immagini
1.6.1 CLASSIFICAZIONE BASATA SU SCENE GLOBALI
Tra gli approcci di classificazione basati su scene globali, alcuni dei primi lavori si sono
focalizzati sulla realizzazione di caratteristiche visive. Ad esempio, Gorkani e Picard [43]
sono stati in grado di classificare le immagini di “città”/“sobborgo” utilizzando le
caratteristiche globali di orientamento multi-scala. Lipson et al. [44] provò ad incorporare
relazioni spaziali quantitative e fotometriche all'interno e tra le regioni in immagini a bassa
risoluzione (ad esempio 20 × 20 pixel) per la classificazione di immagini con scene naturali.
Essi hanno realizzato manualmente il modello utilizzato per descrivere le relazioni spaziali e
fotometriche per ciascuna classe di scena. In seguito, Ratan e Grimson [45] hanno proposto
un metodo di classificazione basato su dei modelli di configurazione di ogni classe che
apprendono da pochi esempi di training, selezionati da una persona. Huang et al. [46] hanno
proposto uno schema di classificazione gerarchico delle immagini. Essi hanno usato
correlogrammi di colore [47] come le caratteristiche visuali e un albero di classificazione
come il classificatore. In un lavoro relativo, Vailaya et al. [48] ha esaminato la capacità
discriminante delle diverse caratteristiche di classificazione visuali delle scene “città” vs
“paesaggio” ed hanno trovato che la funzionalità basata sul contorno ha la migliore capacità
discriminante sul loro data-set. Concentrandosi su diverse caratteristiche visuali, l’approccio
fornisce una buona base per il seguente lavoro di classificazione delle immagini, ma i
classificatori statistici non sono abbastanza potenti.
Con i rapidi progressi da parte della comunità di apprendimento delle macchine, sono
stati resi disponibili classificatori statistici sempre più potenti, come ad esempio il “Support
Vector Machines” (SVM) [49]. Chapelle et al. [50] ha tentato di risolvere il problema
generale di classificazione delle immagini utilizzando la SVM e ha usato un kernel RBF per
immagini aventi una risoluzione elevata. Fung e Leo [51], invece, decompongono la
semantica della scena di una immagine in due livelli:
i.
la semantica primitiva a livello di patch;
ii.
la semantica di scena a livello di immagine.
L'apprendimento di semantica primitiva si basa su un raggruppamento supervisionato
delle caratteristiche di patch. La classificazione è ottenuta utilizzando la distribuzione di
ciascuna primitiva in un'immagine.
Pagina |29
Capitolo I – Annotazione di Immagini
La semantica di scena è stata esplicitata da Vailaya et al. [52] che ha proposto un
metodo per la classificazione gerarchica di immagini professionali: al massimo livello, le
immagini vengono classificati come “indoor” o “outdoor”; le immagini “outdoor” sono
ulteriormente classificati come “città” o “paesaggio”, infine, un sottoinsieme delle immagini
di “paesaggio” è classificato in “tramonto”, “foresta” e “montagna”. Essi modellano la
densità di probabilità di ciascuna classe di scena attraverso la quantizzazione vettoriale [53] e
classificano le immagini in base al valore massimo di un criterio posteriore. Chang et al. [54]
ha proposto un metodo di categorizzazione di immagini basato sulle “Bayes Machine Point”
(BPM) [55], ovvero classificatore avanzato basato su kernel.
I metodi sopra menzionati sono basati su caratteristiche visive globali estratte da una
intera immagine. Come abbiamo già accennato in precedenza, suddividendo l'immagine in
una raccolta di patch di immagini si può lavorare meglio. A tal fine, Wang e Li [56] hanno
proposto un metodo per la categorizzazione di immagini basato sull'uso del 2-D multirisoluzione del modello Markov (2D-HMM) [57]. Le immagini sono segmentate in regioni
impiegando una griglia regolare multi-risoluzione. 2D-HMM può modellare la dipendenza tra
le regioni con la stessa risoluzione e le regioni che hanno diverse risoluzioni. Csurka et al.
[58] ha proposto un modello basato su un insieme di punti chiave per la categorizzazione
della classe dell’oggetto. Ogni immagine è rappresentata come un insieme di regioni ottenute
dai rivelatori dei punti di interesse, mentre ogni regione è rappresentata da un vettore delle
caratteristiche visive. Dopo un processo di quantizzazione vettoriale sulle caratteristiche delle
regioni, una immagine può essere vista come un insieme di parole visuali. Il vettore frequenza
delle parole visuali considerato come il vettore delle caratteristiche global e un classificatore
SVM, viene distribuito per classificare le immagini di classi di oggetti. Carneiro e
Vasconcelos [59] hanno proposto un framework per l’annotazione di una immagine basato
sulla modellazione gerarchica della stima della densità di probabilità relativa ad ogni classe.
Ogni immagine è rappresentata come un insieme di caratteristiche di patch. La distribuzione
di queste caratteristiche di patch per ogni concetto è modellata come un modello Gaussiano e
tutti i concetti sono modellati da un modello Gaussiano gerarchico (Hier-GMM). I risultati
sperimentali dimostrano che il Hier-GMM è efficiente per database di grandi dimensioni.
Maree et al. [60] ha proposto un metodo di classificazione delle immagini ottenuto dalla
combinazione del campionamento casuale di sotto-finestre di immagini. Sono state aggiunte
varie trasformazioni nel processo di astrazione casuale di sotto-finestre, e l’approccio risulta
essere robusto sia per la scala che per la rotazione. Esso però non è stato testato su data-set di
immagini più complesse.
Pagina |30
Capitolo I – Annotazione di Immagini
La combinazione di caratteristiche complementari è in grado di produrre risultati di
successo. Datta et al. [61] ha proposto un sistema di categorizzazione per immagini generiche
basato su due modelli generativi eterogenei per categorie di immagini. I due modelli
forniscono la relazione per la classificazione di due differenti aspetti di immagini, ossia un
modello di struttura-composizione (SC) costruito dalla distribuzione Beta per catturare la
relazione spaziale tra le regioni segmentate di immagini, e un modello Gaussiano
delle caratteristiche colore-struttura (C-T). Questa combinazione di un modello strutturato e
non strutturato offre una potenza discriminante per la categorizzazione di immagini generiche
rispetto ad altre soluzioni che utilizzano un solo tipo di modello.
Alcuni metodi sono basati su sofisticati modelli probabilistici. Li e Wang [62]
rappresentano ogni immagine come una distribuzione probabilistica delle caratteristiche
“colore” e “texture”. Ogni categoria di immagini è modellata come distribuzione
probabilistica
delle
distribuzioni
probabilistiche.
Approfittando
dell’algoritmo
di
ottimizzazione, questo approccio può raggiungere le prestazioni di annotazione su un data-set
di grandi dimensioni. Tuttavia, non è chiaro come il loro metodo possa essere eseguito su
concetti di oggetti individuali.
Tra i lavori di classificazione di immagini, alcuni più recenti si sono focalizzati sulla
classificazione di una serie molto piccola di concetti, quali categorie di scene naturali. Essi
possono essere ulteriormente suddivisi in due categorie. La prima definisce le caratteristiche
intermedie. Oliva e Torralba [63] hanno proposto un insieme di dimensioni percettive
(naturalità, trasparenza, rugosità, espansione e robustezza) che rappresentano la struttura
spaziale dominante di una scena. Ciascuna di queste dimensioni può essere automaticamente
estratta e le immagini di scena possono essere classificate in una rappresentazione di basse
dimensioni. Vogel e Schiele [64] utilizzano le occorrenze della frequenza di concetti diversi
(acqua, roccia, ecc.) in una immagine come le caratteristiche intermedie per la classificazione
di immagini di scena, e necessitano di una etichettatura manuale di ogni patch dell’immagine
nei dati di training. Mentre l'etichettatura manuale può migliorare la l'interpretazione
semantica delle immagini, essa è ancora un lusso per un insieme di dati di grandi dimensioni e
può anche introdurre incongruenze nel modo in cui una serie di concetti sono definiti [64]. Il
secondo tipo di approccio è volto ad alleviare questo onere di etichettatura manuale e ad
apprendere automaticamente le caratteristiche intermedie.
Ciò si ottiene facendo una analogia tra un documento e un'immagine e approfittando
degli approcci esistenti per l’analisi dei documenti. Ad esempio, Fei-Fei e Perona [65] hanno
o
Pagina |31
Capitolo I – Annotazione di Immagini
proposto un modello gerarchico bayesiano esteso dall’allocazione latente Dirichlet (LDA)
per apprendere categorie di scene naturali. Bosch et al. [66] ha ottenuto buone prestazioni
nella classificazione di scene combinando l’analisi semantica latente probabilistica (PLSA)
[67] e un classificatore K-NN. Un punto comune di questi approcci è che essi rappresentano
una immagine come un insieme disordinata di parole visuali. Una eccezione è rappresentata
dal lavoro di Lazebnik et. al. [68].
Questi esempi di classificazione delle immagini
orientata sulla scena globale ha
fornito buoni risultati nella classificazione delle categorie di scena, come “tramonto”,
“paesaggio” e “campagna”, ma non hanno mostrato alcun vantaggio nel classificare i nomi
degli oggetti, come “cielo”, “tigre”, “cavallo”, ecc..
1.6.2 CLASSIFICAZIONE BASATA SU OGGETTI LOCALI
Per oggetti singoli, l'aspetto visivo corrispondente nell'immagine è solitamente un segmento
dell'immagine anziché l'intera immagine. A volte, anche collettivamente, questi segmenti di
oggetti possono rappresentare solo una piccola parte dell’immagine. Questo rende una
caratteristica globale visiva non sempre una soluzione adeguata, specialmente nel caso di in ci
è presente un certo numero di oggetti nell'immagine. Pertanto, il trattamento di una immagine
come un insieme di regioni e l'annotazione dell’immagine con queste regioni è utile per la
classificazione di immagini basata su oggetti.
Come abbiamo affermato in precedenza, una immagine può essere suddivisa in un
insieme di regioni. In tale modo, l’annotazione dell’immagine può essere formulata come un
apprendimento di istanza multiple (MIL) e questo problema è stato descritto da Dietterich et
al. [69]. Nell'impostazione MIL, l'oggetto da classificare è un insieme di istanze invece di una
singola istanza. I dati di training sono formati da esempi positivi e negativi. Un insieme viene
etichettato come positivo se almeno una delle istanze presenti al suo interno è etichettato
come positivo. Un insieme è etichettato come negativo se nessuna delle istanze presenti è
etichettata come positivo. Questo concetto è illustrato nella figura 1.8.
Pagina |32
Capitolo I – Annotazione di Immagini
Figura 1.8: Insieme delle istanze positive e negative
Le etichette sui dati di training sono fornite solo per ogni insieme e non per ogni
singola istanza. Data una nuovo insieme senza etichetta, è necessario classificarlo come
positivo o negativo. Questo tipo di problema non può essere risolto dai tradizionali
classificatori statistici in cui ogni esempio di training è rappresentato come un unico vettore di
caratteristiche invece che di un insieme di vettori di caratteristiche.
Un certo numero di approcci sono stati proposti sulla base della formulazione MIL per
l’annotazione di una immagine. Maron e Raton [70] tentarono di applicare le tecniche MIL
per classificare le immagini di scene naturali, distinguendo i termini come “cielo”, “cascata”
e “montagna”. Essi rappresentano ciascuna immagine come un insieme di sotto-immagini di 2
× 2 pixel, ciascuna delle quali è rappresentata da un vettore contenente il colore medio e la
differenza di colore fra di esse ed inoltre le quattro sotto-immagini limitrofe. L’addestramento
di MIL è ottenuto massimizzando le diverse densità (DD), cioè ricerca il punto nello spazio
delle caratteristiche che è più vicino ad almeno una delle istanze di ciascun insieme positivo e
lontano da tutte le istanze di ciascun insieme negativo. Successivamente, Yang et al. [71]
hanno applicato MIL per annotare immagini con l'obiettivo di annotare in modo esplicito
delle regioni singole di una immagine invece di etichettare l'intera immagine. Essi usano
l’algoritmo PWDD per trovare le corrispondenti regioni delle immagini presenti nel training
set. Rispetto al tradizionale algoritmo DD di Maron et al. [70], l’algoritmo PWDD trova
sempre una regione di una immagine presente nel training set.
Pagina |33
Capitolo I – Annotazione di Immagini
L'algoritmo sopra menzionato è computazionalmente costoso, così altri algoritmi sono
stati proposti e applicati per eseguire l’annotazione delle immagini. Andrews et al. [72] ha
riformulato la problematicità MIL. Nella loro formulazione, le variabili intere sono le variabili
di selezione che indicano quale istanza in un insieme di positivi indica un esempio positivo. Il
loro algoritmo, chiamato MI-SVM, ha un ciclo esterno e un ciclo interno. Il ciclo esterno
imposta i valori di queste variabili di selezione, mentre quello interno allena poi una SVM
standard in cui l'istanza selezionata positiva sostituisce tutti gli insiemi positivi. L’approccio
MI-SVM tende a diventare una soluzione locale ottimale piuttosto che influire sulle
prestazioni del classificatore finale. Così Yang et al. [73] ha proposto un metodo di supporto
asimmetrico vettore macchina (ASVM) per risolvere il problema MIL e lo ha applicato alla
annotazione di immagine basata su regioni. Il metodo, chiamato ASVM-MIL, estende le
tradizionali support vector machine all'impostazione MIL con l'introduzione di funzioni di
perdita asimmetriche per i falsi positivi ed i falsi negativi.
Oltre a questi tentativi che utilizzano algoritmi di apprendimento differenti per
l'algoritmo MIL, Cheng e Wang [74] sostengono che alcuni concetti non possono essere
descritti da una singola istanza in un insieme, e rappresenta l'assunzione di base dell'algoritmo
MIL tradizionale. Invece, questi concetti possono essere solamente descritte da una
combinazione di diverse istanze. Ad esempio, una scena di “sci”: una combinazione di
“persone” e “neve”. Per questo motivo, essi hanno proposto un algoritmo, chiamato DDSVM, per apprendere i molteplici aspetti di un concetto. DDSVM si articola in due fasi: nella
prima fase, una serie di prototipi sono identificati dall'algoritmo DD di Maron e Raton,
ciascun prototipo è un massimizzatore locale della funzione di ottimizzazione DD. Nella
seconda fase, avviene una mappatura di ogni insieme di istanze con un vettore di
caratteristiche avente lunghezza fissa ed usa la distanza tra le istanze presenti nell’insieme e
l’insieme dei prototipi. Dopo aver ottenuto questo vettore di caratteristica di lunghezza fissa,
un classificatore SVM tradizionale viene applicato per classificare questo nuovo esempio
dello spazio vettoriale delle caratteristiche.
1.6.3 CLASSIFICAZIONE MULTI-LIVELLO
Sia la classificazione basata su scene globali che quella orientata agli oggetti locali risultano
essere vantaggiose per trattare alcuni tipi di categorie di immagini. Tuttavia, siamo spesso di
ob
Pagina |34
Capitolo I – Annotazione di Immagini
fronte al problema dell’annotazione di immagini che contengono sia classi orientate a scene
globali e sia elementi di classi orientate a oggetti locali. Quindi abbiamo bisogno di un
approccio globale in grado di annotare questi due tipi di classe insieme.
Dal momento che la classificazione delle immagini da parte di un essere umano tende
a seguire una struttura gerarchica [52], un schema multi-livello di classificazione risulta essere
utile. Ad esempio, possiamo classificare una immagine come immagine di “giardino”, e il
“giardino” può essere ulteriormente suddiviso in “fiore”, “erba”, ecc.. Con le virtù di questo
tipo di concetti gerarchici, una annotazione di immagini multi-livello è stata proposta da Fan
et al. [75, 76] e Gao e Fan [77].
Come illustrato in Figura 1.9, Gao e Fan [77] organizzano le parole chiave in diversi
livelli di semantica in una struttura gerarchica. Al livello più basso sono presenti i concetti che
possono essere rappresentati da oggetti salienti. I singoli rilevatori di questi oggetti salienti
sono addestrati separatamente. Poiché la variazione dell'aspetto di ogni oggetto saliente è
relativamente piccola, l'insieme dei sensori degli oggetti salienti può ottenere una elevata
precisione di classificazione. Al livello più alto è presente il concetto di immagine semantica
atomica. Essi vengono rilevati in modo probabilistico da un framework bayesiano,
considerando la loro dipendenza dagli oggetti salienti.
Figura 1.9: Esempio di concetto di ontologia utilizzato da Gao et. al.
Per quanto riguarda la costruzione del concetto di ontologia, Gao e Fan [78], hanno
proposto un algoritmo semi-supervisionato per imparare il loro concetto di ontologia dal dataset LabelMe [79] e WordNet [80]. Tuttavia, tale framework multi-livello di annotazione è
stato provato solamente in un dominio molto speciale selezionando immagini di scene
naturali.
Pagina |35
Capitolo I – Annotazione di Immagini
La loro performance su immagini di grandi dimensioni non è chiara. In particolare, la
generazione del concetto di ontologia sarà complicata soprattutto se sono presenti un gran
numero di concetti in differenti livelli di semantica.
1.7 ANNOTAZIONE DI FORME: UNA BREVE PANORAMICA
L’annotazione di immagini sulla base della forma degli oggetti richiede un meccanismo
automatico per associare i concetti di alto livello (categorie semantiche) alle caratteristiche di
forma di basso livello. L’associazione dei concetti semantici alle immagini può essere
essenzialmente vista come un processo di classificazione. Per ogni forma, l’appartenenza ad
una categoria semantica è derivata in accordo con alcune misure di similarità. A questo punto
la forma può essere classificata in una delle categorie considerate.
Secondo la letteratura corrente, questo processo può essere eseguito mediante la
supervisione o la non-supervisione degli algoritmi di apprendimento. L’obiettivo principale
dell’apprendimento supervisionato consiste nella previsione delle etichette relative alle
categorie semantiche per un oggetto basato sui descrittori di forma sfruttando le informazioni
circa le forme etichettate in precedenza. Nell’apprendimento non-supervisionato, nessuna
etichetta è disponibile e l’obiettivo è di scoprire come i descrittori di forma possono essere
raggruppati sulla base di alcuni criteri di similarità. Alla fine, il risultato di ogni cluster può
essere associato ad una etichetta di categoria.
Il successo delle tecniche di supervisione è influenzato da diversi fattori. Per ottenere
buone performance di classificazione, essi richiedono un grande numero di dati di training
etichettati, ma fornendo questi dati si rischia di incorrere in errori. Quando i database di
immagini iniziano a diventare molto grandi, tale pre-annotazione è sempre più difficile perché
aumenta lo sforzo manuale coinvolto. Inoltre, quando il dominio dell’applicazione cambia,
nuovi esempi etichettati devono essere forniti. L’uso delle tecniche non-supervisionate
consente di superare tali limitazioni. In particolare, gli algoritmi di clustering possono essere
propriamente applicate ad un gruppo di immagini di forma non etichettate, in modo tale che le
forme che hanno caratteristiche di basso livello simili sono considerate simili ad altre (cioè
hanno contenuti semantici simili) e così esse sono raggruppate nello stesso cluster. Una
descrizione testuale di una categoria semantica può essere associata ad ogni cluster estratto. In
questo modo, una nuova forma non etichettata può essere etichettata associando il cluster in
ogg
Pagina |36
Capitolo I – Annotazione di Immagini
modo che corrisponda meglio alle caratteristiche di basso livello delle forma considerata.
Il clustering di forme riveste un ruolo fondamentale in molte applicazioni, comprese
l’analisi delle immagini, l’indicizzazione e il loro riconoscimento. A causa del grande numero
di potenziali domini applicativi, molte varietà di algoritmi di clustering sono state proposti per
la classificazione di forme. Ad esempio, in [81] l’algoritmo K-means è applicato per
classificare le forme della sostanza bianca in fibra di tratti modellata usando i descrittori di
Fourier.
In [82] gli autori propongono un metodo per scoprire cluster di forme che sono
rappresentati dai prototipi descrittivi. Questo metodo è formato da due passi:
i.
primo passo: un insieme iniziale di forme è messo in relazione con i prototipi
potenziali dei cluster;
ii.
secondo passo: un approccio agglomerativo è applicato iterativamente per raffinare le
etichette iniziali.
Infine in [83] è proposto il clustering non-supervisionato di forme di oggetti, in cui
gruppi di forme simili rappresentate dai descrittori di forma contestuali sono derivati
applicando un algoritmo di clustering che utilizza le mappe di diffusione, un metodo di
riduzione di dimensionalità non lineare, per incorporare i vettori di caratteristiche delle forme
in spazi dimensionali inferiori.
Un ulteriore esempio di tecniche di applicazione del clustering per classificare forme è
presentato in [84]. Gli autori utilizzano in questo caso una rappresentazione geometrica delle
forme e definiscono le similarità di forme usando il concetto della lunghezza geodetica. Un
algoritmo di clustering basato sulla minimizzazione di un criterio di dispersione all’interno
dei cluster è utilizzato per raggruppare forme considerate simili ad altre. Per ogni gruppo, è
derivato un prototipo rappresentativo della categoria come la forma più significativa calcolata
sulle forme appartenenti al cluster corrispondente.
Pagina |37
CAPITOLO II
IMAGE RETRIEVAL
Pagina |38
Capitolo II – Image Retrieval
Questo capitolo ha l’obiettivo di introdurre il concetto di image retrieval, di descrivere il
processo di Content Base Image Retrieval e di riportare una breve panoramica sui sistemi
presenti in letteratura.
2.1 INTRODUZIONE
L’image retrieval (o visual retrieval) si interseca nel più ampio panorama dell’information
retrieval, ed è definito come il metodo di reperimento, in una collezione o in un database, di
immagini rilevanti rispetto ad una determinata richiesta.
Le ricerche nel campo dell’Image Retrieval hanno fatto il loro esordio negli anni ‟70 e
inizialmente l’approccio utilizzato per il ritrovamento delle immagini era basato sul testo. Ciò
accadeva perché le immagini erano annotate manualmente dall’uomo e venivano memorizzate
tramite parole chiave, le stesse che si dovevano impiegare per il ritrovamento delle immagini.
Con il passare del tempo questo modo di operare è diventato troppo dispendioso e in termini di
lavoro dell’uomo e in termini di prestazione durante la fase di ritrovamento, per questo la
ricerca si è incentrata sul contenuto visuale delle immagini.
Di questo si occupa il MMIR (MultiMedia Information Retrieval) che definisce i
sistemi di recupero delle informazioni multimediali digitali permettendo all’utente di
comunicare le proprie query al sistema non attraverso modalità testuali, ma visive, sonore e
audiovisive. Tutto questo è fatto perché MMIR ha come scopo la costruzione di banche dati di
documenti multimediali sulle quali agiranno i motori di ricerca operando con specifici
linguaggi di programmazione. Per agevolare la ricerca all’interno delle banche dati,
l’indicizzazione delle immagini è multimediale; tutto questo permette di affiancare la ricerca
testuale a quella tramite immagini, figure e forme.
Nell’image retrieval, alle immagini sono associati diversi tipi di informazioni chiamati
metadati1 che possono essere:
o metadati indipendenti dal contenuto: dati non direttamente collegati al contenuto delle
immagini ma ad esse correlati, come ad esempio l’autore, la data di realizzazione,
ecc.;
1
Raccolgono le informazioni relative al dove, al quando, al come e da chi i dati sono stati ottenuti. Si tratta
quindi di un corredo indispensabile per rendere tali dati fruibili correttamente da chiunque, anche a distanza di
tempo e di spazio ottenuti.
Pagina |39
Capitolo II – Image Retrieval
o dati relativi al contenuto visuale delle immagini:
metadati dipendenti dal contenuto: relativi a caratteristiche di livello basso o
intermedio come forma, colore, tessitura e relazioni spaziali;
metadati descrittivi del contenuto (o relativi alla semantica): relativi alle relazioni
tra entità e attributi delle immagini con oggetti del mondo reale, emozioni e
quindi tutti quei significati che sono associabili all’immagine o a parte di essa.
Come già accennato, i primi sistemi di image retrieval inizialmente permettevano
l’accesso alle immagini solo attraverso stringhe e in questi sistemi i metadati indipendenti dal
contenuto erano rappresentati da stringhe alfanumeriche, mentre i metadati descrittivi del
contenuto (o dipendenti dal contenuto) erano espressi con parole chiave o script.
Le parole chiave identificano entità significative presenti nell’immagine, termini o
concetti dipendenti dal contesto o una rappresentazione della scena; mentre gli script sono
descrizioni più ampie che esprimono a parole il contenuto e il significato dell’immagine.
Questo modo di ritrovamento delle immagini però sfrutta solo la ricerca full text 2 , non
prendendo in considerazione le caratteristiche di livello basso o intermedio che sono correlate
alle caratteristiche percettive delle immagini stesse. Molto spesso quest’ultime hanno un ruolo
secondario nel retrieval, ma in realtà possono essere estremamente importanti in molte
applicazioni.
Alla luce di queste considerazioni bisogna anche aggiungere che il dominio testuale è
poco adatto a descrivere l’importanza percettiva di alcune caratteristiche visuali e non
fornisce misure di similarità che invece sono indispensabili quando si opera con le immagini.
Infatti la descrizione testuale riflette il punto di vista di chi annota l’immagine e, nella
maggior parte dei casi, è una persona diversa dall’utente che potrebbe trovare inappropriata la
descrizione, in quanto essa è soggettiva e cambia da persona a persona.
Per questo l'inadeguatezza della descrizione del testo è molto evidente poiché non si può:
o catturare la salienza percettiva della funzionalità visiva;
o caratterizzare alcune entità, gli attributi, i ruoli o gli eventi;
o modellare la correlazione tra funzioni percettive e concettuali;
2
La logica full text permette di rappresentare un documento tramite l‘intero insieme delle parole ad esso
associate.
Pagina |40
Capitolo II – Image Retrieval
o descrivere in maniera oggettiva un’immagine e il processo di annotazione potrebbe
risultare incoerente, incompleto, ambiguo, e molto difficile da automatizzare.
Attualmente, nei sistemi di image retrieval il ritrovamento è basato sul contenuto e
l’accesso all’informazione è effettuato tramite testo affiancato all’uso di misure oggettive e di
appropriati modelli di similarità tra le immagini.
Ad esempio possiamo decidere di effettuare una query basandoci sulla forma e
definendo dei parametri che la descrivono.
Un tipico sistema di recupero di immagini tramite somiglianza di forma presuppone:
1. una query by sketch: l’utente disegna una sagoma approssimativa di ciò che sta
cercando nel database di immagini;
2. la ricerca nel database avviene quindi tramite tecniche di indicizzazione e di
riconoscimento provenienti dalla Computer Vision3;
3. l’output del sistema non si limita a dire cosa è stato o non è stato riconosciuto, ma
deve fornire una lista di immagini ordinate per grado di somiglianza con la forma
inserita dall’utente.
In sostanza possiamo dire che il salto di qualità nel ritrovamento delle immagini nel
corso degli anni è stato determinato dalla consapevolezza, sempre più forte, che non sempre la
parole riescono ad esprimere ciò che vediamo e che il contenuto dell'immagine è molto più
versatile rispetto al testo.
"Una foto vale più di mille parole" dice William I. Grosky 4 ed è proprio per questo
che l’approccio visuale nel ritrovamento delle immagini ha avuto un così enorme successo.
Sostanzialmente possiamo dire che l’image retrieval utilizza cinque modalità per
indicizzare, archiviare, ricercare e recuperare le immagini:
1) modalità semantica: è il metodo più tradizionale, ma anche il più problematico nel
campo delle immagini. Si definiscono etichette testuali che dovranno essere richiamate
per consentire di recuperare l’immagine a cui sono associate;
3
La Computer Vision permette di gestire le informazioni grafiche mediante sistemi di analisi che permettono di
recuperare tutte le immagini legate a un argomento mostrato graficamente. Le immagini vengono archiviate in
un database oppure mediante speciali librerie in database pubblici.
4
Professore del Dipartimento di Informatica e Scienze dell'Informazione University of Michigan-Dearborn,
Dearborn, MI, USA.
Pagina |41
Capitolo II – Image Retrieval
2) modalità formale: si basa sulla capacità del sistema di confrontare le forme estratte
dall’immagine archiviata con quelle estratte dal modello su cui si basa la query. Nella
fase di recupero il sistema valuterà il grado di vicinanza tra i dati;
3) modalità strutturale: si basa sulla scomposizione delle immagini dell’archivio e delle
immagini modello in sezioni. Il recupero dell’immagine sarà effettuato in base alla
similitudine delle sezioni;
4) modalità coloristica: si basa sulla rappresentazione delle immagini attraverso i colori
in esse contenuti. Il recupero sarà effettuato sulla base del confronto di tali
caratteristiche;
5) modalità parametrica: si basa sulla determinazione dei parametri che rappresentano
un’immagine (forma, struttura e colore). Il recupero dell’immagine sarà effettuato
confrontando i valori dei parametri immessi nelle query con quelli già esistenti nelle
immagini archiviate.
Fino ad ora abbiamo analizzato la nascita e lo sviluppo dell’image retrieval come
strumento per la ricerca di immagini all’interno dello spazio web. Ma come questo metodo si
interfaccia con l’utente permettendogli di poter effettuare le sue query?. In [85] è descritto
come sia importante e necessaria la creazione di interfacce naturali che aiutino l’utente a
svolgere la propria ricerca.
Gli anni recenti hanno visto uno sviluppo sempre maggiore del numero e delle
dimensioni dei depositi di immagini digitali, ma esiste ancora un gap semantico tra utente e
sistema.
In questo tipo di sistema di ritrovamento delle immagini, l’utente esprime la sua query
facendo riferimento a caratteristiche di basso livello che le immagini ricercate dovrebbero
contenere. I sistemi VIR (Visual Information Retrieval) hanno bisogno di manipolare le
informazioni che l’utente fornisce e lo fanno tramite un agente che comunica con lui
attraverso meccanismi di linguaggio naturale, gesti, espressioni, ecc... Questo agente ha una
struttura predeterminata, in cui sono memorizzate associazioni tra concetti e sensazioni, che
risulta essere nettamente (e ovviamente) limitata rispetto alla memoria e al background della
mente umana. Ciò provoca l’uso di un canale comunicativo ristretto determinato dalla
macchina che non permette processi inferenziali a cui l’utente invece è abituato.
Idealmente la comunicazione tra sistema e utente incorpora le migliori caratteristiche
dei due partecipanti utilizzando le seguenti regole:
Pagina |42
Capitolo II – Image Retrieval
a) l’adozione di un linguaggio quanto più naturale possibile;
b) l’acquisizione della conoscenza dell’utente da parte della macchina per migliorare i
risultati delle query, adeguare il sistema e la sua interfaccia all’utente.
Possiamo avere due tipi di approcci nella comunicazione tra utente e sistema:
1. pull model: in cui l’utente ha la responsabilità esclusiva per la specifica della query e il
sistema gli fornisce assistenza;
2. push model: in cui il sistema ha un ruolo più attivo e non si limita solo a fare da
assistente, ma diventa partner dell’utente. Questo modello presuppone che il sistema
apprenda come rilevare le informazioni che l’utente gli fornisce e gli suggerisca i
risultati conformi alle sue richieste.
In entrambi gli approcci però un ruolo importante ha il background dell’utente perché
esso influisce sulla terminologia utilizzata da egli per formulare la query per l’immagine
desiderata. È anche dimostrato, che i diversi tipi di utenti richiedono diversi stili di interazione
con il sistema e recenti studi si stanno occupando di questo problema per realizzare sistemi
basati sull’image retrieval più efficaci.
Per attuare questo progetto di creazione di sistemi più vicini all’utente si prendono in
considerazione aspetti come:
o sviluppare tecniche che permettono al sistema di acquisire informazioni dell’utente e
usarle per adattare il processo di ritrovamento delle immagini alle richieste dell’utente
stesso;
o fornire un’interfaccia multimodale5e che possa consentire l’uso combinato tra testo e
immagini nella formulazione delle query;
o creare prototipi di assistenti da inserire nell’interfaccia e valutarli;
o modellazione sia degli aspetti oggettivi (basso livello) che soggettivi (alto livello) di
un’immagine, attraverso l’uso di tecniche basate sulla conoscenza.
5
Interazione che coinvolge più di un canale percettivo.
Pagina |43
Capitolo II – Image Retrieval
Per concludere la parte relativa all’image retrieval e allo sviluppo di interfacce che
utilizzano questa tecnica di retrieval, elenchiamo come i sistemi VIR possono essere
classificati e come si differenziano tra loro a seconda di alcune caratteristiche:
o automazione: vengono estratte e indicizzate le caratteristiche visuali delle immagini
utili per le query visive. I sistemi si differiscono nel grado di automazione
dell’estrazione e indicizzazione di tali caratteristiche che in linea di massima usano
metodi del tutto automatici per estrarre le caratteristiche di basso livello e si affidano
all’intervento dell’uomo per determinare i concetti a livello semantico;
o caratteristiche multimediali: i contenuti multimediali comprendono informazioni di
diverso tipo (immagini, testi…) e i sistemi si differiscono nel trattamento multiplo di
queste informazioni;
o adattabilità: la maggior parte dei sistemi usa un insieme statico di caratteristiche
estratte che vengono selezionate o dal sistema o dal progettista e ciò comporta alti
costi di indicizzazione e nella ricerca. I sistemi si differiscono in questo senso in base
alla capacità, più o meno alta, di estrarre e indicizzare in modo dinamico le
caratteristiche al fine di adattarsi ai bisogni dell’utente;
o astrazione: i diversi sistemi si differiscono in base al livello di astrazione con cui si
indicizza il contenuto. Si può astrarre a livello di oggetto, a livello di funzionalità, di
sintassi e di semantica, ma in linea generale i sistemi automatici mirano al livello
basso e per gli indici di alto livello ci si affida all’uomo;
o generalità: i sistemi si differiscono nella specificità del dominio di informazioni
visive. Alcuni sistemi fanno riferimento a uno specifico dominio, altri invece mirano
ad un’indicizzazione svincolata da esso;
o contenuto della collezione: i sistemi si differiscono nel modo in cui vengono aggiunte
nuove informazioni visuali. Nei sistemi dinamici ciò avviene automaticamente, negli
altri le informazioni visuali sono inserite manualmente;
o elaborazione del dominio: i sistemi si differiscono nel loro approccio per elaborare le
informazioni visuali (basso livello) e quelle soggettive (di alto livello) di
un’immagine, attraverso l’uso di tecniche basate sulla conoscenza.
Pagina |44
Capitolo II – Image Retrieval
2.2 TEXT BASED VS. CONTENT BASED
Nell’era in cui ci troviamo, in cui tutto è basato su Internet e sul reperimento di informazioni
tramite esso, è quasi “naturale” pensare ad un sistema che sia in grado di comprendere ciò
che si cerca come se stessimo parlano con un umano.
È dunque restrittivo continuare a pensare che la ricerca di un documento possa essere
effettuata basandosi solo su un linguaggio testuale. Ancora più limitativo sarebbe pensare di
usare questo metodo per la ricerca di immagini, così come è stato fino a poco fa. Infatti si
operava esclusivamente nel campo dell’image retrieval dove, ogni documento è ricercato
tramite linguaggio testuale, attraverso sistemi text-based.
In questi sistemi le informazioni sono descritte con etichette testuali, che serviranno
anche per la ricerca di documenti (testuali e non) ad esse correlati. È chiaro che questi sistemi
sono adatti per archivi il cui contenuto è essenzialmente un testo, ed è ovvio riferirsi ad essi
tramite termini e frasi contenute nel documento stesso.
Oggi invece la tecnologia ha permesso la creazione di sistemi di information retrieval
content based (o multimedia information retrieval) in cui ogni documento elettronico può
essere trattato e ricercato tramite gli elementi del linguaggio più adatti alla sua natura di
documento multimediale.
Negli archivi che contengono questi documenti si rivela troppo semplificativo e
impreciso attribuire una descrizione testuale a tali contenuti. Ad esempio risulterebbe
dispersivo ricercare l’immagine di un tramonto attraverso l’uso delle parole perché esso
potrebbe essere descritto secondo vari punti di vista: il luogo in cui esso avviene, le
sensazioni che suscita o i colori e sfumature presenti. Invece risulterebbe più appropriato
usare un sistema di ricerca che operi direttamente sul contenuto visuale.
In questa sezione si distinguono:
a) sistemi di visual retrieval in cui sono estratte caratteristiche (features) riguardanti
colore, tessitura, forma, ecc., di immagini 2D e 3D;
b) sistemi di video retrieval che si basano sul linguaggio audiovisivo, cioè elementi di
ricerca ricavati dal filmato, che comprendono il movimento degli oggetti nelle
inquadrature, le tracce sonore, etc. Una fase importante per il recupero di tali
informazioni è la suddivisione del video in shot, da cui sono estratti i keyframe, sui
quali si basa la query dell’utente.
Pagina |45
Capitolo II – Image Retrieval
c) sistemi di audio retrieval in cui le informazioni estratte riguardano analisi di volumi,
sonorità, ritmi e melodie. Anche questi sistemi, così come i video retrieval
precedentemente illustrati, peccano di poca accuratezza.
Per comprendere al meglio le tecniche del recupero delle immagini, è opportuno
spiegare innanzitutto come avvengono le ricerche e le indicizzazioni su di esse, divise
essenzialmente tra un sistema tradizionale chiamato “Term-Based Image Retrieval” (ricerca
basata sui termini) e un sistema di recupero più innovativo come il Content-Based Image
Retrieval (recupero basato sul contenuto).
In un sistema TBIR, la query è espressa testualmente così come i descrittori a cui sono
collegate le immagini. Insomma, tutto viene tradotto in parole: l’immagine, il suo contenuto,
le chiavi di accesso che lo identificano nella sua memorizzazione e anche la struttura della
query nella fase di ricerca. Le query, quindi, sono nella forma di parole chiave o testo libero
con o senza l’utilizzo di operatori booleani.
Il testo inserito per la ricerca è trasformato in una lista di elementi, chiamati token,
ignorando solitamente numeri e punteggiatura e considerando token solamente le stringhe
contigue di caratteri alfabetici, così come avviene quando si usano i comuni motori di ricerca.
Anche se rappresenta il metodo maggiormente utilizzato, non sempre risulta essere il più
efficace, in quanto a volte la punteggiatura o la differenza tra maiuscole e minuscole è
significativa. Sono inoltre eliminate le stopwords, ovvero le parole che compaiono
frequentemente in un linguaggio come pronomi, articoli o congiunzioni e applicate le
tecniche di de-hyphenation e stemming che rispettivamente permettono la divisione in più
parole delle parole che contengono il trattino e la riduzione delle parole alla loro radice
grammaticale.
L’utilizzo di queste tecniche è positivo dal punto di vista dell’occupazione dello
spazio, ma non sempre migliora la qualità della risposta ad una query. Successivamente è
effettuata la ricerca attraverso algoritmi di IR basati sulla ricerca di similarità tra query e testo
associato alle immagini contenute negli archivi. Le immagini ritrovate sono ordinate in base
alla probabilità che siano rilevanti per l’utente, il quale infine le esamina ed eventualmente,
se non è soddisfatto, raffina la query (relevance feedback).
Concludendo, i sistemi TBIR, riescono a catturare i concetti di alto livello o astratti
presenti nell’immagine, come una persona che sorride o è triste, ma a fronte di ciò,
presentano i seguenti svantaggi:
Pagina |46
Capitolo II – Image Retrieval
1) il testo non sempre, forse mai, è consistente e completo;
2) è necessario associare alla stessa immagine più sinonimi;
3) l’etichetta testuale associata all’immagine è soggettiva e quindi diversa da soggetto a
soggetto.
Un sistema più efficace, quindi, per la ricerca delle immagini è quello basato sul loro
contenuto visuale: CBIR (Content Based Image Retrieval). L’obiettivo di tali sistemi è
descrivere, mediante modelli matematici e implementazioni informatiche delle immagini, il
loro contenuto, cercando, per quanto possibile, di rispettare i principi del sistema visivo
umano [4].
I sistemi attualmente sviluppati si basano sul riconoscimento del contenuto
dell’immagine utilizzando le seguenti tecniche:
o histogram detection: è la tecnica più banale, ma anche la meno affidabile. È al primo
livello di ogni sistema CBIR;
o pattern recognition: si basa sul riconoscimento di elementi ripetuti all’interno di
un’immagine ed è usato congiuntamente ad altre tecniche;
o
edge detection: permette di riconoscere i confini delle figure presenti nelle immagini
attraverso il riconoscimento di cambiamenti di colore;
o shape detection: è basata sull’edge detection e riconosce le forme geometriche
basilari;
o object recognition: è la più complessa delle tecniche e ha come obiettivo il
riconoscimento di oggetti in un’immagine.
2.3 IL PROCESSO DI CONTENT BASED IMAGE RETRIEVAL
L’architettura di un sistema di CBIR è articolata in due fasi [86]:
1. pre-processing: consiste nel popolare il database. In questa fase sono estratte le
caratteristiche di basso livello (low level features) dell’immagine (forma, colore e
tessitura), che vengono memorizzate e indicizzate. Queste caratteristiche vengono
estratte dalle immagini mediante particolari algoritmi, che ne derivano vettori
Pagina |47
Capitolo II – Image Retrieval
multidimensionali volti a rappresentare le features dell''immagine. Infatti questa fase
risulta essere costosa in termini di tempo;
2. query processing: consiste nella fase di interrogazione in cui l’utente, tramite
un’interfaccia grafica, formula un’interrogazione utilizzando un’immagine campione o
disegnandone una. L’mmagine query deve essere processata dal sistema per estrarre le
caratteristiche, le quali saranno confrontate con quelle delle immagini memorizzate nel
database. È importante che questa fase abbia una breve durata per permettere di
presentare all’utente i risultati in tempo reale. Nei sistemi più avanzati è presente
anche il meccanismo di relevance feedback, che consente di interagire con l’utente, il
quale ha già visto i primi risultati ma è ancora insoddisfatto, e gli permette di raffinare
la query di partenza.
Figura 2.1: Architettura di un sistema CBIR
Pagina |48
Capitolo II – Image Retrieval
2.4 ESEMPI DI SISTEMI CBIR
Nel corso degli anni sono stati progettati molti sistemi di Content based image retrieval,
alcuni più semplici considerando come features solo le forme, ad altri che considerano tutti i
tipi di features o prevedono anche una fase di relevance feedback.
Alcuni esempi di sistemi sono CBIR sono i seguenti:
o SQUID (Shape Queries Using Image Databases): è un sistema progettato e realizzato
dal Centre for Vision Speech and Signal Processing dell’Università di Surrey. Questo
sistema utilizza tecniche di indicizzazione e di ricerca basate delle sole forme. Ogni
immagine è processata per recuperare il contorno che è rappresentato poi da tre
parametri di forma globali ed il massimo della curvatura nella sua immagine CSS
(Curvature Scale Space). Il database impiegato è composto da 1100 immagini di
creature marine;
Figura 2.2: Schermata del sistema SQUID
o MARS (Multimedia Analysis and Retrieval System): sistema basato sul relevance
feedback in C++, proposto dall’Università dell'Illinois;
Pagina |49
Capitolo II – Image Retrieval
Figura 2.3: Schermata del sistema MARS
o CIRES (Computer and VIsion RESearch Center): sistema basato su query by
example, proposto dall'università del Texas;
Figura 2.4: Schermata del sistema CIRES
Pagina |50
Capitolo II – Image Retrieval
o QUICKLOOK: sistema sviluppato in Italia dai ricercatori del Dipartimento di
Informatica, Sistemistica e Comunicazione dell’Università di Milano-Bicocca e
dall'Istituto per le Tecnologie della Costruzione del CNR di Milano. Il sistema si
applica alle immagini fisse nonché ai video, ed è in grado di combinare interrogazioni
basate sul contenuto visivo estratto automaticamente e interrogazioni basate sulla
similarità testuale tra descrizioni associate agli elementi. Il sistema permette
l'interrogazione dell’archivio sulla base di differenti strategie, ma in particolare
consente di raffinare progressivamente la risposta sulla base di un relevance feedback
che l'utente fornisce sugli elementi visivi reperiti. Questo metodo permette all’utente
di interagire continuamente con il sistema, introducendo diversi parametri di
aggiustamento della mira, i quali sono analizzati di volta in volta dal sistema e
producono ulteriori indicazioni sulla rilevanza dei documenti recuperati nell’archivio
e permettono alla macchina di apprendere informazioni sul senso della ricerca.
Figura 2.5: Schermata del sistema QUICKLOOK
Pagina |51
CAPITOLO III
CLUSTERING DI FORME
SEMI-SUPERVISIONATO
Pagina |52
Capitolo III – Clustering di forme semi-supervisionato
Questo capitolo ha l’obiettivo di presentare il concetto di clustering nella sua accezione più
generale, ed in particolare ci si soffermerà sul clustering di forme semi-supervisionato. In
seguito verranno approfonditi gli aspetti componenti del processo di clustering non
supervisionato e di quello semi-supervisionato, descrivendo tutte le componenti
dell’algoritmo implementato.
3.1 INTRODUZIONE AL CLUSTERING
Il clustering è il processo di classificazione automatica (cioè non supervisionata) di dati, non
etichettati, in gruppi omogenei (cluster). Esso consiste nell’organizzazione di una collezione
di dati, rappresentati solitamente come vettori di misure o come punti in uno spazio
multidimensionale, in gruppi basati sulla somiglianza. Intuitivamente, i dati appartenenti a un
gruppo sono più simili tra di essi rispetto a un dato appartenente a un gruppo diverso.
La varietà di tecniche per rappresentare i dati, per misurare la somiglianza fra essi e
infine per raggrupparli ha causato il proliferare di un vasto e confuso assortimento di metodi
di clustering, che va anch’esso, appunto, classificato.
È innanzitutto importante comprendere la differenza fra clustering (classificazione non
supervisionata) e analisi discriminante (classificazione supervisionata): nel primo caso il
problema da risolvere consiste nel raggruppamento di una data collezione di dati non
etichettati in gruppi significativi; nel secondo caso, data una collezione di dati etichettati
(usata come training set al fine di descrivere le classi di dati o gruppi), il problema consiste
nell’etichettare i dati non ancora etichettati.
Come già accennato il clustering è utile in alcuni processi di exploratory data analysis,
ma anche di raggruppamento, decision-making e machine-learning, quali ad esempio: image
segmentation, pattern recognition, information retrieval e data mining. In ogni campo di
ricerca viene utilizzata una terminologia diversa per le parti componenti del processo di
clustering e vengono fatte delle assunzioni sui dati diversi in base al contesto in cui il
clustering viene usato.
Pagina |53
Capitolo III – Clustering di forme semi-supervisionato
3.1.1 DEFINZIONI E NOTAZIONE
In questa sezione vengono introdotte le definizioni e le notazioni di frequente utilizzo:
o pattern: detto anche “vettore delle feature”, osservazione o dato, e corrisponde ad
un singolo elemento usato dall’algoritmo di clustering. Solitamente consiste in un
vettore di d misure: x = {x1,……, xd};
o feature: detta anche attributo, è il componente scalare xi di un pattern x;
o dimensione del pattern: d è la cardinalità del vettore x;
o pattern set: insieme dei pattern da raggruppare denotato con X = {x1,…… , xn}. L’iesimo pattern di X è il vettore xi = {xi,1,…….,, xi,d}. In molti casi questo insieme è
rappresentato come una matrice di dimensione n x d;
o class: detto anche cluster, è un insieme di pattern le cui feature sono caratterizzate
da un criterio in comune (ad esempio: misura di similarità minore di una certa
soglia);
o label (o etichetta): assegnata dagli algoritmi di clustering di tipo hard 6 a ogni
pattern xi al fine di identificare la sua classe d’appartenenza;
o label set: dato un pattern set X è l’insieme delle label L = {l1,…. , ln} con
{1,….., k} dove k è il numero di classi (o cluster);
∈
o grado di appartenenza: spesso chiamato anche “fractional degree of membership”,
fij è un valore numerico assegnato dagli algoritmi di clustering di tipo fuzzy7 a ogni
pattern xi per il cluster j ed indica, appunto, il grado di appartenenza del pattern al
cluster;
6
7
Algoritmi che assegnano ogni pattern a un unico cluster ed anche detti di tipo crisp.
Algoritmi che assegnano a ogni pattern un grado di appartenenza, fij appunto, al cluster j-esimo.
Pagina |54
Capitolo III – Clustering di forme semi-supervisionato
o distanza: metrica usata per quantificare la similarità fra pattern e ne esistono di
vari tipi.
Patterns
Feature
selection/extraction
Pattern
Interpattern
similarity
Grouping
Clusters
Representations
Feedback loop
Figura 3.1: Sequenza dei passi di un processo di clustering
3.1.2 I PASSI DI UN PROCESSO DI CLUSTERING
Generalmente il processo di clustering è composto dai seguenti passi:
1) rappresentazione dei pattern: riguarda la scelta del numero dei pattern, delle
dimensioni e del tipo delle feature. Scegliere il giusto numero di feature, o effettuare
trasformazioni su di esse, può portare a significativi miglioramenti sul risultato del
procedimento. Tale fase può comprendere, eventualmente anche i seguenti passi:
o feature selection : consiste nel selezionare un sottoinsieme significativo
delle feature di cui si dispone; si noti che, in generale, non è banale
riuscire a capire a priori quali siano gli attributi migliori ai fini del
risultato.
o
feature extraction: opera trasformazioni sulle feature in ingresso al fine
di trovarne di nuove e più significative.
2) definizione di una misura di prossimità: per poter raggruppare i pattern in insiemi
omogenei occorre quantificare la diversità tra i vari elementi (spesso si tratta di una
distanza tra punti nello spazio come la distanza euclidea);
Pagina |55
Capitolo III – Clustering di forme semi-supervisionato
3) raggruppamento (grouping o clustering): è la procedura che permette di effettuare
la categorizzazione;
4) astrazione dei dati: consiste nell'estrarre una rappresentazione semplice e compatta
dei dati. Tale rappresentazione deve essere sia comprensibile all'uomo, sia facile da
elaborare. Un tipico esempio di astrazione è il fatto che un cluster può essere
rappresentato per mezzo di un punto detto prototipo.
5) verifica dei risultati: per stimare la bontà dei risultati prodotti occorre avere un
criterio di ottimalità; una struttura di cluster è detta valida se non è stata prodotta dal
caso o da un artefatto interno all'algoritmo. Ci sono tre modi di accertare la validità:
o verifica esterna: si controlla se la struttura dei dati ricostruita
dall'algoritmo rispetta la struttura nota a priori.
o verifica interna: si valuta che la struttura ottenuta dal clustering sia
appropriata alla tipologia di dati.
o verifica relativa: date due strutture di dati ricostruite dall'algoritmo, ne
viene calcolata la qualità relativa.
3.1.3 MISURE DI SIMILARITÀ
La prossimità fra pattern e la scelta riguardante le modalità con cui calcolarla è l’aspetto che
maggiormente influenza i risultati di un algoritmo di clustering. Essa è misurata calcolando la
distanza fra le coppie di pattern facenti parte del pattern set. Esistono una lunga serie di
misure di similarità, alcune delle quali, come la distanza euclidea, utilizzabili per riflettere la
diversità fra due pattern, altre utili invece a caratterizzare la similarità concettuale fra pattern.
A causa della già enunciata varietà di tipi e scale di feature, la scelta della misura di
similarità da utilizzare per calcolare la distanza fra pattern in un algoritmo di clustering è di
vitale importanza per la sua buona riuscita. Ciò poiché la similarità è un aspetto fondamentale
per la definizione di un cluster di pattern. La scelta adottata più frequentemente a tal riguardo
è quella di calcolare la similarità (o la difformità) fra una coppia di pattern utilizzando una
funzione di distanza definita sullo spazio delle feature.
Pagina |56
Capitolo III – Clustering di forme semi-supervisionato
La misura di similarità più conosciuta per feature di tipo continuo è la distanza
euclidea,
,
!"
&
#$
%'
,%
!,% "
(
)
*
! * 1a
che è un caso speciale della metrica di Minkowski:
-
, !"
&
#$.
%'
,%
!,% .
(
)
*
! *- 1b
Il motivo principale per cui la distanza calcolata tramite la formula (1a) è
comunemente usata risiede nel fatto che essa lavora bene su data set compatti oppure su data
set le cui classi di dati sono isolate. Lo svantaggio invece di usare la misura calcolata dalla
formula (1b) risiede nella sua tendenza a lasciar prevalere le feature con la scala maggiore
rispetto alle altre. Comunque, una soluzione a questo problema esiste ed è relativamente
semplice: è sufficiente normalizzare le feature a valori continui affinchè divengano così
composte da intervalli di valori. Un problema comune alle misure di distanza (1a) e (1b) è la
correlazione lineare fra le feature, tuttavia questa distorsione può essere limata applicando una
trasformazione chiamata “whitening” o più semplicemente applicando la distanza di
Mahalonobis.
Diversamente, quando si deve computare la distanza fra pattern le cui feature sono di
tipo non continuo, questo processo diventa molto più complesso per i due seguenti motivi:
a) la nozione di prossimità è binaria per valori nominali e scalari;
b) tipi differenti di feature non sono comparabili.
Al fine di risolvere questo problema, in ambito pratico sono state sviluppate delle
misure di prossimità per pattern composti da feature non omogenee anche se non è compito di
questo lavoro di tesi analizzare queste particolarità.
Una classe di misure di distanze di notevole interesse è sicuramente quella costituita
dalle misure dipendenti da contesto; misure che tengono in considerazione gli effetti dei punti
Pagina |57
Capitolo III – Clustering di forme semi-supervisionato
circostanti. Una misura di questo tipo, definita usando il contesto, è, ad esempio, la Mutual
Neighbor Distance (MND). Nonostante essa non sia realmente una metrica, poiché non
soddisfa la diseguaglianza triangolare8, è stata ampiamente utilizzata, con buoni risultati, in
molte applicazioni.
Ciò supporta l’idea che la difformità non debba necessariamente essere una metrica. In
generale, il teorema del brutto anatroccolo di Watanabe enuncia:
“nella misura in cui usiamo un insieme finito di predicati che sono in grado di distinguere
due oggetti qualsiasi presi in considerazione, il numero di predicati condivisi da essi è
costante, indipendentemente dalla scelta degli oggetti”.
Questo teorema afferma quindi che è possibile rendere due pattern qualsiasi
ugualmente simili, purché essi vengano codificati con un numero sufficientemente alto di
feature; di conseguenza, qualsiasi due pattern saranno altrettanto simili purché non venga
usata informazione di dominio addizionale nel calcolo della loro similarità.
In conclusione, la nozione appena data risulta utile e molto evidente nei clustering di
tipo concettuale, tipologie nelle quali vengono appunto utilizzate le misure di similarità
concettuali che sono, indubbiamente, le più generali in assoluto.
3.1.4 APPROCCIO FUZZY
Gli approcci tradizionali di clustering generano partizioni e si basano, inoltre, su una
corrispondenza
→ 1 fra pattern e partizioni.
L’approccio fuzzy [Bezdek, 1981] estende questa nozione: esso ha lo scopo di creare
una corrispondenza
→
associando ogni pattern ad ogni cluster tramite l’utilizzo di una
funzione d’appartenenza [Zadeh, 1965]. Perciò, il risultato di un algoritmo di clustering fuzzy
non sarà una partizione crisp dei pattern bensì una partizione soft (fuzzy).
Di seguito si descrivono sommariamente i passi di un algoritmo di clustering fuzzy:
1. creare una matrice d’appartenenza 1di dimensione
2 3, dove N è il numero di
pattern e K il numero di cluster. L’elemento 4 ! di questa matrice rappresenta il grado
8
Proprietà che caratterizza una distanza in uno spazio metrico (Wikipedia).
Pagina |58
Capitolo III – Clustering di forme semi-supervisionato
d’appartenenza dell’oggetto
al cluster
in [0, 1];
!!
ed è, tipicamente, un valore compreso
2. utilizzare la matrice 1 al fine di calcolare il valore della funzione costo associata alla
corrispondente partizione. Una possibile funzione costo di tipo fuzzy è:
5, 1
dove
%
$$
'
7
%'
4 !‖
%‖
2
∑ ' 4 ! è il centroide del k-esimo cluster fuzzy;
3. riassegnare i pattern ai cluster al fine di ridurre il valore della funzione 2 e ricalcolare
la matrice 1;
4. ripetere il passo 2 finchè i cambiamenti nella matrice 1 sono significativi.
Nel fuzzy clustering, ogni cluster è un insieme fuzzy. È tale in quanto ciascun pattern
appartiene all’insieme con un certo grado di appartenenza. La figura 3.2 mostra tale idea.
Figura 3.2: Confronto tra cluster fuzzy (:; e :< ) e cluster hard (=; e =< )
Una descrizione compatta ma altrettanto chiara dei fuzzy cluster > e > mostrati dalla
figura 3.2 è la seguente:
>
? 1, 0.9 , 2, 0.8 , ⋯ , 9, 0.0 E,
Pagina |59
Capitolo III – Clustering di forme semi-supervisionato
>
dove le coppie ordinate
cluster.
,4
? 1, 0.0 , ⋯ , 8, 1.0 , 9, 0.9 E,
indicano l’i-esimo pattern e il suo grado d’appartenenza al
Chiaramente valori maggiori del grado di appartenenza indicano una maggiore
possibilità che un pattern appartenga al cluster in questione.
Un aspetto molto interessante degli algoritmi di fuzzy clustering risiede nella
possibilità di tramutare facilmente i risultati in cluster di tipo crisp semplicemente filtrando i
pattern il cui grado d’appartenenza al cluster risulti inferiore ad una specifica e prestabilita
soglia.
La definizione della funzione costo è il problema principale e di maggior rilevanza
negli algoritmi clustering di questo tipo: essa può essere basata sui centroidi o, in alternativa,
sull’errore quadratico.
L’algoritmo basato su approccio fuzzy più popolare è il Fuzzy C-Means (FCM),
descritto nel paragrafo successivo. Sebbene sia esso in grado di evitare la convergenza ad un
minimo locale molto meglio rispetto al k-means, tale pericolo non è del tutto scongiurato
durante il suo utilizzo.
3.2 ALGORITMO FUZZY C-MEANS NON SUPERVISIONATO
L’algoritmo Fuzzy C-Means (FCM) rappresenta una generalizzazione di un altro ben noto
algoritmo di clustering, l’hard C-Means. Nel paragrafo successivo è riportata la descrizione
dell’algoritmo.
3.2.1
FUZZY CLUSTERING
L’algoritmo Fuzzy C-Means è descritto dalle condizioni presentate nell’equazione (3), le
quali sono convertite in forma matriciale:
F G H I 1 J J 3
Pagina |60
Capitolo III – Clustering di forme semi-supervisionato
F ∩ F! P
OF
'
H I G M 3N
F 3
A tal fine, si considera U come una matrice Q 1
di numeri reali:
R4 % S
ed essa rappresenta la matrice delle partizioni ?F E descritta nella equazione (3) con le
seguenti condizioni:
4 T%
4 %
U
1;T% ∈ F
4
0; W X W
$ 4 % Z 0[ W4WW 4N
'
$4 %
'
1[ W4WW \ 4
Nella equazione (4), 4 è una funzione definita come segue: 4 ∶ F → ?0, 1E. Nel
modello convenzionale,
4 rappresenta la funzione caratteristica di F , infatti 4 F sono
determinati e quindi 4 viene etichettato come l’i-esimo sottoinsieme delle partizioni.
Le condizioni dell’equazioni (3) e (4) sono equivalenti, così U è definita come una
partizione c di Y. Generalizzando questa idea, ci si riferisce ad U come una partizione fuzzy
“c” di Y, dove gli elementi di U sono numeri compresi nell’intervallo [0, 1] e che soddisfano
le condizioni (2b) e (2c). La base di questa definizione è la funzione c: 4 ∶ F → ?0, 1E, dove
i valori 4 T% ∈ R0, 1S e sono interpretati come i gradi di appartenenza delle T% al
sottoinsieme fuzzy 4 di Y. Questa definizione è stata fornita da Zadeh nel 1965, il quale
concepì l’idea dell’insieme fuzzy come uno strumento per modellare sistemi fisici che
presentano incertezza non statistica.
Pagina |61
Capitolo III – Clustering di forme semi-supervisionato
Di conseguenza, l’insieme e la partizione fuzzy, rappresentano uno strumento per
alterare gli assiomi basilari sottostanti al clustering e ai modelli di classificazione. Con questo
metodo, un punto T% può appartenere interamente ad un singolo cluster, ma in generale è in
grado di appartenere “parzialmente” a più cluster. Si denotano gli insiemi di tutte le partizioni
c di Y con:
^P
^bP
?1P_ |4 % ∈ R0, 1SE 5
?1P_ |4 % ∈ R0, 1SE 5N
È importante evidenziare che ^P è incorporato in ^bP . Questo indica che gli algoritmi
di fuzzy clustering permettono di ottenere c partizioni compatte.
Per individuare le c partizioni ottimali di Y, sono stato proposti molti criteri, e quello
migliore è dato dall’associazione di una funzione che calcola il valore degli errori al quadrato:
cd 1, e
P
$$ 4 %
%'
'
d
2
e ‖ 6
f
‖T%
dove:
o F
o
?T , T , … … … , Ti E∁
i
rappresenta i dati;
identifica il numero dei cluster presenti in Y ed è compreso nel seguente intervallo
2 J k ;
o m rappresenta l’esponente ed ha un valore compreso tra: 1 J X k ∞;
o U è la matrice delle c partizioni di Y, 1 ∈ ^bP ;
o e
o e
e , e , … … … … , eP
e , e , … … … . , e i
indica il vettore dei centri;
rappresentano i centri del cluster i;
o ‖ ‖m è la norma indotta di A calcolata su
i
;
Pagina |62
Capitolo III – Clustering di forme semi-supervisionato
o la matrice A (N x N) è la matrice (i suoi valori sono tutti positivi) dei pesi.
La distanza al quadrato tra T% e e è calcolata in norma A nel seguente modo:
‖T%
%
e ‖
2
f
T%
e
n
f T%
Il peso collegato all’errore quadratico è 4 %
d
e 7
, dove l’m-esima potenza delle
T% appartiene al cluster i. I vettori ?e Esono definiti come i centri dei cluster oppure come i
centri di massa dei sottoinsiemi di partizionamento. Se m ha un valore pari ad 1, si può
dimostrare che minimizzando la componente cd soltanto 1 I ∈ ^P e i corrispondenti e
rappresentano il baricentro geometrico delle F .
Dopo queste affermazioni, è possibile decomporre cd nei suoi elementi di base, in
modo da vedere quali proprietà dei punti ?T% E esso soddisfa:
•
•
•
•
%
è la distanza in norma A al quadrato calcolata a partire dal punto T% fino
al centro di massa e ;
4%
d
%
rappresenta l’errore in norma A al quadrato sostenuta da T% con e
pesando l’appartenenza di T% al cluster i;
∑P' 4 %
d
%
è la somma dei quadrati dell’errore in norma A dovuta alla
sostituzione parziale di T% con tutte le c dei centri ?e E;
∑%' ∑P' 4 %
d
%
è la somma pesata degli errori in norma A dovuta alla
sostituzione di Y con v.
L’esponente m controlla i pesi relativi collocati su ciascun errore al quadrato
%
. Se
m ha un valore prossimo ad 1, le partizioni diventano sempre più compatte. Mentre con un
valore pari ad 1, le partizioni saranno necessariamente compatte.
L’altro parametro di cd che merita una menzione speciale è il peso della matrice A.
Questa matrice determina la forma ottimale che i cluster assumono in
norma su
i
i
. Affinché ogni
sia un prodotto interno, si utilizza la seguente formula:
Pagina |63
Capitolo III – Clustering di forme semi-supervisionato
〈 , T〉m
n
fr 8
ed inoltre ci sono infiniti modi per calcolare la norma A nella equazione (6).
L’algoritmo FCM consente di scegliere tra tre norme, ognuna indotta da una specifica
matrice dei pesi. Le norme da utilizzare nell’equazione (6) corrispondono a:
I;
o norma euclidea:A
o norma diagonale: A
Dv
r ;
o norma di Mahalonobis: A
Crv .
x ey" che minimizzano
Un clustering ottimale di Y è definito come coppie: 1,
localmente cd . Nel caso in cui il valore di m è maggiore di 1, se T% G e{z per tutte le j e k,
dovrà essere ottimale localmente per tutte le cd soltanto se:
e{|
4}
|%
dove •
|%
sufficienti.
P
∑%' 4}
|%
•$ €
!'
‖T%
•
|%
•
z%
‚
d
/ dv
T%
~
∑%' 4}
|%
v
„
d 1
J J 9
1 J \ J
,1 J J 9N
e{| ‖m . Le condizioni espresse nell’equazione (9) sono necessarie ma non
3.2.2 DESCRIZIONE DELL’ALGORITMO
Sia dato il coefficiente X ∈ R1, ∞ detto costante di fuzzificazione o fuzziness; l’algoritmo
ha la seguente struttura:
1. generare una partizione P casuale, con
?f , … … … , f… E;
Pagina |64
Capitolo III – Clustering di forme semi-supervisionato
2. calcolare le coordinate dei centroidi tramite la formula seguente:
∑%' 4d% 5%!
4d!
†!
in cui † ! è la coordinata j-esima del vettore rappresentante il centroide del cluster i-
esimo. Questa formula equivale a minimizzare cd 1, ∶ con U fissato;
3. aggiornare la partizione tramite la formula seguente:
4%
con 1, … , Qe \
V fissato;
∑…!'
1
‖5%
*5%
† ‖
†! *
1, … , . Questa formula equivale a minimizzare cd : , † con
4. iterare i passi “2” e “3” finché due partizioni successive non risultano “abbastanza
vicine”. Per misurare la distanza tra due partizioni fuzzy si opera come segue:
o si indica con 1 v la matrice associata alla partizione
iterazione. La distanza tra
e
,
!
è definita come segue:
!
"
*1
o il processo termina all’iterazione m se
massimo ammissibile.
generata all’i-esima
1! *
d
,
dv
k ˆ con ˆ errore
L’algoritmo FCM consiste, quindi, nello scegliere una partizione fuzzy inizialmente
arbitraria P, applicare la formula al passo 2 per calcolare i centroidi e quindi applicare la
formula al passo 3 per aggiornare P. Si applicano iterativamente i passi 2 e 3 finché la
differenza tra due partizioni successive diventa minore di un numero reale positivo fissato a
Pagina |65
Capitolo III – Clustering di forme semi-supervisionato
priori. Equivalentemente, si può partire da un insieme di centroidi arbitrari ed applicare
alternativamente le formule precedenti per calcolare partizioni e prototipi.
Per quanto riguarda l’esponente m utilizzato nella funzione obiettivo, ci sarebbero
alcune precisazioni da fare. Se m ha un valore pari ad 1, gli unici gradi di appartenenza degli
oggetti ai cluster prodotti dall’algoritmo sono 0 e 1, ed ogni oggetto appartiene quindi ad un
solo cluster. Viceversa, se X → ∞, il valore della funzione cd → ∞ . In generale, maggiore
è il valore di m, “più fuzzy” sono i valori delle appartenenze ai cluster, mentre per m uguale ad
1, tali valori tendono a 0 oppure 1.
Poiché non esistono formule per calcolare il valore ottimale di m, occorre effettuare
diverse prove per diversi valori di questo parametro. Di solito, nella pratica, non si conosce
nemmeno il numero di cluster per cui vengono effettuate varie prove anche per la ricerca di
tale parametro.
In Matlab viene fornita la seguente funzione, la quale implementa l’algoritmo Fuzzy
C-Means:
[V, U, OBJ_FCN] = FCM(DATA, C)
dove:
•
C rappresenta il numero dei cluster;
•
DATA è una matrice SxR, dove S è il numero delle sessioni ed R è il numero di
coordinate di ciascun punto;
•
V è una matrice CxR, contenente le coordinate di ciascun centroide nelle righe della
matrice;
•
U è una matrice CxS, contenente i gradi di appartenenza di ciascun punto a ciascun
cluster;
•
OBJ_FCN rappresenta una matrice contenente i valori della funzione obiettivo.
Pagina |66
Capitolo III – Clustering di forme semi-supervisionato
3.2.3 I DATI
I dati di input dell’algoritmo FCM sono rappresentati da matrici i cui vettori sono costituiti da
valori numerici tutti compresi tra 0 ed 1.
In output avremo le seguenti matrici:
o la matrice dei “prototipi o centri”, i cui vettori sono costituiti di valori numerici
compresi tra 0 e 1, contiene le coordinate di ciascun prototipo;
o la matrice dei “gradi di membership”, formata da valori numerici compresi tra 0 e 1, la
cui somma, per ogni cluster, è uguale a 1;
o la matrice “obj_fcn”, costituita da valori numerici, e contiene i valori della funzione
obiettivo ed il numero dei suoi elementi, ed avremo tanti valori quante sono le
iterazioni eseguite dell’algoritmo.
3.3 ALGORITMO FUZZY C-MEANS SEMI-SUPERVISIONATO
Nell’approccio proposto per l’annotazione di forme, si possono identificare principalmente
due fasi:
i.
clustering di forme semi-supervisionato per la scoperta automatica dei prototipi delle
forme, i quali rappresentano un certo numero di categorie semantiche;
ii.
annotazione fuzzy di forme.
Come si può osservare dalla figura riportata qui di seguito, l’input per il processo di
annotazione è rappresentato da una collezione di forme espresse tramite l’utilizzo delle
coordinate del contorno. Tutte le coordinate delle forme sono descritte attraverso i descrittori
di Fourier. Tra i differenti approcci proposti per la descrizione delle informazioni relative alla
forma, i descrittori di Fourier sono ben noti al giorno d’oggi per fornire robustezza e
invarianza, ottenendo una buona efficienza nell’indicizzazione e nel recupero di forme [87].
Pagina |67
Capitolo III – Clustering di forme semi-supervisionato
Shape
Shape Description
Database
Shape Descriptors
Domain
Knowledge
Semi-Supervised
Shape Clustering
Shape Prototypes
Fuzzy Shape
Unlabeled
Labeling
Shapes
Labeled
Shapes
Figura 3.3: Panoramica dell’approccio proposto
Le caratteristiche dei descrittori di Fourier (Fourier Descriptor) sono le seguenti:
a. dominio delle feature: un FD è ottenuto da un dominio spettrale;
b. dimensioni: la dimensione del FD è costante una volta scelto il numero dei
coefficienti;
c. matching: il matching di due insiemi di FD è bassato sul calcolo della semplice
distanza city block tra due vettori caratteristici di dimensione 10;
d. tipo di caratteristiche calcolate: FD cattura sia caratteristiche globali che locali;
e. influenza di parametri o limiti: per i FD, il solo parametro è il numero delle feature
FD;
f. rappresentazione gerarchica: FD supportano una rappresentazione gerarchica grezza;
g. indicizzazione efficiente: FD è adatto per essere organizzato in una struttura dati
efficiente.
Pagina |68
Capitolo III – Clustering di forme semi-supervisionato
I descrittori di Fourier rappresentano il contorno esterno di una forma attraverso la
media di un limitato numero di coefficienti nel dominio delle frequenze. Poiché tali
coefficienti contengono informazioni circa la dimensione, l’orientazione e la posizione delle
forma, essi devono essere adeguatamente normalizzati per ottenere proprietà invarianti
rispetto alle trasformazioni. In aggiunta, per ottenere una descrizione compatta della forma, un
approccio comune è mantenere soltanto un sottoinsieme dei coefficienti di Fourier, che
corrispondono a quelli aventi una frequenza più vicina allo zero [88], [89].
La scelta di un appropriato numero M di coefficienti da utilizzare deve sacrificare la
precisione nel rappresentare il contorno originale con compattezza e semplicità della
rappresentazione. Indichiamo con
,………,
Œ
la rappresentazione della forma di un
oggetto attraverso la media dei suoi M descrittori di Fourier.
Una volta rappresentate tutte le possibili forme attraverso i descrittori di Fourier, il
processo di annotazione delle forme può essere avviato. Nei paragrafi che seguono, verranno
illustrati in modo dettagliato le due fasi di cui il processo si compone.
3.3.1 CLUSTERING DI FORME SEMI-SUPERVISIONATO
Nel primo passo, un insieme di prototipi di forme è definito automaticamente applicando un
processo di clustering ad un gruppo di forme simili, definendo così un certo numero di cluster
e rappresentando ognuno di essi attraverso la media delle forme prototipali.
Per questo scopo, si è utilizzato l’algoritmo di clustering FCM (Fuzzy C-Means), a cui
è stato aggiunto un meccanismo di supervisione parziale, che verrà descritto qui di seguito.
Prendiamo •
Ž ! • !' come un insieme di N forme rappresentate dai descrittori di
Fourier e K uguale ad un certo numero di cluster, che si potrà definire prima dell’inizio del
processo. Con • ⊂ • denotiamo un piccolo insieme di forme etichettate e con N
un vettore booleano definito nel seguente modo:
N!
1 ‘
U
ŽN! • !'
X ! è W “ WW W
10
0 W X W
Analogamente, i valori di appartenenza delle forme etichettate al cluster sono stati
inseriti all’interno di una matrice, definita nel seguente modo:
Pagina |69
Capitolo III – Clustering di forme semi-supervisionato
>
”‘!% •
\
M
1, … . , 3
11
1, … . . ,
Il clustering semi-supervisionato lavora esattamente come l’algoritmo FCM (descritto
nel paragrafo 2.2). Esso è un processo che estrae iterativamente K cluster attraverso la
minimizzazione della funzione obiettivo “obj”, la quale è stata modificata rispetto a quella
originale presente nel Fuzzy C-Means, in quanto è stata aggiunta la componente di
supervisione espressa nella forma di b e F e definita come segue:
7
d
$ $ 4!%
!%
%' !'
–
7
— $ $ 4!%
%' !'
N! ‘!%
d
!%
12
dove djk rappresenta la distanza Euclidea tra la forma sj e il centro del k-esimo cluster, m
(coefficiente di fuzzificazione) è un qualsiasi numero reale più grande di 1 ed α è un
parametro utilizzato per bilanciare la componente supervisionata e quella non supervisionata
del processo di clustering.
Il valore della componente alfa è proporzionale al seguente rapporto:
—
4X
‘ X W “ WW
4X
W W ‘ X
ed esso assicura che l’impatto delle forme etichettate non sia ignorato durante il processo di
clustering. Inoltre più alto sarà il valore di alfa e più alto sarà l’impatto derivante dalla
componente supervisionata.
Il secondo termine della funzione obiettivo cattura le differenze fra l’autentica
appartenenza delle forme (incapsulate in F) e l’appartenenza calcolata dall’algoritmo.
L’obiettivo da raggiungere è che per le forme etichettate, questi valori coincidano.
Per minimizzare la funzione obiettivo, si fissano i valori dei prototipi dei cluster e
rilevando che le colonne di U sono indipendenti, il clustering ha il compito di leggere il
seguente problema di ottimizzazione vincolata: min –% soggetto a
P
$4 %
'
1 13
Pagina |70
Capitolo III – Clustering di forme semi-supervisionato
con K = 1,2,…….,N dove:
7
–%
d
$ 4!%
!'
!%
7
— $ 4!%
!'
N! ‘!%
d
!%
14
e 4% indica la K-esima colonna di U.
Usando la tecnica dei moltiplicatori di Lagrange, il problema di ottimizzazione deve
essere convertito nella forma di minimizzazione libera:
7
–% ›, 4%
d
$ 4!%
!%
!'
7
— $ 4!%
!'
N! ‘!% "
d
!%
7
› $ 4!%
!'
1 15
dove con λ si denota il moltiplicatore di Lagrange. La coppia ›, 4% forma un punto
stazionario della funzione ottimizzata se e soltanto se
œc%
œ›
7
$ 4%!
!'
1 16
Ci sono quindi due strade da poter seguire:
1. settare il coefficiente di fuzzificazione ad un valore pari a 2;
2. per qualsiasi valore di “p” diverso da 2, le condizioni di ottimizzazione da utilizzare
per alcuni sforzi computazionali sono 4•ž e ›, i quali sono collegati insieme nella
forma di una certa equazione polinomiale le cui radici devono essere determinati
numericamente.
La funzione obiettivo “O” è minimizzata aggiornando la matrice di partizione U
1
”4!% •
\
M
1….3
17
1….
nel seguente modo:
Pagina |71
Capitolo III – Clustering di forme semi-supervisionato
4!%
1
Il termine 1
1
—
¡
Ÿ
1
— 1
∑7
¢'
¥
N% ∑7
¢' ‘¢% ¤
¤
!%
¤
~
£
¢%
—N% ‘!% 18
— gioca un ruolo fondamentale nel fattore scalare, il quale può essere
facilmente ignorato non avendo alcun impatto sul risultato del clustering. Analogamente
assegnando a b un valore pari a 0, la matrice delle partizioni si aggiorna nel seguente modo:
4!%
∑7
¢'
1
~
!%
¢%
19
Il processo iterativo termina quando la differenza tra i valori della funzione obiettivo
ottenuta in due iterazioni consecutive non supera un valore di soglia fissato a priori oppure se
è raggiunto il massimo numero di iterazioni stabilito.
Per quanto riguarda la scelta delle forme etichettate da etichettare, essa può essere
realizzata in diversi modi. Nel primo modo, la conoscenza del dominio deve essere
esplicitamente fornita da un esperto, il quale conosce le categorie di appartenenza di un certo
numero di forme. Così l’esperto può imporre il suo punto di vista circa la semantica di un
numero di forme, fornendo anche la lista delle forme selezionate insieme alle etichette testuali
che corrispondono alle relative categorie di appartenenza. Generalmente, l’esperto decide di
fornire le forme “non chiare”, ad esempio forme che risultano essere visivamente simili ad
altre forme appartenenti a diverse categorie semantiche. Questo approccio è stato
implementato in [90].
Un altro modo per acquisire la conoscenza del dominio, consiste nella selezione
“casuale” di un insieme di forme da etichettare fra quelle presenti nella collezione. Questo
approccio è stato proposto in [91].
In questo lavoro di tesi, è stato proposto anche un nuovo metodo per acquisire la
conoscenza del dominio che consiste in una selezione automatica delle forme ottenuta
analizzando i valori della matrice delle partizioni prodotta dall’algoritmo Fuzzy C-Means.
Infatti, si possono sfruttare i valori parziali di appartenenza per identificare le forme “non
chiare” come forme aventi i gradi di appartenenza più vicino al valore ottenuto dal rapporto
1) .
3
In accordo con ciò, per ogni forma ! si calcola l’indice di separabilità nel seguente modo:
Pagina |72
Capitolo III – Clustering di forme semi-supervisionato
Ψ
1
7
3 7 § 4!% 20
%'
Si può notare che nel caso in cui tutti i valori di 4!% sono uguali a 1)3 , il valore di Ψ è
pari a 0. Dall’altro lato, se un valore di membership è uguale a 1, Ψrisulterà pari ad 1.
Facendo riferimento a queste considerazioni, si è scelti come forme “non chiare” da
etichettare quelle che hanno un valore dell’indice di separabilità più vicino allo zero.
Una volta terminato il processo di clustering, come risultato, l’algoritmo fornirà una
matrice di partizione fuzzy denotata con “U” contenente i gradi di appartenenza di ogni forma
ad ogni cluster scoperto. Questi valori sono stati esplicitati per poter derivare una forma
prototipale per ogni cluster. In pratica, per ogni cluster, la forma con il massimo valore di
appartenenza è selezionata come prototipo. Con [% è stata denotata la forma prototipale del
cluster “k”.
Conclusa la fase di derivazione dei prototipi, viene avviata la fase di annotazione
manuale grazie all’aiuto dell’esperto di dominio, in accordo con un insieme “C” di categorie
semantiche. Precisamente, ogni forma prototipale derivata è associata ad una etichetta testuale
unica, la quale corrisponde alla categoria semantica rappresentata dal prototipo. Naturalmente,
differenti forme prototipali possono convergere nello stesso contenuto semantico (cioè , molte
forme differenti possono convergere nella stessa classe di oggetti), cioè K ≥ C.
Alcuni prototipi però possono appartenere alla stessa categoria semantica: allora, tali
prototipi avranno etichette identiche. Di conseguenza, molte forme prototipali avranno la
stessa descrizione testuale.
3.3.2 ANNOTAZIONE FUZZY DI FORME
L’annotazione fuzzy di forme rappresenta la fase in cui avviene l’effettiva annotazione delle
forme. Ogni volta che una nuova forma è aggiunta al database delle forme, i suoi descrittori di
Fourier
!∗
sono confrontati con i descrittori di Fourier dei tutti i prototipi [% e
successivamente sono calcolati i gradi di appartenenza della forma ai cluster. Essi sono
calcolati utilizzando la seguente formula:
Pagina |73
Capitolo III – Clustering di forme semi-supervisionato
©!∗%
dove *
!∗
∑7
P'
*
€
*
1
!∗
!∗
[% *
‚
[P *
21
[% * rappresenta la distanza Euclidea calcolata tra i descrittori della forma e i K-
esimi descrittori del prototipo.
In questo modo, ogni oggetto della forma
etichette ª!∗ definita come segue:
ª!∗
!∗
è associato con un insieme fuzzy di
Ž©!∗ , ©!∗ , … … … … … … … . , ©!∗… •22
dove ©!∗ rappresenta il valore del grado di appartenenza della j-esima forma alla i-esima
categoria semantica che sono ottenuti dal calcolo del valore massimo dei gradi di
appartenenza della forma rispetto a tutti i prototipi [% rappresentativi della i-esima categoria
semantica, ossia:
©!∗
max Ž©!∗% • 23
-« ¬…-
Si può quindi affermare che un oggetto di forma di solito appartiene a categorie
semantiche multiple con differenti gradi di appartenenza.
Ogni qualvolta una nuova forma è etichettata, i prototipi delle forme devono essere
aggiornati al fine di tener conto delle informazioni derivanti dall’associazione della nuova
forma ad una data categoria semantica. Per realizzare ciò, si sceglie inizialmente la categoria
semantica Q avente massimo grado di appartenenza della nuova forma etichettata e verrà
effettuato l’aggiornamento del prototipo visuale corrispondente a tale categoria. Se questo
grado di appartenenza è maggiore di una soglia (nel nostro caso è pari a 0,5), tra cluster
associati a tale categoria, si seleziona quello il cui prototipo ha distanza minima dalla nuova
forma:
[∗
® min
-« ¬…-
!∗ , [% " 24
Pagina |74
Capitolo III – Clustering di forme semi-supervisionato
Infine, viene calcolata la distanza media tra il prototipo determinato [∗ e tutte le forme
del relativo cluster e quest’ultimo con la forma etichettata. Il nuovo prototipo sarà
rappresentato dalla forma avente valore minimo della distanza media.
Quando il matching tra una nuova forma e i prototipi visuali di tutte le classi
semantiche fornisce valori di appartenenza inferiori rispetto ad una data soglia, una nuova
categoria viene aggiunta. Precisamente, i descrittori di Fourier di una nuova forma sono
considerati come il prototipo visuale della nuova categoria semantica (cioè [%¯
!∗
).
Allora, il prototipo creato recentemente è etichettato manualmente dall’esperto di dominio con
una keyword che descrive la nuova categoria semantica aggiunta.
L’utilizzo di forme prototipali, le quali rappresentano un livello intermedio di segni
visuali, facilita il processo di annotazione, poiché solo un ridotto numero di forme deve essere
etichettato manualmente. In secondo luogo, l’uso dei prototipi semplifica il processo di ricerca
in un sistema di ricerca. Inoltre, poiché qualsiasi query effettuata dall’utente è probabile che
corrisponda con elevato grado soltanto ad un piccolo numero di oggetti, un grande numero di
confronti inutili è evitato durante la ricerca e si eseguono così solo i confronti con le forme
prototipali anziché con la forma specifica. In altre parole, i prototipi svolgono la funzione di
filtro che riduce velocemente lo spazio di ricerca mentre gli oggetti vengono differenziati.
Algoritmo:
Siano date n forme non etichettate. Il numero di forme da etichettare è stato calcolato
nel seguente modo:
‘
X W “ WW
4X
‘
X W W
100
W
® W
∗[
.
‘
X W “ WW
dove la percentuale di forme da etichettare varia tra il 5 e il 30%.
CONFIGURAZIONE:
scelta delle forme da etichettare: l’utente può scegliere tra 3 metodi:
i.
manuale: si avvale del supporto di un esperto del dominio;
Pagina |75
Capitolo III – Clustering di forme semi-supervisionato
ii.
random: la scelta avviene in modo totalmente causale, in quanto è
l’algoritmo a scegliere le forme;
iii.
automatica: utilizza le forme classificate in modo errato dall’algoritmo
FCM, e vengono scelte le prime n forme da etichettare;
creazione della matrice F, la quale come abbiamo già detto in precedenza
contiene solo 0 e 1.
CLUSTERING SEMI-SUPERVISIONATO:
avvio del processo di clustering semi-supervisionato, il quale utilizza come dati di
input:
o la matrice dei dati di training;
o il numero dei cluster;
o la matrice F (indica le forme etichettate con una delle tre tipologie di
etichettatura).
ed ottenendo come output:
o la matrice dei centri;
o la matrice di membership (contiene i gradi di appartenenza di ogni
singola forma ai cluster creati);
o i valori della funzione obiettivo.
creazione dei cluster: in input riceve
o la matrice di membership;
o la matrice dei dati;
o la matrice delle etichette relativa alle forme;
o la matrice degli indici relativa alle forme.
Come output avremo i cluster contenenti le forme raggruppate per categoria.
Il
numero dei cluster ottenuto sarà pari al numero dei cluster fornito in input al processo
di clustering;
Pagina |76
Capitolo III – Clustering di forme semi-supervisionato
creazione del prototipo per tutti i cluster creati: identifica come prototipo quello avente
massimo grado di appartenenza al cluster;
etichettatura del cluster in base al prototipo identificato: al cluster viene associata
l’etichetta della forma prototipale;
ANNOTAZIONE FUZZY:
creazione della matrice di appartenenza delle forme di test ai cluster derivati dal
processo di clustering. Questa passo restituirà come output:
o la matrice di appartenenza, contenente i gradi di appartenenza delle forme di
test ai cluster;
o la matrice dei prototipi, contenente i descrittori di Fourier dei prototipi;
o la matrice delle etichette, contenente le etichette delle forme di test.
avvio della fase di test: si confronta la matrice delle etichette ottenuta come output dal
passo precedente con la matrice delle etichette di test, in modo da verificare il numero
di forme classificate correttamente;
calcolo dei valori di precision e recall per ciascuna categoria semantica:
4X
‘ X W “ WW W WW X W 4X
W W ‘ X W “ WW W 4W X W X
4X
‘ X W “ WW W WW X W 4X
W W ‘ X W “ WW W X 4 X W
W
Pagina |77
CAPITOLO IV
SPERIMENTAZIONE
Pagina |78
Capitolo IV – Sperimentazione
In questo capitolo verranno presentate le due sperimentazioni effettuate, la prima volta a
valutare le capacità dell’algoritmo implementato e la seconda utilizzata per valutare le
performance del processo di retieval. In particolare, si descriverà la modalità con cui è stata
condotta la sperimentazione ed in seguito verranno riportati i risultati (grafici, tabelle, ecc.)
relativi ad ogni sperimentazione. Il capitolo si conclude con le valutazioni dei risultati ottenuti
per entrambe le sperimentazioni.
4.1 INTRODUZIONE
Per valutare l’efficacia dell’algoritmo proposto in questo lavoro di tesi, sono stati eseguiti una
serie di esperimenti utilizzando come data-set di riferimento “Surrey Fish” (reperibile al
seguente indirizzo http://www.ee.surrey.ac.uk). Esso è un data-set di immagini di forme di
specie marine dell’università del Surrey composto da 1100 forme, ed ogni file contiene le
coordinate dei punti che a loro volta formano il contorno della forma di ciascun animale
marino.
Shark
Ueel
Tonguefish
Crustacean
Eel
Sole
Ray
Seamoth
Seahorse
Pipefish
Figura 4.1: Immagini di esempio del data-set di riferimento
Nella sperimentazione condotta è stata selezionata solamente una parte del data-set
preso in considerazione, ovvero si sono scelte 265 forme cercando di includere tutte le 10
categorie semantiche presenti al suo interno. Una volta selezionate le 265 forme, si è
proceduti ad una classificazione manuale, come si può vedere dalla tabella riportata qui di
seguito:
Pagina |79
Capitolo IV – Sperimentazione
CATEGORIA TRAINING TESTING
Shark
53
5
Ueel
18
2
Ray
37
4
Eel
23
3
Pipefish
15
1
Tonguefish
17
2
Sole
47
5
Seamoth
10
1
Seahorse
10
1
Crustacean
10
1
TOTALE
240
25
Tabella 4.1: Suddivisione delle categorie presenti nel data-set
Questa classificazione manuale è stata utilizzata come base per valutare le
performance del modello di annotazione proposto.
Per ogni forma del data-set, sono stati calcolati i descrittori di Fourier
e
successivamente sono stati scelti i primi 32 coefficienti più rappresentativi della forma. Tali
numeri sono stati stabiliti in maniera empirica sulla base di esperimenti preliminari in cui si è
notato che il numero dei coefficienti fornisce un buon compromesso tra compattezza e
accuratezza della rappresentazione della forma.
L’insieme dei 265 descrittori di forma è stato suddivisi in due parti (come si può
osservare dalla tabella 4.1): il 90% rappresenta il training set utilizzato per la scoperta dei
prototipi di forma, mentre il rimanente 10% rappresenta il test set utilizzato nel processo
effettivo di annotazione. Per poter ottenere risultati più attendibili è stata utilizzata la
procedura della fold cross validation, infatti ogni esperimento è stato eseguito 10 volte per
ognuna delle 3 tipologie di etichettatura utilizzata (manuale, automatica e random). Nella
serie di esperimenti eseguiti, ci si è principalmente interessati ai prototipi di forma derivati, i
quali rappresentano un certo numero di categorie semantiche ed inoltre si è valutata
l'accuratezza dell’annotazione di forma.
La fase di sperimentazione si suddivide principalmente in due fasi:
Pagina |80
Capitolo IV – Sperimentazione
i.
nella prima fase si esegue 10 volte l’algoritmo sul data-set di training in modo da
ottenere i prototipi di forma;
ii.
nella seconda fase viene scelta la prova migliore per ogni tipologia di etichettatura e si
esegue la fase di annotazione fuzzy delle forme.
Per la sperimentazione relativa al retrieval, si utilizzeranno i cluster e i prototipi di
forma ottenuti dall’algoritmo semi-supervisionato.
Nei paragrafi seguenti vengono riportati i risultati ottenuti dalle due sperimentazioni
eseguite.
4.2 SPERIMENTAZIONE ALGORITMO FUZZY C-MEANS NON
SUPERVISIONATO
Per poter valutare l’idoneità dell’algoritmo implementato, sono state effettuate delle prove
utilizzando l’algoritmo FCM non supervisionato. Esso è stato eseguito sul training set
variando sia il numero dei cluster da 9 a 15 (quando il numero dei cluster è pari a 10 esso
coincide con il numero delle categorie) e sia il coefficiente di fuzzificazione “m” da 1.5 a 3.
L’esperimento è stato eseguito 10 volte come già accennato nel paragrafo precedente.
Riportiamo qui di seguito i risultati delle prove migliori ottenuti per ogni caso:
1. Primo caso: numero di cluster pari a 9
Cluster
m = 1.5
1
Ueel
2
Eel
3
Shark
4
Sole
5
Seahorse
6
Ray
7
Seamoth
8
Crustacean
9
Shark
m=2
12
19
28
40
9
33
10
10
22
Ueel
Seamoth
Sole
Seahorse
Ray
Sole
Eel
Shark
Shark
12
10
21
8
32
19
19
19
24
m = 2.5
Shark
22
Shark
22
Sole
4
Ray
25
Ray
10
Sole
29
Ueel
12
Sole
2
Eel
19
m=3
Sole
Ueel
Shark
Shark
Shark
Sole
Ray
Ray
Eel
29
14
20
24
2
3
19
2
19
Tabella 4.2: Risultati algoritmo FCM con numero di cluster pari a 9
Pagina |81
Capitolo IV – Sperimentazione
2. Secondo caso: numero di cluster pari a 10
Cluster
1
2
3
4
5
6
7
8
9
10
m = 1.5
Sole
Shark
Ray
Sole
Seahorse
Ueel
Shark
Shark
Eel
Seamoth
15
10
33
29
9
12
19
22
18
10
m=2
Shark
Eel
Ray
Shark
Ray
Ueel
Sole
Sole
Seamoth
Shark
23
18
18
4
15
12
12
29
10
19
m = 2.5
Seahorse
8
Eel
18
Ueel
12
Sole
31
Ray
12
Shark
25
Shark
19
Sole
7
Ray
17
Sole
2
m=3
Sole
6
Ueel
14
Shark
21
Ray
31
Shark
12
Ray
25
Sole
19
Sole
7
Sole
17
Eel
2
Tabella 4.3: Risultati algoritmo FCM con numero di cluster pari a 10
3. Terzo caso: numero di cluster pari a 11
Cluster
m = 1.5
1
Eel
2
Crustacean
3
Shark
4
Ueel
5
Shark
6
Seamoth
7
Seahorse
8
Ueel
9
Sole
10
Ray
11
Sole
19
9
20
8
30
10
9
8
29
31
15
m=2
Ueel
Shark
Seahorse
Sole
Shark
Ray
Shark
Seamoth
Ray
Eel
Sole
12
10
8
5
17
13
21
10
20
18
28
m = 2.5
Ueel
Tonguefish
Ray
Shark
Shark
Shark
Sole
Seamoth
Ray
Shark
Eel
m=3
12
1
9
13
10
1
29
10
20
24
18
Sole
Sole
Ueel
Ray
Shark
Eel
Shark
Seahorse
Shark
Sole
Shark
16
4
14
18
2
19
14
9
18
5
13
Tabella 4.4: Risultati algoritmo FCM con numero di cluster pari a 11
Pagina |82
Capitolo IV – Sperimentazione
4. Quarto caso: numero di cluster pari a 12
Cluster
m = 1.5
1
Shark
2
Sole
3
Tonguefish
4
Seahorse
5
Ueel
6
Shark
7
Seamoth
8
Crustacean
9
Sole
10
Ray
11
Ueel
12
Eel
25
15
10
9
8
19
10
9
28
31
8
18
m=2
Eel
Shark
Shark
Shark
Sole
Seamoth
Seahorse
Ray
Ueel
Sole
Sole
Ray
16
17
22
6
18
10
7
13
12
15
9
20
m = 2.5
Eel
17
Shark
26
Sole
11
Ray
24
Sole
11
Shark
1
Shark
10
Ray
10
Sole
2
Sole
10
Sole
6
Ueel
12
m=3
Ray
Ray
Sole
Sole
Crustacean
Ray
Ueel
Shark
Eel
Sole
Shark
Shark
5
7
13
14
8
12
14
14
18
9
13
16
Tabella 4.5: Risultati algoritmo FCM con numero di cluster pari a 12
5. Quinto caso: numero di cluster pari a 13
Cluster
m = 1.5
1
Ueel
2
Sole
3
Shark
4
Crustacean
5
Shark
6
Seahorse
7
Sole
8
Ueel
9
Eel
10
Seamoth
11
Ray
12
Shark
13
Shark
8
14
14
9
19
9
29
8
16
10
32
12
6
m=2
Shark
Pipefish
Sole
Eel
Shark
Ueel
Ray
Shark
Sole
Sole
Seamoth
Ray
Sole
2
6
12
15
21
12
13
18
4
18
10
20
7
m = 2.5
Sole
4
Sole
4
Sole
20
Shark
20
Ueel
12
Ray
8
Eel
17
Sole
7
Ray
19
Shark
6
Shark
19
Sole
4
Seamoth
10
m=3
Sole
Sole
Shark
Sole
Shark
Sole
Ray
Shark
Ueel
Sole
Seahorse
Eel
Ray
8
4
10
7
19
10
15
15
14
8
8
18
4
Tabella 4.6: Risultati algoritmo FCM con numero di cluster pari a 13
Pagina |83
Capitolo IV – Sperimentazione
6. Sesto caso: numero di cluster pari a 14
Cluster
m = 1.5
1
Seahorse
2
Ray
3
Crustacean
4
Eel
5
Ray
6
Ueel
7
Shark
8
Sole
9
Seamoth
10
Shark
11
Shark
12
Ueel
13
Shark
14
Shark
9
10
9
15
24
7
6
14
10
14
8
8
23
29
m=2
Shark
Sole
Sole
Ray
Seahorse
Sole
Ueel
Ray
Eel
Pipefish
Shark
Shark
Ray
Seamoth
16
6
10
2
8
19
12
11
15
6
10
14
20
10
m = 2.5
Shark
6
Sole
3
Shark
22
Sole
2
Sole
2
Seamoth
10
Shark
17
Ray
18
Sole
14
Ray
9
Ueel
12
Sole
11
Sole
4
Eel
17
m=3
Shark
Ray
Shark
Seahorse
Ray
Shark
Sole
Eel
Ueel
Shark
Sole
Sole
Ray
Sole
3
13
11
8
7
1
4
15
14
29
14
6
3
12
Tabella 4.7: Risultati algoritmo FCM con numero di cluster pari a 14
7. Settimo caso: numero di cluster pari a 15
Cluster
m = 1.5
1
Sole
2
Seahorse
3
Shark
4
Shark
5
Ray
6
Tonguefish
7
Eel
8
Ueel
9
Sole
10
Sole
11
Ueel
12
Sole
13
Seamoth
14
Shark
15
Ueel
22
9
11
15
28
10
17
7
6
7
6
10
10
18
3
m=2
Seamoth
Ray
Seamoth
Shark
Ueel
Pipefish
Seahorse
Shark
Sole
Sole
Eel
Ray
Shark
Shark
Ueel
10
17
3
3
8
7
7
15
20
12
15
16
15
12
8
m = 2.5
Eel
15
Sole
2
Ray
18
Sole
2
Shark
1
Ray
4
Ray
6
Ueel
12
Sole
8
Seamoth
10
Shark
14
Pipefish
7
Sole
21
Sole
7
Shark
21
m=3
Sole
Shark
Ueel
Ray
Seahorse
Shark
Sole
Shark
Eel
Sole
Sole
Shark
Shark
Ray
Ray
4
2
14
5
8
11
9
12
17
9
9
15
7
11
3
Tabella 4.8: Risultati algoritmo FCM con numero di cluster pari a 15
Pagina |84
Capitolo IV – Sperimentazione
La figura 4.2 riporta i risultati medi delle 10 prove eseguite variando il numero dei
cluster e i valori del coefficiente di fuzzificazione.
82
77
K=9
DCC
72
K=10
K=11
67
K=12
62
K=13
57
K=14
K=15
52
1,5
2
2,5
3
Valori del coefficiente di fuzzificazione
Figura 4.2: Valori DCC ottenuti con l’algoritmo FCM non supervisionato
Si può osservare che i valori delle cardinalità di categoria dominanti (DCC) sono
influenzati dai parametri di clustering. Infatti, i valori DCC migliorano all’aumentare del
numero dei cluster. Inoltre, indipendentemente dal numero di cluster, i valori DCC più elevati
sono ottenuti quando il valore del coefficiente di fuzzificazione è pari a 1.5.
Nei paragrafi successivi verranno analizzati in dettaglio i casi con numero di cluster
rispettivamente pari a 10 e 15.
Pagina |85
Capitolo IV – Sperimentazione
4.3 SPERIMENTAZIONE ALGORITMO FUZZY C-MEANS SEMISUPERVISIONATO
4.3.1 SPERIMENTAZIONE CON NUMERO DI CLUSTER PARI A 10
La sperimentazione sull’algoritmo FCM dotato del meccanismo di supervisione è stata
eseguita utilizzando le tre tipologie di etichettatura descritte nel capitolo 3 e variando la
percentuale di forme da etichettare dal 5% al 30%. È stato osservato che le migliori partizioni
di forme si ottengono fissando in tutte le prove il valore del coefficiente di fuzzificazione pari
a 2. Mentre il parametro α è stato modificato di volta in volta in modo da renderlo
proporzionale alla percentuale di forme da etichettare (vedi paragrafo 3.3.1):
—
4X
‘ X W “ WW
4X
W W ‘ X
dove il numero totale di forme è pari a 240 e il numero di forme cambia di volta in volta.
Riportiamo qui di seguito il valore di α per ognuno dei sei casi:
1. Primo caso: 5% di forme da etichettare - α = (12/240) = 0.05
2. Secondo caso: 10% di forme da etichettare - α = (24/240) = 0.1
3. Terzo caso: 15% di forme da etichettare - α = (36/240) = 0.15
4. Quarto caso: 20% di forme da etichettare - α = (48/240) = 0.2
5. Quinto caso: 25% di forme da etichettare - α = (60/240) = 0.25
6. Sesto caso: 30% di forme da etichettare - α = (72/240) = 0.3
Nei paragrafi successivi verranno riportati i risultati della prova migliore per ogni
tipologia di etichettatura e relativi alla scoperta dei prototipi di forma.
Pagina |86
Capitolo IV – Sperimentazione
4.3.1.1
ETICHETTATURA MANUALE
Con l’utilizzo di questa tipologia di etichettatura, viene effettuata insieme all’esperto di
dominio una scelta manuale delle forme da etichettare. Questa scelta è ricaduta su quelle
presenti in un cluster di appartenenza diverso da quello ad esso associato.
Qui di seguito vengono riportate le composizioni ottenute per ciascun caso:
i.
Caso 5%: numero di forme da etichettare pari a 12
1 - Tonguefish
2 - Pipefish
3 - Crustacean
4 - Sole
5 -Shark
6 - Eel
7 - Ueel
8 - Tonguefish
9 - Seahorse
10 - Shark
11 - Ray
12 - Seamoth
Tabella 4.9: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 12
ii.
Caso 10%: numero di forme da etichettare pari a 24
1 - Tonguefish
2 - Tonguefish
3 - Pipefish
4 - Pipefish
5 - Crustacean
6 - Sole
7 - Shark
8 - Shark
9 - Pipefish
10 - Eeel
Pagina |87
Capitolo IV – Sperimentazione
11 - Eel
12 - Ueel
16 - Sole
17 - Tonguefish
21 - Shark
22 - Ray
13 - Ueel
14 - Tonguefish
15 - Pipefish
19 - Sole
20 - Ueel
18 Seahorse
23 - Ray
24 - Seamoth
Tabella 4.10: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 24
iii.
Caso 15%: numero di forme da etichettare pari a 36
1 - Tonguefish
2 - Tonguefish
3 - Pipefish
4 - Pipefish
5 - Crustacean
6 - Sole
7 - Shark
8 - Shark
9 - Pipefish
10 - Eeel
11 - Eel
12 - Ueel
13 - Ueel
14 - Tonguefish
15 - Pipefish
16 - Sole
17 - Tonguefish
19 - Sole
20 - Ueel
21 - Shark
22 - Ray
24 - Seamoth
25 - Ueel
18 - Seahorse
23 - Ray
Pagina |88
Capitolo IV – Sperimentazione
26 - Sole
27 - Tonguefish
28 - Seahorse
29 - Pipefish
30 - Tonguefish
31 - Eel
32 - Tonguefish
33 - Crustecan
34 - Ray
35 - Shark
36 - Pipefish
Tabella 4.11: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 36
iv.
Caso 20%: numero di forme da etichettare pari a 48
1 - Tonguefish
2 - Tonguefish
3 - Pipefish
4 - Pipefish
5 - Crustacean
6 - Sole
7 - Shark
8 - Shark
9 - Pipefish
10 - Eeel
11 - Eel
12 - Ueel
13 - Ueel
14 - Tonguefish
15 - Pipefish
16 - Sole
17 - Tonguefish
19 - Sole
20 - Ueel
21 - Shark
22 - Ray
24 - Seamoth
25 - Ueel
18 - Seahorse
23 - Ray
Pagina |89
Capitolo IV – Sperimentazione
26 - Sole
27 - Tonguefish
28 - Seahorse
31 - Eel
32 - Tonguefish 33 - Crustecan
29 - Pipefish
30 - Tonguefish
34 - Ray
35 - Shark
36 - Pipefish
37 - Pipefish
38 - Ueel
39 - Pipefish
40 - Tonguefish
41 - Tonguefish
42 - Eel
43 - Eel
44 - Eel
45 - Sole
46 - Tonguefish
47 - Ray
48 - Sole
Tabella 4.12: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 48
v.
Caso 25%: numero di forme da etichettare pari a 60
1 - Tonguefish 2 - Tonguefish
3 - Pipefish
4 - Pipefish
5 - Crustacean
6 - Sole
7 - Shark
8 - Shark
9 - Pipefish
10 - Eeel
11 - Eel
12 - Ueel
13 - Ueel
14 - Tonguefish
15 - Pipefish
Pagina |90
Capitolo IV – Sperimentazione
16 - Sole
17 - Tonguefish
18 - Seahorse
19 - Sole
20 - Ueel
21 - Shark
22 - Ray
23 - Ray
24 - Seamoth
25 - Ueel
26 - Sole
27 - Tonguefish
28 - Seahorse
29 - Pipefish
30 - Tonguefish
31 - Eel
32 - Tonguefish 33 - Crustecan
34 - Ray
35 - Shark
36 - Pipefish
37 - Pipefish
38 - Ueel
39 - Pipefish
40 - Tonguefish
41 - Tonguefish
42 - Eel
43 - Eel
44 - Eel
45 - Sole
46 - Tonguefish
47 - Ray
48 - Sole
49 - Tonguefish
50 - Ray
51 - Ueel
52 - Ray
53 - Sole
54 - Pipefish
55 - Pipefish
56 - Sole
57 - Sole
58 - Ray
59 - Shark
60 - Shark
Tabella 4.13: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 60
Pagina |91
Capitolo IV – Sperimentazione
vi.
Caso 30%: numero di forme da etichettare pari a 72
1 - Tonguefish
2 - Tonguefish
3 - Pipefish
4 - Pipefish
5 - Crustacean
6 - Sole
7 - Shark
8 - Shark
9 - Pipefish
10 - Eeel
11 - Eel
12 - Ueel
13 - Ueel
14 - Tonguefish
15 - Pipefish
16 - Sole
17 - Tonguefish
18 - Seahorse
19 - Sole
20 - Ueel
21 - Shark
22 - Ray
23 - Ray
24 - Seamoth
25 - Ueel
26 - Sole
27 - Tonguefish
28 - Seahorse
29 - Pipefish
30 - Tonguefish
31 - Eel
32 - Tonguefish 33 - Crustecan
34 - Ray
35 - Shark
36 - Pipefish
37 - Pipefish
38 - Ueel
39 - Pipefish
40 - Tonguefish
41 - Tonguefish
42 - Eel
43 - Eel
44 - Eel
45 - Sole
Pagina |92
Capitolo IV – Sperimentazione
46 - Tonguefish
47 - Ray
48 - Sole
49 - Tonguefish
50 - Ray
51 - Ueel
52 - Ray
53 - Sole
54 - Pipefish
55 - Pipefish
56 - Sole
57 - Sole
58 - Ray
59 - Shark
60 - Shark
61 - Shark
62 - Tonguefish
63 - Shark
64 - Shark
65 - Tonguefish
66 - Shark
67 - Shark
68 - Shark
69 - Tonguefish
70 - Ray
71 - Sole
72 - Sole
Tabella 4.14: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 72
Terminata la fase di scelta delle forme da etichettare, si è proceduti all’esecuzione
dell’algoritmo per ognuno dei sei casi. Come risultato, avremo le seguenti matrici:
a) matrice dei centri;
b) matrice di memebership: contenente il valore del grado di appartenenza di ogni
forma al singolo cluster;
c) matrice dei cluster: contenente per ogni cluster le etichette delle forme presenti
e il relativo indice;
d) matrice dei prototipi: contiene l’indice del prototipo estratto per ciascun
cluster;
Pagina |93
Capitolo IV – Sperimentazione
e) matrice delle etichette: contiene l’etichetta di ogni singolo cluster, creata sulla
base del prototipo del cluster.
Le matrici di output verranno successivamente utilizzate nella fase di annotazione
fuzzy delle forme.
Qui di seguito riportiamo una tabella riepilogativa contenente il numero delle forme
presenti in ogni cluster relativo alla prova migliore scelta per ognuno dei sei casi.
5% 10% 15% 20% 25% 30%
Shark
5
13
24
24
27
34
Ueel
N.C 14
15
17
18
18
Ray
12
26
26
32
33
36
Eel
N.C N.C N.C
21
22
22
Pipefish
N.C N.C N.C N.C N.C
10
Tonguefish N.C N.C
10
N.C
12
16
Sole
10
34
23
26
34
40
Seamoth
N.C 10
10
10
10
10
Seahorse N.C 10
10
10
10
10
Crustacean N.C
9
N.C. N.C.
10
10
TOTALE 27
116 118 140 176 206
Tabella 4.15: Tabella riepilogativa relativa alla etichettatura “manuale”
Nella tabella si può osservare la presenza del termine N.C. (Non Classificato), il quale
indica che non è stato possibile classificare il cluster ovvero al suo interno non è presente un
numero di forme predominanti corrispondente alla forma ad esso associata. Ad esempio nel
caso del 5% di forme da etichettare, il cluster è stato classificato come N.C. in quanto non è
presente un numero prevalente di forme etichettate come “Ueel”, ma sono presenti altre
tipologie di forme.
La tabella riportata qui di seguito, mostra in dettaglio l’associazione tra i cluster e le
categorie nel caso del 30% di forme. Infatti per l’annotazione si è decisi di scegliere
solamente il caso del 30% per ogni tipologia di etichettatura, in quanto come si può ben notare
dalla tabella vengono etichettate tutte le 10 categorie.
Pagina |94
Capitolo IV – Sperimentazione
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5
6
7
8
9
10
34
0
0
0
9
4
0
0
1
5
0
18
0
0
0
0
0
0
0
0
0
0
36
0
0
0
0
1
0
0
0
0
0
22
0
1
0
0
0
0
1
0
0
4
10
0
0
0
0
0
0
0
0
0
0
16
0
0
0
0
1
0
0
0
0
2
40
0
1
3
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
10
Tabella 4.16: Tabella relativa alla prova migliore dell’etichettatura “manuale”
Riportiamo gli istogrammi a barre relativi ai 10 cluster della prova identificata come
“migliore” utilizzando una percentuale di forme da etichettare pari al 30%.
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |95
Capitolo IV – Sperimentazione
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |96
Capitolo IV – Sperimentazione
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Figura 4.3: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM semi-supervisionato
Infine riportiamo la tabella relativa ai prototipi di forma estratti per i 10 cluster.
Pagina |97
Capitolo IV – Sperimentazione
DCC ETICHETTA PROTOTIPO
Cluster 1
94,4%
Shark
Cluster 2
100%
Ueel
Cluster 3
100%
Ray
Cluster 4
84.6%
Eel
Cluster 5
52.6%
Pipefish
Cluster 6
69.6%
Tonguefish
Cluster 7
100%
Sole
Cluster 8
90.9%
Seamoth
Cluster 9
83.3%
Seahorse
Cluster 10 55.6%
Crustacean
Tabella 4.17: Prototipi relativi alla prova migliore con etichettatura “manuale”
Pagina |98
Capitolo IV – Sperimentazione
4.3.1.2
ETICHETTATURA RANDOM
Con l’utilizzo di questa tipologia di etichettatura, viene effettuata una scelta “random” da
parte dell’algoritmo delle forme da etichettare. Per poter effettuare questa scelta, è stata
implementata una funzione, la quale genera un certo numero di forme casuali (definite
dall’utente).
Qui di seguito vengono riportate le composizioni ottenute per ciascun caso:
i.
Caso 5%: numero di forme da etichettare pari a 12
1 - Shark
2 - Ray
3 - Shark
4 - Sole
5 - Shark
6 - Shark
7 - Shark
8 - Sole
9 - Shark
10 - Shark
11 - Ray
12 - Sole
Tabella 4.18: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 12
ii.
Caso 10%: numero di forme da etichettare pari a 24
1 - Sole
2 - Eel
3 - Shark
4 - Shark
5 - Shark
6 - Ray
7 - Sole
8 - Seahorse
9 - Shark
10 - Eel
Pagina |99
Capitolo IV – Sperimentazione
11 - Sole
12 - Ray
13 - Seahorse
14 - Shark
15 - Ueel
16 - Tonguefish
17 - Shark
18 - Tonguefish
19 - Seamoth
20 - Sole
21 - Ray
22 - Ueel
23 - Tonguefish
24 - Tonguefish
Tabella 4.19: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 24
iii.
Caso 15%: numero di forme da etichettare pari a 36
1 - Shark
2 - Ray
3 - Shark
4 - Shark
5 - Ray
6 - Sole
7 - Seamoth
8 - Eel
9 - Ray
10 – Crustacean
11 - Seamoth
12 - Ray
13 - Shark
14 - Ueel
15 - Tonguefish
16 - Sole
17 - Seamoth
18 - Seahorse
19 - Ray
20 – Sole
21 - Eel
22 - Shark
23 - Ray
24 - Eel
25 - Seamoth
Pagina |100
Capitolo IV – Sperimentazione
26 - Tonguefish
27 - Eel
28 - Shark
29 - Ray
30 - Tonguefish
31 - Ueel
32 - Seamoth
33 - Eel
34 - Seamoth
35 – Pipefish
36 - Crustacean
Tabella 4.20: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 36
iv.
Caso 20%: numero di forme da etichettare pari a 48
1 - Tonguefish
2 - Sole
3 - Shark
4 - Shark
5 - Shark
6 - Sole
7 - Sole
8 - Eel
9 - Sole
10 – Ray
11 - Pipefish
12 - Pipefish
13 - Ray
14 - Ray
15 - Shark
16 - Shark
17 - Shark
18 - Crustacean
19 - Ray
20 – Sole
21 - Shark
22 - Sole
23 - Sole
24 - Ray
25 - Ray
Pagina |101
Capitolo IV – Sperimentazione
26 - Eel
27 - Ray
28 - Crustacean
29 - Sole
30 - Tonguefish
31 - Seamoth
32 - Shark
33 - Ueel
34 - Pipefish
35 – Sole
36 - Tonguefish
37 - Sole
38 - Sole
39 - Shark
40 - Ueel
41 - Seahorse
42 - Ray
43 - Shark
44 - Ray
45 -Sole
46 - Eel
47 - Sole
48 - Pipefish
Tabella 4.21: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 48
v.
Caso 25%: numero di forme da etichettare pari a 60
1 - Tonguefish
2 - Sole
3 - Pipefish
4 - Sole
5 - Shark
6 - Ueel
7 - Sole
8 - Crustacean
9 - Crustacean
10 – Crustacean
14 - Ueel
15 - Eel
11 - Pipefish
12 - Crustacean 13 - Crustacean
Pagina |102
Capitolo IV – Sperimentazione
16 - Ueel
17 - Shark
18 - Sole
19 - Pipefish
20 - Crustacean
21 - Ray
22 - Shark
23 - Sole
24 - Seamoth
25 – Ray
26 - Eel
27 - Eel
28 - Shark
29 - Ray
30 - Seamoth
31 - Ray
32 - Shark
33 - Sole
34 - Ray
35 – Ueel
36 - Tonguefish
37 - Ray
38 - Seamoth
39 - Crustacean
40 – Shark
41 – Shark
42 Shark
43 Seahorse
44 Pipefish
45 Pipefish
46 - Eel
47 - Shark
48 - Ray
49 - Ray
50 - Eel
51 - Sole
52 - Ray
53 - Ray
54 - Pipefish
55 - Pipefish
56 - Ueel
57 - Crustacean
58 - Ray
59 - Eel
60 - Ueel
Tabella 4.22: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 60
Pagina |103
Capitolo IV – Sperimentazione
vi.
Caso 30%: numero di forme da etichettare pari a 72
1 - Eel
2 - Shark
3 - Sole
4 - Ray
5 - Shark
6 - Ray
7 - Ueel
8 - Sole
9 - Tonguefish
10 – Eel
11 - Sole
12 - Ray
13 - Sole
14 - Eel
15 - Seahorse
16 - Sole
17 - Sole
18 - Ray
19 - Tonguefish
20 - Sole
21 - Shark
22 - Shark
23 - Ueel
24 - Ray
25 – Seahorse
26 - Sole
27 - Sole
28 - Shark
29 - Ueel
30 - Eel
31 - Sole
32 - Sole
33 - Eel
34 - Eel
35 – Crustacean
36 - Sole
37 - Ueel
38 - Shark
39 - Ueel
40 – Ray
Pagina |104
Capitolo IV – Sperimentazione
41 – Sole
42 - Sole
43 - Ray
44 - Shark
45 - Sole
46 - Ray
47 - Ray
48 - Sole
49 - Seahorse
50 - Ueel
51 - Eel
52 - Shark
53 - Ray
54 - Sole
55 – Shark
56 - Shark
57 - Ray
58 - Pipefish
59 - Shark
60 - Ray
61 - Eel
62 - Shark
63 - Ray
64 - Ueel
65 – Sole
66 - Sole
67 - Sole
68 - Tonguefish
69 - Eel
70 – Sole
71 – Sole
72 - Sole
Tabella 4.23: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 72
Terminata la fase di scelta delle forme da etichettare, si è proceduti all’esecuzione
dell’algoritmo per ognuno dei sei casi. In output avremo le stesse matrici ottenute nel caso
dell’etichettatura manuale.
Qui di seguito riportiamo una tabella riepilogativa contenente il numero delle forme
presenti in ogni cluster relativo alla prova migliore scelta per ognuno dei sei casi.
Pagina |105
Capitolo IV – Sperimentazione
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
TOTALE
5% 10% 15% 20% 25% 30%
N.C 21
19
25
29
21
12
13
13
13
15
15
N.C 30
29
33
31
34
N.C 18
19
19
N.C 21
N.C N.C N.C N.C N.C N.C
N.C N.C N.C N.C N.C N.C
29
31
27
33
40
35
N.C 10
10
10
10
10
N.C 10
10
9
10
10
N.C N.C 10
10
10
10
41 133 137 152 145 156
Tabella 4.24: Tabella riepilogativa relativa alla etichettatura “random”
Come nel caso dell’etichettatura manuale, anche questa volta si può osservare nella
tabella la presenza del termine N.C. (Non Classificato), il quale indica che non è stato
possibile classificare il cluster ovvero al suo interno non è presente un numero di forme
predominanti e corrispondente alla forma ad esso associata.
La tabella riportata qui di seguito, mostra in dettaglio l’associazione tra i cluster e le
categorie nel caso del 30% di forme. Infatti anche per questa tipologia di etichettatura, si è
decisi di scegliere per l’annotazione solamente il caso del 30% per ogni tipologia di
etichettatura, in quanto come si può ben notare dalla tabella vengono etichettate tutte le 10
categorie.
Pagina |106
Capitolo IV – Sperimentazione
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5
6
7
8
9
10
21
0
0
1
20
1
0
0
1
9
2
15
1
0
0
0
0
0
0
0
0
0
34
0
1
0
0
2
0
0
1
0
0
21
0
1
0
0
0
0
3
0
0
9
3
0
0
0
0
0
8
0
0
2
0
5
2
0
0
0
1
0
0
0
0
11 35
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
10
Tabella 4.25: Tabella relativa alla prova migliore dell’etichettatura “random”
Riportiamo gli istogrammi a barre relativi ai 10 cluster della prova identificata come
“migliore” utilizzando una percentuale di forme da etichettare pari al 30%.
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |107
Capitolo IV – Sperimentazione
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |108
Capitolo IV – Sperimentazione
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Figura 4.4: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM semi-supervisionato
Infine riportiamo la tabella relativa ai prototipi estratti per i 10 cluster.
Pagina |109
Capitolo IV – Sperimentazione
DCC ETICHETTA
Cluster 1
58.3%
Shark
Cluster 2
100%
Ueel
Cluster 3
97.1%
Ray
Cluster 4
63.6%
Eel
Cluster 5
12.5%
Pipefish
Cluster 6
61.1%
Tonguefish
Cluster 7
94.6%
Sole
Cluster 8
83.3%
Seamoth
Cluster 9
90.9%
Seahorse
Cluster 10 52.6%
PROTOTIPO
Crustacean
Tabella 4.26: Prototipi relativi alla prova migliore con etichettatura “random”
Confrontando gli istogrammi a barre e i prototipi estratti dall’algoritmo si può notare
che nel cluster 5 anche se abbiamo un numero maggiore di forme etichettate come “Shark”, il
prototipo estratto è un “Pipefish”. Questo è possibile in quanto il prototipo che viene estratto è
Pagina |110
Capitolo IV – Sperimentazione
quello avente il grado maggiore di appartenenza al cluster.
4.3.1.3
ETICHETTATURA AUTOMATICA
Con l’utilizzo di questa tipologia di etichettatura, viene effettuata una scelta “automatica” da
parte dell’algoritmo delle forme da etichettare. Per poter effettuare questa scelta, è stata
implementata una nuova funzione che utilizza la formula (19) descritta nel paragrafo 3.3.1.
Qui di seguito vengono riportate le composizioni ottenute per ciascun caso:
i.
Caso 5%: numero di forme da etichettare pari a 12
1 - Ueel
2 - Ueel
3 - Ueel
4 - Seamoth
5 - Ueel
6 - Ray
7 - Crustacean
8 - Ueel
9 - Ray
10 - Ray
11 - Sole
12 - Seahorse
Tabella 4.27: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 12
Pagina |111
Capitolo IV – Sperimentazione
ii.
Caso 10%: numero di forme da etichettare pari a 24
1 - Ueel
2 - Ueel
3 - Ueel
4 - Seamoth
5 - Ueel
6 - Ray
7 - Crustacean
8 - Ueel
9 - Ray
10 - Ray
11 - Sole
12 - Seahorse
13 - Ray
14 - Shark
15 - Ray
16 - Ueel
17 - Sole
18 - Seahorse
19 - Seahorse
20 - Seahorse
21 - Seahorse
22 - Seahorse
23 - Seahorse
24 - Seahorse
Tabella 4.28: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 24
iii.
Caso 15%: numero di forme da etichettare pari a 36
Pagina |112
Capitolo IV – Sperimentazione
1 - Ueel
2 - Ueel
3 - Ueel
4 - Seamoth
5 - Ueel
6 - Ray
7 - Crustacean
8 - Ueel
9 - Ray
10 - Ray
11 - Sole
12 - Seahorse
13 - Ray
14 - Shark
15 - Ray
16 - Ueel
17 - Sole
18 - Seahorse
19 - Seahorse
20 - Seahorse
21 - Seahorse
22 - Seahorse
23 - Seahorse
24 - Seahorse
25 - Ueel
26 - Sole
27 - Ray
28 - Crustacean 29 - Crustacean 30 - Crustacean
31 - Crustacean 32 - Crustacean 33 - Crustacean 34 - Crustacean 35 - Crustacean
36 - Seahorse
Tabella 4.29: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 36
Pagina |113
Capitolo IV – Sperimentazione
iv.
Caso 20%: numero di forme da etichettare pari a 48
1 - Ueel
2 - Ueel
3 - Ueel
4 - Seamoth
5 - Ueel
6 - Ray
7 - Crustacean
8 - Ueel
9 - Ray
10 - Ray
11 - Sole
12 - Seahorse
13 - Ray
14 - Shark
15 - Ray
16 - Ueel
17 - Sole
18 - Seahorse
19 - Seahorse
20 - Seahorse
21 - Seahorse
22 - Seahorse
23 - Seahorse
24 - Seahorse
25 - Ueel
26 - Sole
27 - Ray
28 - Crustacean 29 - Crustacean 30 - Crustacean
31 - Crustacean 32 - Crustacean 33 - Crustacean 34 - Crustacean 35 - Crustacean
36 - Seahorse
37 - Ray
38 - Seamoth
39 - Ray
40 - Sole
Pagina |114
Capitolo IV – Sperimentazione
41 - Ueel
42 - Seamoth
43 - Crustacean
46 - Sole
47 - Ray
48 - Sole
44 - Ueel
45 - Seahorse
Tabella 4.30: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 48
v.
Caso 25%: numero di forme da etichettare pari a 60
1 - Ueel
2 - Ueel
3 - Ueel
4 - Seamoth
5 - Ueel
6 - Ray
7 - Crustacean
8 - Ueel
9 - Ray
10 - Ray
11 - Sole
12 - Seahorse
13 - Ray
14 - Shark
15 - Ray
16 - Ueel
17 - Sole
18 - Seahorse
19 - Seahorse
20 - Seahorse
21 - Seahorse
22 - Seahorse
23 - Seahorse
24 - Seahorse
25 - Ueel
Pagina |115
Capitolo IV – Sperimentazione
26 - Sole
27 - Ray
28 - Crustacean 29 - Crustacean 30 - Crustacean
31 - Crustacean 32 - Crustacean 33 - Crustacean 34 - Crustacean 35 - Crustacean
36 - Seahorse
37 - Ray
38 - Seamoth
39 - Ray
40 - Sole
41 - Ueel
42 - Seamoth
43 - Crustacean
44 - Ueel
45 - Seahorse
46 - Sole
47 - Ray
48 - Sole
49 - Seamoth
50 - Ray
51 - Sole
52 - Ray
53 - Sole
54 - Ray
55 - Ray
56 - Ray
57 - Sole
58 - Shark
59 - Sole
60 - Ray
Tabella 4.31: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 60
Pagina |116
Capitolo IV – Sperimentazione
vi.
Caso 30%: numero di forme da etichettare pari a 72
1 - Ueel
2 - Ueel
3 - Ueel
4 - Seamoth
5 - Ueel
6 - Ray
7 - Crustacean
8 - Ueel
9 - Ray
10 - Ray
11 - Sole
12 - Seahorse
13 - Ray
14 - Shark
15 - Ray
16 - Ueel
17 - Sole
18 - Seahorse
19 - Seahorse
20 - Seahorse
21 - Seahorse
22 - Seahorse
23 - Seahorse
24 - Seahorse
25 - Ueel
26 - Sole
27 - Ray
28 - Crustacean 29 - Crustacean 30 - Crustacean
31 - Crustacean 32 - Crustacean 33 - Crustacean 34 - Crustacean 35 - Crustacean
36 - Seahorse
37 - Ray
38 - Seamoth
39 - Ray
40 - Sole
Pagina |117
Capitolo IV – Sperimentazione
41 - Ueel
42 - Seamoth
43 - Crustacean
44 - Ueel
45 - Seahorse
46 - Sole
47 - Ray
48 - Sole
49 - Seamoth
50 - Ray
51 - Sole
52 - Ray
53 - Sole
54 - Ray
55 - Ray
56 - Ray
57 - Sole
58 - Shark
59 - Sole
60 - Ray
61 - Eel
62 - Shark
63 - Ray
64 - Shark
65 - Pipefish
66 - Shark
67 - Eel
68 - Pipefish
69 - Eel
70 - Eel
71 - Shark
72 - Shark
Tabella 4.32: Composizione della matrice “cat_clust” con numero di forme da etichettare pari a 72
Terminata la fase di scelta delle forme da etichettare, si è proceduti all’esecuzione
dell’algoritmo per ognuno dei sei casi. In output avremo le stesse matrici ottenute nel caso
dell’etichettatura manuale.
Qui di seguito riportiamo una tabella riepilogativa contenente il numero delle forme
presenti in ogni cluster relativo alla prova migliore scelta per ognuno dei sei casi.
Pagina |118
Capitolo IV – Sperimentazione
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
5% 10% 15% 20% 25% 30%
15
17
19
27
19
33
12
15
16
18
18
18
N.C 35
36
36
36
37
N.C 18
18
N.C
18
22
N.C N.C N.C N.C N.C N.C
N.C N.C N.C N.C N.C N.C
N.C 19
34
29
30
20
N.C 10
10
10
10
10
N.C
9
9
10
10
10
N.C N.C
10
10
10
10
TOTALE
27
123
152
140
151
160
Tabella 4.33: Tabella riepilogativa relativa alla etichettatura “automatica”
Come nel caso dell’etichettatura manuale, anche questa volta si può osservare nella
tabella la presenza del termine N.C. (Non Classificato), il quale indica che non è stato
possibile classificare il cluster ovvero al suo interno non è presente un numero di forme
predominanti e corrispondente alla forma ad esso associata.
La tabella riportata qui di seguito, mostra in dettaglio l’associazione tra i cluster e le
categorie nel caso del 30% di forme. Infatti anche per questa tipologia di etichettatura, si è
decisi di scegliere per l’annotazione solamente il caso del 30% per ogni tipologia di
etichettatura, in quanto come si può ben notare dalla tabella vengono etichettate tutte le 10
categorie.
Pagina |119
Capitolo IV – Sperimentazione
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5
6
7
8
9
10
33
0
0
1
19
0
0
0
0
0
0
18
0
0
0
0
0
0
0
0
0
0
37
0
0
0
0
0
0
0
0
0
0
22
0
1
0
0
0
0
2
0
0
9
4
0
0
0
0
0
0
0
0
2
9
5
1
0
0
0
0
0
0
0
2
25 20
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
10
Tabella 4.34: Tabella relativa alla prova migliore dell’etichettatura “automatica”
Riportiamo gli istogrammi a barre relativi ai 10 cluster della prova identificata come
“migliore” utilizzando una percentuale di forme da etichettare pari al 30%.
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |120
Capitolo IV – Sperimentazione
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |121
Capitolo IV – Sperimentazione
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Figura 4.5: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM semi-supervisionato
Infine riportiamo la tabella relativa ai prototipi estratti per i 10 cluster della prova.
Pagina |122
Capitolo IV – Sperimentazione
DCC ETICHETTA
Cluster 1
94.3%
Shark
Cluster 2
100%
Ueel
Cluster 3
100%
Ray
Cluster 4
64.7%
Eel
Cluster 5
55.9%
Shark
Cluster 6
80.6%
Sole
Cluster 7
95.2%
Sole
Cluster 8
100%
Seamoth
Cluster 9
100%
Seahorse
Cluster 10
100%
Crustacean
PROTOTIPO
Tabella 4.35: Prototipi relativi alla prova migliore con etichettatura “automatica”
Pagina |123
Capitolo IV – Sperimentazione
4.3.1.4
FUZZY C-MEANS NON SUPERVISIONATO
Come già accennato nel paragrafo 4.2, riportiamo i risultati relativi all’esecuzione
dell’algoritmo FCM non supervisionato con numero di cluster pari a 10 e coefficiente di
fuzzificazione (m) pari a 1.5.
Nel caso dell’algoritmo FCM, non si è reso necessario effettuare la scelta delle forme
da etichettare come nel caso dell’algoritmo semi-supervisionato, in quanto esse sono scelte
automaticamente dall’algoritmo.
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5
6
7
8
9
10
1
10
0
0
1
0
19 22
0
0
0
2
3
0
1
12
0
0
0
0
0
0
33
0
0
0
1
0
0
3
0
3
0
2
0
0
0
0
18
0
0
2
0
0
0
0
4
1
8
0
0
10
0
4
0
0
2
0
0
0
15
0
0
29
1
0
2
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
1
0
9
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
Tabella 4.36: Tabella relativa alla prova migliore dell’algoritmo FCM non supervisionato
Riportiamo gli istogrammi a barre relativi ai 10 cluster della prova identificata come
“migliore” per l’algoritmo FCM non supervisionato.
Pagina |124
Capitolo IV – Sperimentazione
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |125
Capitolo IV – Sperimentazione
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Figura 4.6: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM non supervisionato
Infine riportiamo la tabella relativa ai prototipi estratti per i 10 cluster della prova.
Pagina |126
Capitolo IV – Sperimentazione
DCC ETICHETTA
Cluster 1
57.7%
Sole
Cluster 2
37%
Shark
Cluster 3
89.2%
Ray
Cluster 4
82.9%
Sole
Cluster 5
75%
Seahorse
Cluster 6
100%
Ueel
Cluster 7
67.9%
Shark
Cluster 8
95.7%
Shark
Cluster 9
69.2%
Eel
Cluster 10 76.9%
PROTOTIPO
Seamoth
Tabella 4.37: Prototipi relativi alla prova migliore dell’algoritmo FCM non supervisionato
Osservando la tabella relativa ai prototipi, si può notare che più cluster vengono
etichettati con la stessa label, ed inoltre non sono presenti tute le 10 categorie di forme, infatti
l’algoritmo non etichetta le categorie “Pipefish”, “Tonguefish” e “Crustacean”.
Pagina |127
Capitolo IV – Sperimentazione
4.3.1.5
VALUTAZIONE DEI RISULTATI
La tabella riportata qui di seguito, mette a confronto le percentuali di forme etichettate per
ognuno dei sei casi e per ciascuna tipologia di etichettatura utilizzata.
5%
10%
15%
20%
25%
30%
17.1% 55.4% 57.1% 63.3% 60.4% 65.0%
Random
Automatica 11.3% 51.3% 63.3% 58.3% 62.9% 66.7%
11.3% 48.3% 49.2% 58.3% 73.3% 85.8%
Manuale
Tabella 4.38: Tabella relativa alla sperimentazione con numero di cluster pari a 10
Cardinalità delle categorie
dominanti
100
80
60
Random
40
Automatica
Manuale
20
0
5%
10%
15%
20%
25%
30%
Percentuale di forme etichettate
Figura 4.7: Confronto delle cardinalità delle categorie dominanti con numero di cluster pari a 10
Osservando l’istogramma a barre, si può osservare come all’aumentare della
percentuale di forme etichettate la bontà delle partizioni ottenute migliora in termini di
compattezza dei cluster che hanno valori DCC elevati.
Pagina |128
Capitolo IV – Sperimentazione
Percentuale di classificazione
100
80
FCM non supervisionato
60
FCM con selezione
random
40
FCM con selezione
automatica
20
FCM con selezione
manuale
0
Figura 4.8: Confronto delle cardinalità delle categorie dominanti con numero di forme da etichettare pari
a 72
La figura 4.8 mette a confronto le percentuali di forme etichettate nelle tre tipologie di
etichettatura (il numero di forme da etichettare è pari a 72) con l’algoritmo FCM non
supervisionato. Osservando il grafico si può notare che con l’utilizzo della etichettatura
manuale abbiamo una elevata percentuale di forme etichettate rispetto alle altre due tipologie
e all’algoritmo FCM non supervisionato.
Manuale Random Automatica FCM
Media
86.0%
75.8%
84.6%
73.4%
Deviazione standard
5.2%
2.24%
0.1%
2.17%
Minimo
Massimo
71.7%
92.7%
71.7%
77.9%
84.6%
85.0%
68.8%
77.1%
Tabella 4.39: Valori di media, deviazione standard, minimo e massimo
La tabella 4.39 riassume i risultati comparativi dei valori delle categorie dominanti
ottenuti nei differenti scenari sperimentali. In particolare, per ogni scenario, si sono calcolati
la media, la deviazione standard ed i valori di minimo e massimo ottenuti dalle 10 prove
eseguite. I risultati ottenuti mostrano che tutte le versioni dell’algoritmo FCM semisupervisionato superano l’algoritmo FCM in termini di valori DCC. Questo conferma i
benefici offerti dal meccanismo di supervisione nel classificare le forme nelle categorie
Pagina |129
Capitolo IV – Sperimentazione
corrispondenti. Inoltre, anche se l’etichettatura automatica ha fornito valori medi leggermente
inferiore all’etichettatura manuale, esso risulta essere il metodo più stabile in quanto è
caratterizzato dal più basso valore di deviazione standard.
Figura 4.9: Box-plot rappresentante la distribuzione delle forme etichettate
4.3.1.6
ANNOTAZIONE FUZZY
Per valutare l’efficacia della fase di annotazione delle forme, sono stati eseguiti una serie di
esperimenti sul test set. Precisamente, ogni forma inclusa nel test set è stata confrontata con i
prototipi di forma ottenuti dalla prima fase dell’algoritmo. Quindi, essa è stata annotata
assegnando un insieme fuzzy derivato dall’esecuzione dei gradi di appartenenza in accordo
con l’equazione (20).
L’intero processo di annotazione è stato valutato usando le misure di “Precision” e
“Recall” sul test set basato sulle annotazioni corrette (annotazione manuale effettuata
dall’esperto di dominio) e sulle annotazioni automatiche. Inoltre, consideriamo
forma di test, W! la sua annotazione corretta e
di ogni singola categoria
!
!
come una
l’annotazione automatica. Per ogni etichetta
, la precision e la recall sono state calcolate nel seguente modo:
Pagina |130
Capitolo IV – Sperimentazione
.Ž ! .
.Ž ! .
∈ W! ∧
.Ž ! .
∈ W! ∧
.Ž ! .
∈
∈
! •.
∈
∈ W! •.
! •.
! •.
Infine, per valutare l’efficacia del modello proposto, è stata effettuata una
comparazione dell’accuratezza dell’annotazione sfruttando i prototipi derivati da tutti gli
scenari considerati (etichettatura manuale, random, automatica e FCM non supervisionato).
1 – Crustacean
2 - Eel
3 - Eel
4 - Eel
5 - Ueel
6 - Ueel
7 - Pipefish
8 - Ray
9 - Ray
10 - Ray
11 - Ray
12 - Seahorse
13 - Seamoth
14 - Shark
15 - Shark
16 - Shark
17 - Shark
18 - Shark
19 - Sole
20 - Sole
21 - Sole
22 - Sole
23 - Sole
24 - Tonguefish
25 - Tonguefish
Tabella 4.40: Composizione del data-set di test
Pagina |131
Capitolo IV – Sperimentazione
Qui di seguito riportiamo la tabella contenente le etichette delle forme presenti nel test
set e quelle relative ad ogni scenario considerato. Inoltre per ogni etichettatura viene indicato
il numero di forme classificate correttamente.
Manuale
Random
Automatica
FCM
Crustacean
Crustacean
Crustacean
Shark
Crustacean
Eel
Tonguefish
Shark
Shark
Shark
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Shark
Shark
Eel
Ueel
Seahorse
Seahorse
Seahorse
Seahorse
Ueel
Ueel
Ueel
Ueel
Ueel
Pipefish
Pipefish
Shark
Shark
Shark
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Seahorse
Seahorse
Sole
Sole
Sole
Seamoth
Seamoth
Seamoth
Seamoth
Seamoth
Shark
Pipefish
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Sole
Shark
Sole
Shark
Shark
Sole
Shark
Shark
Shark
Tonguefish
Sole
Shark
Sole
Sole
Sole
Sole
Shark
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Tonguefish
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Tonguefish
Tonguefish
Sole
Sole
Sole
Tonguefish
Tonguefish
Shark
Shark
Shark
Forme classificate
correttamente
20
15
17
16
Tabella 4.41: Tabella riassuntiva relativa all’annotazione con numero di cluster pari a 10
Pagina |132
Capitolo IV – Sperimentazione
Manuale
Random
Automatica
FCM
Categorie
P
R
P
R
P
R
P
R
Shark
1
0.6
0.33
0.4
0.5
0.6
0.45
1
Ueel
1
0.5
1
0.5
1
0.5
1
0.5
Ray
1
1
1
1
1
1
1
1
Eel
1
0.66
1
0.33
1
0.67
1
0.33
Pipefish
0.5
1
0
0
0
0
0
0
Tonguefish
0.5
1
0
0
0
0
0
0
Sole
1
0.8
0.56
1
0.56
1
0.67
0.8
Seamoth
1
1
1
1
1
1
1
1
Seahorse
1
1
0
0
0
0
0
0
Crustacean
1
1
1
1
1
1
0
0
Media
0.9
0.86
0.59
0.52
0.61
0.58
0.51 0.46
Tabella 4.42: Valori di precision e recall per il processo di annotazione
La tabella riportata in precedenza, mostra i valori di precision e recall calcolati per i
quattro scenari considerati. I valori migliori sono quelli ottenuti utilizzando l’etichettatura
manuale, infatti più alti sono i valori e maggiore sarà l’affidabilità dei risultati ottenuti.
Dall’osservazione dei risultati, si possono osservare valori di accuratezza “buoni” in
corrispondenza di tutte le categorie semantiche. Mentre in tutti gli altri scenari, si possono
osservare valori nulli di Precision e Recall in corrispondenza di alcune categorie semantiche,
tra cui “Seahorse”, “Pipefish” e “Tonguefish”. Questo è dovuto principalmente al fatto che
l’algoritmo non è capace di riconoscere tali categorie. Di conseguenza, i prototipi non sono
stati derivati per tali categorie e quindi questo influenza l’accuratezza della annotazione.
4.3.2 SPERIMENTAZIONE CON NUMERO DI CLUSTER PARI A 15
In questa nuova sperimentazione, il metodo utilizzato è identico a quello precedente ma con
un’unica differenza ovvero il numero dei cluster, che in questo caso è stato posto uguale a 15.
Anche in questo caso, sono state utilizzate diverse tipologie di etichettatura (manuale,
random, automatica) e per ognuna di esse sono state effettuate 10 prove.
Pagina |133
Capitolo IV – Sperimentazione
Le forme da etichettare utilizzate sono le stesse utilizzate nelle tre tipologie di
etichettatura della sperimentazione precedente .
4.3.2.1
ETICHETTATURA MANUALE
Con l’utilizzo di questa tipologia di etichettatura, viene effettuata insieme all’esperto di
dominio una scelta manuale delle forme da etichettare. La scelta delle forme da etichettare è
ricaduta su quelle presenti in un cluster di appartenenza diverso da quello ad esso associato.
Riportiamo qui di seguito le due tabelle, di cui la prima è quella riassuntiva relativa
alla prova migliore scelta per ognuno dei sei casi mentre la seconda riporta il numero delle
forme presenti in ogni cluster sempre in riferimento alla prova migliore con 72 forme da
etichettare.
5% 10% 15% 20% 25% 30%
Shark
41
46
40
38
40
42
Ueel
12
13
17
17
18
18
Ray
33
32
34
36
29
35
Eel
15
15
18
20
20
20
Pipefish
7
N.C N.C
8
11
11
Tonguefish N.C
7
13
12
14
16
Sole
37
36
43
44
44
45
Seamoth
10
10
10
9
10
10
Seahorse
8
9
8
10
10
10
Crustacean N.C 10
10
10
10
10
TOTALE 163 178 193 204 206 217
Tabella 4.43: Tabella riepilogativa relativa alla etichettatura “manuale”
Come abbiamo già visto per la sperimentazione precedente, anche questa volta si può
osservare nella tabella riepilogativa la presenza del termine N.C. (Non Classificato), il quale
indica che non è stato possibile classificare il cluster ovvero al suo interno non è presente un
numero di forme predominanti e corrispondente alla forma ad esso associata.
Pagina |134
Capitolo IV – Sperimentazione
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15
18 0
0
0
5
4
1
0
1
0
0
0
0
0
24
0
8
0
0
0
0
0
0
0
0
10
0
0
0
0
0
1
20
0
0
0
0
1
0
0
0
0
0
15
0
0
0
0
20
2
1
0
0
0
0
0
0
0
0
0
1
0
0
3
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
24
0
0
0
0
15
6
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
Tabella 4.44: Tabella relativa alla prova migliore dell’etichettatura “manuale”
Riportiamo gli istogrammi a barre relativi ai 15 cluster della prova identificata come
“migliore” utilizzando una percentuale di forme da etichettare pari al 30%.
Pagina |135
Capitolo IV – Sperimentazione
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |136
Capitolo IV – Sperimentazione
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 11
Cluster 12
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |137
Capitolo IV – Sperimentazione
Cluster 13
Cluster 14
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 15
100
80
60
40
20
0
Figura 4.10: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM semi-supervisionato
Infine riportiamo la tabella relativa ai prototipi estratti per i 15 cluster della prova.
Pagina |138
Capitolo IV – Sperimentazione
DCC ETICHETTA
Cluster 1
94.7%
Shark
Cluster 2
80%
Ueel
Cluster 3
100%
Ray
Cluster 4
87%
Eel
Cluster 5
61.1%
Pipefish
Cluster 6
72.7%
Tonguefish
Cluster 7
96%
Sole
Cluster 8
90.9%
Seamoth
Cluster 9
90.9%
Seahorse
Cluster 10
100%
Crustacean
Cluster 11
100%
Ueel
Cluster 12 93.8%
Sole
PROTOTIPO
Pagina |139
Capitolo IV – Sperimentazione
Cluster 13
100%
Sole
Cluster 14
100%
Ray
Cluster 15
100%
Shark
Tabella 4.45: Prototipi relativi alla prova migliore con etichettatura “manuale”
4.3.2.2
ETICHETTATURA RANDOM
Con l’utilizzo di questa tipologia di etichettatura, viene effettuata una scelta “random” da
parte dell’algoritmo delle forme da etichettare. Per poter effettuare questa scelta, è stata
implementata una nuova funzione, la quale genera un certo numero di forme casuali (definite
dall’utente).
Qui di seguito riportiamo una tabella riepilogativa relativa alla prova migliore scelta
per ognuno dei sei casi. In questa tabella viene riportato il numero delle forme presenti in ogni
cluster.
5% 10% 15% 20% 25% 30%
Shark
40
47
45
41
38
43
Ueel
12
12
13
13
14
12
Ray
17
33
34
34
34
35
Eel
15
15
15
16
18
17
Pipefish
7
7
6
7
8
8
Tonguefish 1
1
N.C.
10
13
8
Sole
39
45
43
44
42
43
Seamoth
10
10
9
10
10
10
Seahorse
9
9
9
9
10
9
Crustacean 10 N.C.
10
10
9
10
TOTALE 160 179 184 194 196 195
Tabella 4.46: Tabella riepilogativa relativa alla etichettatura “random”
Pagina |140
Capitolo IV – Sperimentazione
Come abbiamo già visto per la sperimentazione precedente, anche questa volta si può
osservare nella tabella riepilogativa la presenza del termine N.C. (Non Classificato), il quale
indica che non è stato possibile classificare il cluster ovvero al suo interno non è presente un
numero di forme predominanti e corrispondente alla forma ad esso associata.
La tabella riportata qui di seguito, mostra in dettaglio l’associazione tra i cluster e le
categorie nel caso del 30% di forme. Infatti per l’annotazione si è decisi di scegliere
solamente il caso del 30% per ogni etichettatura, in quanto vengono etichettate tutte le forme.
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5 6
7
8
9 10 11 12 13 14 15
31
0
0
0
2
6
1
0
1
0
10
0
0
0
2
0
12
2
0
3
0
0
0
0
0
0
0
1
0
0
0
0
17
0
0
0
2
0
0
0
0
9
9
0
0
0
0
17
4
1
1
0
0
0
0
0
0
0
0
4
0
0
3
8
0
0
0
0
0
0
0
0
0
0
1
0
0
0
3
8
0
0
0
0
0
1
0
0
1
0
0
1
0
0
1
39
0
0
0
0
4
0
0
2
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
Tabella 4.47: Tabella relativa alla prova migliore dell’etichettatura “random”
Riportiamo gli istogrammi a barre relativi ai 15 cluster della prova identificata come
“migliore” utilizzando una percentuale di forme da etichettare pari al 30%.
Pagina |141
Capitolo IV – Sperimentazione
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |142
Capitolo IV – Sperimentazione
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 11
Cluster 12
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |143
Capitolo IV – Sperimentazione
Cluster 13
Cluster 14
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 15
100
80
60
40
20
0
Figura 4.11: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM semi-supervisionato
Infine riportiamo la tabella relativa ai prototipi estratti per i 15 cluster della prova.
Pagina |144
Capitolo IV – Sperimentazione
DCC ETICHETTA
Cluster 1
86.1%
Shark
Cluster 2
100%
Ueel
Cluster 3
85%
Ray
Cluster 4
85%
Eel
Cluster 5
40%
Pipefish
Cluster 6
50%
Tonguefish
Cluster 7
95.1%
Sole
Cluster 8
83.3%
Seamoth
Cluster 9
90%
Seahorse
Cluster 10
100%
Crustacean
Cluster 11
100%
Shark
Cluster 12
80%
Sole
PROTOTIPO
Pagina |145
Capitolo IV – Sperimentazione
Cluster 13
90%
Ray
Cluster 14
90%
Ray
Cluster 15 66.7%
Sole
Tabella 4.48: Prototipi relativi alla prova migliore con etichettatura “random”
Confrontando gli istogrammi a barre e i prototipi estratti dall’algoritmo si può notare
che nel cluster 15 anche se abbiamo un numero uguale di forme etichettate come “Shark” e
“Sole” il prototipo estratto è un “Sole”. Questo è possibile in quanto i prototipi estratti sono
quelli aventi grado maggiore di appartenenza al cluster.
4.3.2.3
ETICHETTATURA AUTOMATICA
Con l’utilizzo di questa tipologia di etichettatura, viene effettuata una scelta “automatica” da
parte dell’algoritmo delle forme da etichettare.
Riportiamo qui di seguito le due tabelle, di cui la prima è quella riassuntiva relativa
alla prova migliore scelta per ognuno dei sei casi mentre la seconda riporta il numero delle
forme presenti in ogni cluster sempre in riferimento alla prova migliore con 72 forme da
etichettare.
Pagina |146
Capitolo IV – Sperimentazione
5% 10% 15% 20% 25% 30%
Shark
43
47
40
48
42
44
Ueel
12
15
17
18
18
18
Ray
31
30
34
35
37
37
Eel
15
15
15
15
14
19
Pipefish
7
7
7
7
7
6
Tonguefish N.C
1
7
2
9
6
Sole
40
41
43
42
42
43
Seamoth
9
9
N.C.
10
10
10
Seahorse
7
9
9
10
10
10
Crustacean
8
N.C.
10
10
10
10
TOTALE 172 174 182 197 199 203
Tabella 4.49: Tabella riepilogativa relativa alla etichettatura “automatica”
Come abbiamo già visto per la sperimentazione precedente, anche questa volta si può
osservare nella tabella riepilogativa la presenza del termine N.C. (Non Classificato), il quale
indica che non è stato possibile classificare il cluster ovvero al suo interno non è presente un
numero di forme predominanti e corrispondente alla forma ad esso associata.
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15
22
0
0
0
13
5
0
0
0
0
4
0
0
0
9
0
18
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
0
3
0
0
0
0
0
1
0
0
0
2
0
0
4
3
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
1
0
0
0
6
1
1
2
0
0
0
0
0
0
0
14
0
0
0
2
4
21
4
2
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
Tabella 4.50: Tabella relativa alla prova migliore dell’etichettatura “automatica”
Pagina |147
Capitolo IV – Sperimentazione
Riportiamo gli istogrammi a barre relativi ai 15 cluster della prova identificata come
“migliore” utilizzando una percentuale di forme da etichettare pari al 30%.
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |148
Capitolo IV – Sperimentazione
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |149
Capitolo IV – Sperimentazione
Cluster 11
Cluster 12
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 14
Cluster 13
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 15
100
80
60
40
20
0
Figura 4.12: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM semi-supervisionato
Pagina |150
Capitolo IV – Sperimentazione
Infine riportiamo la tabella relativa ai prototipi estratti per i 15 cluster della prova.
DCC ETICHETTA
Cluster 1
91.7%
Shark
Cluster 2
100%
Ueel
Cluster 3
100%
Ray
Cluster 4
82.6%
Eel
Cluster 5
18.8%
Pipefish
Cluster 6
30%
Tonguefish
Cluster 7
93.3%
Sole
Cluster 8
100%
Seamoth
Cluster 9
100%
Seahorse
Cluster 10
100%
Crustacean
Cluster 11
50%
Tonguefish
PROTOTIPO
Pagina |151
Capitolo IV – Sperimentazione
Cluster 12 66.7%
Sole
Cluster 13 95.5%
Sole
Cluster 14 66.7%
Sole
Cluster 15 18.2%
Sole
Tabella 4.51: Prototipi relativi alla prova migliore con etichettatura “automatica”
Confrontando gli istogrammi a barre e i prototipi estratti dall’algoritmo si può notare
che nel cluster 5 anche se abbiamo un numero maggiore di forme etichettate come “Shark”, il
prototipo estratto è un “Pipefish”. Anche il cluster 6 in cui abbiamo un numero uguale sia di
forme “Pipefish” e sia “Tonguefish”, il prototipo estratto è “Shark”. Infine nel cluster 15 in cui
prevalgono le forme etichettate come “Shark”, il prototipo estratto è “Sole”. Questo è
possibile in quanto i prototipi estratti sono quelli aventi grado maggiore di appartenenza al
cluster.
4.3.2.4
FUZZY C-MEANS NON SUPERVISIONATO
Come già accennato nel paragrafo 4.2, riportiamo i risultati relativi all’esecuzione
dell’algoritmo FCM non supervisionato con numero di cluster pari a 15 e coefficiente di
fuzzificazione (m) pari a 1.5.
Nel caso dell’algoritmo FCM non supervisionato, non si è reso necessario effettuare la
scelta delle forme da etichettare come nel caso dell’algoritmo semi-supervisionato, infatti esse
sono scelte automaticamente dall’algoritmo.
Pagina |152
Capitolo IV – Sperimentazione
CLUSTER
CATEGORIE
Shark
Ueel
Ray
Eel
Pipefish
Tonguefish
Sole
Seamoth
Seahorse
Crustacean
1
2
3
4
5
6 7
8
9 10 11 12 13 14 15
0
12
3
0
0
8
4
0
0
1
0
25
0
0
0
0
0
0
0
0
0
3
0
8
0
0
0
7
0
0
1
0
0
0
23
0
0
13
0
0
0
0
0
0
0
0
0
2
16
0
1
4
0
0
0
0
0
0
0
0
0
4
0
4
0
0
6
0
0
0
0
1
0
0
0
0
0
4
0
0
9
3
0
0
0
1
0
0
0
0
0
0
14
0
1
2
0
0
0
0
11
0
0
19
0
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
9
Tabella 4.52: Tabella relativa alla prova migliore dell’algoritmo FCM non supervisionato
Riportiamo gli istogrammi a barre relativi ai 10 cluster della prova identificata come
“migliore” per l’algoritmo FCM non supervisionato.
Pagina |153
Capitolo IV – Sperimentazione
Cluster 1
Cluster 2
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 3
Cluster 4
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 5
Cluster 6
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |154
Capitolo IV – Sperimentazione
Cluster 7
Cluster 8
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 9
Cluster 10
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 11
Cluster 12
100
100
80
80
60
60
40
40
20
20
0
0
Pagina |155
Capitolo IV – Sperimentazione
Cluster 13
Cluster 14
100
100
80
80
60
60
40
40
20
20
0
0
Cluster 15
100
80
60
40
20
0
Figura 4.13: Distribuzione delle forme tra i vari cluster derivati dall’algoritmo FCM non supervisionato
Infine riportiamo la tabella relativa ai prototipi estratti per i 15 cluster della prova.
Pagina |156
Capitolo IV – Sperimentazione
DCC ETICHETTA
Cluster 1
90.9%
Seamoth
Cluster 2
75%
Shark
Cluster 3
61%
Sole
Cluster 4
80%
Eel
Cluster 5
92%
Ray
Cluster 6
45%
Tonguefish
Cluster 7
20%
Eel
Cluster 8
100%
Ray
Cluster 9
100%
Ueel
Cluster 10
90%
Seahorse
Cluster 11 84.6%
Sole
Cluster 12 96.2%
Shark
PROTOTIPO
Pagina |157
Capitolo IV – Sperimentazione
Cluster 13
100%
Ueel
Cluster 14
100%
Sole
Cluster 15
100%
Crustacean
Tabella 4.53: Prototipi relativi alla prova migliore dell’algoritmo FCM non supervisionato
Confrontando gli istogrammi a barre e i prototipi estratti dall’algoritmo si può notare
che nel cluster 7 anche se abbiamo un numero maggiore di forme etichettate come “Pipefish”,
il prototipo estratto è “Eel”. Questo è possibile in quanto il prototipo che viene estratto è
quello che ha il grado maggiore di appartenenza al cluster.
4.3.2.5
VALUTAZIONE DEI RISULTATI
La tabella riportata qui di seguito, mette a confronto le percentuali di forme etichettate per
ognuno dei sei casi e per ciascuna tipologia di etichettatura utilizzata.
5%
10%
15%
20%
25%
30%
66.7% 74.6% 76.7% 80.8% 81.7% 81.3%
Random
Automatica 71.7% 72.5% 75.8% 82.1% 82.9% 84.6%
67.9% 74.2% 80.4% 85.0% 85.8% 90.4%
Manuale
Tabella 4.54: Tabella relativa alla sperimentazione con numero di cluster pari a 15
Pagina |158
Capitolo IV – Sperimentazione
Cardinalità delle categorie
dominanti
100
80
60
Random
40
Automatica
Manuale
20
0
5%
10%
15%
20%
25%
30%
Percentuale di forme etichettate
Figura 4.14: Confronto delle cardinalità delle categorie dominanti con numero di cluster pari a 15
Osservando l’istogramma a barre, si può osservare come all’aumentare della
percentuale di forme etichettate la bontà delle partizioni ottenute migliora in termini di
compattezza dei cluster che hanno valori DCC elevati. Inoltre rispetto alla sperimentazione
precedente, aumenta anche la percentuale di forme etichettate soprattutto nei primi tre casi,
ovvero 5%, 10% e 15%.
Percentuale di classificazione
100
80
FCM non supervisionato
60
FCM con selezione
random
40
FCM con selezione
automatica
20
FCM con selezione
manuale
0
Figura 4.15: Confronto delle cardinalità delle categorie dominanti con numero di forme da etichettare
pari a 72
Pagina |159
Capitolo IV – Sperimentazione
La figura 4.15 mette a confronto le percentuali di forme etichettate nelle tre tipologie
etichettatura (il numero di forme da etichettare è pari a 72) con l’algoritmo FCM non
supervisionato. Osservando il grafico si può notare che con l’utilizzo della etichettatura
manuale abbiamo una elevata percentuale di forme etichettate.
Manuale Random Automatica FCM
Media
89.0%
77.8%
83.2%
76.1%
Deviazione standard
2.6%
5.2%
3.1%
3.7%
Minimo
Massimo
82.5%
90.4%
65.8%
81.3%
75.0%
86.7%
70.0%
79.6%
Tabella 4.55: Valori di media, deviazione standard, minimo e massimo
La tabella 4.55 riassume i risultati comparativi dei valori delle categorie dominanti
ottenuti nei differenti scenari sperimentali. In particolare, per ogni scenario, si sono calcolati
la media, la deviazione standard ed i valori di minimo e massimo ottenuti dalle 10 prove
eseguite. I risultati ottenuti mostrano che tutte le versioni dell’algoritmo FCM semisupervisionato superano l’algoritmo FCM non supervisionato in termini di valori DCC.
Questo conferma i benefici offerti dal meccanismo di supervisione nel classificare le forme
nelle categorie corrispondenti. Infine l’etichettatura manuale risulta essere il metodo più
stabile in questa sperimentazione, in quanto è caratterizzata dal più basso valore di deviazione
standard e dal più alto valore di media.
Pagina |160
Capitolo IV – Sperimentazione
Figura 4.16: Box-plot rappresentante la distribuzione delle forme etichettate
4.3.2.6
ANNOTAZIONE FUZZY
La procedura utilizzata per l’annotazione fuzzy con 10 cluster è stata ripetuta utilizzando un
numero di cluster pari a 15, ovvero verificando il numero di forme correttamente classificate e
calcolando i valori di “Precision” e “Recall”. Il data-set di test utilizzato è lo stesso utilizzato
nella sperimentazione precdente.
Qui di seguito riportiamo la tabella contenente le etichette delle forme presenti nel test
set, e quelle relative ad ogni scenario considerato. Inoltre per ogni scenario viene indicato il
numero di forme classificate correttamente.
Pagina |161
Capitolo IV – Sperimentazione
Crustacean
Eel
Manuale
Random
Automatica
FCM
Crustacean
Crustacean
Crustacean
Crustacean
Tonguefish Tonguefish
Tonguefish
Tonguefish
Eel
Eel
Eel
Eel
Eel
Eel
Pipefish
Pipefish
Shark
Eel
Ueel
Ueel
Seahorse
Seahorse
Eel
Ueel
Ueel
Ueel
Ueel
Ueel
Pipefish
Pipefish
Shark
Shark
Tonguefish
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Ray
Seahorse
Sole
Shark
Sole
Shark
Seamoth
Seamoth
Seamoth
Seamoth
Seamoth
Shark
Pipefish
Pipefish
Shark
Eel
Shark
Shark
Tonguefish
Shark
Tonguefish
Shark
Shark
Sole
Sole
Sole
Shark
Shark
Sole
Sole
Shark
Shark
Shark
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Tonguefish
Sole
Sole
Sole
Sole
Shark
Tonguefish
17
16
Tonguefish
Forme classificate
correttamente
Tonguefish Tonguefish
20
14
Tabella 4.56: Tabella riassuntiva relativa all’annotazione con numero di cluster pari a 15
Pagina |162
Capitolo IV – Sperimentazione
Manuale
Random
Automatica
FCM
Categorie
P
R
P
R
P
R
P
R
Shark
1
0.80
0
0
0.40
0.40
0.50
0.20
Ueel
1
1
1
0.50
1
0.50
1
0.50
Ray
1
1
1
1
1
1
1
1
Eel
1
0.33
1
0.33
1
0.33
0.50
0.67
Pipefish
0.33
1
0
0
0
0
0
0
Tonguefish
0.50
0.50
0.33
0.50
0
0
0.25
0.50
Sole
0.71
1
0.56
1
0.50
1
0.63
1
Seamoth
1
1
1
1
1
1
1
1
Seahorse
0
0
0
0
0
0
0
0
Crustacean
1
1
1
1
1
1
1
1
Media
0.75
0.76
0.59
0.53
0.59
0.52
0.59
0.59
Tabella 4.57: Valori di precision e recall per il processo di annotazione
La tabella riportata in precedenza, mostra i valori di precision e recall calcolati per i
quattro scenari considerati. I valori migliori sono quelli ottenuti utilizzando l’etichettatura
manuale, infatti più alti sono i valori e maggiore sarà l’affidabilità dei risultati ottenuti.
Dall’osservazione dei risultati, si possono osservare valori di accuratezza “buoni” in
corrispondenza di tutte le categorie semantiche. Mentre in tutti gli altri scenari, si possono
osservare valori nulla di Precision e Recall in corrispondenza di alcune categorie semantiche,
tra cui “Seahorse”, “Pipefish”. Questo è dovuto principalmente al fatto che l’algoritmo non è
capace di riconoscere tali categorie. Di conseguenza, i prototipi non sono stati derivati per tali
categorie e quindi questo influenza l’accuratezza della annotazione.
4.3.3 VALUTAZIONE DELLE SPERIMENTAZIONI
In generale, i risultati ottenuti confermano che il meccanismo di supervisione porta dei
benefici nella estrazione dei prototipi utili per l’annotazione delle forme. Infatti, l’algoritmo
con etichettatura manuale (ovvero avvalendosi della conoscenza dell’esperto di dominio)
consente di ottenere una annotazione con accuratezza migliore, a differenza dell’etichettatura
Pagina |163
Capitolo IV – Sperimentazione
automatica e random che consentono di ottenere dei valori medi che superano l'accuratezza
dell’annotazione ottenuta utilizzando l’algoritmo FCM non supervisionato.
Percentuale di classificazione
100
80
60
FCM non supervisionato
FCM semi-supervisionato
40
20
0
Figura 4.17: Confronto tra le due tipologie di algoritmi
Questi valori possono essere considerati come un buon compromesso fra accuratezza
della annotazione e semplicità del processo di etichettatura delle forme. Infatti, sulla base di
questi metodi, la conoscenza del dominio da fornire in ingresso all'algoritmo di clustering
viene acquisito in modo completamente automatico senza richiedere l'intervento dell’esperto.
In questo modo, il processo di etichettatura della forma sarà più veloce e meno incline alla
soggettività dell’esperto.
Infine confrontando i valori di precision e recall relativi all’etichettatura manuale
ottenuti nelle due sperimentazioni effettuate, si può notare che i valori di recall sono molto
simili mentre quelli di precision differiscono tra loro. Da ciò si può dedure che utilizzando un
numero di cluster pari a 15, si avrà una maggiore precisione nell’annotazione, ma tuttavia i
risultati ottenuti con un numero di cluster pari a 10 (uguale al numero delle categorie
semantiche) evidenziano l’efficacia dell’algoritmo proposto.
Pagina |164
Capitolo IV – Sperimentazione
4.4 SPERIMENTAZIONE RETRIEVAL
4.4.1 INTRODUZIONE
Per eseguire il processo di retrieval, è stato utilizzato il data-set di test (basato sulla
classificazione manuale effettuata dall’esperto di dominio) usato nella fase di annotazione
della sperimentazione precedente, il quale è formato da 25 forme ed ognuna di essa è
considerata come query. Le fasi che compongo il processo di retrieval sono le seguenti:
i.
ordinamento dei cluster in base alla distanza euclidea tra la singola forma e il prototipo
associato al cluster. Si calcola la distanza euclidea tra i descrittori di Fourier associati
alla forma e quelli associati al prototipo identificativo del cluster e successivamente si
ordinano le forme in ordine crescente in base ai valori ottenuti;
ii.
calcolo della distanza euclidea tra la query considerata e i prototipi ottenuti dal
processo di clustering. Una volta terminato il calcolo, i valori ottenuti vengono
ordinati in ordine crescente. Questi valori consentiranno di determinare l’ordine dei
cluster in cui recuperare le forme;
iii.
recupero delle prime 50 forme con similarità più alta e che sono considerate come
risultato della query.
Per la valutazione dell’approccio proposto, sono state calcolate Precision e Recall su
ciascun insieme di forme restituite come risultato della query (da 1 a 50):
4X
4X
4X
‘ X W W ‘
4X
‘ X W W ‘ X [
WW 4[
X 4[
WW 4[
W
W
W
W
±
dove il numero di forme presenti nella collezione varia a seconda della query considerata,
ovvero in base alla categoria di appartenenza della forma.
Pagina |165
Capitolo IV – Sperimentazione
Offline Process
Shape Descriptors
Shapes
Clustering
Prototypes
Shape Representation
Shape
Descriptors
Shape
Query
Matching & Retrieval
Online Process
Ranked Shapes
Figura 4.18: Panoramica dell’approccio proposto
Infine è stata calcolata la media dei valori di Precision e Recall sul numero totale di
query presenti nel data-set di test.
Nei paragrafi successivi vengono riportati i risultati relativi al processo di retrieval
eseguito sulla prova migliore per ciascuna tipologia di etichettatura, ovvero manuale, random
ed automatica. La prova utilizzata per ciascuna tipologia di etichettatura è quella relativa al
30% di forme etichettate (72 forme). Inoltre è stato fatto un confronto anche con l’algoritmo
FCM non supervisionato con coefficiente di fuzzificazione (m) pari ad 1.5 e numero di cluster
pari a 10. Tutto ciò è stato ripetuto anche per le prove ottenute con numero di cluster pari a
15.
Pagina |166
Capitolo IV – Sperimentazione
4.4.2 RISULTATI SPERIMENTALI CON
NUMERO DI CLUSTER
PARI A 10
Per dare un’idea dell’approccio utilizzato riportiamo due esempi di query e per ognuna sono
mostrati i primi 9 risultati (a partire dalla seconda forma). Come si può notare, l’approccio
permette di recuperare un numero elevato di forme in corrispondenza delle due query
effettuate.
ssFCM
(Manuale)
ssFCM
(Random)
ssFCM
(Automatica)
Unsupervised
FCM
Figura 4.19: Esempio di
query ottenute applicando l’algoritmo FCM semi-supervisionato e non
supervisionato
Riportiamo i valori medi di precision e recall ottenuti per le tre tipologie di
etichettatura utilizzando i cluster ed i prototipi ottenuti come risultato dell’algoritmo semisupervisionato, ed inoltre si effettuerà il confronto con l’algoritmo FCM non supervisionato.
In tutti i casi si è utilizzato un numero di cluster pari a 10.
Pagina |167
Capitolo IV – Sperimentazione
1) Etichettatura manuale:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.76
0.76
0.76
0.75
0.75
0.75
0.75
0.76
0.76
0.76
0.76
0.74
0.73
0.72
0.71
0.71
0.70
0.69
0.67
0.68
0.67
0.67
0.68
0.68
0.68
0.03
0.06
0.08
0.11
0.14
0.17
0.20
0.23
0.26
0.29
0.33
0.29
0.32
0.34
0.36
0.39
0.40
0.43
0.36
0.38
0.40
0.41
0.44
0.46
0.48
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.68
0.68
0.68
0.68
0.67
0.67
0.67
0.67
0.67
0.67
0.66
0.65
0.64
0.63
0.63
0.61
0.60
0.59
0.58
0.57
0.56
0.56
0.55
0.54
0.68
0.52
0.54
0.55
0.56
0.58
0.60
0.61
0.63
0.65
0.67
0.68
0.69
0.70
0.71
0.71
0.72
0.72
0.72
0.72
0.72
0.73
0.73
0.74
0.74
0.52
Tabella 4.58: Valori di precision e recall con etichettatura “manuale”
Pagina |168
Capitolo IV – Sperimentazione
2) Etichettatura random:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.72
0.72
0.72
0.72
0.71
0.71
0.70
0.70
0.69
0.70
0.69
0.69
0.68
0.68
0.68
0.67
0.67
0.66
0.66
0.66
0.66
0.64
0.64
0.63
0.62
0.02
0.04
0.07
0.09
0.11
0.13
0.15
0.18
0.19
0.22
0.24
0.27
0.26
0.28
0.31
0.32
0.34
0.35
0.37
0.36
0.38
0.39
0.40
0.41
0.42
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.60
0.59
0.59
0.59
0.58
0.59
0.58
0.57
0.57
0.56
0.55
0.54
0.53
0.51
0.50
0.49
0.49
0.48
0.47
0.47
0.46
0.46
0.45
0.45
0.60
0.44
0.45
0.46
0.48
0.49
0.51
0.52
0.53
0.54
0.54
0.55
0.55
0.55
0.55
0.55
0.55
0.56
0.56
0.57
0.57
0.58
0.59
0.59
0.59
0.44
Tabella 4.59: Valori di precision e recall con etichettatura “random”
Pagina |169
Capitolo IV – Sperimentazione
3) Etichettatura automatica:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.76
0.76
0.76
0.75
0.75
0.75
0.75
0.74
0.73
0.73
0.71
0.70
0.70
0.69
0.69
0.68
0.69
0.68
0.67
0.66
0.66
0.65
0.65
0.64
0.63
0.03
0.05
0.08
0.11
0.13
0.16
0.18
0.21
0.23
0.26
0.21
0.23
0.24
0.26
0.28
0.30
0.32
0.34
0.32
0.34
0.35
0.37
0.38
0.40
0.41
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.62
0.62
0.62
0.62
0.62
0.62
0.61
0.61
0.61
0.59
0.59
0.48
0.47
0.46
0.45
0.44
0.44
0.43
0.42
0.42
0.41
0.40
0.40
0.39
0.62
0.43
0.44
0.46
0.48
0.49
0.51
0.52
0.54
0.55
0.55
0.56
0.47
0.47
0.47
0.47
0.47
0.48
0.48
0.48
0.48
0.49
0.49
0.49
0.49
0.43
Tabella 4.60: Valori di precision e recall con etichettatura “automatica”
Qui di seguito invece riportiamo i risultati relativi al processo di retrieval effettuato
sulla prova migliore ottenuta eseguendo 10 volte l’algoritmo FCM non supervisionato con m
(coefficiente di fuzzificazione) pari ad 1.5.
Pagina |170
Capitolo IV – Sperimentazione
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.68
0.68
0.67
0.66
0.65
0.65
0.65
0.65
0.64
0.65
0.65
0.65
0.63
0.63
0.62
0.61
0.60
0.59
0.59
0.58
0.57
0.57
0.56
0.56
0.56
0.02
0.04
0.06
0.08
0.10
0.12
0.14
0.16
0.18
0.20
0.22
0.24
0.22
0.24
0.25
0.26
0.27
0.28
0.30
0.31
0.32
0.34
0.35
0.36
0.37
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.53
0.52
0.52
0.52
0.52
0.51
0.51
0.51
0.51
0.50
0.49
0.49
0.48
0.47
0.47
0.46
0.45
0.45
0.44
0.44
0.43
0.43
0.43
0.43
0.53
0.38
0.40
0.41
0.42
0.43
0.44
0.45
0.46
0.48
0.48
0.49
0.49
0.50
0.50
0.51
0.52
0.52
0.53
0.54
0.55
0.56
0.57
0.58
0.60
0.38
Tabella 4.61: Valori di precision e recall eseguendo l’algoritmo FCM non supervisionato
I due grafici riportati qui di seguito, mettono a confronto i valori di precision e di
recall riportati nelle tabelle precedenti.
Pagina |171
Capitolo IV – Sperimentazione
0,80
0,70
Precision
0,60
FCM con selezione manuale
0,50
FCM con selezione random
0,40
0,30
FCM con selezione
automatica
0,20
FCM non supervisionato
0,10
0,00
Retrieved shapes
Figura 4.20: Valori di precision con numero di cluster pari a 10
0,80
0,70
0,60
FCM con selezione manuale
Recall
0,50
FCM con selezione random
0,40
0,30
FCM con selezione
automatica
0,20
FCM non supervisionato
0,10
0,00
Retrieved shapes
Figura 4.21: Valori di recall con numero di cluster pari a 10
Per poter calcolare valore medio, deviazione standard, minimo e massimo, sia i valori
di precision che quelli di recall sono stati moltiplicati per 100.
Pagina |172
Capitolo IV – Sperimentazione
Manuale Random Automatica FCM
Media
67.7%
60.6%
61.1%
55.1%
Deviazione standard
6.2%
8.7%
11.8%
8.0%
Minimo
Massimo
54.3%
76.0%
44.7%
72.0%
39.0%
76.0%
42.6%
68.0%
Tabella 4.62: Valori di media, deviazione standard, minimo e massimo relativi alla precision
La tabella 4.62 riassume i risultati comparativi dei valori di precision ottenuti nei
differenti scenari sperimentali. In particolare, per ogni scenario, si sono calcolati la media, la
deviazione standard ed i valori di minimo e massimo. I risultati ottenuti mostrano che tutte le
versioni dell’algoritmo FCM semi-supervisionato (manuale, random e automatica) superano
l’algoritmo FCM non supervisionato in termini di valori di precision. Inoltre l’etichettatura
manuale risulta essere il metodo più stabile in quanto ha il più basso valore di deviazione
standard e il più alto valore di media.
Figura 4.22: Box-plot rappresentante la distribuzione dei valori di precision
Pagina |173
Capitolo IV – Sperimentazione
Manuale Random Automatica FCM
Media
47.6%
39.3%
36.7%
35.2%
Deviazione standard
21.3%
17.0%
14.6%
16.0%
Minimo
Massimo
2.7%
74.3%
2.2%
59.4%
2.6%
56.2%
2.0%
59.5%
Tabella 4.63: Valori di media, deviazione standard, minimo e massimo relativi alla recall
La tabella 4.63 riassume i risultati comparativi dei valori di recall ottenuti nei
differenti scenari sperimentali. I risultati ottenuti mostrano che tutte le versioni dell’algoritmo
FCM semi-supervisionato superano l’algoritmo FCM non supervisionato in termini di valori
di recall. In questo caso l’etichettatura automatica risulta essere il metodo più stabile in quanto
ha il più basso valore di deviazione standard, ma anche questa volta l’etichettatura manuale
fornisce un valore medio più elevato rispetto agli altri.
Figura 4.23: Box-plot rappresentante la distribuzione dei valori di recall
Una tipologia di etichettatura è considerata migliore di un'altra se consente di ottenere
dei valori di precision e recall maggiori per grandi insiemi di forme recuperati.
Pagina |174
Capitolo IV – Sperimentazione
Infine dall’osservazione dei grafici relativi alla precision e alla recall riportati in figura
4.20 e 4.21, si può notare che con l’utilizzo della etichettatura manuale abbiamo un valore
medio di precision e recall più elevato rispetto alle altre due tipologie e all’algoritmo FCM
non supervisionato.
4.4.3 RISULTATI SPERIMENTALI CON NUMERO DI CLUSTER PARI
A 15
Riportiamo i valori medi di precision e recall ottenuti per le tre tipologie di etichettatura e per
l’algoritmo FCM non supervisionato, utilizzando un numero di cluster pari a 15:
1) Etichettatura manuale:
Precision Recall
1
2p
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.92
0.92
0.91
0.89
0.87
0.87
0.86
0.87
0.87
0.86
0.85
0.83
0.82
0.81
0.81
0.80
0.80
0.80
0.80
0.80
0.78
0.78
0.77
0.76
0.75
0.04
0.07
0.11
0.15
0.18
0.22
0.25
0.29
0.32
0.35
0.35
0.32
0.34
0.36
0.38
0.41
0.43
0.45
0.48
0.50
0.50
0.52
0.54
0.55
0.56
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.73
0.72
0.71
0.71
0.70
0.69
0.68
0.68
0.66
0.66
0.65
0.64
0.64
0.63
0.62
0.61
0.60
0.60
0.59
0.58
0.57
0.56
0.55
0.54
0.73
0.58
0.59
0.60
0.62
0.63
0.64
0.65
0.66
0.66
0.68
0.68
0.69
0.68
0.69
0.69
0.70
0.71
0.71
0.71
0.72
0.72
0.73
0.73
0.73
0.58
Tabella 4.64: Valori di precision e recall con etichettatura “manuale”
Pagina |175
Capitolo IV – Sperimentazione
2) Etichettatura random:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.52
0.52
0.53
0.55
0.56
0.57
0.58
0.59
0.60
0.58
0.56
0.55
0.54
0.54
0.54
0.53
0.51
0.50
0.48
0.47
0.45
0.44
0.43
0.43
0.42
0.02
0.04
0.06
0.08
0.10
0.12
0.14
0.15
0.18
0.19
0.17
0.19
0.16
0.17
0.19
0.19
0.20
0.21
0.21
0.22
0.22
0.23
0.23
0.24
0.24
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.40
0.40
0.39
0.39
0.37
0.36
0.36
0.36
0.35
0.35
0.35
0.34
0.33
0.33
0.33
0.33
0.32
0.32
0.32
0.32
0.31
0.31
0.30
0.30
0.40
0.25
0.26
0.26
0.27
0.27
0.27
0.27
0.28
0.28
0.29
0.30
0.30
0.30
0.31
0.32
0.32
0.32
0.33
0.33
0.34
0.34
0.34
0.35
0.35
0.25
Tabella 4.65: Valori di precision e recall con etichettatura “random”
Pagina |176
Capitolo IV – Sperimentazione
3) Etichettatura automatica:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.72
0.70
0.69
0.68
0.66
0.65
0.66
0.68
0.66
0.66
0.64
0.63
0.63
0.62
0.62
0.62
0.61
0.61
0.59
0.59
0.60
0.60
0.60
0.60
0.60
0.03
0.05
0.07
0.10
0.12
0.14
0.17
0.20
0.22
0.25
0.20
0.22
0.24
0.25
0.27
0.29
0.30
0.32
0.30
0.32
0.34
0.36
0.37
0.39
0.40
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.59
0.59
0.59
0.60
0.60
0.60
0.60
0.59
0.59
0.59
0.58
0.47
0.46
0.46
0.45
0.44
0.43
0.43
0.42
0.41
0.41
0.40
0.40
0.39
0.59
0.43
0.44
0.46
0.48
0.50
0.51
0.53
0.54
0.56
0.57
0.57
0.48
0.49
0.49
0.49
0.50
0.50
0.51
0.51
0.51
0.51
0.52
0.52
0.53
0.43
Tabella 4.66: Valori di precision e recall con etichettatura “automatica”
Qui di seguito invece riportiamo i risultati relativi al processo di retrieval effettuato
sulla prova migliore ottenuta eseguendo 10 volte l’algoritmo FCM non supervisionato con m
(coefficiente di fuzzificazione) pari ad 1.5.
Pagina |177
Capitolo IV – Sperimentazione
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.72
0.72
0.71
0.70
0.70
0.69
0.67
0.66
0.66
0.66
0.65
0.64
0.63
0.63
0.62
0.60
0.60
0.59
0.57
0.57
0.57
0.56
0.56
0.55
0.55
0.03
0.05
0.08
0.10
0.13
0.15
0.17
0.19
0.22
0.24
0.26
0.24
0.26
0.27
0.29
0.30
0.31
0.32
0.33
0.34
0.35
0.37
0.38
0.39
0.40
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.54
0.54
0.54
0.54
0.54
0.54
0.53
0.53
0.53
0.53
0.52
0.51
0.51
0.50
0.50
0.49
0.49
0.48
0.48
0.47
0.47
0.46
0.46
0.45
0.54
0.43
0.44
0.45
0.47
0.48
0.50
0.51
0.52
0.53
0.55
0.56
0.56
0.57
0.58
0.59
0.60
0.61
0.62
0.62
0.63
0.64
0.64
0.65
0.65
0.43
Tabella 4.67: Valori di precision e recall eseguendo l’algoritmo FCM non supervisionato
I due grafici riportati qui di seguito, mettono a confronto i valori di precision e di
recall riportati nelle tabelle precedenti.
Pagina |178
Capitolo IV – Sperimentazione
1,00
0,90
0,80
FCM con selezione manuale
Precision
0,70
0,60
FCM con selezione random
0,50
FCM con selezione
automatica
0,40
0,30
FCM non supervisionato
0,20
0,10
0,00
Retrieved shapes
Figura 4.24: Valori di precision con numero di cluster pari a 15
0,80
0,70
0,60
FCM con selezione manuale
Recall
0,50
FCM con selezione random
0,40
0,30
FCM con selezione
automatica
0,20
FCM non supervisionato
0,10
0,00
Retrieved shapes
Figura 4.25: Valori di recall con numero di cluster pari a 15
Pagina |179
Capitolo IV – Sperimentazione
Manuale Random Automatica FCM
Media
73.8%
43.3%
57.2%
56.9%
Deviazione standard
11.0%
9.8%
9.2%
7.7%
Minimo
Massimo
54.4%
92.0%
30.0%
59.6%
39.3%
72.0%
44.8%
72.0%
Tabella 4.68: Valori di media, deviazione standard, minimo e massimo relativi alla precision
La tabella 4.68 riassume i risultati comparativi dei valori di precision ottenuti nei
differenti scenari sperimentali. In particolare, per ogni scenario, si sono calcolati la media, la
deviazione standard ed i valori di minimo e massimo. I risultati ottenuti mostrano che tutte le
versioni
dell’algoritmo
FCM semi-supervisionato
superano
l’algoritmo
FCM
non
supervisionato in termini di valori di precision. In questa sperimentazione, possiamo notare
che l’algoritmo FCM non supervisionato presenta il valore più basso di deviazione standard, il
quale è leggermente inferiore al valore ottenuto con l’etichettatura automatica. Il valore medio
più alto è assunto sempre dall’etichettatura manuale.
Figura 4.26: Box-plot rappresentante la distribuzione dei valori di precision
Pagina |180
Capitolo IV – Sperimentazione
Manuale Random Automatica FCM
Media
50.8%
23.2%
36.9%
39.9%
Deviazione standard
19.9%
8.4%
15.6%
17.9%
Minimo
Massimo
3.7%
72.9%
1.8%
34.7%
2.6%
57.4%
2.6%
64.8%
Tabella 4.69: Valori di media, deviazione standard, minimo e massimo relativi alla recall
La tabella 4.69 riassume i risultati comparativi dei valori di recall ottenuti nei
differenti scenari sperimentali. I risultati ottenuti mostrano che tutte le versioni dell’algoritmo
FCM semi-supervisionato superano l’algoritmo FCM in termini di valori di recall. Come si
può notare dai risultati ottenuti per la recall, l’etichettatura random ha il più basso valore di
deviazione standard, mentre è sempre l’etichettatura manuale ad avere il valore di media più
alto.
Figura 4.27: Box-plot rappresentante la distribuzione dei valori di recall
Osservando i grafici relativi alla precision e alla recall riportati in figura 4.24 e 4.25,
si può notare che con l’utilizzo della etichettatura manuale abbiamo un valore medio di
precision e recall più elevato rispetto alle altre due tipologie e all’algoritmo FCM non
supervisionato.
Pagina |181
Capitolo IV – Sperimentazione
Infine, si può affermare che con l’utilizzo di un numero di cluster maggiore ed
esattamente in questo caso pari a 15 l’etichettatura manuale ha un valore medio di precision
più elevato rispetto a quello ottenuto utilizzando un numero di cluster pari a 10.
4.4.4 VALUTAZIONE DEI RISULTATI
In generale, i risultati ottenuti con il meccanismo di supervisione offrono benefici nel
determinare prototipi significativi utili come meccanismo di indicizzazione per recuperare
forme. Infatti, l’algoritmo FCM semi-supervisionato supera l’algoritmo FCM non
supervisionato in termini di precisione di recupero. Questi valori possono essere considerati
come un buon compromesso tra un’accuratezza di recupero soddisfacente e la semplicità del
processo di recupero.
4.5 SPERIMENTAZIONE IMMAGINI REALI
4.5.1 INTRODUZIONE
Una ulteriore serie di esperimenti è stata eseguita applicando l’approccio proposto su una
collezione di immagini del mondo reale contenente forme di animali marini. Precisamente,
sono state scelte 50 forme, per esattezza 5 forme appartenenti ad ognuna delle 10 categorie
semantiche identificate nel data-set “Surrey Fish”. Alcune immagini di esempio sono riportate
qui di seguito.
Pagina |182
Capitolo IV – Sperimentazione
Shark
Ueel
Tonguefish
Crustacean
Eel
Sole
Ray
Seamoth
Seahorse
Pipefish
Figura 4.28: Immagini di esempio del data-set reale
Come primo passo, ogni immagine reale è stata segmentata in modo da poter estrarre
la forma dell’animale marino in esso contenuta. Per fare questo, l’immagine a colori è stata
convertita in livelli di grigio ed è stata inoltre applicata una soglia di thresholding per
convertire la forma in livelli di grigio in una immagine binaria. Dal momento che nel mondo
reale le immagini sono spesso danneggiate a causa del rumore, la forma ottenuta applicando
una soglia di thresholding, di solito ha un rumore lungo il contorno della forma, e quindi si è
reso necessario applicare un processo di eliminazione del rumore.
Il processo di rimozione del rumore elimina i pixel isolati e le regioni isolate di piccole
dimensioni o segmenti. Inoltre il contorno della forma non è sempre connesso, e quindi, è
stata utilizzata una tecnica di connessione per chiudere questi punti non connessi tra loro.
Infine la forma è stata tracciata utilizzando una tecnica di tracciamento del contorno 8connected per ottenere le coordinate del contorno relative alla forma considerata.
1 -Crustacean
2 - Crustacean
3 - Crustacean
4 - Crustacean
5 - Crustacean
6 - Eel
7 - Eel
8 - Eel
9 - Eel
10 - Eeel
Pagina |183
Capitolo IV – Sperimentazione
11 - Pipefish
12 - Pipefish
13 - Pipefish
14 - Pipefish
15 - Pipefish
16 - Ray
17 - Ray
18 - Ray
19 - Ray
20 - Ray
21 - Seahorse
22 - Seahorse
23 - Seahorse
24 - Seahorse
25 - Seahorse
26 - Seamoth
27 - Seamoth
28 - Seamoth
29 - Seamoth
30 - Seamoth
31 - Shark
32 - Shark
33 - Shark
34 - Shark
35 - Shark
36 - Sole
37 - Sole
38 - Sole
39 - Sole
40 - Sole
43 - Tonguefish
44 - Tonguefish
45 - Tonguefish
48 - Ueel
49 - Ueel
50 - Ueel
41 - Tonguefish 42 - Tonguefish
46 - Ueel
47 - Ueel
Tabella 4.70: Composizione del data-set di test costituito da immagini reali
Successivamente, per ciascuna forma estratta sono stati calcolati i descrittori di Fourier
e sono stati selezionati i primi 32 coefficienti per rappresentare la forma.
Pagina |184
Capitolo IV – Sperimentazione
Infine è stato applicato sia il processo di annotazione che quello di retrieval
utilizzando prototipi di forma derivati dai differenti scenari di clustering eseguiti sul data-set
sintetico. Nei paragrafi successivi vengono analizzati in dettaglio i risultati ottenuti.
4.5.2 ANNOTAZIONE FUZZY
Qui di seguito riportiamo la tabella contenente le etichette delle forme presenti nel test set, e
quelle relative ad ogni tipologia di etichettatura considerata. Inoltre per ciascun scenario viene
indicato il numero di forme classificate correttamente.
Manuale
Random
Automatica
FCM
Crustacean
Crustacean
Crustacean
Crustacean
Sole
Crustacean
Ueel
Ueel
Ueel
Ueel
Crustacean
Pipefish
Shark
Eel
Shark
Crustacean
Crustacean
Crustacean
Crustacean
Sole
Crustacean
Ueel
Ueel
Ueel
Ueel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Eel
Pipefish
Eel
Eel
Eel
Eel
Pipefish
Eel
Eel
Eel
Eel
Pipefish
Eel
Eel
Eel
Eel
Pipefish
Eel
Eel
Eel
Eel
Pipefish
Eel
Eel
Eel
Eel
Ray
Ueel
Ueel
Ueel
Ray
Ray
Ray
Ray
Ray
Ray
Pagina |185
Capitolo IV – Sperimentazione
Ray
Ueel
Ueel
Ueel
Ray
Ray
Seamoth
Seamoth
Seamoth
Seamoth
Ray
Seamoth
Seamoth
Seamoth
Seamoth
Seahorse
Ray
Ray
Ray
Ray
Seahorse
Pipefish
Shark
Shark
Shark
Seahorse
Shark
Ray
Shark
Shark
Seahorse
Seahorse
Seahorse
Seahorse
Seahorse
Seahorse
Seahorse
Seahorse
Seahorse
Seahorse
Seamoth
Sole
Sole
Shark
Sole
Seamoth
Tonguefish
Shark
Shark
Shark
Seamoth
Sole
Sole
Shark
Shark
Seamoth
Tonguefish
Sole
Shark
Shark
Seamoth
Tonguefish
Sole
Shark
Shark
Shark
Shark
Sole
Shark
Shark
Shark
Sole
Sole
Shark
Shark
Shark
Tonguefish
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Shark
Pipefish
Shark
Shark
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Tonguefish
Sole
Sole
Sole
Sole
Sole
Sole
Sole
Shark
Tonguefish
Tonguefish
Sole
Shark
Shark
Tonguefish
Tonguefish
Shark
Shark
Shark
Tonguefish
Tonguefish
Sole
Sole
Sole
Tonguefish
Tonguefish
Shark
Shark
Shark
Pagina |186
Capitolo IV – Sperimentazione
Tonguefish
Tonguefish
Shark
Shark
Shark
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Ueel
Forme classificate
correttamente
27
22
25
24
Tabella 4.71: Tabella riassuntiva relativa all’annotazione
Manuale
Random
Automatica
FCM
Categorie
P
R
P
R
P
R
P
R
Shark
0.75
0.6
0.25
0.4
0.31
1
0.29
1
Ueel
0.56
1
0.56
1
0.56
1
0.71
1
Ray
0.5
0.2
0.33
0.2
0.5
0.2
0.75
0.6
Eel
0.5
1
0.5
1
0.45
1
0.5
1
Pipefish
0
0
0
0
0
0
0
0
Tonguefish
0.5
1
0
0
0
0
0
0
Sole
0.57
0.8
0.38
1
0.83
1
0.5
0.8
Seamoth
0
0
0
0
0
0
0
0
Seahorse
1
0.4
1
0.4
1
0.4
1
0.4
Crustacean
1
0.4
1
0.4
1
0.4
0
0
Media
0.54
0.54
0.40
0.44
0.47
0.50
0.38
0.48
Tabella 4.72: Valori di precision e recall per il processo di annotazione
La tabella riportata in precedenza, mostra i valori di precision e recall calcolati per i
quattro scenari considerati. I valori migliori sono quelli ottenuti utilizzando l’etichettatura
manuale, infatti più alti sono i valori e maggiore sarà l’affidabilità dei risultati ottenuti.
Dall’osservazione dei risultati, si possono osservare valori di accuratezza “buoni” in
corrispondenza di quasi tutte le categorie semantiche. Mentre in tutti gli altri scenari, si
Pagina |187
Capitolo IV – Sperimentazione
possono osservare valori nulli di Precision e Recall in corrispondenza di alcune categorie
semantiche, tra cui “Seamoth”, “Pipefish”, “Tonguefish” e “Crustacean”.
Infine, riportiamo alcuni esempi di risultati ottenuti dal processo di annotazione fuzzy.
Nella tabella 4.73, per ciascuna immagine non etichettata, viene mostrata la forma estratta dal
processo di segmentazione, i prototipi di forma che sono stati riconosciuti come i più simili
alla forma e il grado di appartenenza della forma non etichettata per la corrispondente
categoria semantica.
Forme non etichettate
Categorie semantiche
Crustacean
Sole
Shark
(0.24)
(0.17)
(0.11)
Eel
Pipefish
Tonguefish
(0.45)
(0.23)
(0.10)
Eel
Pipefish
Tonguefish
(0.41)
(0.25)
(0.10)
Ray
Seamoth
Seahorse
(0.31)
(0.19)
(0.09)
Seahorse
Ray
Shark
(0.45)
(0.10)
(0.09)
Pagina |188
Capitolo IV – Sperimentazione
Sole
Shark
Seahorse
(0.17)
(0.15)
(0.14)
Shark
Tonguefish
Pipefish
(0.35)
(0.30)
(0.18)
Sole
Tonguefish
Shark
(0.36)
(0.17)
(0.15)
Tonguefish
Shark
Pipefish
(0.64)
(0.14)
(0.07)
Ueel
Ray
Seamoth
(0.46)
(0.10)
(0.09)
Tabella 4.73: Esempi di risultati dell’annotazione
Pagina |189
Capitolo IV – Sperimentazione
4.5.3 RETRIEVAL
In questo paragrafo riportiamo i risultati relativi al processo di retrieval utilizzando un data-set
di test di forme marine reali.
Anche in questo caso abbiamo eseguito le sperimentazioni eseguite nel caso
precedente (data-set sintetico). Qui di seguito riportiamo i valori medi di precision e recall
ottenuti per le tre tipologie di etichettatura utilizzando i cluster ed i prototipi ottenuti come
risultato dell’algoritmo semi-supervisionato, ed inoltre si effettuerà il confronto con
l’algoritmo FCM. In questa sperimentazione si è utilizzato solamente un numero di cluster
pari a 10.
1) Etichettatura manuale:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.38
0.44
0.46
0.48
0.48
0.49
0.49
0.49
0.48
0.48
0.47
0.47
0.46
0.46
0.46
0.46
0.46
0.46
0.40
0.40
0.41
0.41
0.41
0.41
0.41
0.02
0.04
0.06
0.09
0.11
0.14
0.17
0.19
0.21
0.23
0.25
0.27
0.26
0.29
0.31
0.32
0.35
0.37
0.28
0.30
0.32
0.34
0.36
0.37
0.38
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.41
0.41
0.41
0.40
0.40
0.40
0.40
0.40
0.40
0.39
0.39
0.39
0.38
0.38
0.38
0.37
0.36
0.35
0.35
0.34
0.34
0.34
0.33
0.33
0.41
0.40
0.41
0.42
0.43
0.43
0.44
0.45
0.47
0.47
0.49
0.50
0.50
0.51
0.51
0.53
0.54
0.54
0.54
0.55
0.55
0.56
0.56
0.56
0.57
0.40
Tabella 4.74: Valori di precision e recall con etichettatura “manuale”
Pagina |190
Capitolo IV – Sperimentazione
2) Etichettatura random:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.20
0.28
0.33
0.36
0.38
0.39
0.39
0.39
0.39
0.40
0.40
0.38
0.38
0.38
0.39
0.38
0.38
0.38
0.37
0.36
0.36
0.35
0.35
0.35
0.35
0.01
0.03
0.05
0.06
0.08
0.10
0.12
0.14
0.16
0.19
0.21
0.19
0.21
0.24
0.26
0.28
0.29
0.31
0.32
0.30
0.31
0.32
0.33
0.34
0.35
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.35
0.35
0.35
0.36
0.36
0.35
0.35
0.35
0.35
0.35
0.35
0.35
0.34
0.34
0.34
0.34
0.34
0.34
0.34
0.34
0.34
0.32
0.32
0.32
0.35
0.37
0.38
0.39
0.40
0.41
0.42
0.44
0.45
0.46
0.46
0.47
0.48
0.49
0.50
0.50
0.52
0.53
0.53
0.54
0.55
0.55
0.55
0.56
0.56
0.37
Tabella 4.75: Valori di precision e recall con etichettatura “random”
Pagina |191
Capitolo IV – Sperimentazione
3) Etichettatura automatica:
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.30
0.35
0.39
0.39
0.40
0.41
0.42
0.42
0.42
0.43
0.38
0.38
0.38
0.39
0.38
0.38
0.38
0.39
0.31
0.31
0.31
0.31
0.32
0.32
0.32
0.02
0.04
0.06
0.08
0.10
0.13
0.15
0.17
0.20
0.22
0.17
0.19
0.21
0.23
0.25
0.26
0.28
0.29
0.21
0.23
0.24
0.25
0.26
0.27
0.28
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.33
0.32
0.32
0.32
0.32
0.33
0.32
0.33
0.33
0.33
0.33
0.31
0.31
0.31
0.31
0.31
0.31
0.31
0.32
0.31
0.31
0.31
0.31
0.31
0.33
0.30
0.31
0.32
0.34
0.35
0.36
0.37
0.39
0.40
0.41
0.42
0.42
0.43
0.44
0.44
0.46
0.47
0.48
0.48
0.49
0.49
0.50
0.50
0.51
0.30
Tabella 4.76: Valori di precision e recall con etichettatura “automatica”
Qui di seguito invece riportiamo i risultati relativi al processo di retrieval effettuato
sulla prova migliore ottenuta eseguendo 10 volte l’algoritmo FCM non supervisionato con m
(coefficiente di fuzzificazione) pari ad 1.5.
Pagina |192
Capitolo IV – Sperimentazione
Precision Recall
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.42
0.43
0.43
0.44
0.44
0.42
0.41
0.42
0.42
0.43
0.43
0.44
0.43
0.43
0.42
0.42
0.42
0.42
0.41
0.41
0.41
0.41
0.41
0.40
0.40
0.02
0.03
0.05
0.07
0.10
0.11
0.13
0.15
0.17
0.19
0.21
0.24
0.25
0.26
0.27
0.29
0.30
0.32
0.33
0.34
0.35
0.37
0.38
0.40
0.41
Precision Recall
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.39
0.39
0.49
0.48
0.47
0.46
0.45
0.44
0.37
0.37
0.37
0.36
0.35
0.35
0.34
0.34
0.33
0.33
0.32
0.32
0.31
0.31
0.31
0.30
0.39
0.44
0.42
0.42
0.42
0.44
0.46
0.47
0.47
0.48
0.49
0.50
0.50
0.51
0.51
0.51
0.52
0.52
0.52
0.53
0.53
0.53
0.54
0.54
0.54
0.44
Tabella 4.77: Valori di precision e recall eseguendo l’algoritmo FCM non supervisionato
I due grafici riportati qui di seguito, mettono a confronto i valori di precision e di
recall riportati nelle tabelle precedenti.
Pagina |193
Capitolo IV – Sperimentazione
0,60
0,50
FCM con selezione manuale
Precision
0,40
FCM con selezione random
0,30
FCM con selezione
automatica
0,20
FCM non supervisionato
0,10
0,00
Retrieved shapes
Figura 4.29: Valori di precision
0,6
0,5
FCM con selezione manuale
Recall
0,4
FCM con selezione random
0,3
FCM con selezione
automatica
0,2
FCM non supervisionato
0,1
0
Retrieved shapes
Figura 4.30: Valori di recall
Per poter calcolare valore medio, deviazione standard, minimo e massimo, sia i valori
di precision che quelli di recall sono stati moltiplicati per 100.
Pagina |194
Capitolo IV – Sperimentazione
Manuale Random Automatica FCM
Media
41.4%
35.4%
34.3%
39.7%
Deviazione standard
4.8%
3.2%
3.9%
4.8%
Minimo
Massimo
32.9%
49.3%
20.0%
39.7%
30.0%
42.6%
30.3%
48.9%
Tabella 4.78: Valori di media, deviazione standard, minimo e massimo relativi alla precision
La tabella 4.78 riassume i risultati comparativi dei valori di precision ottenuti nei
differenti scenari sperimentali. In particolare, per ogni scenario, si sono calcolati la media, la
deviazione standard ed i valori di minimo e massimo. I risultati ottenuti mostrano che
solamente una versione dell’algoritmo FCM semi-supervisionato (manuale) supera
l’algoritmo FCM in termini di valori di precision. Anche con l’utilizzo di un data-set di
immagini reali, possiamo notare che l’etichettatura random presenta il valore più basso di
deviazione standard, mentre sia l’etichettatura manuale che l’algoritmo FCM non
supervisionato hanno lo stesso valore di deviazione standard. Il valore medio più alto è
assunto sempre dall’etichettatura manuale.
Figura 4.31: Box-plot rappresentante la distribuzione dei valori di precision
Pagina |195
Capitolo IV – Sperimentazione
Manuale Random Automatica FCM
Media
36.7%
34.1%
30.4%
36.0%
Deviazione standard
15.4%
16.2%
13.5%
15.9%
Minimo
Massimo
1.7%
56.7%
1.0%
56.4%
1.8%
51.0%
1.6%
54.3%
Tabella 4.79: Valori di media, deviazione standard, minimo e massimo relativi alla recall
La tabella 4.79 riassume i risultati comparativi dei valori di recall ottenuti nei
differenti scenari sperimentali. Come si può notare dai risultati ottenuti per la recall,
l’etichettatura automatica ha il più basso valore di deviazione standard. Sia l’etichettatura
manuale che l’algoritmo FCM non supervisionato hanno un valore medio quasi uguale (infatti
i valori ottenuti con l’algoritmo FCM non supervisionato sono leggermente inferiori rispetto a
quelli ottenuti con l’etichettura manuale), mentre l’algoritmo FCM non supervisionato ha un
valore di deviazione standard leggermente superiore a quello ottentuo con l’etichettatura
manuale.
Figura 4.32: Box-plot rappresentante la distribuzione dei valori di recall
Pagina |196
Capitolo IV – Sperimentazione
Infine, anche dall’osservazione dei grafici relativi alla precision e alla recall riportati
in figura 4.29 e 4.30, si può notare che con l’utilizzo della etichettatura manuale abbiamo un
valore medio di precision e recall più elevato rispetto alle altre due tipologie e all’algoritmo
FCM non supervisionato.
4.5.4 VALUTAZIONE DEI RISULTATI
In generale, i risultati ottenuti utilizzando un data-set di immagini reali mostrano l’efficacia
del meccanismo di supervisione sviluppato in questo lavoro di tesi.
Come si può ben
osservare dai risultati alcune categorie semantiche non sono riconosciute e questo infatti
rimane uno dei problemi ancora da risolvere. Tuttavia questi risultati lasciano ben sperare in
un futuro miglioramento dell’approccio proposto.
Pagina |197
CAPITOLO V
CONCLUSIONI E
SVILUPPI FUTURI
Pagina |198
Capitolo IV – Conclusioni e sviluppi futuri
In questo lavoro di tesi, è stato presentato un approccio per l’annotazione fuzzy e il retrieval
di forme.
L'approccio sfrutta una tecnica di fuzzy clustering dotata del meccanismo di
supervisione, il quale è in grado di fornire una guida utile durante il processo di shape
clustering, al fine di ricavare una serie di prototipi rappresentativi di un certo numero di
categorie semantiche. I prototipi derivati sono manualmente etichettati aggiungendo le
etichette alle relative categorie semantiche. Quando una nuova forma viene automaticamente
etichettata, viene associato un insieme fuzzy che fornisce i gradi di appartenenza della forma a
tutte le categorie semantiche scoperte. L’efficacia dell'approccio proposto è stato dimostrata
attraverso un test su un data-set di forme. I risultati ottenuti in termini di “Precision” e
“Recall” mostrano l’efficacia del fuzzy clustering semi-supervisionato nel determinare i
prototipi di forma più significativi, i quali possono essere opportunamente utilizzati per
l’annotazione di nuove forme.
Per quanto riguarda invece il processo di retrieval, si può affermare che i risultati di
accuratezza ottenuti sono incoraggianti. Naturalmente, molti problemi potrebbero essere
affrontati al fine di migliorare l’efficacia dell’approccio proposto. Un ulteriore miglioramento
per il processo di recupero potrebbe essere quello di fare uso di feedback di rilevanza e
ripetizione della ricerca con le nuove informazioni aggiunte. Infine i clusters potrebbe essere
raffinati includendo i nuovi oggetti secondo i feedback forniti dagli utenti sulle forme
restituite.
5.1 POSSIBILI SVLUPPI FUTURI
Di seguito si riporta un elenco di idee finalizzate al miglioramento futuro dell’approccio
proposto:
i.
utilizzo di nuovi descrittori di forma in modo da poter effettuare un confronto con
quelli presenti attualmente nell’approccio proposto;
ii.
utilizzo di nuove misure di similarità diverse da quella euclidea, attualmente utilizzata
dall’algoritmo;
iii.
esecuzione di ulteriori sperimentazioni utilizzando un numero di cluster compreso tra
10 e 15;
Pagina |199
Capitolo IV – Conclusioni e sviluppi futuri
iv.
testare l’algoritmo su un data-set diverso anche più complesso, in modo da poter
confrontare i risultati con quelli attualmente presentati in questo lavoro di tesi e poter
valutare l'adeguatezza dell’approccio proposto;
v.
utilizzo di feedback di rilevanza, in cui l'utente può raffinare i risultati della ricerca
contrassegnando le forme presenti nei risultati come “rilevante”, “non rilevante” o
“neutrale” alla query di ricerca;
vi.
aggiornamenti dei prototipi di forma ottenuti dal processo di clustering.
Pagina |200
BIBLIOGRAFIA
Pagina |201
Riferimenti Bibliografici
[1]
Lew, M., Sebe, N., Djeraba, C., Li, F., Ramesh, J. - “Content-based Multimedia
Information
Retrieval: State of the Art and Challenges”. ACM Transactions on
Multimedia Computing, Communications, and Applications. 1-19, (2006).
[2]
Datta, R., Dhiraj, J., Jia, L., Wang, J.Z. - “Image Retrieval: Ideas, Influences, and
Trends of the New Age”. ACM Computing Surveys. 40, 1-60, (2008).
[3]
Smeulders, A.W.M., Worring, M., Santini, S., Gupta, A., Jain, R. - “Content-based
image retrieval at the end of the early years”. IEEE Transaction on Pattern Analysis and
Machine Intelligence 22, 1349-1380, (2000).
[4]
Mylonas, P., Spyrou, E., Avrithis, Y., Kollias, S. - “Using Visual Context and Region
Semantics for High-Level Concept Detection”. IEEE Transactions on Multimedia 11(2)
229-243, (2009).
[5]
Hauptmann, A., Rong, Yan, Lin, W.-H., Christel, M., Wactlar, H. - “Can High-Level
Concepts Fill the Semantic Gap in Video Retrieval? A Case Study With Broadcast
News”. IEEE Transactions on Multimedia 9(5), 958 – 966, (2007).
[6]
Inoue, M. - “On the need for annotation-based image retrieval”. In Proc. of the
Workshop on Information Retrieval in Context pp. 44-46, (2004).
[7]
Akbas, E., and Vural, F. Y. - “Automatic Image Annotation by Ensemble of Visual
Descriptors”. In Proc. of Conf. on Computer Vision (CVPR), Workshop on Semantic
Learning Applications in Multimedia 1-8, (2007).
[8]
Zhang, D., Islam, M. M., Lu, G. - “A review on automatic image annotation
techniques”. Pattern Recognition. 45(1) 346-362, (2011).
[9]
Fan, J., Gao, Y., Luo, H. - “Hierarchical classification for automatic image
annotation”. In Proc. of the 30th annual International ACM SIGIR Conference on
Research and Development in Information Retrieval, pp. 111-118, (2007).
Pagina |202
Riferimenti Bibliografici
[10] Muda, Z. - “Classification and Image Annotation for Bridging the Semantic Gap”. In:
Summer School on Multimedia Semantics 2007, University of Glasgow, Glasgow,
(2007).
[11] Belongie, S., Malik, J., Puzicha, J. - “Shape matching and object recognition using
shape contexts”. IEEE Trans. Pattern Anal. Mach. Intell., 24(4), 509-522, (2002).
[12] Li, D., Simske, S. - “Shape retrieval based on distance ratio distribution”. HP Tech
Report. HPL-2002-251, (2002).
[13] Rui, Y., Huang, T., Chang, S. - “Image retrieval: current techniques, promising
directions and open issues”. Journal of Visual Communication and Image
Representation, 10(4), 39-62, (1999).
[14] Veltkamp, R., Tanase, M. - “Content-based image retrieval systems: a survey”.
Technical Report, (2001).
[15] Niblack, W., Barber, R., Equitz, W., Flickner, M., Glasman, E., Petkovic, D., Yanker, P.
- “The Qbic project: Querying images by content using color, texture, and shape”. In
Proc. of SPIE Conference on Storage and Retrieval of Image and Video Databases, pp.
1-8, (1993).
[16] Borras, A., Llados, J. - “Object Image Retrieval by Shape Content in Complex Scenes
Using Geometric Constraints. Pattern Recognition and Image Analysis”. Springer
Berlin/Heidelberg. 325-332, (2005).
[17] Platt, J., Cristianini, N., Shawe-Taylor, J. - “Large margin DAGs for multiclass
classification”. Advances in Neural Information Processing Systems. 12 547-553,
(2000).
[18] Wu, G., Chang, E., Li, C. - “SVM binary classifier ensembles for image classification”.
In Proc. of ACM Conf. on Information and knowledge Management 395-402, (2001).
Pagina |203
Riferimenti Bibliografici
[19] Chen, Y., Wang, J.Z. - “A region-based fuzzy feature matching approach to contentbased image retrieval”. IEEE Transaction on Pattern Analysis and Machine
Intelligence. 40(9), 1252-1267, (2002).
[20] Chander, V., Tapaswi, S. - “Shape Based Automatic Annotation and Fuzzy Indexing of
Video Sequences”. In Proc. of the 2010 IEEE/ACIS 9th International Conference on
Computer and Information Science (ICIS '10), pp. 222-227, (2010).
[21] Athanasiadis, T., Mylonas, P., Avrithis, Y., Kollias, S. - “Semantic Image segmentation
and object labeling”. IEEE Transaction on Circuits and Systems for Video Technology.
17(3), 298-312, (2007).
[22] Y. Mori, H. Takahashi, and R. Oka. - “Image-to-word transformation based on dividing
and vector quantizing images with words”. In First International Workshop on
Multimedia Intelligent Storage and Retrieval Management, 1999.
[23] Pinar Duygulu, Kobus Barnard, Joo F. G. de Freitas, and David A. Forsyth. - “Object
Recognition as Machine Translation: Learning a Lexicon for a Fixed Image
Vocabulary”. In Proceedings of European Conference on Computer Vision (ECCV),
pages 97–112, 2002.
[24] Peter F. Brown, John Cocke, Stephen A. Della Pietra, Vincent J. Della Pietra, Fredrick
Jelinek, John D. Lafferty, Robert L. Mercer, and Paul S. Roossin. - “A statistical
approach to machine translation”. Computer Linguists, 16(2):79–85, 1990.
[25] A. P. Dempster, N.M. Laird, and D. B. Rubin. - “Maximum likelihood from incomplete
data via the em algorithm”. Journal of the Royal Statistical Society. Series B
(Methodological), 39(1):1–38, 1977.
[26] Lawrence R. Rabiner. - “A tutorial on hidden markov models and selected applications
in speech recognition”. Proceedings of the IEEE, 77(2):257–286, 1989.
Pagina |204
Riferimenti Bibliografici
[27] Arnab Ghoshal, Pavel Ircing, and Sanjeev Khudanpur. - “Hidden markov models for
automatic annotation and content-based retrieval of images and video”. In Proceedings
of ACM SIGIR International Conference on Research and Development in Informaion
Retrieval (SIGIR), pages 544–551, 2005.
[28] Kobus Barnard and David A. Forsyth. - “Learning the semantics of words and
pictures”. In Proceedings of IEEE International Conference on Computer Vision
(ICCV), pages 408-415, 2001.
[29] David M. Blei and Michael I. Jordan. - “Modeling annotated data”. In Proceedings of
ACM SIGIR International Conference on Research and Development in Informaion
Retrieval (SIGIR), pages 127–134, 2003.
[30] Ruofei Zhang, Zhongfei (Mark) Zhang, Mingjing Li, Wei-Ying Ma, and Hong-Jiang
Zhang. - “A probabilistic semantic model for image annotation and multi-modal image
retrieval”. In Proceedings of IEEE International Conference on Computer Vision
(ICCV), pages 846–851, 2005.
[31] J. Jeon, V. Lavrenko, and R. Manmatha. - “Automatic image annotation and retrieval
using cross-media relevance models”. In Proceedings of ACM SIGIR International
Conference on Research and Development in Informaion Retrieval (SIGIR), pages 119–
126, 2003.
[32] Richard O. Duda, Peter E. Hart, and David G. Stork. - “Pattern classification: Pattern
classification”. John Wiley & Sons Inc, 2nd edition, 2001.
[33] Victor Lavrenko, R. Manmatha, and Jiwoon Jeon. - “A model for learning the semantics
of pictures”. In Proceedings of Advances in Neural Information Processing Systems
(NIPS), 2004.
[34] S. L. Feng et al. - “Multiple bernoulli relevance models for image and video
annotation”. In Proceedings of IEEE Conference on Computer Vision and Pattern
Recognition (CVPR), pages 1242–1245, 2004.
Pagina |205
Riferimenti Bibliografici
[35] Rong Jin, Joyce Y. Chai, and Luo Si. - “Effective automatic image annotation via a
coherent language model and active learning”. In Proceedings of ACM International
Conference on Multimedia (ACM MULTIMEDIA), pages 892–899, 2004.
[36] Jia-Yu Pan, Hyung-Jeong Yang, Christos Faloutsos, and Pinar Duygulu. - “GCap:
Graphbased automatic image captioning”. In Proceedings of IEEE International
Conference on Computer Vision and Pattern Recognition Workshop, pages 146–149,
2004.
[37] Hanghang Tong, Christos Faloutsos, and Jia-Yu Pan. - “Fast random walk with restart
and its applications”. In Proceedings of the International Conference on Data Mining,
pages 613–622, 2006.
[38] Jing Liu, Mingjing Li, Wei-Ying Ma, Qingshan Liu, and Hanqing Lu. - “An adaptive
graph model for automatic image annotation”. In Proceedings of the ACM SIGMM
International Workshop on Multimedia Information Retrieval (MIR), pages 873–877,
2006.
[39] Dengyong Zhou, Jason Weston, Arthur Gretton, Olivier Bousquet, and Bernhard
Scholkopf. - “Ranking on data manifolds”. In Proceedings of Advances in Neural
Information Processing Systems (NIPS), 2004.
[40] F.T. Ulaby, F. Kouyate, B. Brisco, and T.H.L. Williams. - “Textural information in sar
images”. Geoscience and Remote Sensing, IEEE Transactions on, GE-24(2):235–245,
1986.
[41] C.-C. Chen, J.S. DaPonte, and M.D. Fox. - “Fractal feature analysis and classification
in medical imaging”. Medical Imaging, IEEE Transactions on, 8(2):133–142, 1986.
[42] R.L. Kettig and D.A. Landgrebe. - “Classification of multispectral image data by
extraction and classification of homogeneous objects”. Geoscience Electronics, IEEE
Transactions on, 14(1):19–26, 1976.
Pagina |206
Riferimenti Bibliografici
[43] M.M. Gorkani and R.W. Picard. - “Texture orientation for sorting photos at a glance”.
In Proceedings of IEEE International Conference in Pattern Recognition, pages 459–
464, 1994.
[44] P. Lipson, E. Grimson, and P. Sinha. - “Configuration based scene classification and
image indexing”. In Proceedings of the 1997 Conference on Computer Vision and
Pattern Recognition, pages 1007–1010, 1997.
[45] A. Lakshmi Ratan and W. E. L. Grimson. - “Training templates for scene classification
using a few examples”. In Proceedings of the 1997 Workshop on Content-Based Access
of Image and Video Libraries, pages 90–94, 1997.
[46] Jing Huang, S. Ravi Kumar, and Ramin Zabih. - “An automatic hierarchical image
classification scheme”. In Proceedings of ACM International Conference on
Multimedia (ACM MULTIMEDIA), pages 219–228, 1998.
[47] Jing Huang, S. Ravi Kumar, Mandar Mitra, Wei-Jing Zhu, and Ramin Zabih. - “Image
indexing using color correlograms”. In Proceedings of IEEE Conference on Computer
Vision and Pattern Recognition (CVPR), pages 762–765, 1997.
[48] Aditya Vailaya, Anil. Jain, and Hong-Jiang Zhang. - “On image classification: city
images vs. landscapes”. Pattern Recognition, 31(12):1921–1935, 1998.
[49] Nello Cristianini and John Shawe-Taylor. - “An Introduction to Support Vector
Machines and Other Kernel-based Learning Methods”. Cambridge University Press,
March 2000.
[50] O. Chapelle, P. Haffner, and V. Vapnik. - “Support vector machines for histogrambased image classification”. Neural Networks, IEEE Transactions on, 10(5):1055–1064,
1999.
[51] Cheong Yiu Fung and Kai Fock Loe. - “Learning primitive and scene semantics of
images for classification and retrieval”. In Proceedings of ACM International
Conference on Multimedia (ACM MULTIMEDIA), pages 9–12, 1999.
Pagina |207
Riferimenti Bibliografici
[52] A. Vailaya, M. Figueiredo, A. Jain, and H. Zhang. - “Image classification for contentbased indexing”. Image Processing, IEEE Transactions on, 10(1):117–130, 2001.
[53] R. Gray. - “Vector quantization”. IEEE Signal Processing Magazine, 1(2):4–29, 1986.
[54] Edward Y. Chang, Kingshy Goh, Gerard Sychay, and Gang Wu. - “CBSA: contentbased soft annotation for multimodal image retrieval using bayes point machines”.
Circuits Systems and Video Technology (CSVT), IEEE Transactions on, 13(1):26–38,
2003.
[55] Ralf Herbrich, Thore Graepel, and Colin Campbell. - “Bayes point machines”. Journal of
Machine Learning Research (JMLR), 1:245–279, 2001.
[56] James Z. Wang and Jia Li. – “Learning-based linguistic indexing of pictures with 2-D
MHMMs”. In Proceedings of ACM International Conference on Multimedia (ACM
MULTIMEDIA), pages 436–445, 2002.
[57] Lawrence R. Rabiner. - “A tutorial on hidden markov models and selected applications
in speech recognition”. Proceedings of the IEEE, 77(2):257–286, 1989.
[58] G. Csurka, C. Bray, C. Dance, and L. Fan. - “Visual categorization with bags of
keypoints”. In Workshop on Statistical Learning in Computer Vision, European
Conference on Computer Vision, pages 1–22, 2004.
[59] Gustavo Carneiro and Nuno Vasconcelos. - “Formulating semantic image annotation
as a supervised learning problem”. In Proceedings of IEEE Conference on Computer
Vision and Pattern Recognition (CVPR), pages 163–168, 2005.
[60] Raphael Maree, Pierre Geurts, Justus Piater, and Louis Wehenkel. – “Random
subwindows for robust image classification”. In Proceedings of IEEE Conference on
Computer Vision and Pattern Recognition (CVPR), pages 34–40, 2005.
Pagina |208
Riferimenti Bibliografici
[61] Ritendra Datta, Weina Ge, Jia Li, and James Z. Wang. – “Toward bridging the
annotation retrieval gap in image search by a generative modeling approach”. In
Proceedings of ACM International Conference on Multimedia (ACM MULTIMEDIA),
pages 977–986, 2006.
[62] Jia Li and James Z.Wang. – “Real-time computerized annotation of pictures”. In
Proceedings of ACM International Conference on Multimedia (ACM MULTIMEDIA),
pages 911–920, 2006.
[63] Aude Oliva and Antonio Torralba. - “Modeling the shape of the scene: A holistic
representation of the spatial envelope”.
International Journal of Computer Vision
(IJCV), 42(3):145–175, 2001.
[64] Julia Vogel and Bernt Schiele. - “Semantic modeling of natural scenes for contentbased image retrieval”. International Journal of Computer Vision (IJCV), 72(2):133–
157, 2007.
[65] L. Fei-Fei and P. Perona. - “A bayesian hierarchical model for learning natural scene
categories”. In Proceedings of IEEE Conference on Computer Vision and Pattern
Recognition (CVPR), pages 523–525, 2005.
[66] A. Bosch, A. Zisserman, and X. Munoz. - “Scene Classification via pLSA”. In
Proceedings of European Conference on Computer Vision (ECCV), pages 1134–1137,
2006.
[67] T. Hofmann. - “Unsupervised learning by probabilistic latent semantic analysis”. In
Proceedings of Uncertainty in Artificial Intelligence, pages 624–627, 1999.
[68] S. Lazebnik, C. Schmid, and J. Ponce. – “Beyond bags of features: Spatial pyramid
matching for recognizing natural scene categories”. In Proceedings of IEEE
Conference on Computer Vision and Pattern Recognition (CVPR), pages 988–991,
2006.
Pagina |209
Riferimenti Bibliografici
[69] Thomas G. Dietterich, Richard H. Lathrop, and Tomas Lozano-Perez. – “Solving the
multiple instance problem with axis-parallel rectangles”. Artificial Intelligence, 89(12):31–71, 1997.
[70] Oded Maron and Aparna Lakshmi Ratan. – “Multiple-instance learning for natural
scene classification”. In Proceedings of IEEE International Conference on Machine
Learning (ICML), pages 341–349, 1998.
[71] C. Yang and T. Lozano-Perez. - “Image database retrieval with multiple-instance
learning techniques”. In Proceedings of IEEE Intternational Conference on Data
Engineering, pages 233–243, 2000.
[72] S. Andrews, I. Tsochantaridis, and T. Hofmann. - “Support vector machines for multiple
instance learning”. In Proceedings of Advances in Neural Information Processing
Systems (NIPS), pages 561–568, 2003.
[73] Changbo Yang, Ming Dong, and Jing Hua. - “Region-based image annotation using
asymmetrical upport vector machine-based multiple-instance learning”. In Proceedings
of IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages
1057–1063, 2006.
[74] Yixin Chen and James Z. Wang. – “Image categorization by learning and reasoning
with regions”. Journal of Machine Learning Research (JMLR), 5:913–939, 2004.
[75] Jianping Fan, Yuli Gao, and Hangzai Luo. - “Multi-level annotation of natural scenes
using dominant image components and semantic concepts”. In Proceedings of ACM
International Conference on Multimedia (ACM MULTIMEDIA), pages 540–547, 2004.
[76] Jianping Fan, Yuli Gao, Hangzai Luo, and Guangyou Xu. - “Automatic image
annotation by using concept-sensitive salient objects for image content representation”.
In Proceedings of ACM SIGIR International Conference on Research and Development
in Informaion Retrieval (SIGIR), pages 361–368, 2004.
Pagina |210
Riferimenti Bibliografici
[77] Yuli Gao and Jianping Fan. - “Incorporating concept ontology to enable probabilistic
concept reasoning for multi-level image annotation”. In Proceedings of the ACM
SIGMM International Workshop on Multimedia Information Retrieval (MIR), pages
79–88, 2006.
[78] Yuli Gao, Jianping Fan, Xiangyang Xue, and Ramesh Jain. - “Automatic image
annotation by incorporating feature hierarchy and boosting to scale up svm classifiers”.
In
Proceedings
of
ACM
International
Conference
on
Multimedia
(ACM
MULTIMEDIA), pages 901–910, 2006.
[79] B. C. Russell, A. Torralba, K. P. Murphy, and W. T. Freeman. - “LabelMe: a database
and web-based tool for image annotation”. Technical report, Massachusetts Institute of
Technology, 2005. MIT AI Lab Memo AIM-2005-025.
[80] George A. Miller. - “WordNet: a lexical database for English”. In Proceedings of the
Workshop on Speech and Natural Language, pages 483–483, 1992.
[81] Liang, X., Zhuang, Q., Cao, N., Zhang, J. - “Shape modeling and clustering of white
matter fiber tracts using Fourier descriptors”. In Proc. of the 6th Annual IEEE
conference on Computational Intelligence in Bioinformatics and Computational
Biology, pp. 292-297 (2009).
[82] Kontschieder, P., Donoser, M., Bischof, H. – “Beyond pairwise shape similarity
analysis”. In Proc. of Asian Conference on Computer Vision (ACCV), pp.655-666
(2009).
[83] Rajpoot, N.M., Arif, M. - “Unsupervised shape clustering using diffusion maps”. The
Annals of the BMVA. (5) 1-17 (2008).
[84] Klassen, E., Srivastava, A., Mio, W., Joshi, S. H. – “analysis of planar shapes using
geodesic paths on shape spaces”. IEEE Transactions on Pattern Analysis and Machine
Intelligence, 26(3) 372-383 (2004).
Pagina |211
Riferimenti Bibliografici
[85] J. M. Torres, A. P. Parkes – “Intelligent Multimodal Interface for Visual Information
Retrieval ”.
[86] Elisa Rondini – “Tecniche semi-automatiche per l’annotazione semantica di dati
multimediali”.
[87] Bartolini, I., Ciaccia, P., Patella, M. WAarp - “Accurate retrieval of shapes using phase
of Fourier descriptors and Time warping distance”. IEEE Trans. on Pattern Analysis
and machine Intelligence, 27(1), 142-147, (2005).
[88] Rafiei, D., Mendelzon, A.O. - “Efficient Retrieval of Similar Shapes”. The Very Large
Data Bases Journal. 11(1), 17-27, (2002).
[89] Zhang, D. and Lu, G. - “A Comparative Study of Fourier Descriptors for Shape
Representation and Retrieval”. In Proc. Fifth Asian Conf. Computer Vision 646-651,
(2002).
[90] Castellano, G., Fanelli, A. M., Torsello, M. A. - “Fuzzy image labeling by partially
supervised shape clustering”. In Proc. of the 15th international conference on
Knowledge-based and intelligent information and engineering systems, pp. 84-93,
(2011).
[91] Pedrycz, W., Amato, A., Di Lecce, V., Piuri, V. - “Fuzzy Clustering with partial
supervision in organization and classification of digital images”. IEEE Transactions on
Fuzzy Systems 16(4), 1008-1025, (2008).
[92] G. Qian, S. Sural, Y. Gu, and S. Pramanik. 2004 – “Similarity between Euclidean and
cosine angle distance for nearest neighbor queries”. In Proceedings of the 2004 ACM
symposium on Applied computing (SAC '04), pp. 1232-1237. ACM, New York, NY,
USA.
[93] C. Shahabi, and M. Safar. – “An experimental study of alternative shape-based image
retrieval techniques”. Multimedia Tools and Applications, 32(1):29-48, 2007.
Pagina |212
Riferimenti Bibliografici
[94] N. Xing and I.S. Ahmad. – “Fuzzy Clustering Paradigm and the Shape-Based Image
Retrieval”. In Proc. of the 21st International FLAIRS Conference, pp. 121-122, 2008.
Pagina |213