SlideShare a Scribd company logo
1 of 16
Download to read offline
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
FONDAMENTI
Dati oggetto della disciplina Machine Learning, puรฒ essere tradotto in italiano in
vari modi: forma, campione, esempio, โ€ฆ
PATTERN RECOGNITION: disciplina che studia il riconoscimento dei pattern
Tipi di pattern
NUMERICI: valori associati a caratteristiche misurabili o conteggi
โ€ข Continui o discreti, in ogni caso ordinabili
โ€ข Lโ€™estrazione di caratteristiche produce vettori numerici (feature vectors)
โ€ข Esempi: altezza, peso, lunghezza piede, โ€ฆ
CATEGORICI: valori associati a caratteristiche qualitative e alla presenza o assenza
di una caratteristica
โ€ข Non sono mappabili su valori numerici
โ€ข Possono essere ordinabili
โ€ข Esempi: sesso, colore occhi, gruppo sanguigno, โ€ฆ
SEQUENZE: pattern sequenziali con relazioni spaziali o temporali
โ€ข Lunghezza variabile, allineamento spazio temporale e memoria
โ€ข Importanza della posizione, predecessori e successori
โ€ข Esempi: stream audio video, frasi, โ€ฆ
ALTRI PATTERN STRUTTURATI: output organizzati in strutture complessi
โ€ข Applicazioni in bioinformatica, Natural Language Processing, Speech
recognition
โ€ข Grafi, alberi, โ€ฆ
SUPERVISIONATO: le classi dei pattern utilizzati per lโ€™addestramento sono note
(training set etichettato)
NON SUPERVISIONATO: non sono note le classi dei pattern
SEMI-SUPERVISIONATO: il training set รจ parzialmente etichettato, ottimizzazione
con pattern non etichettati
BATCH: addestramento una sola volta poi passaggio al working mode
INCREMENTALE: piรน addestramenti dopo quello iniziale, rischio: catastrofic
forgetting
NATURALE: addestramento continuo (supervisionato e non supervisionato)
REINFORCEMENT LEARNING โ€ข OBIETTIVO: apprendere un comportamento
โ€ข Interazione ambiente-agente
โ€ข Sistema di ricompense/premi (anche ritardate rispetto allโ€™azione)
โ€ข Q-Learning, Deep reinforcement
Il comportamento di un algoritmo di ML รจ regolato da un set di parametri.
Lโ€™apprendimento รจ il processo che cerca il valor ottimo di questi parametri.
La funzione obiettivo ๐’‡(๐‘ป๐’“๐’‚๐’Š๐’, ๐œฃ) puรฒ rappresentare lโ€™ottimalitร  della soluzione
o lโ€™errore o perdita.
Lโ€™apprendimento cerca di massimizzare ๐›ฉโˆ—
= ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘Ž๐‘ฅ ๐›ฉ ๐‘“ ๐‘‡๐‘Ÿ๐‘Ž๐‘–๐‘›, ๐›ฉ o
minimizzare il valore della funzione obiettivo ๐›ฉโˆ—
= ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘–๐‘› ๐›ฉ ๐‘“ ๐‘‡๐‘Ÿ๐‘Ž๐‘–๐‘›, ๐›ฉ .
Gli iperparametri sono valori che definiscono le caratteristiche degli algoritmi di
ML (es: numero di neuroni in una rete neurale, numero di vicini in un
classificatore k-NN, grado di un polinomio utilizzato per la regressione, tipo di loss
function, โ€ฆ)
Lโ€™apprendimento puรฒ essere effettuato piรน volte a partire da iperparametri
differenti, scegliendo al termine il set di iperparametri che forniscono le
prestazioni migliori.
PATTERN APPRENDIMENTO
PARAMETRI, IPERPARAMETRI, FUNZIONE OBIETTIVO
๏‘
TRAINING SET: insieme di pattern utilizzati durante lโ€™addestramento
VALIDATION SET: insieme di pattern utilizzati per tarare gli iperparametri (H)
TEST SET: insieme di pattern su cui valutare le prestazioni finali
TRAING, VALID e TEST SET dovrebbero essere disgiunti.
K-FOLD CROSS VALIDATION
Metodo di suddivisione dei pattern nei 3 set in caso di campioni ridotti.
K partizioni omogenee, K cicli di addestramento su K-1 partizioni usate per il
training e 1 per il validation. Prestazione = media/mediana
LEAVE-ONE-OUT: caso estremo di cross validation con fold di dimensione 1
TRAINING, VALIDATION, TEST SET
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
FONDAMENTI
Le prestazioni possono essere misurate direttamente tramite la funzione
obiettivo. รˆ perรฒ utile definire misure maggiormente correlate alla semantica del
problema.
CLASSIFICAZIONE
CLOSED SET: i pattern appartengono ad una delle classi note
ACCURATEZZA = pattern correttamente classificati / pattern classificati
ERRORE = 100% - ACCURATEZZA
OPEN SET: i pattern possono appartenere ad una delle classi note oppure no.
Approccio: aggiunta classe ยซresto del mondoยป
Approccio: definizione livello di soglia per cui le assegnazioni con un livello di
confidenza (probabilitร ) inferiore alla soglia non vengono effettuate
N = Numero di pattern
TP (True Positive) = # pattern correttamente classificati
FP (False Positive) = # pattern classificati erroneamente
TN (True Negative) = # pattern correttamente attribuiti a ยซresto del mondoยป o sotto soglia
FN (False Negative) = # pattern erroneamente attribuiti a ยซresto del mondoยป o sotto soglia
Misure delle prestazioni
False Positive Rate = FP/N
False Negative Rate = FN/N
Nei sistemi con soglia, il valore della soglia determina i risultati su FPR e FNR:
โ€ข soglia elevata = FPR basso e FNR alto
โ€ข soglia bassa = FPR alto e FNR basso
Le curve FPR e FNR possono essere condensate in:
DET Detection Error Tradeoff (FNR/FPR)
ROC Receiver Operating Characteristic (TPR/FPR)
Nei sistemi biometrici si parla di False Match / False Non-Match e, in caso di multiclasse di FPIR (False Positive
Identification Rate) e FNIR (False Negative Identification Rate)
PRECISION = TP / ( TP + FP ) = TRUE POSITIVE / POSITIVE (pertinenza)
RECALL = TP / ( TP + FN ) = TRUE POSITIVE / RELEVANT ELEMENTS (completezza)
PRESTAZIONI
Obiettivo primario durante la fase di training: CONVERGENZA
Andamento decrescente del LOSS e crescente dellโ€™ACCURACY.
DINAMICHE:
โ€ข LOSS non decresce (oppure oscilla significativamente)
โ€ข il sistema non converge
โ€ข metodo di ottimizzazione non efficace:
โ€ข modificare iperparametri
โ€ข modificare learning rate
โ€ข correggere errori di implementazione del metodo
โ€ข LOSS decresce ma lโ€™ACCURACY non cresce
โ€ข probabilmente la loss function scelta รจ errata
โ€ข ACCURACY non si avvicina al 100% sul training
โ€ข il modello รจ inadeguato:
โ€ข aumentare i gradi di libertร  del classificatore (troppi parametri
potrebbero essere troppo restrittivi)
โ€ข modificare gli iperparametri
GENERALIZZAZIONE: capacitร  di trasferire il livello di accuratezza ottenuto sul
traininig set al validation set
OVERFITTING: ottenimento di risultati ad alte prestazioni sul training set ma non
sul validation set. Si verifica facilmente con train set di piccole dimensioni.
Durante lโ€™addestramento รจ opportuno interrompere il processo al momento
ideale, quando il livello di accuratezza sul validation set non cresce o inizia a
decrescere.
Controllare lโ€™overfitting
per massimizzare la generalizzazione
โ€ข gradi di libertร  del classificatore adeguati al problema
โ€ข aumentarli gradualmente
โ€ข regolaritร  della soluzione appresa
โ€ข aggiungere un fattore di regolarizzazione
CONVERGENZA โ€ข GENERALIZZAZIONE โ€ข OVERFITTING
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
FONDAMENTI
MACHINE
LEARNING
SUPERVISED
LEARNING
CLASSIFICAZIONE
BAYES
Parametrico
Distribuzione
multinormale
Non
parametrico
Parzen Window
NEAREST
NEIGHBOR
k-NN
Metriche
SVM
Lineari
Non lineari
Multiclasse
MULTI
CLASSIFICATORI
Fusione a livello
di decisione
Fusione a livello
di confidenza
Bagging
(Random Forest)
Boosting
(AdaBoost)
REGRESSIONE
LINEARE
Simple linear
Multiple linear
NON LINEARE
Variabile
indipendente
Ottimizzazione
numerica
UNSUPERVISED
LEARNING
CLUSTERING
GERARCHICO
CENTROID
BASED
K-means
Fuzzy K-means
Expectation -
Maximization
Approcci ML solo con
sufficienti esempi per
training e validation set
Sforzi significativi per
etichettare grandi
insiemi di pattern
Training, Validation e
Test set devono essere
rappresentativi
Automatizzare le
procedure di valutazione
delle performance
Confrontare le
prestazioni solo con
sistemi addestrati su
stesso dataset e
protocollo
Attenzione agli intervalli
di confidenza per risultati
su set di piccole
dimensioni
Scrivere codice
strutturato, ordinato
MACHINE LEARNING IN PRATICA
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
CLASSIFICATORI โ€ข Bayes
Insieme di pattern aventi proprietร  comune
Esempi di classificazione: spam detection / credit card fraud detection / face
recognition / pedestrian classification / medical diagnosys / stock trading
CLASSE
Ipotesi sulla forma delle distribuzioni.
Piccole dimensioni del training set e/o ragionevole certezza sulla curva di distribuzione.
DISTRIBUZIONE NORMALE (d=1)
๐‘(๐‘ฅ) =
1
๐œŽ 2๐œ‹
๐‘’
โˆ’
(๐‘ฅโˆ’๐œ‡)2
2๐œŽ2
DISTRIBUZIONE MULTINORMALE
๐‘(๐‘ฅ) =
1
2๐œ‹ ๐‘‘/2 ฮฃ 1/2
๐‘’โˆ’
1
2 ๐‘ฅโˆ’๐œ‡ ๐‘กฮฃโˆ’1 ๐‘ฅโˆ’๐œ‡
Gli elementi diagonali della matrice di covarianza sono le varianze per ogni dimensione, gli
elementi non diagonali sono le covarianze e determinano la correlazione statistica
( = 0 ๏ƒจ inipendenti; > 0 ๏ƒจ correlati positivamente; < 0 ๏ƒจ correlati negativamente).
DISTANZA DI MAHALANOBIS ๐’“ ๐Ÿ
= ๐’™ โˆ’ ๐ ๐’•
๐œฎโˆ’๐Ÿ
๐’™ โˆ’ ๐
Definisce i bordi a densitร  costante in una distribuzione multinormale.
Sostituisce spesso la distanza euclidea essendo in grado di pesare le diverse componenti
tenendo conto dei relativi spasi di variazione e della loro correlazione.
DECISION BOUNDARY / DECISION SURFACE: zona di confine tra regioni che il
classificatore associa a classi diverse, sul confine la classificazione รจ ambigua.
CONFIDENZA DI CLASSIFICAZIONE
Vantaggio del classificatore di Bayes legato al fatto che produce un valore probabilistico di
output, utilizzabile come confidenza per scartare pattern in applicazioni open set con
soglia o costruire un multiclassificatore.
Se non serve la confidenza ๐’ƒ = ๐’‚๐’“๐’ˆ๐’Ž๐’‚๐’™๐’Š=๐Ÿ...๐’” ๐‘ท ๐’˜๐’Š ๐’™ = ๐’‚๐’“๐’ˆ๐’Ž๐’‚๐’™๐’Š=๐Ÿ...๐’” ๐’‘(๐’™|๐’˜๐’Š) โ‹… ๐‘ท(๐’˜๐’Š)
PARAMETRICO
Problema posto in termini probabilistici.
RELAZIONI
๐‘(๐‘ฅ) =
๐‘–=1
๐‘ 
๐‘(๐‘ฅ|๐‘ค๐‘–) โ‹… ๐‘ƒ(๐‘ค๐‘–) ๐‘‘๐‘œ๐‘ฃ๐‘’
๐‘–=1
๐‘ 
๐‘ƒ(๐‘ค๐‘–) = 1
๐‘ƒ(๐‘ค๐‘–|๐‘ฅ) =
๐‘(๐‘ฅ|๐‘ค๐‘–) โ‹… ๐‘ƒ(๐‘ค๐‘–)
๐‘(๐‘ฅ)
Per ogni classe รจ necessario calcolare la probabilitร  a priori e la densitร  di
probabilitร  condizionali.
La regola assegna la classe (b) con la probabilitร  a posteriori piรน alta per il pattern
x: ๐’ƒ = ๐’‚๐’“๐’ˆ๐’Ž๐’‚๐’™๐’Š=๐Ÿ...๐’”{๐‘ท(๐’˜๐’Š|๐’™)}
๐‘ท(๐’†๐’“๐’“๐’๐’“) =
โ„œ1
๐‘(๐‘ฅ|๐‘ค2)๐‘ƒ(๐‘ค2)๐‘‘๐‘ฅ +
โ„œ2
๐‘(๐‘ฅ|๐‘ค1)๐‘ƒ(๐‘ค1)๐‘‘๐‘ฅ
La conoscenza delle densitร  di probabilitร  condizionale
รจ possibile solo in teoria.
APPROCCIO BAYESIANO
Definizione Descrizione Esempio
Probabilitร  che una personaโ€ฆ
๐‘(๐‘ฅ|๐‘ค๐‘–) Densitร  di probabilitร 
condizionale di x data wi
Probabilitร  che il prossimo
pattern sia x sotto lโ€™ipotesi
che la sua classe sia wi
โ€ฆabbia una certa altezza
sapendo che รจ una donna
๐‘ƒ(๐‘ค๐‘–) Probabilitร  a priori Probabilitร  che il prossimo
pattern sia di classe wi
โ€ฆsia donna
๐‘(๐‘ฅ) Densitร  di probabilitร 
assoluta
Probabilitร  che il prossimo
pattern sia x
โ€ฆabbia una certa altezza
๐‘ƒ(๐‘ค๐‘–|๐‘ฅ) Probabilitร  a posteriori
di wi dato x
Probabilitร  che il pattern x
sia di classe wi
โ€ฆsia una donna sapendo che
ha una certa altezza
Attenzione alle ipotesi sulle distribuzioni delle densitร  di probabilitร .
1. Valutare la corrispondenza alla normalitร  delle s distribuzioni
1. formalmente (Malkovich/Afifi)
2. empiricamente (tramite visualizzazione dati)
2. Stima del vettore medio e della matrice di covarianza
3. Probabilitร  a priori estratte dal campione nel training set o tutte uguali
4. Assegnazione della classe ad ogni nuovo pattern in base alla regola di Bayes.
IN PRATICA
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
CLASSIFICATORI โ€ข Bayes
Apprendimento delle distribuzioni dal training set.
La stima delle densitร  รจ solitamente affrontabile in spazi a dimensionalitร  ridotta.
Campionamento: lโ€™idea รจ quella di campionare lo spazio (indipendentemente dal numero
di dimensioni) per individuare, nelle diverse zone, la distribuzione dei pattern nelle classi.
Approcci: divisione in celle (problemi legati ai confini e alla scelta delle dimensioni delle
celle), utilizzo di intorni (con problemi legati alla scelta delle dimensioni degli intorni).
Probabilitร  che un pattern ๐’™ sia dentro โ„œ : ๐‘ƒ1 = โ„œ
๐‘(๐’™โ€ฒ)๐‘‘๐’™โ€ฒ
Probabilitร  che ๐‘˜ pattern siano dentro โ„œ: ๐‘ƒ๐‘˜ =
๐‘›
๐‘˜
๐‘ƒ1
๐‘˜
1 โˆ’ ๐‘ƒ1
๐‘› โˆ’ ๐‘˜
Valore medio: ๐‘˜ = ๐‘›๐‘ƒ1 โ‡’ ๐‘ƒ1 = ๐‘˜ ๐‘›
Se โ„œ di volume ๐‘‰ รจ sufficientemente piccola: ๐‘ƒ1 = โ„œ
๐‘(๐‘ฅโ€ฒ)๐‘‘๐‘ฅ โ‰ˆ ๐‘(๐‘ฅ) โ‹… ๐‘‰
Da cui: ๐‘(๐‘ฅ) = ๐‘ƒ1 ๐‘‰ = ๐‘˜ ๐‘› โ‹… ๐‘‰
Il volume di un ipercubo centrato in ๐’™ con lato โ„Ž ๐‘› รจ: ๐‘˜ ๐‘› = ๐‘–=1
๐‘›
๐œ‘
๐’™๐’Šโˆ’๐’™
โ„Ž ๐‘›
Da cui: ๐‘(๐‘ฅ) = ๐‘ƒ๐‘› ๐‘‰๐‘› = ๐‘˜ ๐‘› ๐‘› โ‹… ๐‘‰๐‘› = ๐‘–=1
๐‘›
๐œ‘
๐’™๐’Šโˆ’๐’™
โ„Ž ๐‘›
๐‘› โ‹… ๐‘‰๐‘›
Se la finestra รจ piccola la stima รจ rumorosa e statisticamente instabile.
Se la finestra รจ grande la stima รจ stabile ma piuttosto vaga e sfuocata.
Per ottenere convergenza la dimensione della finestra deve essere calcolata tenendo
conto del numero di campioni del training set: ๐‘‰๐‘› = ๐‘‰1 ๐‘›
Kernel function soft vengono utilizzate al posto degli ipercubi in modo da realizzare
superfici decisionali piรน regolari (smoothed). Devono essere funzioni di densitร  (sempre
positive con integrale su tutto lo spazio pari a 1).
๐‹(๐’–) =
๐Ÿ
(๐Ÿ๐…) ๐’…/๐Ÿ
๐’†โˆ’
๐’– ๐’• ๐’–
๐Ÿ
NON PARAMETRICO โ€ข PARZEN WINDOW
(dalla prova di autovalutazione del 17/12/2016)
Date due distribuzioni multinormali identificate dai seguenti parametri:
๐0 =
1,03
1,03
ฮฃ0
โˆ’1
=
52,56 โˆ’10,05
โˆ’10,05 36,88
ฮฃ0 = 0,000544 ๐‘ƒ ๐‘ค0 = 0,6
๐1 =
2,02
1,53
ฮฃ1
โˆ’1
=
100,58 โˆ’22,34
โˆ’22,34 37,85
ฮฃ1 = 0,000302 ๐‘ƒ ๐‘ค1 = 0,4
Nellโ€™ipotesi dellโ€™impiego di un classificatore di Bayes multinormale, calcolare per il punto
๐’™ =
1,60
1,25
:
โ€ข Le densitร  di probabilitร  condizionali
โ€ข Le probabilitร  a posteriori
โ€ข Lโ€™indice della classe restituita in output.
Si ricorda che la densitร  di probabilitร , nel caso della distribuzione multinormale รจ:
๐‘ ๐’™ =
1
2๐œ‹
d
2 ฮฃ
1
2
โˆ™ ๐‘’โˆ’
1
2
๐’™โˆ’๐ ๐‘กฮฃโˆ’1 ๐’™โˆ’๐
SVOLGIMENTO
1) Si calcolano le densitร  di probabilitร  condizionali (d=2)
๐‘ ๐’™|๐‘ค0 =
1
2๐œ‹ โˆ™ 0,000544
โˆ™ ๐‘’
โˆ’
1
2
1,6โˆ’1,03 1,25โˆ’1,03
52,56 โˆ’10,05
โˆ’10,05 36,88
1,6โˆ’1,03
1,25โˆ’1,03 = 0,00193
๐‘ ๐’™|๐‘ค1 =
1
2๐œ‹ โˆ™ 0,000302
โˆ™ ๐‘’
โˆ’
1
2
1,6โˆ’2,02 1,25โˆ’1,53
100,58 โˆ’22,34
โˆ’22,34 37,85
1,6โˆ’2,02
1,25โˆ’1,53 = 0,00403
2) Si calcola la densitร  di probabilitร  assoluta di x
๐‘ ๐’™ = 0,00193 โˆ— 0,6 + 0,00403 โˆ— 0,4 = 0,00277
3) Si calcolano le probabilitร  a posteriori
๐‘ ๐‘ค0|๐’™ = 0,6 โˆ™ 0,00193 0,00277 = 0,418
๐‘ ๐‘ค1|๐’™ = 0,4 โˆ™ 0,00403 0,00277 = 0,582
4) Si valutano le probabilitร  a posteriori per scegliere la classe
La probabilitร  a posteriori รจ maggiore per la classe 1.
ESEMPI
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
CLASSIFICATORI โ€ข Nearest Neighbor
Comportamento di Nearest Neighbor strettamente collegato alla metrica adottata.
DISTANZA EUCLIDEA
Spesso utilizzata
Caso L2 delle metriche di Minkowski ๐ฟ ๐‘˜(๐‘Ž, ๐‘) = ๐‘–=1
๐‘‘
๐‘Ž๐‘– โˆ’ ๐‘๐‘–
๐‘˜ 1/๐‘˜
๐ฟ2(๐‘Ž, ๐‘) = ๐‘–=1
๐‘‘
๐‘Ž๐‘– โˆ’ ๐‘๐‘–
2 = ๐‘Ž๐‘– โˆ’ ๐‘๐‘– 2
Non gestisce correttamente eventuali correlazioni (es. altezza e lunghezza piede).
NORMALIZZAZIONE SULLO SPAZIO DI VARIAZIONE
๐ฟ2 ๐‘Ž, ๐‘ = ๐‘–=1
๐‘‘ ๐‘ ๐‘–
๐‘ฃ ๐‘–
๐‘Ž๐‘– โˆ’ ๐‘๐‘–
2
๐‘ฃ๐‘–: ๐‘ ๐‘๐‘Ž๐‘ง๐‘–๐‘œ ๐‘‘๐‘– ๐‘ฃ๐‘Ž๐‘Ÿ๐‘–๐‘Ž๐‘ง๐‘–๐‘œ๐‘›๐‘’
๐‘๐‘–: ๐‘๐‘’๐‘ ๐‘œ ๐‘“๐‘’๐‘Ž๐‘ก๐‘ข๐‘Ÿ๐‘’ ๐‘– โˆ’ ๐‘’๐‘ ๐‘–๐‘š๐‘Ž
Gli spazi di variazione possono essere calcolati come range (max-min) sul training set o, meglio, in
proporzione alla deviazione standard.
I pesi possono essere scelti in proporzione al potere discriminante, ad esempio come rapporto:
๐‘๐‘– =
๐‘ฃ๐‘Ž๐‘Ÿ๐‘–๐‘Ž๐‘๐‘–๐‘™๐‘–๐‘กร  ๐‘–๐‘›๐‘ก๐‘’๐‘Ÿ๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘’ ๐‘“๐‘’๐‘Ž๐‘ก๐‘ข๐‘Ÿ๐‘’ ๐‘–
๐‘ฃ๐‘Ž๐‘Ÿ๐‘–๐‘Ž๐‘๐‘–๐‘™๐‘–๐‘กร  ๐‘–๐‘›๐‘ก๐‘Ÿ๐‘Ž๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘’ ๐‘“๐‘’๐‘Ž๐‘ก๐‘ข๐‘Ÿ๐‘’ ๐‘–
Variabilitร  interclasse: es. media deviazioni standard dei valori della feature in ogni classe
Variabilitร  intraclasse: es. deviazione standard dei valori della feature in un campione di pattern per
ogni classe
WHITENING TRANFORM
Efficace normalizzazione rispetto agli spazi di variazione, tiene conto delle correlazioni tra features.
Utilizza come metrica la distanza euclidea ma sullo spazio sfericizzato.
1. Rimuove le correlazioni ยซruotandoยป la nuvola di punti per allineare gli assi di variazione
principale agli assi cartesiani
2. Sferiricizza lโ€™ellissoide uniformando le varianze (autovalori) a 1 lungo tutti gli assi
DISTANZA DI MAHALANOBIS ๐’“ ๐Ÿ = ๐’™ โˆ’ ๐ ๐’• ๐œฎโˆ’๐Ÿ ๐’™ โˆ’ ๐
METRIC LEARNING
Approccio piรน generale per la scelta della metrica: learning supervisionato della metrica.
Obiettivo: determinare una trasformazione degli input che avvicini i pattern della stessa classe e
allontani quelli di classi diverse.
โ€ข Determinazione di una matrice G di trasformazione: ๐‘ฎ๐’‚ โˆ’ ๐‘ฎ๐’ƒ 2
โ€ข Approcci non lineari: ๐‘ฎ๐œ™(๐’‚) โˆ’ ๐‘ฎ๐œ™(๐’ƒ) 2 ๐œ™: ๐‘“๐‘ข๐‘›๐‘ง๐‘–๐‘œ๐‘›๐‘’ ๐‘›๐‘œ๐‘› ๐‘™๐‘–๐‘›๐‘’๐‘Ž๐‘Ÿ๐‘’
SIMILARITร€ COSENO E DISTANZA COSENO
Utilizzata in applicazioni di information retrieval, data mining, text mining.
Due vettori identici hanno similaritร  1, due opposti hanno similaritร  -1.
๐ถ๐‘œ๐‘ ๐‘†๐‘–๐‘š๐‘–๐‘™๐‘Ž๐‘Ÿ๐‘–๐‘ก๐‘ฆ ๐’‚, ๐’ƒ = ๐’‚ ๐’• โˆ™ ๐’ƒ ๐’‚ โˆ™ ๐’ƒ
๐ด๐‘›๐‘”๐‘ข๐‘™๐‘Ž๐‘Ÿ๐ท๐‘–๐‘ ๐‘ก๐‘Ž๐‘›๐‘๐‘’ ๐’‚, ๐’ƒ = cosโˆ’1 ๐ถ๐‘œ๐‘ ๐‘†๐‘–๐‘š๐‘–๐‘™๐‘Ž๐‘Ÿ๐‘–๐‘ก๐‘ฆ ๐’‚, ๐’ƒ ๐œ‹
METRICHE
NEAREST NEIGHBOR classifica un pattern x assegnandogli la stessa classe del pattern a lui
piรน vicino nel training set sulla base di una metrica ๐’…๐’Š๐’”๐’•(โˆ™) specifica.
๐’…๐’Š๐’”๐’•(๐’™, ๐’™โ€ฒ) = ๐’Ž๐’Š๐’ ๐’™๐’Šโˆˆ๐‘ป๐‘บ{๐’…๐’Š๐’”๐’•(๐’™, ๐’™๐’Š)}
Lโ€™idea รจ di massimizzare la probabilitร  a posteriori in maniera pragmatica ๐‘ƒ(๐‘ค๐‘–|๐‘ฅ) โ‰ˆ ๐‘ƒ(๐‘ค๐‘–|๐‘ฅโ€ฒ)
La probabilitร  di errore di NN non supera mai il doppio del minimo errore possibile (Bayes)
Tassellazione di Voronoi: ogni pattern del training set determina un tassello allโ€™interno
del quale i pattern vengono assegnati alla stessa classe: un elemento poco affidabile
determina un errore di classificazione sui pattern vicini.
K-NEAREST NEIGHBOR definisce la classe di un pattern sulla base dei k pattern piรน vicini
k รจ un iperparametro, valori ottimali (< 10) da determinare su validation set separato
Se il training set รจ infinito, k-NN รจ migliore di 1-NN. Allโ€™aumentare di k, lโ€™errore converge a
quello Bayesiano.
Aumentare k significa estendere lโ€™ipersfera cercando di valutare la proprietร  a posteriori
lontano dal punto di interesse.
CONFIDENZA DI CLASSIFICAZIONE
๐‘†๐‘–๐‘Ž๐‘›๐‘œ ๐‘ฃ1, ๐‘ฃ2, . . . , ๐‘ฃ๐‘ 
๐‘–=1
๐‘ 
๐‘ฃ๐‘– = ๐‘˜ ๐‘– ๐‘ฃ๐‘œ๐‘ก๐‘– ๐‘œ๐‘ก๐‘ก๐‘’๐‘›๐‘ข๐‘ก๐‘– ๐‘‘๐‘Ž๐‘™ ๐‘๐‘Ž๐‘ก๐‘ก๐‘’๐‘Ÿ๐‘› ๐‘ฅ โ‡’ ๐‘๐‘œ๐‘›๐‘“๐‘–๐‘‘๐‘’๐‘›๐‘ง๐‘Ž:
๐‘ฃ1
๐‘˜
,
๐‘ฃ2
๐‘˜
, . . . ,
๐‘ฃ๐‘ 
๐‘˜
COMPLESSITร€ COMPUTAZIONALE
โ€ข Memorizzare tutti i pattern del training set
โ€ข Per ogni pattern calcolare la distanza da tutti i pattern del training set
โ€ข Ordinare le distanze per valutare le k piรน piccole
Semplificazioni (pattern prototipo):
EDITING eliminazione di pattern dal training set
CONDENSING derivazione di nuovi prototipi (es. vettore medio)
โ€ข Riduzione dei calcoli
โ€ข Prototipi maggiormente affidabili rispetto ai pattern
INDICIZZAZIONE DATI (kd-tree)
NN, kNN
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
CLASSIFICATORI โ€ข SVM
SVM lineare determina lโ€™iperpiano di separazione, tra tutti quelli possibili su due insiemi
di pattern di due classi linearmente separabili, con il maggior margine possibile, stimando
che in tal modo si possono classificare correttamente anche i pattern di test vicini al
confine.
MARGINE: distanza minima di punti delle due classi nel training set dallโ€™iperpiano.
IPERPIANO: ๐ท ๐’™ = ๐’˜ โˆ™ ๐’™ + ๐‘
DISTANZA VETTORE-IPERPIANO: ๐‘Ÿ = ๐ท ๐’™ ๐’˜
OBIETTIVO: individuare lโ€™iperpiano che massimizza la distanza (o minimizza lโ€™inverso)
๐‘€๐‘–๐‘›๐‘–๐‘š๐‘–๐‘ง๐‘ง๐‘Ž๐‘Ÿ๐‘’ ๐’˜ 2/2
๐‘‰๐‘–๐‘›๐‘๐‘œ๐‘™๐‘– ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โˆ’ 1 โ‰ฅ 0 ๐‘๐‘’๐‘Ÿ ๐‘– = 1, โ€ฆ , ๐‘›
SUPPORT VECTOR: pattern del training set che giacciono sul margine, da soli determinano
la soluzione al problema. ๐ท ๐’™ = 1 ๐’˜ = ยฑ1
SOLUZIONI: possono essere individuate tramite formulazione Lagrangiana e
formulazione duale tramite condizioni Karush-Kuhn-Tucker (KKT).
๐‘ญ๐’๐’“๐’Ž๐’–๐’๐’‚๐’›๐’Š๐’๐’๐’† ๐‘ณ๐’‚๐’ˆ๐’“๐’‚๐’๐’ˆ๐’Š๐’‚๐’๐’‚ ๐‘„ ๐’˜, ๐‘, ๐œถ =
1
2
๐’˜ โˆ™ ๐’˜ โˆ’
๐’Š=๐Ÿ
๐’
๐›ผ๐‘– ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โˆ’ 1
๐‘ซ๐’–๐’‚๐’๐’†
๐‘„ ๐œถ =
๐‘–,=1โ€ฆ๐‘›
๐›ผ๐‘– โˆ’
1
2
๐‘–,๐‘—=1โ€ฆ๐‘›
๐›ผ๐‘– ๐›ผ๐‘— ๐‘ฆ๐‘– ๐‘ฆ๐‘—(๐’™๐’Š โˆ™ ๐’™๐’‹)
๐‘๐‘œ๐‘› ๐‘ฃ๐‘–๐‘›๐‘๐‘œ๐‘™๐‘–
๐‘–=1โ€ฆ๐‘›
๐‘ฆ๐‘– ๐›ผ๐‘– = 0 ๐‘’ ๐›ผ๐‘– โ‰ฅ 0 ๐‘๐‘’๐‘Ÿ ๐‘– = 1, โ€ฆ ๐‘›
Risolvibile con algoritmi di programmazione quadratica:
๐ท ๐‘ฅ = ๐‘คโˆ— โˆ™ ๐‘ฅ + ๐‘ = ๐‘–,๐‘—=1โ€ฆ๐‘› ๐›ผ๐‘–
โˆ—
๐‘ฆ๐‘– ๐’™๐’Š โˆ™ ๐’™๐’‹ + ๐‘โˆ—
VANTAGGI
โ€ข Soluzione calcolata su un numero ridotto di support vector
โ€ข Complessitร  legata al numero di support vector e errore medio limitato dal rapporto
support vector / pattern
โ€ข Metodo adatto anche a dimensionaltiร  elevate: quadratica rispetto al numero di pattern
PATTERN LINEARMENTE SEPARATI
ยซRilassamento dei vincoli di separazioneยป per permettere che alcuni (il minor numero
possibile) pattern possano valicare il confine della classe.
VARIABILI DI SLACK: ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โ‰ฅ 1 โˆ’ ๐œ‰๐‘– per ogni pattern ๐’™๐’Š, la variabile ๐œ‰๐‘– definisce
la deviazione dal margine.
OBIETTIVO: massimizzare il margine e minimizzare il numero di elementi non
correttamente classificati.
๐‘€๐‘–๐‘›๐‘–๐‘š๐‘–๐‘ง๐‘ง๐‘Ž๐‘Ÿ๐‘’
๐’˜ 2
2
+ ๐ถ
๐‘–=1โ€ฆ๐‘›
๐œ‰๐‘–
๐‘‰๐‘–๐‘›๐‘๐‘œ๐‘™๐‘– ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โ‰ฅ 1 โˆ’ ๐œ‰๐‘– ๐‘๐‘’๐‘Ÿ ๐‘– = 1, โ€ฆ , ๐‘›
COEFFICIENTE C: definisce lโ€™importanza relativa degli errori di classificazione rispetto
allโ€™ampiezza del margine (รจ un iperparametro).
SOLUZIONI: come nel caso di pattern linearmente separati
PATTERN LINEARMENTE NON SEPARATI
Estensione SVM di separazione con superfici anche molto complesse.
MAPPING: dallo spazio di partenza ad uno spazio a piรน alta dimensionalitร .
KERNEL FUNCTION: ๐พ ๐’™, ๐’™โ€ฒ = ๐›ท(๐’™) โˆ™ ๐›ท(๐’™โ€ฒ) (la scelta di K รจ un iperparametro)
SOLUZIONE SENZA PARTICOLARI COMPLICAZIONI: ๐ท ๐‘ฅ = ๐‘–=1โ€ฆ๐‘› ๐›ผ๐‘–
โˆ—
๐‘ฆ๐‘– ๐พ ๐’™, ๐’™๐’Š + ๐‘โˆ—
Possibili Kernel Function
โ€ข POLINOMI DI GRADO Q (Q iperparametro)
โ€ข RADIAL BASIS FUNCTION (RBF) DI AMMPIEZZA ๐ˆ (๐œŽ iperparametro)
โ€ข 2-LAYER NEURAL NETWORK ๐พ ๐’™, ๐’™โ€ฒ = ๐‘ก๐‘Ž๐‘›โ„Ž ๐‘ฃ ๐’™ โˆ™ ๐’™โ€ฒ
+ ๐‘Ž (๐‘ฃ, ๐‘Ž iperparametri)
SVM NON LINEARE
Introdotta da Vapnik dal 1965 e successivamente perfezionata.
Molto utilizzato nella classificazione di pattern.
Anzichรฉ stimare le densitร  di probabilitร , risolve direttamente il problema di interesse
determinando le superfici decisionali tra le classi.
TEORIA
SVM determina la superficie di separazione tra 2 classi di pattern.
Possibili estensioni multiclasse (approcci al problema ancora aperto):
โ€ข ONE-AGAINST-ONE: ๐‘  ร— (๐‘  โˆ’ 1)/2 classificatori binari + majority vote rule
โ€ข ONE-AGAINST-ALL: richiede un numero di training SVM pari al numero delle classi e
assegna il pattern, al termine, in base alla massima distanza dalla superficie
decisionale.
SVM ESTENSIONE MULTICLASSE
Dimensionalitร  alta ๏ƒจ SVM lineare, tarare iperparametro C.
Dimensionalitร  bassa ๏ƒจ SVM non lineare, Kernel RBF
Dimensionalitร  media ๏ƒจ tentativi con entrambi
Multiclasse ๏ƒจ se possibile One-Against-One, altrimenti O-A-A
IN PRATICA
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
CLASSIFICATORI โ€ข Multiclassificatori
Esecuzione di classificazione con diversi classificatori e successiva fusione dei risultati.
Esecuzione parallela, in cascata o in modo gerarchico.
Lโ€™utilizzo di combinazioni di classificatori puรฒ migliorare molto le prestazioni.
METODI
La combinazione รจ efficace quando i singoli classificatori sono sufficientemente
indipendenti tra loro (non commettono gli stessi errori).
INDIPENDENZA:
โ€ข utilizzo di feature diverse (non correlate o poco correlate)
โ€ข utilizzo di diversi algoritmi per lโ€™estrazione delle features
โ€ข utilizzo di diversi algoritmi di classificazione
โ€ข utilizzo di diverse porzioni di training set per lo stesso algoritmo (bagging)
โ€ข iterazione addestramento sui pattern erroneamente classificati (boosting)
INDIPENDENZA
Ogni classificatore fornisce la propria decisione: classe a cui ha assegnato il pattern.
Metodi di combinazione dei risultati
MAJORITY VOTE RULE: il pattern assegnato alla classe maggiormente votata
๐ถ1, ๐ถ2, โ€ฆ , ๐ถ ๐‘›๐‘ ๐‘–๐‘›๐‘ ๐‘–๐‘’๐‘š๐‘’ ๐‘‘๐‘– ๐‘›๐‘ ๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘–๐‘“๐‘–๐‘๐‘Ž๐‘ก๐‘œ๐‘Ÿ๐‘–
๐œƒ๐‘–๐‘— =
1 ๐‘ ๐‘’ ๐‘– รจ ๐‘™๐‘Ž ๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘’ ๐‘ฃ๐‘œ๐‘ก๐‘Ž๐‘ก๐‘Ž ๐‘‘๐‘Ž ๐ถ๐‘—
0 ๐‘Ž๐‘™๐‘ก๐‘Ÿ๐‘–๐‘š๐‘’๐‘›๐‘ก๐‘–
๐‘ก = ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘Ž๐‘ฅ๐‘–=1โ€ฆ๐‘ 
๐‘—=1โ€ฆ๐‘›๐‘
๐œƒ๐‘–๐‘—
Prestazioni teoriche elevate dipendenti dalla totale indipendenza dei classificatori.
๐‘ƒ ๐‘š๐‘ข๐‘™๐‘ก๐‘– ๐‘›๐‘ =
๐‘š=๐‘˜
๐‘›๐‘
๐‘›๐‘
๐‘š
๐‘ƒ ๐‘š 1 โˆ’ ๐‘ƒ ๐‘›๐‘โˆ’๐‘š
BORDA COUNT: ogni classificatore fornisce una classifica delle classi in base alla
probabilitร ; i ranking sono convertiti in punteggi e viene assegnata la classe con punteggio
piรน alto (considera anche i non primi di ogni classificatore).
ONE AGAINST ONE: consente di risolvere un problema di classificazione multi-classe
attraverso classificatori binari
1. Per ๐‘  classi del problema, si addestrano ๐‘  ร— (๐‘  โˆ’ 1)/2 classificatori binari
1. Il pattern x รจ classificato da ogni classificatore assegnando un voto alla classe piรน probabile
2. Il pattern x รจ assegnato alla classe che ha ricevuto il maggior numero di voti (majority vote rule)
FUSIONE A LIVELLO DI DECISIONE
Ogni classificatore fornisce la confidenza di classificazione del pattern per ogni classe.
๐’„๐’๐’๐’‡๐’‹ = ๐‘๐‘œ๐‘›๐‘“๐‘—1, ๐‘๐‘œ๐‘›๐‘“๐‘—2, โ€ฆ , ๐‘๐‘œ๐‘›๐‘“๐‘—๐‘ 
Metodi di fusione
FUSIONE A LIVELLO DI CONFIDENZA
SOMMA ๐’”๐’–๐’Ž =
๐‘—=1โ€ฆ๐‘›๐‘
๐’„๐’๐’๐’‡๐’‹
Sceglie la classe con somma massima
Numericamente piรน stabile per valori di
confidenza bassi su uno o pochi classificatori
PRODOTTO ๐’‘๐’“๐’๐’… =
๐‘—=1โ€ฆ๐‘›๐‘
๐’„๐’๐’๐’‡๐’‹
Sceglie la classe con prodotto massimo
Metodo piรน corretto dal punto di vista
probabilistico nel caso di indipendenza
statistica
MASSIMO ๐‘š๐‘Ž๐‘ฅ๐‘– = max
๐‘—=1โ€ฆ๐‘›๐‘
๐’„๐’๐’๐’‡๐’‹๐’Š
Sceglie la classe che ha ottenuto la massima
confidenza massima
MINIMO ๐‘š๐‘–๐‘›๐‘– = min
๐‘—=1โ€ฆ๐‘›๐‘
๐’„๐’๐’๐’‡๐’‹๐’Š
Sceglie la classe che ha ricevuto la massima
confidenza minima
Quindi la classe che non ha confidenza minima
troppo bassa su ogni classificatore
SOMMA
PESATA
๐’”๐’–๐’Ž =
๐‘—=1โ€ฆ๐‘›๐‘
๐‘”๐‘— โˆ™ ๐’„๐’๐’๐’‡๐’‹
Pesa la confidenza dei diversi classificatori
Ad esempio in maniera inversamente
proporzionale allโ€™errore di classificazione
RANDOM FOREST (Metodo della famiglia Bagging: Bootstrap Aggregating)
โ€ข Addestramento con classificator (classification tree) i su diverse porzioni del training set
โ€ข Fusione (majority vote rule, somma, โ€ฆ)
CLASIFICATION TREE: Albero binario in cui ogni nodo divide i pattern sulla base di un
criterio su una singola feature, ogni livello utilizza progressivamente la feature che divide
meglio il set. Ogni foglia rappresenta lโ€™assegnazione o meno del pattern alla classe.
La scelta della feature in ogni nodo รจ fatta su un sottoinsieme casuale delle feature per evitare
scelte uguali sui vari classification trees (bagging sulle features).
ADABOOST (Metodo della famiglia Boosting)
โ€ข Effettua un certo numero di iterazioni
โ€ข Ad ogni iterazione calcola/aggiorna i pesi dei pattern
โ€ข Sceglie il classificatore che realizza il minor errore
โ€ข Calcola il peso del classificatore (errore alto+classificazione corretta o errore
basso+classificazione errata)
โ€ข Il classificatore strong finale รจ media pesata dei weak classificatori iniziali.
BAGGING E BOOSTING
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
REGRESSIONE
Apprendimento della funzione che assegna un valore numerico continuo ad ogni pattern.
๐‘“ ๐‘ฅ โ†’ ๐‘ฆ
๐‘“ รจ controllata da un insieme di parametri
๐‘ฅ รจ la variabile indipendente (esatta) e ๐‘ฆ รจ la variabile dipendente (soggetta ad errore).
OBIETTIVO
La variabile dipendente รจ uno scalare.
๐‘“ ๐‘ฅ = ๐‘ฆ = ๐›ผ + ๐›ฝ โˆ™ ๐‘ฅ๐‘– + ๐œ€๐‘– ๐œ€๐‘– รจ lโ€™errore ๐›ผ, ๐›ฝ sono i parametri da determinare
La soluzione consiste nel determinare lโ€™equazione della retta che minimizza la somma dei
minimi quadrati:
๐›ผโˆ—, ๐›ฝโˆ— โˆถ arg min
๐›ผ,๐›ฝ
๐‘–=1โ€ฆ๐‘›
๐‘“ ๐‘ฅ โˆ’ ๐‘ฆ๐‘–
2 =
๐‘–=1โ€ฆ๐‘›
๐œ€๐‘–
2
Da cui
๐›ฝโˆ— =
๐‘–=1..๐‘› ๐‘ฅ๐‘– โˆ’ ๐‘ฅ ๐‘ฆ๐‘– โˆ’ ๐‘ฆ
๐‘–=1..๐‘› ๐‘ฅ๐‘– โˆ’ ๐‘ฅ 2
๐›ผโˆ— = ๐‘ฆ โˆ’ ๐›ฝโˆ— ๐‘ฅ
SIMPLE LINEAR
La variabile dipendente รจ un vettore.
๐‘“ ๐‘ฟ = ๐’š = ๐‘ฟ๐œท
๐‘ฟ รจ una matrice rettangolare (righe=patterns, colonne=features + colonna 1)
๐’š รจ un vettore colonna con uno scalare per ogni pattern
๐œท รจ un vettore colonna con uno scalare per ogni feature + 1 termine noto
Funzione obiettivo da minimizzare: ๐’š โˆ’ ๐‘ฟ๐œท ๐Ÿ da cui i parametri ๐œทโˆ— = ๐‘ฟ๐’• ๐‘ฟ โˆ’๐Ÿ ๐‘ฟ ๐’• ๐’š
b = numero di pattern, d = dimensioni
Se n = d+1 ๏ƒจ ๐‘ฟ รจ una matrice quadrata e lโ€™iperpiano tocca tutti i punti
Se n > d+1 ๏ƒจ numero di equazioni superiore alle incognite, lโ€™iperpiano approssima i punti
Perchรฉ esista ๐‘ฟ๐’• ๐‘ฟ โˆ’๐Ÿ, ๐‘ฟ๐’• ๐‘ฟ deve avere rango massimo (problemi punti collineari)
๐‘ฟ๐’• ๐‘ฟ รจ spesso mal condizionata, conseguenza: calcolo numerico instabile (SVD)
MULTIPLE LINEAR
๐‘“ รจ controllata da un insieme di parametri non lineari (es. potenze)
La funzione di regressione deve essere lineare rispetto ai parametri, mentre puรฒ essere
non lineare rispetto ai valori delle features.
๐‘ฆ = ๐›ฝ1 ๐‘ฅ2 + ๐›ฝ2 ๐‘ฅ + ๐›ฝ3
In caso di dipendenza non lineare del modello dai parametri non esiste soluzione least
square e si applicano tecniche iterative di ottimizzazione numerica (Gradient Descent,
Gauss-Newton).
NON LINEAR
Nel caso di nuvole di punti geometrici le coordinate
hanno lo stesso ruolo ed รจ preferibile PCA fitting a
regressione lineare.
REGRESSION vs GEOMETRICAL FITTING
Regressione su problemi di piccole-medie dimensioni
โ€ข caso lineare ๏ƒจ least square con fattorizzazione SVD
โ€ข caso non lineare ๏ƒจ Gauss-Newton (come prima scelta)
Esistono varianti di classificazione SVM e Random Forest efficaci in problemi di
regressione.
In ambito deep learning, reti neurali addestrate con gradient descent sono utilizzate per
risolvere problemi di regressioni di enormi dimensioni (Faster R-CNN)
IN PRATICA
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
CLUSTERING
Famiglia di metodi non supervisionati in grado di individuare raggruppamenti intrinseci
(cluster) di pattern nello spazio multidimensionale. Opzionalmente definisce le classi
(incognite)
Problema NP hard
Ammettendo di conoscere il numero s di classi, il numero di pattern puรฒ essere
clusterizzato in ๐‘  ๐‘› ๐‘ ! modi diversi (numeri di Stirling).
Se s non รจ noto, il numero di casi รจ definito dai numeri di Bell (somma di tutti i numeri di
Stirling da 1 a n).
OBIETTIVO E COMPLESSITร€
I criteri di clustering definiscono cosa si vuole ottenere e specificano il grado di ottimalitร 
di ogni soluzione ammissibile.
OSSERVAZIONI
โ€ข I pattern allโ€™interno dello stesso cluster devono essere tra loro piรน simili rispetto a
pattern appartenenti a cluster diversi
โ€ข I cluster sono costituiti da nuvole di punti a densitร  relativamente elevata, separate da
zone con densitร  piรน bassa
CRITERI
Minimizzazione distanze dai centroidi
Buon criterio per cluster a simmetria radiale, penalizza forme allungate o cluster innestati
Minimizza la somma dei quadrati delle distanze dei pattern x dai centroidi delle classi.
๐ฝ๐‘’ =
๐‘–=1โ€ฆ๐‘  ๐‘ฅโˆˆ๐‘ช๐’Š
๐’™ โˆ’ ๐’™๐’Š
2 ๐’™๐’Š =
๐Ÿ
๐’
๐‘ฅโˆˆ๐‘ช๐’Š
๐’™
Minimizzazione distanze intra-classe
Simile al criterio dei centroidi ma non penalizza i cluster allungati.
๐ฝ๐‘’ =
๐‘–=1โ€ฆ๐‘ 
๐‘›๐‘– โˆ™ ๐‘ ๐‘– ๐‘ ๐‘– =
1
๐‘›๐‘–
๐‘ฅโˆˆ๐‘ช๐’Š
๐‘“๐‘  ๐’™, ๐ถ๐‘– ๐‘“๐‘  ๐’™, ๐ถ๐‘– รจ ๐‘ข๐‘›๐‘Ž ๐‘š๐‘–๐‘ ๐‘ข๐‘Ÿ๐‘Ž ๐‘‘๐‘– ๐‘‘๐‘–๐‘ ๐‘ก๐‘Ž๐‘›๐‘ง๐‘Ž
๐‘“๐‘  ๐’™, ๐ถ๐‘– = ๐‘š๐‘–๐‘› ๐’™โ€ฒโˆˆ๐ถ ๐‘–,๐’™โ€ฒโ‰ ๐’™ ๐’™ โˆ’ ๐’™โ€ฒ 2 definisce che รจ sufficiente un vicino
CRITERI DI CLUSTERING
Gli algoritmi di clustering, dato un criterio di clustering, forniscono una procedura
algoritmica per determinare soluzioni che lo ottimizzano.
HARD: esclusivo | SOFT (fuzzy): pattern appartengono a diversi cluster con una certa probabilitร .
CLUSTERING GERARCHICO
Metodo simile alla tassonomia biologica. Iterativo prevede di aggregare singoli pattern, poi pattern
a cluster e poi cluster a cluster per maggiore similitudine rispetto ad una soglia.
Differenze implementative: single link, average link, complete link.
CLUSTERING BASATO SU CENTROIDI
K-Means: semplice sia a livello computazionale che implementativo.
1. Soluzione iniziale (casuale)
2. Assegna ogni pattern al cluster per cui รจ minima la distanza dal centroide
3. Ricalcola i centroidi come media dei pattern per ogni cluster
4. Itera finchรฉ non si hanno modifiche di assegnazione.
Soluzione in pochi passi.
Distanza euclidea ๏ƒจ cluster iper-sferici. Distanza di Mahalanois ๏ƒจ cluster iper-elissoidali.
Per evitare convergenza su minimi locali si esegue lโ€™algoritmo piรน volte su soluzioni iniziale diverse
(random, euristiche, metodo evoluzionistico).
Tecniche di validazione:
โ€ข valutazione delle soluzioni per valori diversi di s (numero di cluster) penalizzando
soluzioni con molti cluster
โ€ข Ricerca di discontinuitร  nel valore di ๐ฝ๐‘’.
Fuzzy K-Means: consente ad un pattern di appartenere a diversi cluster con specifici gradi
di probabilitร . I centroidi sono calcolati come media pesata rispetto alle probabilitร  di
appartenenza.
(iperparametro m definisce il livello di sfumatura dellโ€™appartenenza ai cluster, tipicamente m = 2)
Expectation โ€“ Maximization (EM): tenta di identificare i valori dei parametri delle singole
distribuzioni che si ipotizza abbiano generato i patterns per attribuire ogni pattern al
cluster relativo. Stima dei parametri con criterio di maximum (log-) likelihood
(densitร /probabilitร  di aver ottenuto i pattern da specifici parametri).
Iterazione ciclo:
1. Expectation: calcolo del log-likelihood completo sulla base dei parametri
2. Maximization: ricalcolo parametri per massimizzare il valore atteso
๐›ฉ ๐‘”+1 = ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘Ž๐‘ฅ ๐›ฉ ๐‘„(๐›ฉ|๐›ฉ ๐‘”)
Algoritmo simile a Fuzzy K-Means ma con maggiori gradi di libertร  nella forma dei cluster
(ellissoidali).
CLUSTERING BASATO SULLA DENSITร€
I cluster individuti sono regioni connesse in aree ad elevata densitร  (DBSCAN).
ALGORITMI DI CLUSTERING
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
RIDUZIONE DIMENSIONALITร€
Eseguire un mapping dallo spazio iniziale โ„› ๐‘‘ ad uno spazio di dimensione inferiore
โ„› ๐‘˜, ๐‘˜ < ๐‘‘.
COMPRESSIONE
โ€ข Scarto di informazioni meno rilevanti
โ€ข Combinazione opportuna delle dimensioni esistenti (non eliminazione selettiva)
SCOPO: semplificazione addestramento, miglioramento prestazioni
OBIETTIVO
MAPPING LINEARE โ€ข TRASFORMAZIONE NON SUPERVISIONATA
OBIETTIVO: preservare al massimo lโ€™informazione dei pattern.
Nota anche con come Karhunen Loeve (KL) transform.
Lo spazio k-dimensionale ridotto รจ definito univocamente dal vettore medio e dalla
matrice di proiezione le cui colonne sono costituite dagli autovettori della matrice di
covarianza dello spazio originale, corrispondenti ai k piรน grandi autovalori.
Ogni autovalore descrive la varianza del training set lungo una direzione definita dal
corrispondente autovettore. I primi k autovettori sono detti principal component.
PROIEZIONE
La proiezione di un pattern sullo spazio PCA determinato
tramite la matrice di proiezione, รจ la proiezione geometrica
di un vettore (ridotto) sullโ€™iperpiano che definisce lo spazio.
RETROPROIEZIONE
Dato un vettore nello spazio ridotto PCA, la retro-proiezione si ottiene moltiplicando il
vettore PCA per la matrice di proiezione e sommando il vettore medio.
Questa operazione non sposta spazialmente il vettore (che giace ancora sullo spazio PCA)
ma opera un cambiamento di coordinate che ne permette la codifica in termini delle
componenti dello spazio originale.
Tra tutte le riduzioni di dimensionalitร  lineari, PCA รจ quella che preserva al massimo
lโ€™informazione dei vettori originali.
SCELTA DELLA DIMENSIONE
Se lโ€™obiettivo รจ la visualizzazione ๏ƒจ k deve essere 2 o 3
Se lโ€™obiettivo รจ scartare dati inutili mantenendo la maggior parte del contenuto
informativo ๏ƒจ fissata una percentuale del valore informativo che si vuole preservare, si
sceglie il minimo valore di k tale che la somma dei piรน grandi k autovalori sia maggiore o
uguale a t rispetto alla somma di tutti gli autovalori.
PRINCIPAL COMPONENT ANALYSIS (PCA) MAPPING LINEARE โ€ข TRASFORMAZIONE SUPERVISIONATA
OBIETTIVO: privilegiare le dimensioni che discriminano meglio i pattern, ovvero
massimizzare la separazione tra le classi.
MATRICI DI SCATTERING (SPARPAGLIAMENTO)
WITHIN-CLASS ๐‘บ ๐’˜: indica come i vettori dei pattern sono sparpagliati rispetto al centro
delle classi.
BETWEEN-CLASS ๐‘บ ๐’ƒ: indica come i centri delle classi sono sparpagliati rispetto al centro
generale
Una matrice di scatter si calcola come una matrice di covarianza senza normalizzare per il
numero di pattern.
LINEAR DISCRIMINANT ANALYSIS (LDA)
MAPPING NON LINEARE โ€ข TRASFORMAZIONE NON SUPERVISIONATA
OBIETTIVO: riduzione a 2 o 3 dimensioni per poter visualizzare i dati multidimensionali.
Introdotta nel 2008 da Van der Maaten e Hinton, rappresenta lo stato dellโ€™arte per la
visualizzazione 2D o 3D di dati multidimensionali.
Supera i limiti di riduzione a 2/3 dimensioni di PCA relativamente a cluster distribuiti con
forme non multinormali.
T-DISTRIBUTED STOCHASTIC NEIGHBOR EMBEDDING (t-SNE)
Tecnica di pre-normalizzazione dei dati che:
โ€ข Rimuove le correlazioni tra le dimensioni ruotando la nuvola di punti per allineare gli
assi di variazione principale dei dati (autovalori) agli assi cartesiani
โ€ข Sfericizza lโ€™ellissoide uniformando le varianze a 1 lungo tutti gli assi
La matrice di covarianza dei dati normalizzati รจ la matrice identitร .
PCA WHITENING
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
RETI NEURALI
Introdotto da McCulloch e Pitts nel 1943.
รˆ lโ€™elemento costitutivo delle reti neurali.
Ogni neurone:
โ€ข riceve in input ๐‘‘ valori, uno per ogni connessione in ingresso:
ogni input ๐‘–๐‘› ๐‘‘ รจ associato ad un peso ๐‘ค ๐‘‘ che determina lโ€™efficacia delle connessioni
โ€ข prevede un input pesato aggiuntivo (bias) di valore 1 utile per tarare il neurone
โ€ข elabora un livello di eccitazione ๐‘›๐‘’๐‘ก๐‘– = ๐‘—=1โ€ฆ๐‘‘ ๐‘–๐‘›๐‘— โˆ— ๐‘ค๐‘—๐‘– + ๐‘ค0๐‘–
โ€ข ha un comportamento regolato da una funzione di attivazione ๐‘“ โˆ™ determinata da ๐‘›๐‘’๐‘ก๐‘–
๐‘“ โˆ™ รจ una funzione non lineare, continua e differenziabile
NEURONE ARTIFICIALE
STANDARD LOGISTIC FUNCTION (SIGMOID) [0 โ€ฆ +1]
PIร™ SEMPLICE
FUNZIONE:
๐‘“ ๐‘›๐‘’๐‘ก = ๐œŽ ๐‘›๐‘’๐‘ก =
1
1 + ๐‘’โˆ’๐‘›๐‘’๐‘ก
DERIVATA:
๐œŽโ€ฒ ๐‘›๐‘’๐‘ก =
๐œ•
๐œ•๐‘›๐‘’๐‘ก
1
1+๐‘’โˆ’๐‘›๐‘’๐‘ก =
๐‘’โˆ’๐‘›๐‘’๐‘ก
1+๐‘’โˆ’๐‘›๐‘’๐‘ก 2 = ๐œŽ ๐‘›๐‘’๐‘ก (1 โˆ’ ๐œŽ ๐‘›๐‘’๐‘ก )
TANGENTE IPERBOLICA (TANH) [-1 โ€ฆ +1]
PIร™ COMPLESSA MA CONVERGENZA PIร™ RAPIDA
FUNZIONE:
๐‘“ ๐‘›๐‘’๐‘ก = ๐œ ๐‘›๐‘’๐‘ก = 2๐œŽ 2 โˆ™ ๐‘›๐‘’๐‘ก โˆ’ 1 =
2
1 + ๐‘’โˆ’2โˆ™๐‘›๐‘’๐‘ก
โˆ’ 1
DERIVATA:
๐œโ€ฒ ๐‘›๐‘’๐‘ก = 1 โˆ’ ๐œ ๐‘›๐‘’๐‘ก 2
FUNZIONE DI ATTIVAZIONE
Le reti neurali sono composte da gruppi di neuroni artificiali organizzati a livelli.
๐Ÿ LIVELLO DI INPUT โ—‹โ”€โ—‹ ๐’ LIVELLI INTERMEDI (HIDDEN) โ—‹โ”€โ—‹ ๐Ÿ LIVELLO OUTPUT
FEEDFORWARD: le connessioni collegano i neuroni da un livello a quello successivo
RECURRENT: sono previste connessioni di feedback verso livelli uguali o precedenti. Reti
piรน complesse, addestramento piรน complicato. Utili per la gestione di sequenze: hanno
effetto memoria che considera le informazioni in diversi istanti temporali. Esempio: Long
Short Term Memory (LSTM) net.
RETI NEURALI โ€ข FEEDFORWARD vs RECURRENT
PERCEPTRON (PERCETTRONE)
Modello proposto da Rosenblatt nel 1965, simile a quello di McCulloch e Pitts.
Utilizza una funzione di attivazione lineare a soglia (scalino).
Addestramento tramite delta rule.
Rete a 2 livelli apprende solo mapping lineari.
MULTILAYER PERCEPTRON (MLP)
Rete feedforward con almeno 3 livelli con funzioni di attivazione non lineari.
UNIVERSAL APPROXIMATION THEOREM
(Teorema dโ€™esistenza di Kolomogorov applicato alle reti neurali da Cybenco 1988 e Hornik 1989)
Una rete neurale multistrato, con un singolo hidden layer รจ in grado di apprendere
qualsiasi funzione continua e di approssimarla con qualsiasi grado di precisione
FORWAD PROPAGATION
Propagazione in avanti delle informazioni, dal livello di input al livello di output.
Numero totale di pesi rete 3 livelli (๐‘‘: ๐‘›โ„Ž: ๐‘ ) = ๐‘‘ ร— ๐‘›โ„Ž + ๐‘›โ„Ž ร— ๐‘  + ๐‘›โ„Ž ร— ๐‘  (bias)
TRAINING: calcolo dei pesi w che determinano il mapping desiderato tra input e output.
Dimensioni ๐‘‘ dello spazio dei pattern = numero di neuroni dellโ€™livello di input
Numero ๐‘  di classi del classificatore = numero di neuroni del livello di output
Numero ๐‘›โ„Ž di neuroni dei livelli hidden = iperparametro
Il training consiste nel calcolare i pesi che minimizzano lโ€™errore medio calcolato come
scostamento tra i vettori di output desiderati e quelli calcolati dalla rete.
Pesi iniziali random nei range ยฑ1/ ๐‘‘ (input โ—‹โ”€โ—‹ hidden) e ยฑ1/ ๐‘›โ„Ž (hidden โ—‹โ”€โ—‹ output)
ERROR BACKPROPAGATION (GRADIENT DESCENT)
LOSS = ๐ฝ ๐’˜, ๐’™ โ‰ก
1
2 ๐‘=1โ€ฆ๐‘  ๐‘ก ๐‘ โˆ’ ๐‘ง ๐‘
2 con ๐’˜=pesi; ๐’™=pattern; ๐‘ก ๐‘=obiettivo; ๐‘ง ๐‘=output
๐ฝ ๐’˜ รจ la media su tutti i pattern del training set. Ridotto modificando i pesi in direzione
opposta al gradiente di ๐ฝ.
Modifica pesi hidden-output: ๐‘ค๐‘—๐‘˜ = ๐‘ค๐‘—๐‘˜ + ๐œ‚ โˆ™ ๐›ฟ ๐‘˜ โˆ™ ๐‘ฆ๐‘—
Modifica pesi input-hidden: ๐‘ค๐‘–๐‘— = ๐‘ค๐‘–๐‘— + ๐œ‚ โˆ™ ๐›ฟ๐‘— โˆ™ ๐‘ฅ๐‘—
Se si usano i bias pesi ๐‘ค0๐‘˜ e ๐‘ค๐‘–0 si aggiornano ponendo ๐‘ฆ0 = 1 e ๐‘ฅ0 = 1
๐œ‚ รจ il LEARNING RATE: modificabile adeguatamente durante il training
โ€ข Troppo piccolo ๏ƒจ convergenza lenta
โ€ข Troppo grande ๏ƒจ oscillazione, o divergenza
MULTILAYER PERCEPTRON (MLP)
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
RETI NEURALI
PATTERN ANALIZZATI SEQUENZIALMENTE โ€ข PESI AGGIORNATI DOPO OGNI PATTERN
EPOCHE = 0
DO
EPOCHE++
PER OGNI PATTERN x DEL TRAINING SET
FORWARD STEP SUL PATTERN x
ERRORE TOTALE = ERRORE TOTALE + ERRORE SUL PATTERN x
BACKWARD STEP (calcolo dei gradienti)
AGGIORNAMENTO PESI HIDDEN-OUTPUT
AGGIORNAMENTO PESI INPUT-HIDDEN
LOSS = ERRORE TOTALE / n
CALCOLO ACCURACY SU TRAINING SET E VALIDATION SET
CONTINUA FINO A CONVERGENZA O NUMERO MASSIMO DI EPOCHE
ALGORITMO BACKPROPAGATION (ONLINE)
PATTERN ANALIZZATI IN ORDINE CASUALE โ€ข PESI AGGIORNATI DOPO OGNI BATCH
EPOCHE = 0
DO
EPOCHE++
* RANDOMSORT(TRAINING SET)
* PER OGNI MINI-BATCH B DI DIMENSIONE mb DEL TRAINING SET
* RESET GRADIENTE
* PER OGNI PATTERN x DEL MINI-BATCH B
FORWARD STEP SUL PATTERN x
ERRORE TOTALE = ERRORE TOTALE + ERRORE SUL PATTERN x
BACKWARD STEP (calcolo dei gradienti)
AGGIORNAMENTO PESI HIDDEN-OUTPUT
AGGIORNAMENTO PESI INPUT-HIDDEN
LOSS = ERRORE TOTALE / n
CALCOLO ACCURACY SU TRAINING SET E VALIDATION SET
CONTINUA FINO A CONVERGENZA O NUMERO MASSIMO DI EPOCHE
Se la dimensione dei mini-batch = 1 ๏ƒจ caso online
Se la dimensione dei mini-batch = n ๏ƒจ full batch
Numero iterazioni totali = dimensione mini-batch โจฏ numero mini-batch โจฏ epoche
SOCHASTIC GRADIENT DESCENT (SGD)
Funzione di attivazione che permette di trasformare i valori di net prodotti dallโ€™ultimo
livello della rete in probabilitร  delle classi.
Nรฉ sigmoid nรฉ tanh sono interpretabili come probabilitร .
๐‘ง ๐‘˜ = ๐‘“ ๐‘›๐‘’๐‘ก ๐‘˜ =
๐‘’ ๐‘›๐‘’๐‘ก ๐‘˜
๐‘=1โ€ฆ๐‘  ๐‘’ ๐‘›๐‘’๐‘ก ๐‘
SOFTMAX
Funzione di loss probabilistica piรน efficace in problemi di classificazione multi-classe.
๐ป ๐‘, ๐‘ž = โˆ’
๐‘ฃ
๐‘ ๐‘ฃ โˆ™ log ๐‘ž ๐‘ฃ โ‰ฅ 0
๐ป ๐‘, ๐‘ž minimo quando il vettore target coincide con lโ€™output.
Quando il vettore target per un pattern assume la forma one-hot (tutti 0 tranne 1 per la
classe corretta) allora
๐ฝ ๐’˜, ๐’™ โ‰ก ๐ป ๐’•, ๐’› = โˆ’ log ๐‘ง ๐‘” = โˆ’ log
๐‘’ ๐‘›๐‘’๐‘ก ๐‘”
๐‘=1โ€ฆ๐‘  ๐‘’ ๐‘›๐‘’๐‘ก ๐‘
= โˆ’๐‘›๐‘’๐‘ก ๐‘” + log
๐‘=1โ€ฆ๐‘ 
๐‘’ ๐‘›๐‘’๐‘ก ๐‘
CROSS-ENTROPY LOSS
CLASSIFICAZIONE MULTI-CLASSE
Funzione di attivazione softmax nel livello finale e cross-entropy come loss function
CLASSIFCAZIONE BINARIA
Preferibile usare una rete con un neurone di uscita
CLASSIFICAZIONE MULTI-LABEL
Caso particolare in cui ogni pattern puรฒ appartenere a piรน classi, gestibile come
classificazione binaria su piรน neuroni
REGRESSIONE (MULTIVARIATE MULTIPLE REGRESSION)
Meglio utilizzare sum of squared error come loss function
PRATICA
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
RETI NEURALI
Tecniche finalizzate a ridurre il rischio di overfitting in caso di molti parametri (pesi).
Molto importante quando il training set non ha grandi dimensioni rispetto al modello.
Termine di regolarizzazione ๐ฝ ๐‘‡๐‘œ๐‘ก = ๐ฝ ๐ถ๐‘Ÿ๐‘œ๐‘ ๐‘ โˆ’๐ธ๐‘›๐‘ก๐‘Ÿ๐‘œ๐‘๐‘ฆ + ๐ฝ ๐‘…๐‘’๐‘”
Regolarizzazione L2 ๐ฝ ๐‘…๐‘’๐‘” =
1
2
๐œ† ๐‘– ๐‘ค๐‘–
2
๐œ†, in L1 e L2, regola la forza della regolarizzazione
Regolarizzazione L1 ๐ฝ ๐‘…๐‘’๐‘” =
1
2
๐œ† ๐‘– ๐‘ค๐‘– puรฒ essere piรน ยซsparsificanteยป: numerosi pesi a 0
Lโ€™aggiornamento dei pesi a seguito di backpropagation include un ulteriore termine
denominato weight decay
๐‘ค ๐‘˜ = ๐‘ค ๐‘˜ โˆ’ ๐œ‚ โˆ™
๐œ•๐ฝ ๐ถ๐‘Ÿ๐‘œ๐‘ ๐‘ โˆ’๐ธ๐‘›๐‘ก๐‘Ÿ๐‘œ๐‘๐‘ฆ
๐œ• ๐‘ค ๐‘˜
+ ๐€ โˆ™ ๐’˜ ๐’Œ
REGOLARIZAZIONE
MOMENTUM (๐)
SGD con mini-batch puรฒ determinare una discesa del gradiente a zig-zag: rallenta la
convergenza o la rende instabile
Per evitare oscillazioni si puรฒ emulare il comportamento fisico considerando
lโ€™aggiornamento precedente per ogni parametro, calcolando il successivo aggiornamento
come combinazione lineare dellโ€™aggiornamento precedente e del gradiente attuale.
๐‘ค ๐‘˜ = ๐‘ค ๐‘˜ + ๐ โˆ™ โˆ†๐‘ค ๐‘˜ โˆ’ ๐œ‚ โˆ™
๐œ•๐ฝ ๐‘‡๐‘œ๐‘ก
๐œ• ๐‘ค ๐‘˜
๐ (iperparametro) ha valore tipico = 0.9
ALTRE REGOLE DI AGGIORNAMENTO PESI
โ€ข Nesterov Accelerate Gradient (NAG)
โ€ข Adaptive Gradient (Adagrad)
โ€ข Adadelta
โ€ข Adam (stato dellโ€™arte)
โ€ข Rmsprop
LEARNING RATE ADATTATIVO
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
DEEP LEARNING
DEEP NEURAL NETWORK (DNN) sono reti ยซprofondeยป composte da almeno 2 livelli
hidden organizzati gerarchicamente.
Superano lโ€™Universal Approximation Theorem in quanto esistono funzioni computabili con
complessitร  polinomiale operando su k livelli che assumono complessitร  esponenziale su
k-1 livelli (Hastad, 1986).
Lโ€™organizzazione gerarchica consente di condividere e riutilizzare informazioni,
selezionando โ€“ ad esempio โ€“ feature specifiche o scartando dettagli inutili.
LIVELLI E COMPLESSITร€
Il numero di livelli definisce la complessitร  di una rete associato al numero di neuroni,
connessioni e pesi.
Esempi di reti: AlexNet (8 livelli, 650K neuroni, 60M parametri), VGG-16 (16 livelli, 15M
neuroni, 140M parametri), corteccia umana (21โจฏ109 neuroni e 1.5โจฏ1014 sinapsi).
GERARCHIA DI LIVELLI
MODELLI FEEDFORWARD
Classificazione o regressione, con training prevalentemente supervisionato
โ€ข CONVOLUTIONAL NEURAL NETWORK (CNN)
โ€ข FULLY CONNECTED DNN (FC DNN)
โ€ข HIERARCHICAL TEMPORAL MEMORY (HTM)
MODELLI GENERATIVI
Training non supervisionato, utili per pre-training di altri modelli e per produrre feature rilevanti
โ€ข STACKED (DE-NOISING) AUTO-ENCODERS
โ€ข RESTRICTED BOLTZMANN MACHINE (RBM)
โ€ข DEEP BELIEF NETWORKS (DBN)
MODELLI RICORRENTI
Utilizzati per sequenze, speech recognition, sentiment analysis, Natural Language Processing
โ€ข RECURRENT NEURAL NETWORK (RNN)
โ€ข LONG SHORT-TERM MEMORY (LSTM)
REINFORCEMENT LEARNING
Utilizzati per apprendere comportamenti
โ€ข DEEP Q-LEARNING
TIPOLOGIE DEEP NEURAL NETWORK (DNN)
BIG DATA + GPU COMPUTING + VANISHING (OR EXPLODING) GRADIENT
INGREDIENTI
Introdotte da LeCun et.all nel 1998, usano le reti cercando di simulare due tipi di capacitร :
feature (simple) detection e pooling (fusione) degli output della simple detection.
PREPROCESSING LOCALE: i neuroni sono connessi solo localmnete (riduzione connessioni)
CONDIVISIONE PESI: i pesi sono condivisi a gruppi (neuroni diverse/stesse elaborazioni)
ALTERNANZA LIVELLI: feature extraction e pooling.
ARCHITETTURA
INPUT LAYER: mappa direttamente i pixel dellโ€™immagine
HIDDEN LAYER: feature extraction e pooling
OUTPUT LAYER: mappa le classi
CONVOLUZIONE
Operazione di image processing che, tramite lโ€™applicazione di filtri digitali, condensa le
informazioni di unโ€™area di pixel in un valore attraverso un prodotto scalare tra una
maschera e lโ€™area di pixel in input. Un neurone al primo livello hidden opera come filtro di
convoluzione direttamente sui pixel dellโ€™immagine (neuroni input layer).
VOLUMI
I neuroni di ciascun livello sono organizzati in griglie o volumi 3D. I filtri operano su una
porzione dei volumi di input.
Ogni ยซfettaยป di volumi definisce una feature map (es. componenti RGB in input).
I pesi sono condivisi a livello di feature map.
APPLICAZIONE FILTRI
STRIDE: passo con il quale si fa scorrere un filtro, passi piรน alti riducono dimensioni output
PADDING: spessore, in pixel, del bordo aggiunto (valori 0)
๐’˜ ๐’๐’–๐’• =
๐’˜๐’Š๐’ โˆ’ ๐‘ญ + ๐Ÿ โˆ™ ๐‘ท๐’‚๐’…๐’…๐’Š๐’๐’ˆ
๐‘บ๐’•๐’“๐’Š๐’…๐’†
+ ๐Ÿ
๐’˜๐’Š๐’ ๐‘‘๐‘–๐‘š๐‘’๐‘›๐‘ ๐‘–๐‘œ๐‘›๐‘’ ๐‘–๐‘›๐‘๐‘ข๐‘ก ๐‘ญ ๐‘‘๐‘–๐‘š๐‘’๐‘›๐‘ ๐‘–๐‘œ๐‘›๐‘’ ๐‘“๐‘–๐‘™๐‘ก๐‘Ÿ๐‘œ
๐’˜ ๐’๐’–๐’• ๐‘‘๐‘–๐‘š๐‘’๐‘›๐‘ ๐‘–๐‘œ๐‘›๐‘’ ๐‘œ๐‘ข๐‘ก๐‘๐‘ข๐‘ก
CONVOLUTIONAL NEURAL NETWORK (CNN)
Lโ€™utilizzo di RELU come funzione di attivazione risolve i problemi legati
allโ€™uso della sigmoide (riduzione significativa del valore del gradiente
lontano dallโ€™output, annullamento gradiente in regioni saturate per
derivata = 0).
Derivata = 0 per valori negativi e 1 per valori positivi di net.
Nessuna saturazione sui valori positivi.
Attivazioni sparse (neuroni spenti) possono conferire maggiore robustezza.
RECTIFED LINEAR (RELU) funzione di attivazione
Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena
Corso di studio Ingegneria e Scienze informatiche (laurea magistrale)
Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018
Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili
DEEP LEARNING
Un livello di POOLING esegue unโ€™aggregazione delle informazioni del volume di input.
Genera feature map dimensione inferiore cercando di conferire invarianza.
Opera generalmente a livello di ogni feature map del volume di input.
Gli operatori piรน utilizzati sono la media e il massimo.
Non ci sono parametri da apprendere.
CNN POOLING
Nelle moderne CNN per classificazione รจ comune trovare un livello finale costituito da un
neurone per ogni classe con funzione di attivazione SoftMax o Cross-Entropy per
garantire di ottenere valori interpretabili come probabilitร .
SOFT MAX E CROSS ENTROPY
ARCHITETTURA ESEMPIO
Livello
Funzione
Parametri
Dimensioni
(Neuroni)
Connessioni e
pesi (entranti)
INPUT 32โจฏ32โจฏ3
HIDDEN
CONVOLUZIONE
Filtri: 5โจฏ5 โ€ข FeatureMaps: 16 โ€ข Stride: 1
โ€ข Padding: 2 โ€ข Attivazione ReLu
32โจฏ32โจฏ16
C: 5โจฏ5โจฏ3โจฏ16โจฏ32โจฏ32
P: 16โจฏ(5โจฏ5โจฏ3+1)
HIDDEN
POOLING
Filtri: 2โจฏ2 โ€ข Stride: 2 โ€ข Tipo: Max 16โจฏ16โจฏ16
C: 16โจฏ16โจฏ16โจฏ2โจฏ2โจฏ1
P: 0
HIDDEN
CONVOLUZIONE
Filtri: 5โจฏ5 โ€ข FeatureMaps: 20 โ€ข Stride: 1
โ€ข Padding: 2 โ€ข Attivazione ReLu
16โจฏ16โจฏ20
C: 5โจฏ5โจฏ16โจฏ16โจฏ16โจฏ20
P: 20โจฏ(5โจฏ5โจฏ16+1)
HIDDEN
POOLING
Filtri: 2โจฏ2 โ€ข Stride: 2 โ€ข Tipo: Max 8โจฏ8โจฏ20
C: 8โจฏ8โจฏ20โจฏ2โจฏ2โจฏ1
P: 0
HIDDEN
CONVOLUZIONE
Filtri: 5โจฏ5 โ€ข FeatureMaps: 20 โ€ข Stride: 1
โ€ข Padding: 2 โ€ข Attivazione ReLu
8โจฏ8โจฏ20
C: 8โจฏ8โจฏ20โจฏ5โจฏ5โจฏ20
P: 20โจฏ(5โจฏ5โจฏ20+1)
HIDDEN
POOLING
Filtri: 2โจฏ2 โ€ข Stride: 2 โ€ข Tipo: Max 4โจฏ4โจฏ20
C: 4โจฏ4โจฏ20โจฏ2โจฏ2โจฏ1
P: 0
OUTPUT SofMax con 10 classi 10
C: 10โจฏ4โจฏ4โจฏ20
P: 10โจฏ(4โจฏ4โจฏ20+1)
31.562 NEURONI TOTALI (incluso livello input)
3.942.784 CONNESSIONI TOTALI
22.466 PESI TOTALI (inclusi bias)
Implementazione da zero: training & inference architetture + training backpropagation
del gradiente + ottimizzazione GPU = molte risorse tempo per sviluppo e debug.
Framework: Caffe(Berkeley), Theano(Montreal), Torch(LeCun), TensorFlow(Google), Digits(Nvidia)
IN PRATICA
FINE TUNING: si sostituisce il livello di output di una rete giร  addestrata adeguando il
numero di classi, si utilizzano i valori iniziali dei pesi della rete pre-addestrata tranne che
per le connessioni al livello di output e si eseguono nuove iterazioni di addestramento.
RIUTILIZZO FEATURES: si estraggono le feature generate durante lโ€™addestramento di una
rete esistente e le si utilizzano per addestrare un classificatore esterno; le feature sono
generate nei i livelli intermedi (Es. L5, L6, L7 di CaffeNet).
TANSFER LEARNING
Lโ€™obiettivo di apprendere un comportamento รจ determinato dallโ€™individuazione delle attivitร  che
massimizzano i reward. In molti casi reali applicati ad ambienti stocastici (in cui sequenze di azioni
identiche portano a risultati diversi) si applica una logica di convenienza immediata pesando
maggiormente i reward vicini nel tempo: ๐‘… ๐‘ก = ๐‘Ÿ๐‘ก + ๐›พ1 โˆ™ ๐‘Ÿ๐‘ก+1 + โ‹ฏ + ๐›พ ๐‘›โˆ’๐‘ก โˆ™ ๐‘Ÿ๐‘› ๐‘๐‘œ๐‘› 0 โ‰ค ๐›พ โ‰ค 1
Q-LEARNING: ๐‘… ๐‘ก = ๐‘Ÿ๐‘ก + ๐›พ โˆ™ ๐‘… ๐‘ก+1 definito ricorsivamente, sfrutta lโ€™equazione di Bellman basata su
una funzione definita a partire dallo stato iniziale ๐‘„ ๐‘ ๐‘ก, ๐‘Ž ๐‘ก = ๐‘Ÿ๐‘ก+1 + ๐›พ โˆ™ max
๐‘Ž
๐‘„ ๐‘ ๐‘ก+1, ๐‘Ž .
Lโ€™apprendimento avviene iterando una serie di episodi durante i quali, ad ogni passo, si seleziona
lโ€™azione ottimale e si osserva lโ€™esito delle scelte allo stato successivo. Utilizza un valore di learning
rate che definisce la ยซgrandezzaยป dei passi in funzione delle scelte fornite dallโ€™equazione di Bellman;
progressivamente ridotto durante lโ€™apprendimento. Dimensioni di Q=possibili statiโจฏpossibili azioni.
DEEP Q-LEARNING: CNN usata per approssimare funzioni Q di enormi dimensioni.
REINFORCEMENT LEARNING/DEEP QLEARNING

