Machine Learning
Secondo la definizione di A. Samuel (1959),
Machine Learning è il campo di studi che dona ai computer l'abilità di imparare senza essere
esplicitamente programmati per farlo. È quindi un'area fondamentale dell'AI e riguarda lo
sviluppo di sistemi e algoritmi che sfruttano le informazioni raccolte.
Secondo T. Mitchell (1998) invece
un programma impara da un’esperienza E rispetto a un argomento T e una performance P, se la
performance P misurata su T migliora con l'esperienza E.
Esempio spam
: Prendiamo in considerazione lo . In tal caso:
● ⇒
T (Task) classificare le email come spam o non-spam
● ⇒
E (Experience) Notare quali email sono marcate come spam dall'utente
● ⇒
P (Performance) Il numero di email correttamente classificate come spam/non-spam
spam
Un esempio pratico di machine Learning è lo : si richiede al computer di imparare
automaticamente a riconoscere le mail di spam, senza l'intervento umano, creando un modello
assistente vocale
decisionale. Un altro esempio di Machine Learning è l' , che preleva i dati in input, li
riconoscimento facciale
trasforma in vettoriale (binari) per poi inviarlo alla macchina. O ancora il , che
dato un insieme di dati riesce a strutturarli.
Possiamo ritrovare il Machine Learning in vari ambiti:
● es. riconoscimento
Applicazioni che non sono programmabili a mano, da un essere umano.
scrittura a mano, Natural Language Processing
● es. Web click data,
Database Mining, ovvero l'estrazione di dati utili da grandi dataset.
registrazioni mediche
● Programmi Self customizing, ovvero che in base alle preferenze dell'utente riescono a consigliare
determinati contenuti. Bisogna tenere presente che esiste un'incredibile varietà di utenti e
es. Netflix,
sarebbe impensabile per un essere umano consigliare contenuti per ognuno di essi.
Amazon
Il Machine Learning può essere suddiviso in tre categorie:
● Supervised Learning
● Unsupervised Learning
● Reinforcement Learning
Supervised Learning
Il Supervised Learning consiste nella creazione di un modello sulla base dei dati in entrata provenienti dai
dataset. Si chiamano in tal modo poiché le tecnologie supervised utilizzano dataset in cui la risposta è
data.
Dal supervised learning si possono creare modelli:
● lineari, se l'andamento è crescente
● non lineari, se non seguono una linea retta, ma seguono un andamento a curva (sono più precisi,
ma richiedono più risorse).
Gli algoritmi di supervised Learning possono essere:
● Regressione
di , se in base ai valori in input forniti (detti dataset annotati poiché contengono
informazioni di risposta utilizzabili) si riesce a predire il valore in output e questi è un valore
continuo. Questo tipo di algoritmi restituiscono un valore reale a ogni input ricevuto. es.
Riconoscimento spam
● Classificazione
di , se in base ai dati in input si può creare un modello che permette di dare una
risposta positiva o negativa ( booleano ). es. Riconoscimento volto.
In questo secondo caso si possono usare simboli diversi invece che colori diversi: la notazione
cambia, ma il significato rimane lo stesso. Spesso le classi sono individuate con notazioni diverse
poiché possono esserci enormi quantità di dati in input. È possibile inoltre avere più
caratteristiche che consentono di distinguere varie classi: In questi casi si rende necessario
definire una linea di separazione (decision boundary) che separi le classi. Una volta trovata,
qualsiasi nuovo esempio ci permette di sapere in quale delle due classi rientra, dato che avremo
fermato due gruppi in cui i componenti sono similari.
Un algoritmo supervised learning impara dai dati che gli sono dati in input. Può capitare però che se
questi non sono esaustivi, che il sistema entri in conflitto e che sia necessaria una revisione (es. cigno
nero non riconosciuto, poiché generalmente il cigno è bianco). L'insieme di esempi disponibili
generalmente è partizionato in:
● training set, costituito da una parte degli esempi disponibili e vantaggioso per imparare le ipotesi
(per imparare).
● test set, costituito dalla parte rimanente degli esempi disponibili e vantaggioso per valutare
quanto siano accurate le ipotesi imparate (valuta il sistema del training set).
Chiaramente il successo dipende direttamente dal criterio di partizionamento. Il training set dovrebbe
essere ben bilanciato e sparso su tutti i possibili casi del fenomeno analizzato, altrimenti ci sarebbe il
overfitting.
rischio di un apprendimento parziale (es. cigno nero). Questa situazione viene detta
Unsupervised Learning
Nei problemi unsupervised i dati non hanno etichette, quindi i dati non sono strutturabili secondo una
distinzione. Un algoritmo non supervisionato potrebbe decidere che queste informazioni vivono in due
diversi gruppi (Clustering Algorithm).
c
lustering algorithm
I possono essere utilizzati in diversi campi. Tanto
per citarne uno, Google News analizza ogni giorno migliaia e migliaia
di nuove storie e le raggruppa nelle storie correlate. Le notizie non
sono classificate, ma sono simili per argomento, data, corriere,
scrittore ecc. Il sistema non sa riconoscere l'argomento del testo, ma
nota che la News1 e la News2 sono vicine (simili) e quindi correlate.
Per suddividere in qualche modo i dati si può segmentare il mercato
secondo diversi fattori o tramite analisi dei social network. Questo
tipo di apprendimento si dice unsupervised perché i dati in input non
sono annotati con la risposta.
Reinforcement Learning
Con il reinforcement Learning i risultati sono valutati e il consolidamento è applicato (feedback) e può
essere positivo (nel caso in cui i risultati siano corretti) o negativo (se i risultati sono incorretti). Le
macchine imparano quindi sbagliando. Per esempio, avendo una macchina che ha il compito di
raccogliere oggetti, questa imparerà dove saranno gli oggetti
sbagliando posizione: se fa una mossa e non preleva nessun
oggetto, capisce che deve spostarsi e non controllare più quella
zona.
In pratica a partire da un'AZIONE, si diramano due scelte: il
SUCCESSO e il FALLIMENTO. Se si verifica quest'ultimo, avviene
un cambiamento apportato dall'esperienza e si ritenta.
LINEAR REGRESSION X
Dato Y
identifichiamo
dataset
un con G
dati Ml
addestrare
di
im di
un modello
per f
numero examples
training f dataset
c i
del
dataset
x.gl trainingexample riga m m
Xi
gi i Y
della
valori
example resina
esimo training rigadel
dataset
linear di
La Training
determinare
permette
regression
lineare retta
modello di
ingrato
un valore
ogni
valore di
a
associare un y
LEARNNGALGORITHhgkt
0
otq.tn Nor
tE Target
HYPOTHESIS
MODEL
t
f si Il
4 L
Lper
x convenzione
ALTEZZA INCLINAZIONE
a
trovare
come
Esempio hdxt.tt
g
soio
ho
ho
f stai fa
a a te
a 1
L'idea QQ
è di set
quella il
Rischio di
n.rs fedelmente
scegliere seguendo
overtaking training
µ
il
ha
tale
che alla
in
modo più
si esistema
avvicini minima
narrazione
intit
del IX andra
possibile trainingexample
ay y elementi
numero
nel
Poltronarli costo
ricorre
si alla dataset
Funzione
di JIE
Ileo gif
di
cast
error G
squared function Ìn
permette ho.li
ci si
discosta
matematicamente quanto
capire
dalla
soluzione
ottimale valore
risposta
calcoli
2per
funzione del
leale
che
darebbe
di
coste computazionali set
corretta
Esempio essere training
parametri
hifi più
modello ipotesi
µ X di
fedele errore
per
margine
ogni
esempio
X too
natio errori ogni
somma
degli per
medio
terrore
esempio
sulle
Intuizioni di
costo
funzioni semplificazioni
held ha
gateau a
Ipotesi Q
Q
Parametri e yiIJlQl yiI
519,91
di
Funzione costo lhdH lhdxY
IM lqn
Head Hat
Goal e
Esempio ho eq.li di
della
Grafico costo
funzione
1
1
2 e i
i
3
3 n
oi.sn x
a Hit lhdd.si Il e'una
della di
modello costa
funzione
1 alta dati
dei
ascenda
parabola
t.gl sj
ls j
lzzjtl3 glad etesio una
garantisceperò
ha vannino
funzioneconvessa sempre
o
polonio Qi
a
Y Ita
e 0
had
b ho
0,5 0.58
0.5
0 2.3
5651 ftp.ifeng.s.jp
0.58
1 2.25
0.25 se
6 due
avessimo parametri
il della
Y grafico di
funzione
hold
GEO costo sarebbe
c oh ho.IQ eaten
Q
III b
2.3
49
1 funzione
convessa
Le coppie di Delta che forniscono lo stesso costo sono
rappresentate da un ellisse.
DESCENT ALGORITHM
GRADIENT Goa'sima
Gea azeroo
Prendere uguali randomici
GD gola da
e Continuare modo
unalgoritmo a
cambiare
generale in minimizzare
la flee
la G iterazione
di di
funzione costo
minimizzare funzione
per la il
aoG L'iterazione
termina trova
costo avendo si
funzione minimo
quando
Gdf di
trovare jloo.ee
permette
è
derivabile
solo
se
Si diminuisce la funzione di costo cambiando i
parametri, guardandosi attorno nella speranza di trovare Procedendo alla cieca, si rischia però di trovare un minimo
il minimo globale (nelle funzioni convesse) locale, non globale.
diga
con
Updatesimultanea
Algoritmo 0
until Q
dj.IQ
repeat converge IIII
0 1
for
9 and a
afghana o
Gètempo
ai tempi
derivata
della
funzione variabili
delle
pendenza L'aggiornamento
rate è altrimenti
simultanea
temporanee
learning 0 si cambiarecardati
cisi a
andrebbe
quanto sposta
del incoerenti
lunghezza passo
L 0
Intuizioni Q Q
a a
stai stai afq s.iq
afqs.iq
Noto Noto
caso ed e
se se
fà fà
2 a
0 70
a a
allora allora
2 a
la destra
si
e
elafunzioresispostacasinistra sposta
funzione a
L
9 9
Nella c È
formula a
sentono L il carretto
permette
1
tanti c
piccoli passi delle
Slow diminuisce
iterazioni
CONVERGENCE la
si
ottiene quando
convergenza la
i di
nell'arco un'iterazione
incesti e
ii
rischia o
di oltrepassarlo
deltutto
evitarlo
OVERSHOOTING Error
cast
Function
squared
JAG
calcolo
derivate xigi
4 a
Gta
di
Noo a rispetto
y
aaj.fm derapata
Gigi
da 1
G
o dj at
sei I taxi gi
e
i
m yirispettoQ.P
etQxi
di
derivata
If yit.si
T aol.qxi
Ila
1
sei In
GD
Riassumendol'algoritmo
until
repeat convergence yj.to
hdiy
G a mt ornati
È
e
a ho y
m i
Per il G
sicuri da funzioni
che
essere
correttamente
510 iterazione
dovrebbe
decrescere a ogni
a deve
non troppogrande
essere
né iterazioni
n
troppopiccolo 1
9 del DA
G
Andamentocorretto
Il descent
può minimolocale
un
gradient a
convergere FEATURES
LINEARREGRESSION MULTIPLE
WITH
Dato
undataset con i
identifichiamo
i ho Got
di feature
n features
numero µ
È e'x
dellaI
input
features esima
riga hp con
alla
valoredella feature
jesina
iesima
riga fetenti
ha11 t it
feature
del non
di
m dataset
righe
numero
linea 1 informa
Ogni
ne coefficiente ci
Regression Qnt
ha Got della
feature
Hp nin dell'importanza
go.fr
Parametri in yi
519
di G Cheli
costo
funzione Ilan
Goal n
µ
G repeats
DA il
È.to
9 at
ai ii sina.aneoa.gr
Le otilizzaremisurediverse
featurepossono 110
Le si
etichette
non 0
Mare
es
numeriche identificano lo
conuna 0
notazioneposizionale 1
Montagna
Io il
collina o
feature
Avendo
più potrebbero
queste
In
diversi casi
avere2am questi
S ie
c
al Tramite
minimo normalizzazione
la unandamento
funzioneassume JI le
di XD
di
se
circolare in
morfologia morfologia
alla
hanno normalizzazione
diverse
feature seguito
grandezze al
al
arduoarrivare minimo
più arrivare
minimo semplice
comeNormalizzare xi.si
È il
Feature valore size
divideretutti 2000mi
o es
gli o
per
Scaling o
dalla 5
del floors
assunto 1
massimo si
range 6 5
esima
J feature tra lei
approssimativamente
dal
1 Prelevare dataset
feature
MeanAverage xi
ogni
mi dei set
Normalization è la
Porre media nel
valori
2 deve traslazione
mi
Xi mi training
è
ti lo che
di standard misura
deviation quanto
dati
i dalla
siano scala
media
dispersi riduzione
co e in
i
µ
la dati
bassa i vicini
FORMULA se sono
media
standard alla
1
2
1 Al può
la a
deviation
e È_
N 1 alta lontani
dati
i
essere se sono
dalla media
dem
distanza
dalla
media
punto
Polynomial Regression
Sei
dati hanno
distribuzione idati
Inodellilineari
nonricalcano
fedelmente
non
lineare utilizzare I di
modellicongrado
una
sipuò elevato adattarsi
permettono
del set
aidati
polinomiale canzischiodi
funzione meglio
regressione training
di
secondo
grado
overfkinghglxf
qtqxtq.tt Q linearmente
risolvibile
X
X ti
Dataset E
Size
es hp
h size
size
Got
f that size Polinomiale
Price size Price
Doe
LEGHE Yi
Fn in
in
risolvibilelinearmente in
polinomiale Yn Yn
un'ipotesi e
della
tramite nelle
sue
feature potenze
mappatura del
tener del
conto
Bisogna cambiamento range
pero della
nell'elevamento e
a quindi
potenza
delle
normalizzazione feature xi.ci
di
Pearson Correlation Coefficient Dataset in Y
a
che
tenendopresente fm
esempi
di
numero
m training
example
feature
di
on numero n feature
Il ideale mdn.se
sarebbe man
caso Due
allora tanti il
dati feature Aumentare set
strategie
ci saranno quante training
le
troverà feature tramite
Ridurre
possibili
e soluzione
si una
non una è
selezione che
detto
non
tutela
la
il utili
calcolare
utilizziamo e siano
unafeature
target feature
per
tra In
idue
Correlazione questo
modo e possibile
Canalis
effettuare Pearson
selezione
una N
p Nel di
caso modello
un III
IEI
iii areannicinacorreazione ra
i diretta feature
inversa target perciò
o e
il
che
fratargete
feature di valeo
coefficiente Pearson
1
vale
PEARSON
COEFFICIENTE
Io I
REGRESSION
LOGISTIC HAI
Il della il
classificazione e
problema problema
come
mai diamo di
e
Prendono
di
solo valori
in
considerazione quantità
una
piccola
Es
discreti Spamononspam 0_
volto
volto senza
o Benign
Immagine
con z size
Toma
Tumorebenigno o maligno si linear
si lineare
definire il
può
chiama Binaria modello
un con
Classificazione
anche regression
0 può
i Peròcome il benedato
si
target notare nonfunziona
modello
a
possono
appartenere è lineare
1
classe la
che
classe una
classificazione
o funzione
positiva
negativa non
0.5
seKDE Benign
y
SET se
41470.5 Malignant
TRAINING h 0
21
può
Problema
LOGISTICREGRESSION valori
assumere oppure
0
1
ALGORITHM solo
dovrebbeassumere e
quando
µ la il
Utilizziamo dove
soluzione Regression target
Logistic
è
GIÀ il 1
gelo
ho 0,1 0
x sempre oppure è
La di
logistic
HYPOTHESIS un classificazione
algoritmo
regression
DISCRETIZZAZIONE
0.5
ho e
g O
ho 0.5
COME CALCOLARE MODELLO
UN LOGISTICO 1
della z
Utilizzo
1 g
logistica
Function
Sigmoid funzione z
fare 4x 1
la te
che sia
funzione
per inmodo
05hG 1
s È 1
in ho
lineare
2 l'ipotesi ha
Cambiano g è
It
b
txghelo.si
h E0.5 gia
Per 0
la in 2,0
pazzo
3 se
1 go.si
y
descretizzare classificazione e 44 0.5 0 1 0
la se e
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.