La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

(Normalized Compression Distance) Gruppo MAPAG Ingenito Antonio 0521000141.

Presentazioni simili


Presentazione sul tema: "(Normalized Compression Distance) Gruppo MAPAG Ingenito Antonio 0521000141."— Transcript della presentazione:

1

2 (Normalized Compression Distance) Gruppo MAPAG Ingenito Antonio

3 Con il termine classificazione ci si riferisce al piazzamento di oggetti di test sconosciuti in una della categorie ricavate dall'insieme di oggetti di training. Tratteremo la combinazione tra NCD ed un modulo di machine learning

4 L'obiettivo di una procedura di classificazione è di fare le buone previsioni basate sui dati di training dell'input. Un esperto umano prepara un insieme di n esempi di training. Ogni esempio di training contiene un vettore di input x d-dimensionale ed una etichetta y dell'obiettivo del training. y deve essere scelto da un insieme L di etichette. L'accuratezza è limitata all'accuratezza delle etichette del training set.

5 Una sessione di training esegue un modello M dell'input o dei dati di training (x i, y i ) per 1in Dopo che M sia stata calcolata da un classifier learning algorithm, denominato trainable classifier system, viene usata per classificare gli oggetti di test sconosciuti x test, anche della dimensione d Per ogni oggetto ci sarà in output un elemento appartenente ad L

6 Uno dei primi sistemi che hanno usato i classificatori sono stati gli OCR(Optical Character Recognition) ossia a partire da unimmagine Bitmap Rasterized (che è un matrice di valori) e convertirla in caratteri ASCII con un algoritmo di recognition dei simboli.

7 In una fase di preprocessing, limmagine, viene suddivisa in sotto immagini, ognuna contenente un unico simbolo (o glyph). Ogni quadrato ha lo stesso formato e il glyph è centrato. I pixel possono non essere letti in ordine e convertiti in una successione dimensioni x = (x 1,..., x d ), il pixel i corrisponde alla dimensione x i Per ogni pixel, un colore di background è rappresentato da 0 e da un colore di foreground da 1

8 Ogni x è un vettore binario con la dimensione uguale al numero di pixel dellimmagine del singolo carattere ottenuto della fase di preprocessing che circonda ogni simbolo Loutput del sistema di classificazione è un singolo carattere preso in uninsieme di caratteri possibili Alla procedura di training si da in input una sequenza di training ((x 1, y 1 )...,(x n, y n )) e darà in output un classificatore "istruito" M.

9 Il classificatore M dovrà essere utilizzato per ogni nuovo esempio x(vettore di pixel che rappresenta un carattere) per fare la predizione della corrispondente classe y(lattuale carattere)

10 Il più semplice classificatore è denominato classificatore binario. Questo tipo di classificatore può produrre soltanto due etichette in output per ogni caso della prova. Le etichette sono scritte solitamente +1 e -1 o 0 e 1 secondo il problema Ci sono due modi per creare classificatori multi classe a partire da classificatori binari: one-of-k style A Coppia

11 Un esempio comune della classificazione binaria è lo spam- filtering problem. Questo problema deve determinare se un dato messaggio di è non automaticamente una pubblicità commerciale indesiderata (Spam) o prima che sia portato all'attenzione di un utente del . Un altro esempio di classificatore è il classificatore dei multiclass classifier. Questo tipo di classificatore applica più di due tipi di etichette differenti. Ciò è utile nei casi di riconoscimento di una cifra scritta a mano, dove ci sono almeno dieci etichette differenti per le cifre scritte a mano che devono essere date in output

12 one-of-k style: un classificatore è addestrato per ogni classe, per ognuna delle k classi del problema di classificazione multiclass. Ogni classificatore è istruito per distinguere solo membri della propria classe e rifiutare membri di ogni altra classe(return 0)

13 Istruisce a coppia classificatori binari separati per distinguere ogni un singola coppia di classi disordinate, prese in considerazione È usato uno schema di votazione per determinare la classe vincitrice tra tutti i classificatori, per ogni test in input. Questo provoca O(k 2 ) classificatori per k classi

14 One-of-k è meno esatto ma più semplice e veloce A coppia è più accurata ma meno veloce

15 Il più semplice modo per usare NCD per classificare è lo scegliere, per ognuna delle k classi un singolo oggetto prototipo che in qualche modo catturano lessenza della categoria.

16 Se volessimo distinguere linglese dal cinese, si potrebbe usare un dizionario per linglese come prototipo per la classe inglese ed un dizionario per il cinese come prototipo per la classe cinese. la classificazione è fatta calcolando lNCD dell'oggetto di test con ciascuno dei k oggetti del prototipo e selezionando la classe che corrisponde all'oggetto con il minimo valore di NCD Questo metodo, funziona bene per alcuni domini, mentre ci sono piccoli problemi di classificazione su molti altri di un errore incorreggibile

17 Questi problemi, sono dovuti al fatto che le classi diverse di molti problemi(come le classi dei caratteri dellOCR), spesso non sono ben bilanciate sotto alcuni tipi di compressori. La classe del carattere di pixel del numero 1 è sufficientemente sottile ed ha un alto valore di NCD confrontata con molti altri membri della classe degli 1. Diversamente con il numero 8, che ha una ricca combinazione di figure e tende a comprimere bene la maggior parte delle altri immagini dovute allampia varietà di match possibili

18 Questo porta ad un errore costante che non può essere migliorato poiché non sono disponibili cambiamenti naturali.

19 La più semplice soluzione del problema per usare NCD con una classificazione molto accurata è quella di combinarla con un sistema di classificazione istruibile usando NCD ed una tecnica di estrazione delle caratteristiche. Un sistema di classificazione istruibile prova a trovare le relazioni funzionali in un range discreto (linsieme di classi)