More Related Content

Similar to Machine learning - Schede

Instance-based learning and Numeric prediction
Instance-based learning and Numeric predictionInstance-based learning and Numeric prediction
Instance-based learning and Numeric predictionDavide Ciambelli
ย 
JugMarche: Machine learning: usi pratici di supervised learning
JugMarche: Machine learning: usi pratici di supervised learningJugMarche: Machine learning: usi pratici di supervised learning
JugMarche: Machine learning: usi pratici di supervised learningOnofrio Panzarino
ย 
Ac mt6-11-120613071436-phpap1
Ac mt6-11-120613071436-phpap1Ac mt6-11-120613071436-phpap1
Ac mt6-11-120613071436-phpap1imartini
ย 
SVM
SVMSVM
SVMpantifabr
ย 
La metodologia statistica nel data mining
La metodologia statistica nel data miningLa metodologia statistica nel data mining
La metodologia statistica nel data miningFrancesco Tamburini
ย 
Mobile price classification
Mobile price classificationMobile price classification
Mobile price classificationMircoBarbero
ย 
Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...
Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...
Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...Antonio Notarangelo
ย 
5 Control Charts
5 Control Charts5 Control Charts
5 Control ChartsLuca Vecchiato
ย 
Fse 08b - control charts
Fse   08b - control chartsFse   08b - control charts
Fse 08b - control chartsLuca Vecchiato
ย 
Portage
PortagePortage
Portageimartini
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normativeiva martini
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normativeiva martini
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normativeiva martini
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normativeiva martini
ย 
Corso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti NeuraliCorso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti NeuraliValerio Capozio
ย 
Metodi_Iterativi_28_10_2016
Metodi_Iterativi_28_10_2016Metodi_Iterativi_28_10_2016
Metodi_Iterativi_28_10_2016Michele Scipioni
ย 

