La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Apprendimento Automatico: Apprendimento Pigro (Lazy Learning)

Presentazioni simili


Presentazione sul tema: "Apprendimento Automatico: Apprendimento Pigro (Lazy Learning)"— Transcript della presentazione:

1 Apprendimento Automatico: Apprendimento Pigro (Lazy Learning)
Roberto Navigli Cap. 5.3 [Tan, Steinbeck & Kumar]

2 Concetto di base: Pigrizia
Pigrizia mentale (Devoto-Oli 2008): atteggiamento di chi trascura l’arricchimento delle proprie conoscenze […]

3 Il più semplice lazy learner: rote classifier
In altre parole Il principio di base è quello di ritardare il processo di modellazione dell’insieme di addestramento finché non è richiesto per classificare le istanze di test Lazy learner vs. eager learner Il più semplice lazy learner: rote classifier Apprende tutto a memoria Classifica solo ciò che fa match con almeno un esempio dell’insieme di addestramento

4 Un noto rappresentante è l’algoritmo k-Nearest Neighbours (kNN)
Siamo seri! Per rendere l’approccio più flessibile, cerchiamo gli esempi di addestramento relativamente più simili all’istanza di test “Se cammina come una papera, fa qua qua come una papera e somiglia fisicamente a una papera, allora probabilmente è una papera!” Apprendimento basato su istanze Un noto rappresentante è l’algoritmo k-Nearest Neighbours (kNN)

5 Chi sono i k “vicini più vicini”?
Le istanze sono rappresentate mediante punti nello spazio m-dimensionale degli m attributi I k “vicini più vicini” (nearest neighbours) di un’istanza di test x sono i k punti dell’insieme d’addestramento più vicini a x + + + + + + + + + + + + - - - x x x - - - + + + - - - + + + + + + + + + + + + + + + + + + k=1 k=2 k=3

6 Come avviene la classificazione?
Si sceglie la classe di maggioranza dei k esempi più vicini: dove Dx è il sottoinsieme di D dei k esempi più vicini a x (majority voting) Se k è troppo piccolo si rischia overfitting dovuto al rumore nell’insieme di addestramento Se k è troppo grande, potremmo includere istanze troppo dissimili dall’istanza di test

7 For each istanza di test x do
Algoritmo kNN kNN(k, D) For each istanza di test x do Calcola d(x, xi) per ogni esempio (xi, yi)  D Determina l’insieme Dx  D dei k esempi più vicini a x Classifica x:

8 Posso migliorare la classificazione?
Vista la dipendenza dalla scelta di k, è possibile migliorare la classificazione di kNN pesando il contributo di ciascun esempio secondo la sua distanza: Quindi la classe di maggioranza è scelta come segue: (majority voting pesato sulla distanza)

9 Alcune metriche per determinare la distanza
Distanza euclidea: Distanza di Manhattan (o city block): Distanza di Minkowski (generalizzazione):

10 Misure di Prossimità: Cosine Similarity
Nota: se la distanza è normalizzata tra 0 e 1, la similarità sim(x, y) è data da 1-d(x, y) Esempio: similarità del coseno di due vettori di documenti:

11 Misure di Prossimità: Coefficiente di Jaccard
Esempio: similarità di Jaccard di due vettori di documenti:

12 kNN “in a nutshell” Vantaggi: Svantaggi:
Non è necessario appprendere né costruire un’astrazione (modello) a partire dai dati kNN può adattare i propri confini di decisione in modo arbitrario, producendo una rappresentazione del modello più flessibile Si può arricchire incrementalmente l’insieme di addestramento Svantaggi: Classificare le istanze di test è costoso, perché dobbiamo calcolare i valori di prossimità tra ciascun esempio di addestramento e l’istanza di test Essendo la classificazione fatta in modo locale (al contrario degli alberi di decisione), kNN è suscettibile al rumore La misura di prossimità può essere dominata da alcuni attributi (es. altezza vs. peso)

13 Esercizio Provate ad adattare l’algoritmo ID3 al paradigma di apprendimento pigro


Scaricare ppt "Apprendimento Automatico: Apprendimento Pigro (Lazy Learning)"

Presentazioni simili


Annunci Google