20 Come le reti neurali e la SVM(Support Vector Machines), sono costruiti su algoritmi di learning continui, che fanno parte di unampia classe di algoritmi di computer learning.

21 Data una sequenza di training, (x 1, y 1 ),..., (x n, y n ) Impara/da come output una funzione continua M mappando un vettore di input d- dimensionale in reali unidimensionali Nello stesso modo in cui impara, lalgoritmo di training può essere trasformato in un algoritmo di learning per classificatori binari. Classificando il test vector x = 1 se M(x)>0 x=-1 se M(x)<0

22 Applicando questa idea, ad un problema di oggetti sconosciuti, in un qualche sono convertiti in un vettore di dimensioni fissate, usando lo stesso ordine di proiezione usata da NCD. Una delle tecniche più semplici è di creare d oggetti dome ancore ed usarle per convertirle tutti gli altri oggetti dellesperimento in vettori d-dimensionali

23 Ciò può essere memorizzato usando l'oggetto ancora a i per calcolare la dimensione del vettore i per 1id Cioè per oggetto o calcoliamo il corrispondente x = (x 1..., x d ) usando x i = NCD(o, a i ).

24 Lancora può essere scelta da un esperto umano o in modo casuale da un grande insieme di oggetti di training. Si consiglia di prendere almeno un ancora per ogni categoria in modo da non avere abbassamento dellaccuratezza dovuta allinsufficiente variazione dellancoraggio

25 NCD può usare le ancore Può essere usato anche con la Normalizzazione delle Distanze di Google(NDG)

26 Nella scelta di un sistema di learning con lestrazione di caratteristiche mediante ancore sembra la migliore Una particolare classe di algoritmi di learning sono chiamati Universal Continuous Funcution Lerners che includono Reti Neurali SVM (Support Vector Machine)

27 La proprietà di Universal Learning in questo contesto significa che possiamo approssimare ogni funzione continua ad un qualsiasi alto grado di accuratezza dato un sufficiente numero di dati di training vicini al punto che stiamo prendendo in considerazione Usando questa proprietà su un classificatore, si assicura un aumento di affidabilità ed ottimalità dei risultati generati rispetto ad molti altri algoritmi di learning specializzati

28 Sia le reti neurali che la SVM, prendono in input un insieme di etichette dei dati di training ed alcuni modelli parametri specializzati che devono essere settati. In generale i parametri specializzati, sono settati da un esperto umano o da un insieme di procedure automatiche usando cross- validation basate su parameter scanning

29 Hanno il vantaggio di essere sistemi di classificazione universali Hanno tantissime procedure di training In questa tesi sono state scelte Fast Backpropagation Self Organizing Maps(SOM) SOM non è stato progettato esplicitamente per la classificazione, ma è stato facilmente adattato per essere usato per la classificazione in quando usato congiuntamente alla metrica di compressione come NCD

30 Cè stata una grande difficoltà con tutti i tipi di reti neurali, Alcune regolazioni erano difficili da mettere appunto Ci sono delle componenti non lineari(funzione di trasferimento) ed alcune scelte come le funzione sigmoid trascendental come larcotangente

31 Un altro difficile problema daffrontare quando si usano molti tipi di reti neurali è il decidere quanti strati debbano essere usati e per ogni specifico livello, quanti debbano avere un certo settaggio

32 Ci sono quattro difficili scelte prima di decidere quale rete neurale e poiché presentano tutte tanti problemi si fanno due scelte di addestramento: Overlearning Underlearning

33 Si ha quando ci sono troppi neuroni Durante la fase di training, la rete neurale sembra che abbia una grande accuratezza sui dati, ma essendo troppi, non riesce a generalizzare

34 Quando ci sono pochi neuroni Lesattezza della risposta si ha solo in un numero ristretto di dati in input

35 E difficile dire quali siano i parametri migliori I sistemi commerciali usano una elevata quantità di macchinari semi-automatici per aiutare lutente a settare i parametri Questi problemi portano ad una difficile integrazione tra sistemi easy-to-use e sistemi di addestramento parameter-free

36 La Statistical Learning Theory, detta anche teoria di Vapnik –Chervonenkis, caratterizza le proprietà di algoritmi di apprendimento che permettono loro di generalizzare a dati nuovi elementi appresi in precedenza. Una SVM è un classificatore binario che apprende il confine fra esempi appartenenti a due diverse classi. Funziona proiettando gli esempi in uno spazio multidimensionale e cercando un iperpiano di separazione in questo spazio.

37 L'iperpiano di separazione massimizza la sua distanza (il margine) dagli esempi di training più vicini. Proprietà generali delle SVM: improbabile l'overfitting, Capacità di gestire dati con molte caratteristiche descrittive, compattamento dell'informazione

38 Per usare una SVM si ha bisogna scegliere una funzione di Kernel che la corrispondente funzione di trasferimento nelle reti neurali La funzione Kernel va scelta accuratamente per un tipo di problema: è sempre possibile mappare linput in uno spazio di dimensione maggiore del numero di punti del training set e produrre un classificatore perfetto; tuttavia questi generalizzerebbe malissimo su dati nuovi, per via delloverfitting.

39 Ci sono due parametri per la SVM C è la costante delle risposte sbagliate g rappresenta il kernel e determina il tasso di decadimento esponenziale intorno a ciascuno dei punti di training

40 Ve la risparmio !!! y i (x i ·w+b)1 0.

41 Grazie ;)


Scaricare ppt "(Normalized Compression Distance) Gruppo MAPAG Ingenito Antonio 0521000141."

Presentazioni simili


Annunci Google