Similar to Machine learning - Schede (20)

Instance-based learning and Numeric prediction
Instance-based learning and Numeric predictionInstance-based learning and Numeric prediction
Instance-based learning and Numeric prediction
ย 
JugMarche: Machine learning: usi pratici di supervised learning
JugMarche: Machine learning: usi pratici di supervised learningJugMarche: Machine learning: usi pratici di supervised learning
JugMarche: Machine learning: usi pratici di supervised learning
ย 
8 Statistica
8 Statistica8 Statistica
8 Statistica
ย 
Ac mt6-11-120613071436-phpap1
Ac mt6-11-120613071436-phpap1Ac mt6-11-120613071436-phpap1
Ac mt6-11-120613071436-phpap1
ย 
SVM
SVMSVM
SVM
ย 
La metodologia statistica nel data mining
La metodologia statistica nel data miningLa metodologia statistica nel data mining
La metodologia statistica nel data mining
ย 
TSELM
TSELMTSELM
TSELM
ย 
Sentiment candida 27_may
Sentiment candida 27_maySentiment candida 27_may
Sentiment candida 27_may
ย 
Statistica descrittiva - consigli pratici
Statistica descrittiva - consigli praticiStatistica descrittiva - consigli pratici
Statistica descrittiva - consigli pratici
ย 
Mobile price classification
Mobile price classificationMobile price classification
Mobile price classification
ย 
Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...
Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...
Identificare feature significative per lโ€™analisi nellโ€™informatica forense uti...
ย 
5 Control Charts
5 Control Charts5 Control Charts
5 Control Charts
ย 
Fse 08b - control charts
Fse   08b - control chartsFse   08b - control charts
Fse 08b - control charts
ย 
Portage
PortagePortage
Portage
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normative
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normative
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normative
ย 
Valutazioni criteriali e normative
Valutazioni criteriali e normativeValutazioni criteriali e normative
Valutazioni criteriali e normative
ย 
Corso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti NeuraliCorso Introduttivo alle Reti Neurali
Corso Introduttivo alle Reti Neurali
ย 
Metodi_Iterativi_28_10_2016
Metodi_Iterativi_28_10_2016Metodi_Iterativi_28_10_2016
Metodi_Iterativi_28_10_2016
ย 

Machine learning - Schede

  • 1. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili FONDAMENTI Dati oggetto della disciplina Machine Learning, puรฒ essere tradotto in italiano in vari modi: forma, campione, esempio, โ€ฆ PATTERN RECOGNITION: disciplina che studia il riconoscimento dei pattern Tipi di pattern NUMERICI: valori associati a caratteristiche misurabili o conteggi โ€ข Continui o discreti, in ogni caso ordinabili โ€ข Lโ€™estrazione di caratteristiche produce vettori numerici (feature vectors) โ€ข Esempi: altezza, peso, lunghezza piede, โ€ฆ CATEGORICI: valori associati a caratteristiche qualitative e alla presenza o assenza di una caratteristica โ€ข Non sono mappabili su valori numerici โ€ข Possono essere ordinabili โ€ข Esempi: sesso, colore occhi, gruppo sanguigno, โ€ฆ SEQUENZE: pattern sequenziali con relazioni spaziali o temporali โ€ข Lunghezza variabile, allineamento spazio temporale e memoria โ€ข Importanza della posizione, predecessori e successori โ€ข Esempi: stream audio video, frasi, โ€ฆ ALTRI PATTERN STRUTTURATI: output organizzati in strutture complessi โ€ข Applicazioni in bioinformatica, Natural Language Processing, Speech recognition โ€ข Grafi, alberi, โ€ฆ SUPERVISIONATO: le classi dei pattern utilizzati per lโ€™addestramento sono note (training set etichettato) NON SUPERVISIONATO: non sono note le classi dei pattern SEMI-SUPERVISIONATO: il training set รจ parzialmente etichettato, ottimizzazione con pattern non etichettati BATCH: addestramento una sola volta poi passaggio al working mode INCREMENTALE: piรน addestramenti dopo quello iniziale, rischio: catastrofic forgetting NATURALE: addestramento continuo (supervisionato e non supervisionato) REINFORCEMENT LEARNING โ€ข OBIETTIVO: apprendere un comportamento โ€ข Interazione ambiente-agente โ€ข Sistema di ricompense/premi (anche ritardate rispetto allโ€™azione) โ€ข Q-Learning, Deep reinforcement Il comportamento di un algoritmo di ML รจ regolato da un set di parametri. Lโ€™apprendimento รจ il processo che cerca il valor ottimo di questi parametri. La funzione obiettivo ๐’‡(๐‘ป๐’“๐’‚๐’Š๐’, ๐œฃ) puรฒ rappresentare lโ€™ottimalitร  della soluzione o lโ€™errore o perdita. Lโ€™apprendimento cerca di massimizzare ๐›ฉโˆ— = ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘Ž๐‘ฅ ๐›ฉ ๐‘“ ๐‘‡๐‘Ÿ๐‘Ž๐‘–๐‘›, ๐›ฉ o minimizzare il valore della funzione obiettivo ๐›ฉโˆ— = ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘–๐‘› ๐›ฉ ๐‘“ ๐‘‡๐‘Ÿ๐‘Ž๐‘–๐‘›, ๐›ฉ . Gli iperparametri sono valori che definiscono le caratteristiche degli algoritmi di ML (es: numero di neuroni in una rete neurale, numero di vicini in un classificatore k-NN, grado di un polinomio utilizzato per la regressione, tipo di loss function, โ€ฆ) Lโ€™apprendimento puรฒ essere effettuato piรน volte a partire da iperparametri differenti, scegliendo al termine il set di iperparametri che forniscono le prestazioni migliori. PATTERN APPRENDIMENTO PARAMETRI, IPERPARAMETRI, FUNZIONE OBIETTIVO ๏‘ TRAINING SET: insieme di pattern utilizzati durante lโ€™addestramento VALIDATION SET: insieme di pattern utilizzati per tarare gli iperparametri (H) TEST SET: insieme di pattern su cui valutare le prestazioni finali TRAING, VALID e TEST SET dovrebbero essere disgiunti. K-FOLD CROSS VALIDATION Metodo di suddivisione dei pattern nei 3 set in caso di campioni ridotti. K partizioni omogenee, K cicli di addestramento su K-1 partizioni usate per il training e 1 per il validation. Prestazione = media/mediana LEAVE-ONE-OUT: caso estremo di cross validation con fold di dimensione 1 TRAINING, VALIDATION, TEST SET
  • 2. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili FONDAMENTI Le prestazioni possono essere misurate direttamente tramite la funzione obiettivo. รˆ perรฒ utile definire misure maggiormente correlate alla semantica del problema. CLASSIFICAZIONE CLOSED SET: i pattern appartengono ad una delle classi note ACCURATEZZA = pattern correttamente classificati / pattern classificati ERRORE = 100% - ACCURATEZZA OPEN SET: i pattern possono appartenere ad una delle classi note oppure no. Approccio: aggiunta classe ยซresto del mondoยป Approccio: definizione livello di soglia per cui le assegnazioni con un livello di confidenza (probabilitร ) inferiore alla soglia non vengono effettuate N = Numero di pattern TP (True Positive) = # pattern correttamente classificati FP (False Positive) = # pattern classificati erroneamente TN (True Negative) = # pattern correttamente attribuiti a ยซresto del mondoยป o sotto soglia FN (False Negative) = # pattern erroneamente attribuiti a ยซresto del mondoยป o sotto soglia Misure delle prestazioni False Positive Rate = FP/N False Negative Rate = FN/N Nei sistemi con soglia, il valore della soglia determina i risultati su FPR e FNR: โ€ข soglia elevata = FPR basso e FNR alto โ€ข soglia bassa = FPR alto e FNR basso Le curve FPR e FNR possono essere condensate in: DET Detection Error Tradeoff (FNR/FPR) ROC Receiver Operating Characteristic (TPR/FPR) Nei sistemi biometrici si parla di False Match / False Non-Match e, in caso di multiclasse di FPIR (False Positive Identification Rate) e FNIR (False Negative Identification Rate) PRECISION = TP / ( TP + FP ) = TRUE POSITIVE / POSITIVE (pertinenza) RECALL = TP / ( TP + FN ) = TRUE POSITIVE / RELEVANT ELEMENTS (completezza) PRESTAZIONI Obiettivo primario durante la fase di training: CONVERGENZA Andamento decrescente del LOSS e crescente dellโ€™ACCURACY. DINAMICHE: โ€ข LOSS non decresce (oppure oscilla significativamente) โ€ข il sistema non converge โ€ข metodo di ottimizzazione non efficace: โ€ข modificare iperparametri โ€ข modificare learning rate โ€ข correggere errori di implementazione del metodo โ€ข LOSS decresce ma lโ€™ACCURACY non cresce โ€ข probabilmente la loss function scelta รจ errata โ€ข ACCURACY non si avvicina al 100% sul training โ€ข il modello รจ inadeguato: โ€ข aumentare i gradi di libertร  del classificatore (troppi parametri potrebbero essere troppo restrittivi) โ€ข modificare gli iperparametri GENERALIZZAZIONE: capacitร  di trasferire il livello di accuratezza ottenuto sul traininig set al validation set OVERFITTING: ottenimento di risultati ad alte prestazioni sul training set ma non sul validation set. Si verifica facilmente con train set di piccole dimensioni. Durante lโ€™addestramento รจ opportuno interrompere il processo al momento ideale, quando il livello di accuratezza sul validation set non cresce o inizia a decrescere. Controllare lโ€™overfitting per massimizzare la generalizzazione โ€ข gradi di libertร  del classificatore adeguati al problema โ€ข aumentarli gradualmente โ€ข regolaritร  della soluzione appresa โ€ข aggiungere un fattore di regolarizzazione CONVERGENZA โ€ข GENERALIZZAZIONE โ€ข OVERFITTING
  • 3. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili FONDAMENTI MACHINE LEARNING SUPERVISED LEARNING CLASSIFICAZIONE BAYES Parametrico Distribuzione multinormale Non parametrico Parzen Window NEAREST NEIGHBOR k-NN Metriche SVM Lineari Non lineari Multiclasse MULTI CLASSIFICATORI Fusione a livello di decisione Fusione a livello di confidenza Bagging (Random Forest) Boosting (AdaBoost) REGRESSIONE LINEARE Simple linear Multiple linear NON LINEARE Variabile indipendente Ottimizzazione numerica UNSUPERVISED LEARNING CLUSTERING GERARCHICO CENTROID BASED K-means Fuzzy K-means Expectation - Maximization Approcci ML solo con sufficienti esempi per training e validation set Sforzi significativi per etichettare grandi insiemi di pattern Training, Validation e Test set devono essere rappresentativi Automatizzare le procedure di valutazione delle performance Confrontare le prestazioni solo con sistemi addestrati su stesso dataset e protocollo Attenzione agli intervalli di confidenza per risultati su set di piccole dimensioni Scrivere codice strutturato, ordinato MACHINE LEARNING IN PRATICA
  • 4. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili CLASSIFICATORI โ€ข Bayes Insieme di pattern aventi proprietร  comune Esempi di classificazione: spam detection / credit card fraud detection / face recognition / pedestrian classification / medical diagnosys / stock trading CLASSE Ipotesi sulla forma delle distribuzioni. Piccole dimensioni del training set e/o ragionevole certezza sulla curva di distribuzione. DISTRIBUZIONE NORMALE (d=1) ๐‘(๐‘ฅ) = 1 ๐œŽ 2๐œ‹ ๐‘’ โˆ’ (๐‘ฅโˆ’๐œ‡)2 2๐œŽ2 DISTRIBUZIONE MULTINORMALE ๐‘(๐‘ฅ) = 1 2๐œ‹ ๐‘‘/2 ฮฃ 1/2 ๐‘’โˆ’ 1 2 ๐‘ฅโˆ’๐œ‡ ๐‘กฮฃโˆ’1 ๐‘ฅโˆ’๐œ‡ Gli elementi diagonali della matrice di covarianza sono le varianze per ogni dimensione, gli elementi non diagonali sono le covarianze e determinano la correlazione statistica ( = 0 ๏ƒจ inipendenti; > 0 ๏ƒจ correlati positivamente; < 0 ๏ƒจ correlati negativamente). DISTANZA DI MAHALANOBIS ๐’“ ๐Ÿ = ๐’™ โˆ’ ๐ ๐’• ๐œฎโˆ’๐Ÿ ๐’™ โˆ’ ๐ Definisce i bordi a densitร  costante in una distribuzione multinormale. Sostituisce spesso la distanza euclidea essendo in grado di pesare le diverse componenti tenendo conto dei relativi spasi di variazione e della loro correlazione. DECISION BOUNDARY / DECISION SURFACE: zona di confine tra regioni che il classificatore associa a classi diverse, sul confine la classificazione รจ ambigua. CONFIDENZA DI CLASSIFICAZIONE Vantaggio del classificatore di Bayes legato al fatto che produce un valore probabilistico di output, utilizzabile come confidenza per scartare pattern in applicazioni open set con soglia o costruire un multiclassificatore. Se non serve la confidenza ๐’ƒ = ๐’‚๐’“๐’ˆ๐’Ž๐’‚๐’™๐’Š=๐Ÿ...๐’” ๐‘ท ๐’˜๐’Š ๐’™ = ๐’‚๐’“๐’ˆ๐’Ž๐’‚๐’™๐’Š=๐Ÿ...๐’” ๐’‘(๐’™|๐’˜๐’Š) โ‹… ๐‘ท(๐’˜๐’Š) PARAMETRICO Problema posto in termini probabilistici. RELAZIONI ๐‘(๐‘ฅ) = ๐‘–=1 ๐‘  ๐‘(๐‘ฅ|๐‘ค๐‘–) โ‹… ๐‘ƒ(๐‘ค๐‘–) ๐‘‘๐‘œ๐‘ฃ๐‘’ ๐‘–=1 ๐‘  ๐‘ƒ(๐‘ค๐‘–) = 1 ๐‘ƒ(๐‘ค๐‘–|๐‘ฅ) = ๐‘(๐‘ฅ|๐‘ค๐‘–) โ‹… ๐‘ƒ(๐‘ค๐‘–) ๐‘(๐‘ฅ) Per ogni classe รจ necessario calcolare la probabilitร  a priori e la densitร  di probabilitร  condizionali. La regola assegna la classe (b) con la probabilitร  a posteriori piรน alta per il pattern x: ๐’ƒ = ๐’‚๐’“๐’ˆ๐’Ž๐’‚๐’™๐’Š=๐Ÿ...๐’”{๐‘ท(๐’˜๐’Š|๐’™)} ๐‘ท(๐’†๐’“๐’“๐’๐’“) = โ„œ1 ๐‘(๐‘ฅ|๐‘ค2)๐‘ƒ(๐‘ค2)๐‘‘๐‘ฅ + โ„œ2 ๐‘(๐‘ฅ|๐‘ค1)๐‘ƒ(๐‘ค1)๐‘‘๐‘ฅ La conoscenza delle densitร  di probabilitร  condizionale รจ possibile solo in teoria. APPROCCIO BAYESIANO Definizione Descrizione Esempio Probabilitร  che una personaโ€ฆ ๐‘(๐‘ฅ|๐‘ค๐‘–) Densitร  di probabilitร  condizionale di x data wi Probabilitร  che il prossimo pattern sia x sotto lโ€™ipotesi che la sua classe sia wi โ€ฆabbia una certa altezza sapendo che รจ una donna ๐‘ƒ(๐‘ค๐‘–) Probabilitร  a priori Probabilitร  che il prossimo pattern sia di classe wi โ€ฆsia donna ๐‘(๐‘ฅ) Densitร  di probabilitร  assoluta Probabilitร  che il prossimo pattern sia x โ€ฆabbia una certa altezza ๐‘ƒ(๐‘ค๐‘–|๐‘ฅ) Probabilitร  a posteriori di wi dato x Probabilitร  che il pattern x sia di classe wi โ€ฆsia una donna sapendo che ha una certa altezza Attenzione alle ipotesi sulle distribuzioni delle densitร  di probabilitร . 1. Valutare la corrispondenza alla normalitร  delle s distribuzioni 1. formalmente (Malkovich/Afifi) 2. empiricamente (tramite visualizzazione dati) 2. Stima del vettore medio e della matrice di covarianza 3. Probabilitร  a priori estratte dal campione nel training set o tutte uguali 4. Assegnazione della classe ad ogni nuovo pattern in base alla regola di Bayes. IN PRATICA
  • 5. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili CLASSIFICATORI โ€ข Bayes Apprendimento delle distribuzioni dal training set. La stima delle densitร  รจ solitamente affrontabile in spazi a dimensionalitร  ridotta. Campionamento: lโ€™idea รจ quella di campionare lo spazio (indipendentemente dal numero di dimensioni) per individuare, nelle diverse zone, la distribuzione dei pattern nelle classi. Approcci: divisione in celle (problemi legati ai confini e alla scelta delle dimensioni delle celle), utilizzo di intorni (con problemi legati alla scelta delle dimensioni degli intorni). Probabilitร  che un pattern ๐’™ sia dentro โ„œ : ๐‘ƒ1 = โ„œ ๐‘(๐’™โ€ฒ)๐‘‘๐’™โ€ฒ Probabilitร  che ๐‘˜ pattern siano dentro โ„œ: ๐‘ƒ๐‘˜ = ๐‘› ๐‘˜ ๐‘ƒ1 ๐‘˜ 1 โˆ’ ๐‘ƒ1 ๐‘› โˆ’ ๐‘˜ Valore medio: ๐‘˜ = ๐‘›๐‘ƒ1 โ‡’ ๐‘ƒ1 = ๐‘˜ ๐‘› Se โ„œ di volume ๐‘‰ รจ sufficientemente piccola: ๐‘ƒ1 = โ„œ ๐‘(๐‘ฅโ€ฒ)๐‘‘๐‘ฅ โ‰ˆ ๐‘(๐‘ฅ) โ‹… ๐‘‰ Da cui: ๐‘(๐‘ฅ) = ๐‘ƒ1 ๐‘‰ = ๐‘˜ ๐‘› โ‹… ๐‘‰ Il volume di un ipercubo centrato in ๐’™ con lato โ„Ž ๐‘› รจ: ๐‘˜ ๐‘› = ๐‘–=1 ๐‘› ๐œ‘ ๐’™๐’Šโˆ’๐’™ โ„Ž ๐‘› Da cui: ๐‘(๐‘ฅ) = ๐‘ƒ๐‘› ๐‘‰๐‘› = ๐‘˜ ๐‘› ๐‘› โ‹… ๐‘‰๐‘› = ๐‘–=1 ๐‘› ๐œ‘ ๐’™๐’Šโˆ’๐’™ โ„Ž ๐‘› ๐‘› โ‹… ๐‘‰๐‘› Se la finestra รจ piccola la stima รจ rumorosa e statisticamente instabile. Se la finestra รจ grande la stima รจ stabile ma piuttosto vaga e sfuocata. Per ottenere convergenza la dimensione della finestra deve essere calcolata tenendo conto del numero di campioni del training set: ๐‘‰๐‘› = ๐‘‰1 ๐‘› Kernel function soft vengono utilizzate al posto degli ipercubi in modo da realizzare superfici decisionali piรน regolari (smoothed). Devono essere funzioni di densitร  (sempre positive con integrale su tutto lo spazio pari a 1). ๐‹(๐’–) = ๐Ÿ (๐Ÿ๐…) ๐’…/๐Ÿ ๐’†โˆ’ ๐’– ๐’• ๐’– ๐Ÿ NON PARAMETRICO โ€ข PARZEN WINDOW (dalla prova di autovalutazione del 17/12/2016) Date due distribuzioni multinormali identificate dai seguenti parametri: ๐0 = 1,03 1,03 ฮฃ0 โˆ’1 = 52,56 โˆ’10,05 โˆ’10,05 36,88 ฮฃ0 = 0,000544 ๐‘ƒ ๐‘ค0 = 0,6 ๐1 = 2,02 1,53 ฮฃ1 โˆ’1 = 100,58 โˆ’22,34 โˆ’22,34 37,85 ฮฃ1 = 0,000302 ๐‘ƒ ๐‘ค1 = 0,4 Nellโ€™ipotesi dellโ€™impiego di un classificatore di Bayes multinormale, calcolare per il punto ๐’™ = 1,60 1,25 : โ€ข Le densitร  di probabilitร  condizionali โ€ข Le probabilitร  a posteriori โ€ข Lโ€™indice della classe restituita in output. Si ricorda che la densitร  di probabilitร , nel caso della distribuzione multinormale รจ: ๐‘ ๐’™ = 1 2๐œ‹ d 2 ฮฃ 1 2 โˆ™ ๐‘’โˆ’ 1 2 ๐’™โˆ’๐ ๐‘กฮฃโˆ’1 ๐’™โˆ’๐ SVOLGIMENTO 1) Si calcolano le densitร  di probabilitร  condizionali (d=2) ๐‘ ๐’™|๐‘ค0 = 1 2๐œ‹ โˆ™ 0,000544 โˆ™ ๐‘’ โˆ’ 1 2 1,6โˆ’1,03 1,25โˆ’1,03 52,56 โˆ’10,05 โˆ’10,05 36,88 1,6โˆ’1,03 1,25โˆ’1,03 = 0,00193 ๐‘ ๐’™|๐‘ค1 = 1 2๐œ‹ โˆ™ 0,000302 โˆ™ ๐‘’ โˆ’ 1 2 1,6โˆ’2,02 1,25โˆ’1,53 100,58 โˆ’22,34 โˆ’22,34 37,85 1,6โˆ’2,02 1,25โˆ’1,53 = 0,00403 2) Si calcola la densitร  di probabilitร  assoluta di x ๐‘ ๐’™ = 0,00193 โˆ— 0,6 + 0,00403 โˆ— 0,4 = 0,00277 3) Si calcolano le probabilitร  a posteriori ๐‘ ๐‘ค0|๐’™ = 0,6 โˆ™ 0,00193 0,00277 = 0,418 ๐‘ ๐‘ค1|๐’™ = 0,4 โˆ™ 0,00403 0,00277 = 0,582 4) Si valutano le probabilitร  a posteriori per scegliere la classe La probabilitร  a posteriori รจ maggiore per la classe 1. ESEMPI
  • 6. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili CLASSIFICATORI โ€ข Nearest Neighbor Comportamento di Nearest Neighbor strettamente collegato alla metrica adottata. DISTANZA EUCLIDEA Spesso utilizzata Caso L2 delle metriche di Minkowski ๐ฟ ๐‘˜(๐‘Ž, ๐‘) = ๐‘–=1 ๐‘‘ ๐‘Ž๐‘– โˆ’ ๐‘๐‘– ๐‘˜ 1/๐‘˜ ๐ฟ2(๐‘Ž, ๐‘) = ๐‘–=1 ๐‘‘ ๐‘Ž๐‘– โˆ’ ๐‘๐‘– 2 = ๐‘Ž๐‘– โˆ’ ๐‘๐‘– 2 Non gestisce correttamente eventuali correlazioni (es. altezza e lunghezza piede). NORMALIZZAZIONE SULLO SPAZIO DI VARIAZIONE ๐ฟ2 ๐‘Ž, ๐‘ = ๐‘–=1 ๐‘‘ ๐‘ ๐‘– ๐‘ฃ ๐‘– ๐‘Ž๐‘– โˆ’ ๐‘๐‘– 2 ๐‘ฃ๐‘–: ๐‘ ๐‘๐‘Ž๐‘ง๐‘–๐‘œ ๐‘‘๐‘– ๐‘ฃ๐‘Ž๐‘Ÿ๐‘–๐‘Ž๐‘ง๐‘–๐‘œ๐‘›๐‘’ ๐‘๐‘–: ๐‘๐‘’๐‘ ๐‘œ ๐‘“๐‘’๐‘Ž๐‘ก๐‘ข๐‘Ÿ๐‘’ ๐‘– โˆ’ ๐‘’๐‘ ๐‘–๐‘š๐‘Ž Gli spazi di variazione possono essere calcolati come range (max-min) sul training set o, meglio, in proporzione alla deviazione standard. I pesi possono essere scelti in proporzione al potere discriminante, ad esempio come rapporto: ๐‘๐‘– = ๐‘ฃ๐‘Ž๐‘Ÿ๐‘–๐‘Ž๐‘๐‘–๐‘™๐‘–๐‘กร  ๐‘–๐‘›๐‘ก๐‘’๐‘Ÿ๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘’ ๐‘“๐‘’๐‘Ž๐‘ก๐‘ข๐‘Ÿ๐‘’ ๐‘– ๐‘ฃ๐‘Ž๐‘Ÿ๐‘–๐‘Ž๐‘๐‘–๐‘™๐‘–๐‘กร  ๐‘–๐‘›๐‘ก๐‘Ÿ๐‘Ž๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘’ ๐‘“๐‘’๐‘Ž๐‘ก๐‘ข๐‘Ÿ๐‘’ ๐‘– Variabilitร  interclasse: es. media deviazioni standard dei valori della feature in ogni classe Variabilitร  intraclasse: es. deviazione standard dei valori della feature in un campione di pattern per ogni classe WHITENING TRANFORM Efficace normalizzazione rispetto agli spazi di variazione, tiene conto delle correlazioni tra features. Utilizza come metrica la distanza euclidea ma sullo spazio sfericizzato. 1. Rimuove le correlazioni ยซruotandoยป la nuvola di punti per allineare gli assi di variazione principale agli assi cartesiani 2. Sferiricizza lโ€™ellissoide uniformando le varianze (autovalori) a 1 lungo tutti gli assi DISTANZA DI MAHALANOBIS ๐’“ ๐Ÿ = ๐’™ โˆ’ ๐ ๐’• ๐œฎโˆ’๐Ÿ ๐’™ โˆ’ ๐ METRIC LEARNING Approccio piรน generale per la scelta della metrica: learning supervisionato della metrica. Obiettivo: determinare una trasformazione degli input che avvicini i pattern della stessa classe e allontani quelli di classi diverse. โ€ข Determinazione di una matrice G di trasformazione: ๐‘ฎ๐’‚ โˆ’ ๐‘ฎ๐’ƒ 2 โ€ข Approcci non lineari: ๐‘ฎ๐œ™(๐’‚) โˆ’ ๐‘ฎ๐œ™(๐’ƒ) 2 ๐œ™: ๐‘“๐‘ข๐‘›๐‘ง๐‘–๐‘œ๐‘›๐‘’ ๐‘›๐‘œ๐‘› ๐‘™๐‘–๐‘›๐‘’๐‘Ž๐‘Ÿ๐‘’ SIMILARITร€ COSENO E DISTANZA COSENO Utilizzata in applicazioni di information retrieval, data mining, text mining. Due vettori identici hanno similaritร  1, due opposti hanno similaritร  -1. ๐ถ๐‘œ๐‘ ๐‘†๐‘–๐‘š๐‘–๐‘™๐‘Ž๐‘Ÿ๐‘–๐‘ก๐‘ฆ ๐’‚, ๐’ƒ = ๐’‚ ๐’• โˆ™ ๐’ƒ ๐’‚ โˆ™ ๐’ƒ ๐ด๐‘›๐‘”๐‘ข๐‘™๐‘Ž๐‘Ÿ๐ท๐‘–๐‘ ๐‘ก๐‘Ž๐‘›๐‘๐‘’ ๐’‚, ๐’ƒ = cosโˆ’1 ๐ถ๐‘œ๐‘ ๐‘†๐‘–๐‘š๐‘–๐‘™๐‘Ž๐‘Ÿ๐‘–๐‘ก๐‘ฆ ๐’‚, ๐’ƒ ๐œ‹ METRICHE NEAREST NEIGHBOR classifica un pattern x assegnandogli la stessa classe del pattern a lui piรน vicino nel training set sulla base di una metrica ๐’…๐’Š๐’”๐’•(โˆ™) specifica. ๐’…๐’Š๐’”๐’•(๐’™, ๐’™โ€ฒ) = ๐’Ž๐’Š๐’ ๐’™๐’Šโˆˆ๐‘ป๐‘บ{๐’…๐’Š๐’”๐’•(๐’™, ๐’™๐’Š)} Lโ€™idea รจ di massimizzare la probabilitร  a posteriori in maniera pragmatica ๐‘ƒ(๐‘ค๐‘–|๐‘ฅ) โ‰ˆ ๐‘ƒ(๐‘ค๐‘–|๐‘ฅโ€ฒ) La probabilitร  di errore di NN non supera mai il doppio del minimo errore possibile (Bayes) Tassellazione di Voronoi: ogni pattern del training set determina un tassello allโ€™interno del quale i pattern vengono assegnati alla stessa classe: un elemento poco affidabile determina un errore di classificazione sui pattern vicini. K-NEAREST NEIGHBOR definisce la classe di un pattern sulla base dei k pattern piรน vicini k รจ un iperparametro, valori ottimali (< 10) da determinare su validation set separato Se il training set รจ infinito, k-NN รจ migliore di 1-NN. Allโ€™aumentare di k, lโ€™errore converge a quello Bayesiano. Aumentare k significa estendere lโ€™ipersfera cercando di valutare la proprietร  a posteriori lontano dal punto di interesse. CONFIDENZA DI CLASSIFICAZIONE ๐‘†๐‘–๐‘Ž๐‘›๐‘œ ๐‘ฃ1, ๐‘ฃ2, . . . , ๐‘ฃ๐‘  ๐‘–=1 ๐‘  ๐‘ฃ๐‘– = ๐‘˜ ๐‘– ๐‘ฃ๐‘œ๐‘ก๐‘– ๐‘œ๐‘ก๐‘ก๐‘’๐‘›๐‘ข๐‘ก๐‘– ๐‘‘๐‘Ž๐‘™ ๐‘๐‘Ž๐‘ก๐‘ก๐‘’๐‘Ÿ๐‘› ๐‘ฅ โ‡’ ๐‘๐‘œ๐‘›๐‘“๐‘–๐‘‘๐‘’๐‘›๐‘ง๐‘Ž: ๐‘ฃ1 ๐‘˜ , ๐‘ฃ2 ๐‘˜ , . . . , ๐‘ฃ๐‘  ๐‘˜ COMPLESSITร€ COMPUTAZIONALE โ€ข Memorizzare tutti i pattern del training set โ€ข Per ogni pattern calcolare la distanza da tutti i pattern del training set โ€ข Ordinare le distanze per valutare le k piรน piccole Semplificazioni (pattern prototipo): EDITING eliminazione di pattern dal training set CONDENSING derivazione di nuovi prototipi (es. vettore medio) โ€ข Riduzione dei calcoli โ€ข Prototipi maggiormente affidabili rispetto ai pattern INDICIZZAZIONE DATI (kd-tree) NN, kNN
  • 7. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili CLASSIFICATORI โ€ข SVM SVM lineare determina lโ€™iperpiano di separazione, tra tutti quelli possibili su due insiemi di pattern di due classi linearmente separabili, con il maggior margine possibile, stimando che in tal modo si possono classificare correttamente anche i pattern di test vicini al confine. MARGINE: distanza minima di punti delle due classi nel training set dallโ€™iperpiano. IPERPIANO: ๐ท ๐’™ = ๐’˜ โˆ™ ๐’™ + ๐‘ DISTANZA VETTORE-IPERPIANO: ๐‘Ÿ = ๐ท ๐’™ ๐’˜ OBIETTIVO: individuare lโ€™iperpiano che massimizza la distanza (o minimizza lโ€™inverso) ๐‘€๐‘–๐‘›๐‘–๐‘š๐‘–๐‘ง๐‘ง๐‘Ž๐‘Ÿ๐‘’ ๐’˜ 2/2 ๐‘‰๐‘–๐‘›๐‘๐‘œ๐‘™๐‘– ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โˆ’ 1 โ‰ฅ 0 ๐‘๐‘’๐‘Ÿ ๐‘– = 1, โ€ฆ , ๐‘› SUPPORT VECTOR: pattern del training set che giacciono sul margine, da soli determinano la soluzione al problema. ๐ท ๐’™ = 1 ๐’˜ = ยฑ1 SOLUZIONI: possono essere individuate tramite formulazione Lagrangiana e formulazione duale tramite condizioni Karush-Kuhn-Tucker (KKT). ๐‘ญ๐’๐’“๐’Ž๐’–๐’๐’‚๐’›๐’Š๐’๐’๐’† ๐‘ณ๐’‚๐’ˆ๐’“๐’‚๐’๐’ˆ๐’Š๐’‚๐’๐’‚ ๐‘„ ๐’˜, ๐‘, ๐œถ = 1 2 ๐’˜ โˆ™ ๐’˜ โˆ’ ๐’Š=๐Ÿ ๐’ ๐›ผ๐‘– ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โˆ’ 1 ๐‘ซ๐’–๐’‚๐’๐’† ๐‘„ ๐œถ = ๐‘–,=1โ€ฆ๐‘› ๐›ผ๐‘– โˆ’ 1 2 ๐‘–,๐‘—=1โ€ฆ๐‘› ๐›ผ๐‘– ๐›ผ๐‘— ๐‘ฆ๐‘– ๐‘ฆ๐‘—(๐’™๐’Š โˆ™ ๐’™๐’‹) ๐‘๐‘œ๐‘› ๐‘ฃ๐‘–๐‘›๐‘๐‘œ๐‘™๐‘– ๐‘–=1โ€ฆ๐‘› ๐‘ฆ๐‘– ๐›ผ๐‘– = 0 ๐‘’ ๐›ผ๐‘– โ‰ฅ 0 ๐‘๐‘’๐‘Ÿ ๐‘– = 1, โ€ฆ ๐‘› Risolvibile con algoritmi di programmazione quadratica: ๐ท ๐‘ฅ = ๐‘คโˆ— โˆ™ ๐‘ฅ + ๐‘ = ๐‘–,๐‘—=1โ€ฆ๐‘› ๐›ผ๐‘– โˆ— ๐‘ฆ๐‘– ๐’™๐’Š โˆ™ ๐’™๐’‹ + ๐‘โˆ— VANTAGGI โ€ข Soluzione calcolata su un numero ridotto di support vector โ€ข Complessitร  legata al numero di support vector e errore medio limitato dal rapporto support vector / pattern โ€ข Metodo adatto anche a dimensionaltiร  elevate: quadratica rispetto al numero di pattern PATTERN LINEARMENTE SEPARATI ยซRilassamento dei vincoli di separazioneยป per permettere che alcuni (il minor numero possibile) pattern possano valicare il confine della classe. VARIABILI DI SLACK: ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โ‰ฅ 1 โˆ’ ๐œ‰๐‘– per ogni pattern ๐’™๐’Š, la variabile ๐œ‰๐‘– definisce la deviazione dal margine. OBIETTIVO: massimizzare il margine e minimizzare il numero di elementi non correttamente classificati. ๐‘€๐‘–๐‘›๐‘–๐‘š๐‘–๐‘ง๐‘ง๐‘Ž๐‘Ÿ๐‘’ ๐’˜ 2 2 + ๐ถ ๐‘–=1โ€ฆ๐‘› ๐œ‰๐‘– ๐‘‰๐‘–๐‘›๐‘๐‘œ๐‘™๐‘– ๐‘ฆ๐‘– ๐’˜ โˆ™ ๐’™๐’Š + ๐‘ โ‰ฅ 1 โˆ’ ๐œ‰๐‘– ๐‘๐‘’๐‘Ÿ ๐‘– = 1, โ€ฆ , ๐‘› COEFFICIENTE C: definisce lโ€™importanza relativa degli errori di classificazione rispetto allโ€™ampiezza del margine (รจ un iperparametro). SOLUZIONI: come nel caso di pattern linearmente separati PATTERN LINEARMENTE NON SEPARATI Estensione SVM di separazione con superfici anche molto complesse. MAPPING: dallo spazio di partenza ad uno spazio a piรน alta dimensionalitร . KERNEL FUNCTION: ๐พ ๐’™, ๐’™โ€ฒ = ๐›ท(๐’™) โˆ™ ๐›ท(๐’™โ€ฒ) (la scelta di K รจ un iperparametro) SOLUZIONE SENZA PARTICOLARI COMPLICAZIONI: ๐ท ๐‘ฅ = ๐‘–=1โ€ฆ๐‘› ๐›ผ๐‘– โˆ— ๐‘ฆ๐‘– ๐พ ๐’™, ๐’™๐’Š + ๐‘โˆ— Possibili Kernel Function โ€ข POLINOMI DI GRADO Q (Q iperparametro) โ€ข RADIAL BASIS FUNCTION (RBF) DI AMMPIEZZA ๐ˆ (๐œŽ iperparametro) โ€ข 2-LAYER NEURAL NETWORK ๐พ ๐’™, ๐’™โ€ฒ = ๐‘ก๐‘Ž๐‘›โ„Ž ๐‘ฃ ๐’™ โˆ™ ๐’™โ€ฒ + ๐‘Ž (๐‘ฃ, ๐‘Ž iperparametri) SVM NON LINEARE Introdotta da Vapnik dal 1965 e successivamente perfezionata. Molto utilizzato nella classificazione di pattern. Anzichรฉ stimare le densitร  di probabilitร , risolve direttamente il problema di interesse determinando le superfici decisionali tra le classi. TEORIA SVM determina la superficie di separazione tra 2 classi di pattern. Possibili estensioni multiclasse (approcci al problema ancora aperto): โ€ข ONE-AGAINST-ONE: ๐‘  ร— (๐‘  โˆ’ 1)/2 classificatori binari + majority vote rule โ€ข ONE-AGAINST-ALL: richiede un numero di training SVM pari al numero delle classi e assegna il pattern, al termine, in base alla massima distanza dalla superficie decisionale. SVM ESTENSIONE MULTICLASSE Dimensionalitร  alta ๏ƒจ SVM lineare, tarare iperparametro C. Dimensionalitร  bassa ๏ƒจ SVM non lineare, Kernel RBF Dimensionalitร  media ๏ƒจ tentativi con entrambi Multiclasse ๏ƒจ se possibile One-Against-One, altrimenti O-A-A IN PRATICA
  • 8. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili CLASSIFICATORI โ€ข Multiclassificatori Esecuzione di classificazione con diversi classificatori e successiva fusione dei risultati. Esecuzione parallela, in cascata o in modo gerarchico. Lโ€™utilizzo di combinazioni di classificatori puรฒ migliorare molto le prestazioni. METODI La combinazione รจ efficace quando i singoli classificatori sono sufficientemente indipendenti tra loro (non commettono gli stessi errori). INDIPENDENZA: โ€ข utilizzo di feature diverse (non correlate o poco correlate) โ€ข utilizzo di diversi algoritmi per lโ€™estrazione delle features โ€ข utilizzo di diversi algoritmi di classificazione โ€ข utilizzo di diverse porzioni di training set per lo stesso algoritmo (bagging) โ€ข iterazione addestramento sui pattern erroneamente classificati (boosting) INDIPENDENZA Ogni classificatore fornisce la propria decisione: classe a cui ha assegnato il pattern. Metodi di combinazione dei risultati MAJORITY VOTE RULE: il pattern assegnato alla classe maggiormente votata ๐ถ1, ๐ถ2, โ€ฆ , ๐ถ ๐‘›๐‘ ๐‘–๐‘›๐‘ ๐‘–๐‘’๐‘š๐‘’ ๐‘‘๐‘– ๐‘›๐‘ ๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘–๐‘“๐‘–๐‘๐‘Ž๐‘ก๐‘œ๐‘Ÿ๐‘– ๐œƒ๐‘–๐‘— = 1 ๐‘ ๐‘’ ๐‘– รจ ๐‘™๐‘Ž ๐‘๐‘™๐‘Ž๐‘ ๐‘ ๐‘’ ๐‘ฃ๐‘œ๐‘ก๐‘Ž๐‘ก๐‘Ž ๐‘‘๐‘Ž ๐ถ๐‘— 0 ๐‘Ž๐‘™๐‘ก๐‘Ÿ๐‘–๐‘š๐‘’๐‘›๐‘ก๐‘– ๐‘ก = ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘Ž๐‘ฅ๐‘–=1โ€ฆ๐‘  ๐‘—=1โ€ฆ๐‘›๐‘ ๐œƒ๐‘–๐‘— Prestazioni teoriche elevate dipendenti dalla totale indipendenza dei classificatori. ๐‘ƒ ๐‘š๐‘ข๐‘™๐‘ก๐‘– ๐‘›๐‘ = ๐‘š=๐‘˜ ๐‘›๐‘ ๐‘›๐‘ ๐‘š ๐‘ƒ ๐‘š 1 โˆ’ ๐‘ƒ ๐‘›๐‘โˆ’๐‘š BORDA COUNT: ogni classificatore fornisce una classifica delle classi in base alla probabilitร ; i ranking sono convertiti in punteggi e viene assegnata la classe con punteggio piรน alto (considera anche i non primi di ogni classificatore). ONE AGAINST ONE: consente di risolvere un problema di classificazione multi-classe attraverso classificatori binari 1. Per ๐‘  classi del problema, si addestrano ๐‘  ร— (๐‘  โˆ’ 1)/2 classificatori binari 1. Il pattern x รจ classificato da ogni classificatore assegnando un voto alla classe piรน probabile 2. Il pattern x รจ assegnato alla classe che ha ricevuto il maggior numero di voti (majority vote rule) FUSIONE A LIVELLO DI DECISIONE Ogni classificatore fornisce la confidenza di classificazione del pattern per ogni classe. ๐’„๐’๐’๐’‡๐’‹ = ๐‘๐‘œ๐‘›๐‘“๐‘—1, ๐‘๐‘œ๐‘›๐‘“๐‘—2, โ€ฆ , ๐‘๐‘œ๐‘›๐‘“๐‘—๐‘  Metodi di fusione FUSIONE A LIVELLO DI CONFIDENZA SOMMA ๐’”๐’–๐’Ž = ๐‘—=1โ€ฆ๐‘›๐‘ ๐’„๐’๐’๐’‡๐’‹ Sceglie la classe con somma massima Numericamente piรน stabile per valori di confidenza bassi su uno o pochi classificatori PRODOTTO ๐’‘๐’“๐’๐’… = ๐‘—=1โ€ฆ๐‘›๐‘ ๐’„๐’๐’๐’‡๐’‹ Sceglie la classe con prodotto massimo Metodo piรน corretto dal punto di vista probabilistico nel caso di indipendenza statistica MASSIMO ๐‘š๐‘Ž๐‘ฅ๐‘– = max ๐‘—=1โ€ฆ๐‘›๐‘ ๐’„๐’๐’๐’‡๐’‹๐’Š Sceglie la classe che ha ottenuto la massima confidenza massima MINIMO ๐‘š๐‘–๐‘›๐‘– = min ๐‘—=1โ€ฆ๐‘›๐‘ ๐’„๐’๐’๐’‡๐’‹๐’Š Sceglie la classe che ha ricevuto la massima confidenza minima Quindi la classe che non ha confidenza minima troppo bassa su ogni classificatore SOMMA PESATA ๐’”๐’–๐’Ž = ๐‘—=1โ€ฆ๐‘›๐‘ ๐‘”๐‘— โˆ™ ๐’„๐’๐’๐’‡๐’‹ Pesa la confidenza dei diversi classificatori Ad esempio in maniera inversamente proporzionale allโ€™errore di classificazione RANDOM FOREST (Metodo della famiglia Bagging: Bootstrap Aggregating) โ€ข Addestramento con classificator (classification tree) i su diverse porzioni del training set โ€ข Fusione (majority vote rule, somma, โ€ฆ) CLASIFICATION TREE: Albero binario in cui ogni nodo divide i pattern sulla base di un criterio su una singola feature, ogni livello utilizza progressivamente la feature che divide meglio il set. Ogni foglia rappresenta lโ€™assegnazione o meno del pattern alla classe. La scelta della feature in ogni nodo รจ fatta su un sottoinsieme casuale delle feature per evitare scelte uguali sui vari classification trees (bagging sulle features). ADABOOST (Metodo della famiglia Boosting) โ€ข Effettua un certo numero di iterazioni โ€ข Ad ogni iterazione calcola/aggiorna i pesi dei pattern โ€ข Sceglie il classificatore che realizza il minor errore โ€ข Calcola il peso del classificatore (errore alto+classificazione corretta o errore basso+classificazione errata) โ€ข Il classificatore strong finale รจ media pesata dei weak classificatori iniziali. BAGGING E BOOSTING
  • 9. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili REGRESSIONE Apprendimento della funzione che assegna un valore numerico continuo ad ogni pattern. ๐‘“ ๐‘ฅ โ†’ ๐‘ฆ ๐‘“ รจ controllata da un insieme di parametri ๐‘ฅ รจ la variabile indipendente (esatta) e ๐‘ฆ รจ la variabile dipendente (soggetta ad errore). OBIETTIVO La variabile dipendente รจ uno scalare. ๐‘“ ๐‘ฅ = ๐‘ฆ = ๐›ผ + ๐›ฝ โˆ™ ๐‘ฅ๐‘– + ๐œ€๐‘– ๐œ€๐‘– รจ lโ€™errore ๐›ผ, ๐›ฝ sono i parametri da determinare La soluzione consiste nel determinare lโ€™equazione della retta che minimizza la somma dei minimi quadrati: ๐›ผโˆ—, ๐›ฝโˆ— โˆถ arg min ๐›ผ,๐›ฝ ๐‘–=1โ€ฆ๐‘› ๐‘“ ๐‘ฅ โˆ’ ๐‘ฆ๐‘– 2 = ๐‘–=1โ€ฆ๐‘› ๐œ€๐‘– 2 Da cui ๐›ฝโˆ— = ๐‘–=1..๐‘› ๐‘ฅ๐‘– โˆ’ ๐‘ฅ ๐‘ฆ๐‘– โˆ’ ๐‘ฆ ๐‘–=1..๐‘› ๐‘ฅ๐‘– โˆ’ ๐‘ฅ 2 ๐›ผโˆ— = ๐‘ฆ โˆ’ ๐›ฝโˆ— ๐‘ฅ SIMPLE LINEAR La variabile dipendente รจ un vettore. ๐‘“ ๐‘ฟ = ๐’š = ๐‘ฟ๐œท ๐‘ฟ รจ una matrice rettangolare (righe=patterns, colonne=features + colonna 1) ๐’š รจ un vettore colonna con uno scalare per ogni pattern ๐œท รจ un vettore colonna con uno scalare per ogni feature + 1 termine noto Funzione obiettivo da minimizzare: ๐’š โˆ’ ๐‘ฟ๐œท ๐Ÿ da cui i parametri ๐œทโˆ— = ๐‘ฟ๐’• ๐‘ฟ โˆ’๐Ÿ ๐‘ฟ ๐’• ๐’š b = numero di pattern, d = dimensioni Se n = d+1 ๏ƒจ ๐‘ฟ รจ una matrice quadrata e lโ€™iperpiano tocca tutti i punti Se n > d+1 ๏ƒจ numero di equazioni superiore alle incognite, lโ€™iperpiano approssima i punti Perchรฉ esista ๐‘ฟ๐’• ๐‘ฟ โˆ’๐Ÿ, ๐‘ฟ๐’• ๐‘ฟ deve avere rango massimo (problemi punti collineari) ๐‘ฟ๐’• ๐‘ฟ รจ spesso mal condizionata, conseguenza: calcolo numerico instabile (SVD) MULTIPLE LINEAR ๐‘“ รจ controllata da un insieme di parametri non lineari (es. potenze) La funzione di regressione deve essere lineare rispetto ai parametri, mentre puรฒ essere non lineare rispetto ai valori delle features. ๐‘ฆ = ๐›ฝ1 ๐‘ฅ2 + ๐›ฝ2 ๐‘ฅ + ๐›ฝ3 In caso di dipendenza non lineare del modello dai parametri non esiste soluzione least square e si applicano tecniche iterative di ottimizzazione numerica (Gradient Descent, Gauss-Newton). NON LINEAR Nel caso di nuvole di punti geometrici le coordinate hanno lo stesso ruolo ed รจ preferibile PCA fitting a regressione lineare. REGRESSION vs GEOMETRICAL FITTING Regressione su problemi di piccole-medie dimensioni โ€ข caso lineare ๏ƒจ least square con fattorizzazione SVD โ€ข caso non lineare ๏ƒจ Gauss-Newton (come prima scelta) Esistono varianti di classificazione SVM e Random Forest efficaci in problemi di regressione. In ambito deep learning, reti neurali addestrate con gradient descent sono utilizzate per risolvere problemi di regressioni di enormi dimensioni (Faster R-CNN) IN PRATICA
  • 10. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili CLUSTERING Famiglia di metodi non supervisionati in grado di individuare raggruppamenti intrinseci (cluster) di pattern nello spazio multidimensionale. Opzionalmente definisce le classi (incognite) Problema NP hard Ammettendo di conoscere il numero s di classi, il numero di pattern puรฒ essere clusterizzato in ๐‘  ๐‘› ๐‘ ! modi diversi (numeri di Stirling). Se s non รจ noto, il numero di casi รจ definito dai numeri di Bell (somma di tutti i numeri di Stirling da 1 a n). OBIETTIVO E COMPLESSITร€ I criteri di clustering definiscono cosa si vuole ottenere e specificano il grado di ottimalitร  di ogni soluzione ammissibile. OSSERVAZIONI โ€ข I pattern allโ€™interno dello stesso cluster devono essere tra loro piรน simili rispetto a pattern appartenenti a cluster diversi โ€ข I cluster sono costituiti da nuvole di punti a densitร  relativamente elevata, separate da zone con densitร  piรน bassa CRITERI Minimizzazione distanze dai centroidi Buon criterio per cluster a simmetria radiale, penalizza forme allungate o cluster innestati Minimizza la somma dei quadrati delle distanze dei pattern x dai centroidi delle classi. ๐ฝ๐‘’ = ๐‘–=1โ€ฆ๐‘  ๐‘ฅโˆˆ๐‘ช๐’Š ๐’™ โˆ’ ๐’™๐’Š 2 ๐’™๐’Š = ๐Ÿ ๐’ ๐‘ฅโˆˆ๐‘ช๐’Š ๐’™ Minimizzazione distanze intra-classe Simile al criterio dei centroidi ma non penalizza i cluster allungati. ๐ฝ๐‘’ = ๐‘–=1โ€ฆ๐‘  ๐‘›๐‘– โˆ™ ๐‘ ๐‘– ๐‘ ๐‘– = 1 ๐‘›๐‘– ๐‘ฅโˆˆ๐‘ช๐’Š ๐‘“๐‘  ๐’™, ๐ถ๐‘– ๐‘“๐‘  ๐’™, ๐ถ๐‘– รจ ๐‘ข๐‘›๐‘Ž ๐‘š๐‘–๐‘ ๐‘ข๐‘Ÿ๐‘Ž ๐‘‘๐‘– ๐‘‘๐‘–๐‘ ๐‘ก๐‘Ž๐‘›๐‘ง๐‘Ž ๐‘“๐‘  ๐’™, ๐ถ๐‘– = ๐‘š๐‘–๐‘› ๐’™โ€ฒโˆˆ๐ถ ๐‘–,๐’™โ€ฒโ‰ ๐’™ ๐’™ โˆ’ ๐’™โ€ฒ 2 definisce che รจ sufficiente un vicino CRITERI DI CLUSTERING Gli algoritmi di clustering, dato un criterio di clustering, forniscono una procedura algoritmica per determinare soluzioni che lo ottimizzano. HARD: esclusivo | SOFT (fuzzy): pattern appartengono a diversi cluster con una certa probabilitร . CLUSTERING GERARCHICO Metodo simile alla tassonomia biologica. Iterativo prevede di aggregare singoli pattern, poi pattern a cluster e poi cluster a cluster per maggiore similitudine rispetto ad una soglia. Differenze implementative: single link, average link, complete link. CLUSTERING BASATO SU CENTROIDI K-Means: semplice sia a livello computazionale che implementativo. 1. Soluzione iniziale (casuale) 2. Assegna ogni pattern al cluster per cui รจ minima la distanza dal centroide 3. Ricalcola i centroidi come media dei pattern per ogni cluster 4. Itera finchรฉ non si hanno modifiche di assegnazione. Soluzione in pochi passi. Distanza euclidea ๏ƒจ cluster iper-sferici. Distanza di Mahalanois ๏ƒจ cluster iper-elissoidali. Per evitare convergenza su minimi locali si esegue lโ€™algoritmo piรน volte su soluzioni iniziale diverse (random, euristiche, metodo evoluzionistico). Tecniche di validazione: โ€ข valutazione delle soluzioni per valori diversi di s (numero di cluster) penalizzando soluzioni con molti cluster โ€ข Ricerca di discontinuitร  nel valore di ๐ฝ๐‘’. Fuzzy K-Means: consente ad un pattern di appartenere a diversi cluster con specifici gradi di probabilitร . I centroidi sono calcolati come media pesata rispetto alle probabilitร  di appartenenza. (iperparametro m definisce il livello di sfumatura dellโ€™appartenenza ai cluster, tipicamente m = 2) Expectation โ€“ Maximization (EM): tenta di identificare i valori dei parametri delle singole distribuzioni che si ipotizza abbiano generato i patterns per attribuire ogni pattern al cluster relativo. Stima dei parametri con criterio di maximum (log-) likelihood (densitร /probabilitร  di aver ottenuto i pattern da specifici parametri). Iterazione ciclo: 1. Expectation: calcolo del log-likelihood completo sulla base dei parametri 2. Maximization: ricalcolo parametri per massimizzare il valore atteso ๐›ฉ ๐‘”+1 = ๐‘Ž๐‘Ÿ๐‘”๐‘š๐‘Ž๐‘ฅ ๐›ฉ ๐‘„(๐›ฉ|๐›ฉ ๐‘”) Algoritmo simile a Fuzzy K-Means ma con maggiori gradi di libertร  nella forma dei cluster (ellissoidali). CLUSTERING BASATO SULLA DENSITร€ I cluster individuti sono regioni connesse in aree ad elevata densitร  (DBSCAN). ALGORITMI DI CLUSTERING
  • 11. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili RIDUZIONE DIMENSIONALITร€ Eseguire un mapping dallo spazio iniziale โ„› ๐‘‘ ad uno spazio di dimensione inferiore โ„› ๐‘˜, ๐‘˜ < ๐‘‘. COMPRESSIONE โ€ข Scarto di informazioni meno rilevanti โ€ข Combinazione opportuna delle dimensioni esistenti (non eliminazione selettiva) SCOPO: semplificazione addestramento, miglioramento prestazioni OBIETTIVO MAPPING LINEARE โ€ข TRASFORMAZIONE NON SUPERVISIONATA OBIETTIVO: preservare al massimo lโ€™informazione dei pattern. Nota anche con come Karhunen Loeve (KL) transform. Lo spazio k-dimensionale ridotto รจ definito univocamente dal vettore medio e dalla matrice di proiezione le cui colonne sono costituite dagli autovettori della matrice di covarianza dello spazio originale, corrispondenti ai k piรน grandi autovalori. Ogni autovalore descrive la varianza del training set lungo una direzione definita dal corrispondente autovettore. I primi k autovettori sono detti principal component. PROIEZIONE La proiezione di un pattern sullo spazio PCA determinato tramite la matrice di proiezione, รจ la proiezione geometrica di un vettore (ridotto) sullโ€™iperpiano che definisce lo spazio. RETROPROIEZIONE Dato un vettore nello spazio ridotto PCA, la retro-proiezione si ottiene moltiplicando il vettore PCA per la matrice di proiezione e sommando il vettore medio. Questa operazione non sposta spazialmente il vettore (che giace ancora sullo spazio PCA) ma opera un cambiamento di coordinate che ne permette la codifica in termini delle componenti dello spazio originale. Tra tutte le riduzioni di dimensionalitร  lineari, PCA รจ quella che preserva al massimo lโ€™informazione dei vettori originali. SCELTA DELLA DIMENSIONE Se lโ€™obiettivo รจ la visualizzazione ๏ƒจ k deve essere 2 o 3 Se lโ€™obiettivo รจ scartare dati inutili mantenendo la maggior parte del contenuto informativo ๏ƒจ fissata una percentuale del valore informativo che si vuole preservare, si sceglie il minimo valore di k tale che la somma dei piรน grandi k autovalori sia maggiore o uguale a t rispetto alla somma di tutti gli autovalori. PRINCIPAL COMPONENT ANALYSIS (PCA) MAPPING LINEARE โ€ข TRASFORMAZIONE SUPERVISIONATA OBIETTIVO: privilegiare le dimensioni che discriminano meglio i pattern, ovvero massimizzare la separazione tra le classi. MATRICI DI SCATTERING (SPARPAGLIAMENTO) WITHIN-CLASS ๐‘บ ๐’˜: indica come i vettori dei pattern sono sparpagliati rispetto al centro delle classi. BETWEEN-CLASS ๐‘บ ๐’ƒ: indica come i centri delle classi sono sparpagliati rispetto al centro generale Una matrice di scatter si calcola come una matrice di covarianza senza normalizzare per il numero di pattern. LINEAR DISCRIMINANT ANALYSIS (LDA) MAPPING NON LINEARE โ€ข TRASFORMAZIONE NON SUPERVISIONATA OBIETTIVO: riduzione a 2 o 3 dimensioni per poter visualizzare i dati multidimensionali. Introdotta nel 2008 da Van der Maaten e Hinton, rappresenta lo stato dellโ€™arte per la visualizzazione 2D o 3D di dati multidimensionali. Supera i limiti di riduzione a 2/3 dimensioni di PCA relativamente a cluster distribuiti con forme non multinormali. T-DISTRIBUTED STOCHASTIC NEIGHBOR EMBEDDING (t-SNE) Tecnica di pre-normalizzazione dei dati che: โ€ข Rimuove le correlazioni tra le dimensioni ruotando la nuvola di punti per allineare gli assi di variazione principale dei dati (autovalori) agli assi cartesiani โ€ข Sfericizza lโ€™ellissoide uniformando le varianze a 1 lungo tutti gli assi La matrice di covarianza dei dati normalizzati รจ la matrice identitร . PCA WHITENING
  • 12. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili RETI NEURALI Introdotto da McCulloch e Pitts nel 1943. รˆ lโ€™elemento costitutivo delle reti neurali. Ogni neurone: โ€ข riceve in input ๐‘‘ valori, uno per ogni connessione in ingresso: ogni input ๐‘–๐‘› ๐‘‘ รจ associato ad un peso ๐‘ค ๐‘‘ che determina lโ€™efficacia delle connessioni โ€ข prevede un input pesato aggiuntivo (bias) di valore 1 utile per tarare il neurone โ€ข elabora un livello di eccitazione ๐‘›๐‘’๐‘ก๐‘– = ๐‘—=1โ€ฆ๐‘‘ ๐‘–๐‘›๐‘— โˆ— ๐‘ค๐‘—๐‘– + ๐‘ค0๐‘– โ€ข ha un comportamento regolato da una funzione di attivazione ๐‘“ โˆ™ determinata da ๐‘›๐‘’๐‘ก๐‘– ๐‘“ โˆ™ รจ una funzione non lineare, continua e differenziabile NEURONE ARTIFICIALE STANDARD LOGISTIC FUNCTION (SIGMOID) [0 โ€ฆ +1] PIร™ SEMPLICE FUNZIONE: ๐‘“ ๐‘›๐‘’๐‘ก = ๐œŽ ๐‘›๐‘’๐‘ก = 1 1 + ๐‘’โˆ’๐‘›๐‘’๐‘ก DERIVATA: ๐œŽโ€ฒ ๐‘›๐‘’๐‘ก = ๐œ• ๐œ•๐‘›๐‘’๐‘ก 1 1+๐‘’โˆ’๐‘›๐‘’๐‘ก = ๐‘’โˆ’๐‘›๐‘’๐‘ก 1+๐‘’โˆ’๐‘›๐‘’๐‘ก 2 = ๐œŽ ๐‘›๐‘’๐‘ก (1 โˆ’ ๐œŽ ๐‘›๐‘’๐‘ก ) TANGENTE IPERBOLICA (TANH) [-1 โ€ฆ +1] PIร™ COMPLESSA MA CONVERGENZA PIร™ RAPIDA FUNZIONE: ๐‘“ ๐‘›๐‘’๐‘ก = ๐œ ๐‘›๐‘’๐‘ก = 2๐œŽ 2 โˆ™ ๐‘›๐‘’๐‘ก โˆ’ 1 = 2 1 + ๐‘’โˆ’2โˆ™๐‘›๐‘’๐‘ก โˆ’ 1 DERIVATA: ๐œโ€ฒ ๐‘›๐‘’๐‘ก = 1 โˆ’ ๐œ ๐‘›๐‘’๐‘ก 2 FUNZIONE DI ATTIVAZIONE Le reti neurali sono composte da gruppi di neuroni artificiali organizzati a livelli. ๐Ÿ LIVELLO DI INPUT โ—‹โ”€โ—‹ ๐’ LIVELLI INTERMEDI (HIDDEN) โ—‹โ”€โ—‹ ๐Ÿ LIVELLO OUTPUT FEEDFORWARD: le connessioni collegano i neuroni da un livello a quello successivo RECURRENT: sono previste connessioni di feedback verso livelli uguali o precedenti. Reti piรน complesse, addestramento piรน complicato. Utili per la gestione di sequenze: hanno effetto memoria che considera le informazioni in diversi istanti temporali. Esempio: Long Short Term Memory (LSTM) net. RETI NEURALI โ€ข FEEDFORWARD vs RECURRENT PERCEPTRON (PERCETTRONE) Modello proposto da Rosenblatt nel 1965, simile a quello di McCulloch e Pitts. Utilizza una funzione di attivazione lineare a soglia (scalino). Addestramento tramite delta rule. Rete a 2 livelli apprende solo mapping lineari. MULTILAYER PERCEPTRON (MLP) Rete feedforward con almeno 3 livelli con funzioni di attivazione non lineari. UNIVERSAL APPROXIMATION THEOREM (Teorema dโ€™esistenza di Kolomogorov applicato alle reti neurali da Cybenco 1988 e Hornik 1989) Una rete neurale multistrato, con un singolo hidden layer รจ in grado di apprendere qualsiasi funzione continua e di approssimarla con qualsiasi grado di precisione FORWAD PROPAGATION Propagazione in avanti delle informazioni, dal livello di input al livello di output. Numero totale di pesi rete 3 livelli (๐‘‘: ๐‘›โ„Ž: ๐‘ ) = ๐‘‘ ร— ๐‘›โ„Ž + ๐‘›โ„Ž ร— ๐‘  + ๐‘›โ„Ž ร— ๐‘  (bias) TRAINING: calcolo dei pesi w che determinano il mapping desiderato tra input e output. Dimensioni ๐‘‘ dello spazio dei pattern = numero di neuroni dellโ€™livello di input Numero ๐‘  di classi del classificatore = numero di neuroni del livello di output Numero ๐‘›โ„Ž di neuroni dei livelli hidden = iperparametro Il training consiste nel calcolare i pesi che minimizzano lโ€™errore medio calcolato come scostamento tra i vettori di output desiderati e quelli calcolati dalla rete. Pesi iniziali random nei range ยฑ1/ ๐‘‘ (input โ—‹โ”€โ—‹ hidden) e ยฑ1/ ๐‘›โ„Ž (hidden โ—‹โ”€โ—‹ output) ERROR BACKPROPAGATION (GRADIENT DESCENT) LOSS = ๐ฝ ๐’˜, ๐’™ โ‰ก 1 2 ๐‘=1โ€ฆ๐‘  ๐‘ก ๐‘ โˆ’ ๐‘ง ๐‘ 2 con ๐’˜=pesi; ๐’™=pattern; ๐‘ก ๐‘=obiettivo; ๐‘ง ๐‘=output ๐ฝ ๐’˜ รจ la media su tutti i pattern del training set. Ridotto modificando i pesi in direzione opposta al gradiente di ๐ฝ. Modifica pesi hidden-output: ๐‘ค๐‘—๐‘˜ = ๐‘ค๐‘—๐‘˜ + ๐œ‚ โˆ™ ๐›ฟ ๐‘˜ โˆ™ ๐‘ฆ๐‘— Modifica pesi input-hidden: ๐‘ค๐‘–๐‘— = ๐‘ค๐‘–๐‘— + ๐œ‚ โˆ™ ๐›ฟ๐‘— โˆ™ ๐‘ฅ๐‘— Se si usano i bias pesi ๐‘ค0๐‘˜ e ๐‘ค๐‘–0 si aggiornano ponendo ๐‘ฆ0 = 1 e ๐‘ฅ0 = 1 ๐œ‚ รจ il LEARNING RATE: modificabile adeguatamente durante il training โ€ข Troppo piccolo ๏ƒจ convergenza lenta โ€ข Troppo grande ๏ƒจ oscillazione, o divergenza MULTILAYER PERCEPTRON (MLP)
  • 13. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili RETI NEURALI PATTERN ANALIZZATI SEQUENZIALMENTE โ€ข PESI AGGIORNATI DOPO OGNI PATTERN EPOCHE = 0 DO EPOCHE++ PER OGNI PATTERN x DEL TRAINING SET FORWARD STEP SUL PATTERN x ERRORE TOTALE = ERRORE TOTALE + ERRORE SUL PATTERN x BACKWARD STEP (calcolo dei gradienti) AGGIORNAMENTO PESI HIDDEN-OUTPUT AGGIORNAMENTO PESI INPUT-HIDDEN LOSS = ERRORE TOTALE / n CALCOLO ACCURACY SU TRAINING SET E VALIDATION SET CONTINUA FINO A CONVERGENZA O NUMERO MASSIMO DI EPOCHE ALGORITMO BACKPROPAGATION (ONLINE) PATTERN ANALIZZATI IN ORDINE CASUALE โ€ข PESI AGGIORNATI DOPO OGNI BATCH EPOCHE = 0 DO EPOCHE++ * RANDOMSORT(TRAINING SET) * PER OGNI MINI-BATCH B DI DIMENSIONE mb DEL TRAINING SET * RESET GRADIENTE * PER OGNI PATTERN x DEL MINI-BATCH B FORWARD STEP SUL PATTERN x ERRORE TOTALE = ERRORE TOTALE + ERRORE SUL PATTERN x BACKWARD STEP (calcolo dei gradienti) AGGIORNAMENTO PESI HIDDEN-OUTPUT AGGIORNAMENTO PESI INPUT-HIDDEN LOSS = ERRORE TOTALE / n CALCOLO ACCURACY SU TRAINING SET E VALIDATION SET CONTINUA FINO A CONVERGENZA O NUMERO MASSIMO DI EPOCHE Se la dimensione dei mini-batch = 1 ๏ƒจ caso online Se la dimensione dei mini-batch = n ๏ƒจ full batch Numero iterazioni totali = dimensione mini-batch โจฏ numero mini-batch โจฏ epoche SOCHASTIC GRADIENT DESCENT (SGD) Funzione di attivazione che permette di trasformare i valori di net prodotti dallโ€™ultimo livello della rete in probabilitร  delle classi. Nรฉ sigmoid nรฉ tanh sono interpretabili come probabilitร . ๐‘ง ๐‘˜ = ๐‘“ ๐‘›๐‘’๐‘ก ๐‘˜ = ๐‘’ ๐‘›๐‘’๐‘ก ๐‘˜ ๐‘=1โ€ฆ๐‘  ๐‘’ ๐‘›๐‘’๐‘ก ๐‘ SOFTMAX Funzione di loss probabilistica piรน efficace in problemi di classificazione multi-classe. ๐ป ๐‘, ๐‘ž = โˆ’ ๐‘ฃ ๐‘ ๐‘ฃ โˆ™ log ๐‘ž ๐‘ฃ โ‰ฅ 0 ๐ป ๐‘, ๐‘ž minimo quando il vettore target coincide con lโ€™output. Quando il vettore target per un pattern assume la forma one-hot (tutti 0 tranne 1 per la classe corretta) allora ๐ฝ ๐’˜, ๐’™ โ‰ก ๐ป ๐’•, ๐’› = โˆ’ log ๐‘ง ๐‘” = โˆ’ log ๐‘’ ๐‘›๐‘’๐‘ก ๐‘” ๐‘=1โ€ฆ๐‘  ๐‘’ ๐‘›๐‘’๐‘ก ๐‘ = โˆ’๐‘›๐‘’๐‘ก ๐‘” + log ๐‘=1โ€ฆ๐‘  ๐‘’ ๐‘›๐‘’๐‘ก ๐‘ CROSS-ENTROPY LOSS CLASSIFICAZIONE MULTI-CLASSE Funzione di attivazione softmax nel livello finale e cross-entropy come loss function CLASSIFCAZIONE BINARIA Preferibile usare una rete con un neurone di uscita CLASSIFICAZIONE MULTI-LABEL Caso particolare in cui ogni pattern puรฒ appartenere a piรน classi, gestibile come classificazione binaria su piรน neuroni REGRESSIONE (MULTIVARIATE MULTIPLE REGRESSION) Meglio utilizzare sum of squared error come loss function PRATICA
  • 14. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili RETI NEURALI Tecniche finalizzate a ridurre il rischio di overfitting in caso di molti parametri (pesi). Molto importante quando il training set non ha grandi dimensioni rispetto al modello. Termine di regolarizzazione ๐ฝ ๐‘‡๐‘œ๐‘ก = ๐ฝ ๐ถ๐‘Ÿ๐‘œ๐‘ ๐‘ โˆ’๐ธ๐‘›๐‘ก๐‘Ÿ๐‘œ๐‘๐‘ฆ + ๐ฝ ๐‘…๐‘’๐‘” Regolarizzazione L2 ๐ฝ ๐‘…๐‘’๐‘” = 1 2 ๐œ† ๐‘– ๐‘ค๐‘– 2 ๐œ†, in L1 e L2, regola la forza della regolarizzazione Regolarizzazione L1 ๐ฝ ๐‘…๐‘’๐‘” = 1 2 ๐œ† ๐‘– ๐‘ค๐‘– puรฒ essere piรน ยซsparsificanteยป: numerosi pesi a 0 Lโ€™aggiornamento dei pesi a seguito di backpropagation include un ulteriore termine denominato weight decay ๐‘ค ๐‘˜ = ๐‘ค ๐‘˜ โˆ’ ๐œ‚ โˆ™ ๐œ•๐ฝ ๐ถ๐‘Ÿ๐‘œ๐‘ ๐‘ โˆ’๐ธ๐‘›๐‘ก๐‘Ÿ๐‘œ๐‘๐‘ฆ ๐œ• ๐‘ค ๐‘˜ + ๐€ โˆ™ ๐’˜ ๐’Œ REGOLARIZAZIONE MOMENTUM (๐) SGD con mini-batch puรฒ determinare una discesa del gradiente a zig-zag: rallenta la convergenza o la rende instabile Per evitare oscillazioni si puรฒ emulare il comportamento fisico considerando lโ€™aggiornamento precedente per ogni parametro, calcolando il successivo aggiornamento come combinazione lineare dellโ€™aggiornamento precedente e del gradiente attuale. ๐‘ค ๐‘˜ = ๐‘ค ๐‘˜ + ๐ โˆ™ โˆ†๐‘ค ๐‘˜ โˆ’ ๐œ‚ โˆ™ ๐œ•๐ฝ ๐‘‡๐‘œ๐‘ก ๐œ• ๐‘ค ๐‘˜ ๐ (iperparametro) ha valore tipico = 0.9 ALTRE REGOLE DI AGGIORNAMENTO PESI โ€ข Nesterov Accelerate Gradient (NAG) โ€ข Adaptive Gradient (Adagrad) โ€ข Adadelta โ€ข Adam (stato dellโ€™arte) โ€ข Rmsprop LEARNING RATE ADATTATIVO
  • 15. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili DEEP LEARNING DEEP NEURAL NETWORK (DNN) sono reti ยซprofondeยป composte da almeno 2 livelli hidden organizzati gerarchicamente. Superano lโ€™Universal Approximation Theorem in quanto esistono funzioni computabili con complessitร  polinomiale operando su k livelli che assumono complessitร  esponenziale su k-1 livelli (Hastad, 1986). Lโ€™organizzazione gerarchica consente di condividere e riutilizzare informazioni, selezionando โ€“ ad esempio โ€“ feature specifiche o scartando dettagli inutili. LIVELLI E COMPLESSITร€ Il numero di livelli definisce la complessitร  di una rete associato al numero di neuroni, connessioni e pesi. Esempi di reti: AlexNet (8 livelli, 650K neuroni, 60M parametri), VGG-16 (16 livelli, 15M neuroni, 140M parametri), corteccia umana (21โจฏ109 neuroni e 1.5โจฏ1014 sinapsi). GERARCHIA DI LIVELLI MODELLI FEEDFORWARD Classificazione o regressione, con training prevalentemente supervisionato โ€ข CONVOLUTIONAL NEURAL NETWORK (CNN) โ€ข FULLY CONNECTED DNN (FC DNN) โ€ข HIERARCHICAL TEMPORAL MEMORY (HTM) MODELLI GENERATIVI Training non supervisionato, utili per pre-training di altri modelli e per produrre feature rilevanti โ€ข STACKED (DE-NOISING) AUTO-ENCODERS โ€ข RESTRICTED BOLTZMANN MACHINE (RBM) โ€ข DEEP BELIEF NETWORKS (DBN) MODELLI RICORRENTI Utilizzati per sequenze, speech recognition, sentiment analysis, Natural Language Processing โ€ข RECURRENT NEURAL NETWORK (RNN) โ€ข LONG SHORT-TERM MEMORY (LSTM) REINFORCEMENT LEARNING Utilizzati per apprendere comportamenti โ€ข DEEP Q-LEARNING TIPOLOGIE DEEP NEURAL NETWORK (DNN) BIG DATA + GPU COMPUTING + VANISHING (OR EXPLODING) GRADIENT INGREDIENTI Introdotte da LeCun et.all nel 1998, usano le reti cercando di simulare due tipi di capacitร : feature (simple) detection e pooling (fusione) degli output della simple detection. PREPROCESSING LOCALE: i neuroni sono connessi solo localmnete (riduzione connessioni) CONDIVISIONE PESI: i pesi sono condivisi a gruppi (neuroni diverse/stesse elaborazioni) ALTERNANZA LIVELLI: feature extraction e pooling. ARCHITETTURA INPUT LAYER: mappa direttamente i pixel dellโ€™immagine HIDDEN LAYER: feature extraction e pooling OUTPUT LAYER: mappa le classi CONVOLUZIONE Operazione di image processing che, tramite lโ€™applicazione di filtri digitali, condensa le informazioni di unโ€™area di pixel in un valore attraverso un prodotto scalare tra una maschera e lโ€™area di pixel in input. Un neurone al primo livello hidden opera come filtro di convoluzione direttamente sui pixel dellโ€™immagine (neuroni input layer). VOLUMI I neuroni di ciascun livello sono organizzati in griglie o volumi 3D. I filtri operano su una porzione dei volumi di input. Ogni ยซfettaยป di volumi definisce una feature map (es. componenti RGB in input). I pesi sono condivisi a livello di feature map. APPLICAZIONE FILTRI STRIDE: passo con il quale si fa scorrere un filtro, passi piรน alti riducono dimensioni output PADDING: spessore, in pixel, del bordo aggiunto (valori 0) ๐’˜ ๐’๐’–๐’• = ๐’˜๐’Š๐’ โˆ’ ๐‘ญ + ๐Ÿ โˆ™ ๐‘ท๐’‚๐’…๐’…๐’Š๐’๐’ˆ ๐‘บ๐’•๐’“๐’Š๐’…๐’† + ๐Ÿ ๐’˜๐’Š๐’ ๐‘‘๐‘–๐‘š๐‘’๐‘›๐‘ ๐‘–๐‘œ๐‘›๐‘’ ๐‘–๐‘›๐‘๐‘ข๐‘ก ๐‘ญ ๐‘‘๐‘–๐‘š๐‘’๐‘›๐‘ ๐‘–๐‘œ๐‘›๐‘’ ๐‘“๐‘–๐‘™๐‘ก๐‘Ÿ๐‘œ ๐’˜ ๐’๐’–๐’• ๐‘‘๐‘–๐‘š๐‘’๐‘›๐‘ ๐‘–๐‘œ๐‘›๐‘’ ๐‘œ๐‘ข๐‘ก๐‘๐‘ข๐‘ก CONVOLUTIONAL NEURAL NETWORK (CNN) Lโ€™utilizzo di RELU come funzione di attivazione risolve i problemi legati allโ€™uso della sigmoide (riduzione significativa del valore del gradiente lontano dallโ€™output, annullamento gradiente in regioni saturate per derivata = 0). Derivata = 0 per valori negativi e 1 per valori positivi di net. Nessuna saturazione sui valori positivi. Attivazioni sparse (neuroni spenti) possono conferire maggiore robustezza. RECTIFED LINEAR (RELU) funzione di attivazione
  • 16. Scuola di Ingegneria e Architetturaโ€ข Sede didatticadi Cesena Corso di studio Ingegneria e Scienze informatiche (laurea magistrale) Insegnamento 81610 โ€ข MachineLearning โ€ข A.A. 2017/2018 Titolare: Prof. Davide Maltoni โ€ข Appunti di Nicola Gentili DEEP LEARNING Un livello di POOLING esegue unโ€™aggregazione delle informazioni del volume di input. Genera feature map dimensione inferiore cercando di conferire invarianza. Opera generalmente a livello di ogni feature map del volume di input. Gli operatori piรน utilizzati sono la media e il massimo. Non ci sono parametri da apprendere. CNN POOLING Nelle moderne CNN per classificazione รจ comune trovare un livello finale costituito da un neurone per ogni classe con funzione di attivazione SoftMax o Cross-Entropy per garantire di ottenere valori interpretabili come probabilitร . SOFT MAX E CROSS ENTROPY ARCHITETTURA ESEMPIO Livello Funzione Parametri Dimensioni (Neuroni) Connessioni e pesi (entranti) INPUT 32โจฏ32โจฏ3 HIDDEN CONVOLUZIONE Filtri: 5โจฏ5 โ€ข FeatureMaps: 16 โ€ข Stride: 1 โ€ข Padding: 2 โ€ข Attivazione ReLu 32โจฏ32โจฏ16 C: 5โจฏ5โจฏ3โจฏ16โจฏ32โจฏ32 P: 16โจฏ(5โจฏ5โจฏ3+1) HIDDEN POOLING Filtri: 2โจฏ2 โ€ข Stride: 2 โ€ข Tipo: Max 16โจฏ16โจฏ16 C: 16โจฏ16โจฏ16โจฏ2โจฏ2โจฏ1 P: 0 HIDDEN CONVOLUZIONE Filtri: 5โจฏ5 โ€ข FeatureMaps: 20 โ€ข Stride: 1 โ€ข Padding: 2 โ€ข Attivazione ReLu 16โจฏ16โจฏ20 C: 5โจฏ5โจฏ16โจฏ16โจฏ16โจฏ20 P: 20โจฏ(5โจฏ5โจฏ16+1) HIDDEN POOLING Filtri: 2โจฏ2 โ€ข Stride: 2 โ€ข Tipo: Max 8โจฏ8โจฏ20 C: 8โจฏ8โจฏ20โจฏ2โจฏ2โจฏ1 P: 0 HIDDEN CONVOLUZIONE Filtri: 5โจฏ5 โ€ข FeatureMaps: 20 โ€ข Stride: 1 โ€ข Padding: 2 โ€ข Attivazione ReLu 8โจฏ8โจฏ20 C: 8โจฏ8โจฏ20โจฏ5โจฏ5โจฏ20 P: 20โจฏ(5โจฏ5โจฏ20+1) HIDDEN POOLING Filtri: 2โจฏ2 โ€ข Stride: 2 โ€ข Tipo: Max 4โจฏ4โจฏ20 C: 4โจฏ4โจฏ20โจฏ2โจฏ2โจฏ1 P: 0 OUTPUT SofMax con 10 classi 10 C: 10โจฏ4โจฏ4โจฏ20 P: 10โจฏ(4โจฏ4โจฏ20+1) 31.562 NEURONI TOTALI (incluso livello input) 3.942.784 CONNESSIONI TOTALI 22.466 PESI TOTALI (inclusi bias) Implementazione da zero: training & inference architetture + training backpropagation del gradiente + ottimizzazione GPU = molte risorse tempo per sviluppo e debug. Framework: Caffe(Berkeley), Theano(Montreal), Torch(LeCun), TensorFlow(Google), Digits(Nvidia) IN PRATICA FINE TUNING: si sostituisce il livello di output di una rete giร  addestrata adeguando il numero di classi, si utilizzano i valori iniziali dei pesi della rete pre-addestrata tranne che per le connessioni al livello di output e si eseguono nuove iterazioni di addestramento. RIUTILIZZO FEATURES: si estraggono le feature generate durante lโ€™addestramento di una rete esistente e le si utilizzano per addestrare un classificatore esterno; le feature sono generate nei i livelli intermedi (Es. L5, L6, L7 di CaffeNet). TANSFER LEARNING Lโ€™obiettivo di apprendere un comportamento รจ determinato dallโ€™individuazione delle attivitร  che massimizzano i reward. In molti casi reali applicati ad ambienti stocastici (in cui sequenze di azioni identiche portano a risultati diversi) si applica una logica di convenienza immediata pesando maggiormente i reward vicini nel tempo: ๐‘… ๐‘ก = ๐‘Ÿ๐‘ก + ๐›พ1 โˆ™ ๐‘Ÿ๐‘ก+1 + โ‹ฏ + ๐›พ ๐‘›โˆ’๐‘ก โˆ™ ๐‘Ÿ๐‘› ๐‘๐‘œ๐‘› 0 โ‰ค ๐›พ โ‰ค 1 Q-LEARNING: ๐‘… ๐‘ก = ๐‘Ÿ๐‘ก + ๐›พ โˆ™ ๐‘… ๐‘ก+1 definito ricorsivamente, sfrutta lโ€™equazione di Bellman basata su una funzione definita a partire dallo stato iniziale ๐‘„ ๐‘ ๐‘ก, ๐‘Ž ๐‘ก = ๐‘Ÿ๐‘ก+1 + ๐›พ โˆ™ max ๐‘Ž ๐‘„ ๐‘ ๐‘ก+1, ๐‘Ž . Lโ€™apprendimento avviene iterando una serie di episodi durante i quali, ad ogni passo, si seleziona lโ€™azione ottimale e si osserva lโ€™esito delle scelte allo stato successivo. Utilizza un valore di learning rate che definisce la ยซgrandezzaยป dei passi in funzione delle scelte fornite dallโ€™equazione di Bellman; progressivamente ridotto durante lโ€™apprendimento. Dimensioni di Q=possibili statiโจฏpossibili azioni. DEEP Q-LEARNING: CNN usata per approssimare funzioni Q di enormi dimensioni. REINFORCEMENT LEARNING/DEEP QLEARNING