Académique Documents
Professionnel Documents
Culture Documents
Joo Gama
LIAAD, FEP Universidade do Porto
jgama@liaad.up.pt
Road Map
1. Aprendizagem Bayesiana
1. Naive Bayes
2. Funes Discriminantes
3. SVM
2. Arvores de Deciso
1. Construo
2. Regularizao
3. Modelos Multiplos
4. Fluxos de Dados
1. rvores de deciso para streams
2. Deteco de Mudana
J. Gama
Aprendizagem Automtica
reas disciplinares
Estatstica
Inferncia estatstica
Computao
Inteligncia Artificial
Aprendizagem Automtica
Bases de dados
Bases de Dados Multidimensionais
Definies:
Self-constructing or self-modifying representations of what is being
experienced for possible future use Michalski, 1990
Analysis of observational data to find unsuspected relationships and to
summarize the data in novel ways that are both understandable and useful for
the data owner Hand, Mannila, Smyth, 2001
Obter representaes em compreenso a partir de representaes em extenso.
J. Gama
Aplicaes
Cdigos Postais
Predio do uso da terra
Aprender a conduzir veculos autnomos
Web sites Adaptativos.
J. Gama
yy==f(x)
f(x)
Cdigos Postais
J. Gama
J. Gama
LandSat - Porto
Verde-azul
vermelho
vermelho
(Infravermelhos)
J. Gama
Pixel:30mx30m
7
Veculos Autnomos
J. Gama
Veculos Autnomos
J. Gama
J. Gama
10
Help Systems!
The Clip is an interface for a Bayesian Network
ERIC HORVITZ, a researcher at Microsoft and a guru in the field of Bayesian statistics, feels bad
about the paperclip-but he hopes his latest creation will make up for it. The paperclip in question, as
even casual users of Microsoft's Office software will be aware, is a cheery character who pops up
on the screen to offer advice on writing a letter or formatting a spreadsheet. That was the idea,
anyway. But many people regard the paperclip as annoyingly over-enthusiastic, since it appears
without warning and gets in the way.
Mobile Manager evaluates incoming e-mails on a user's PC and decides which are important
enough to forward to a pager, mobile phone or other e-mail address. Its Bayesian innards give it an
almost telepathic ability to distinguish junk mail from genuinely important messages.
J. Gama
11
Aprendizagem Bayesiana
Introduo
Joo Gama
jgama@liaad.up.pt
http://www.liaad.up.pt/~jgama
Sumrio
O teorema de Bayes
Motivao
O Bayes-ptimo
O erro de Bayes
Desenvolvimentos
J. Gama
13
sabido que a probabilidade de observar uma pessoa com este tipo de cancro 0.008.
Existe um teste de laboratrio que d apenas um indicao imperfeita sobre a presena
(ausncia) do cancro.
O teste foi negativo em 97% de casos em que o doente no tinha cancro.
O teste foi positivo em 98% de casos em que o doente tinha cancro.
P(sim) = 0.008
P(no) = 0.992
J. Gama
14
O teorema de Bayes
O teorema de Bayes responde a esta questo:
p ( Deciso i | x ) =
p ( x | Deciso i ) p ( Deciso i )
p ( x)
A regra de Bayes mostra como alterar as probabilidades a priori tendo em conta novas
evidncias de forma a obter probabilidades a posteriori.
P(sim | +)
P(sim)*P(+ | sim)
0.008* 0.98
= 0.0078
P(no | +)
P(no)*P(+ | no)
0.992 * 0.03
= 0.0298
Temp
J. Gama
15
O erro de Bayes
J. Gama
16
O teorema de Bayes
A aplicao do teorema de Bayes como classificador requer:
Conhecer as probabilidades a priori p(decisoi)
As probabilidades condicionais p(x|decisoi)
J. Gama
17
O teorema de Bayes
Como ultrapassar o problema?
Assumindo simplificaes no calculo de p(x|deciso).
J. Gama
18
O naive Bayes
Assumindo que o valor dos atributos so condicionalmente
independentes dada a classe: P ( xr | C ) =
P( x | C )
i
r P (Ci )
P (C i | x ) =
r P ( x j | Ci )
P( x )
O termo P(x) pode ser ignorado j que no depende da classe.
r
P(Ci | x ) P (Ci ) P( x j | Ci )
Para cada classe calculado um valor proporcional a P(Ci|x).
J. Gama
19
O naive Bayes
Suponha um problema com p variveis.
Cada varivel pode assumir k valores.
A estimativa da probabilidade conjunta das p variveis requer estimar kp probabilidades.
Assumindo que as variveis so condicionalmente independentes dada a classe, requer
estimar kp probabilidades.
J. Gama
p (c1 | x )
p (c1)
p ( xj | c1)
= log
+ log
p (c 2 | x )
p (c 2 )
p ( xj | c 2)
20
10
Exemplo
Tempo
Temperatu. Humidade
vento
Joga
Sol
85
85
No
No
Sol
80
90
Sim
No
Nublado
83
86
No
Sim
Chuva
70
96
No
Sim
Chuva
68
80
No
Sim
Chuva
65
70
Sim
No
Nublado
64
65
Sim
Sim
Sol
72
95
No
No
Sol
69
70
No
Sim
Chuva
75
80
No
Sim
Sol
75
70
Sim
Sim
Nublado
72
90
Sim
Sim
Nublado
81
75
No
Sim
Chuva
71
91
Sim
No
Temperatu.
Humidade
66
90
Sol
vento
Sim
Joga
?
J. Gama
21
J. Gama
22
11
9.5
10
11
kM
Ew
Ep
J. Gama
23
f ( x) =
J. Gama
( x )
1
e 2
2
24
12
Temperatu.
Humidade
Sol
Tempo
85
85
No
vento
No
Joga
Sol
80
90
Sim
No
Nublado
83
86
No
Sim
Chuva
70
96
No
Sim
Chuva
68
80
No
Sim
Chuva
65
70
Sim
No
Nublado
64
65
Sim
Sim
Sol
72
95
No
No
Sol
69
70
No
Sim
Chuva
75
80
No
Sim
Sol
75
70
Sim
Sim
Nublado
72
90
Sim
Sim
Nublado
81
75
No
Sim
Chuva
71
91
Sim
No
J. Gama
25
Tempo
Temperatura
Sim No
Humidade
Sim No
Sim
Vento
No
Sim
No
Sol
Mdia
73
74.6
Mdia
79.1
86.2
Falso
Nublado
Desv.
6.2
7.9
Desv.
10.2
9.7
Verda.
Chuva
J. Gama
26
13
Temperatu.
Humidade
66
90
vento
Sim
Joga
?
J. Gama
27
Analise
Em domnios onde todos os atributos so nominais
O nmero de possveis estados do naive Bayes finito.
d ^ (#classes * (#atributos * #valores+1))
d o nr. de diferente nmeros representveis na mquina
Numa maquina de 16 bits, d 2^16=65536
r
P(Ci | x ) log( P (Ci )) + log( P ( x j = v j ,k | Ci )) * b j ,k
j ,k
J. Gama
28
14
Naive Bayes
O naive Bayes sumariza a variabilidade de um conjunto de dados em tabelas de
probabilidades condicionais.
A dimenso do modelo independente do numero de exemplos
Estvel em relao a perturbaes do conjunto de treino
J. Gama
29
O Discriminante Linear
A regra de Bayes atribui a um exemplo a classe mais provvel:
argmax i P(Cli)*P(x|Cli)
Assumindo que:
Para cada classe os exemplos so independentes.
O vector dos atributos segue uma distribuio multivariada normal
Os vectores das mdias so diferentes para cada classe.
Mas tm a mesma matriz de co-varincia.
J. Gama
1
1
exp( ( x ) T 1 ( x )
2
2 | |
30
15
O Discriminante Linear
Supondo que:
A probabilidade a priori da classe Ci P(Ci)
A funo de densidade de probabilidade relativa classe Ci fi
J. Gama
31
O Discriminante Linear
Para cada classe, um discriminante um hiper-plano.
O hiperplano uma combinao linear dos atributos:
Hi = w0+w1x1+...+wnxn
Hi = i+xT i
i = 1i e
i = log(p(Ci)) 1/2iT 1i
J. Gama
32
16
Discriminante Linear
O caso de duas classes:
J. Gama
33
O discriminante logistico
Maximiza uma funo de verosimilhana:
L( 1 ,..., n 1 ) = P(C1 | x ).... P(C n | x)
1
n
Modela o quociente dos logaritmos das funes densidade de
probabilidade:
Dados um exemplo x e n-1 vectores de coeficientes , a probabilidade de x
pertencer a uma classe i :
P(Ci | x ) =
exp( i x)
| x)
j
exp(
j =1... n
P(C n | x) =
1
exp( j | x)
j =1... n
J. Gama
34
17
Superfcies de deciso
J. Gama
35
J. Gama
36
18
J. Gama
37
Bibliografia adicional
Richard Duda, Peter Hart; (1973) Pattern Classification and Scene Analysis,
J.Wiley & Sons
Tom Mitchell, Machine Learning (cap. 6)
McGraw-Hill, 1997
J.Pearl, Probabilistc Reasoning in Intelligent Systems: Networks of plausible
Inference, Morgan Kaufman, 1988
Pedro Domingos, M.Pazzani (1997) On the optimality of the Simple Bayes
Classifier under zero-one loss, Machine Learning, 29
J. Gama
38
19
(In)dependence
A patient takes a lab test and the result comes back positive. The test
returns:
a correct positive result in only 75% of the cases in which the disease is actually
present, and
a correct negative result in only 96% of the cases in which the disease is not
present.
Furthermore, 8% of the entire population have this cancer.
J. Gama
40
20
(In)dependence
J. Gama
41
J. Gama
42
21
Modelo qualitativo
Grafo (DAG) das dependncias causais das variveis
Modelo quantitativo
Tabelas de distribuio
Naive Bayes:
P(C|x1,x2,x3)=P(C).P(x1|C).P(x2|C).P(x3|C)
P(x1|C)
P(x2|C)
P(x3|C)
Redes Bayesians
P(C|x1,x2,x3)= P(C).P(x1|C).P(x2|x1,C).P(x3|C)
P(C)
P(x1|C)
P(x2|x1,C)
P(x3|C)
J. Gama
43
J. Gama
44
22
J. Gama
45
x1
x3
x2
x1
x2
x3
x1
.3
.5
x2
.2
x3
I ( X ,Y | C) =
i =1
j =1
r =1
p ( xi , y j | cr )
p( x , y , c ) log p( x | c ) p( y
i
| cr )
.5
x3
.2
.3
x2
J. Gama
46
23
47
J. Gama
48
24
J. Gama
49
A k-DBC is a BN which:
contains the structure of NB
allows each attribute Xi to have a maximum of k attribute nodes as parents
J. Gama
50
25
Begin
Compute I(Xi,C) and I(Xi,Xj |C) for all pairs of variables
Iterate
Choose the variable Xmax not yet in the model that maximizes I(Xi|C)
Choose the k parents of Xmax:
those with greater I(Xj,Xmax |C)
J. Gama
51
J. Gama
52
26
J. Gama
53
J. Gama
54
27
J. Gama
55
Software Available
Weka Bayesian Classifiers
Elvira Spanish Consortium
Open source package for the technical computing language R,
developed by Aalborg University (http://www.math.auc.dk/novo/deal)
Kevin Murphy's MATLAB toolbox
supports dynamic BNs, decision networks, many exact and
approximate inference algorithms, parameter estimation, and structure
learning (http://www.ai.mit.edu/~murphyk/Software/BNT/bnt.html)
Free Windows software for creation, assessment and evaluation of
belief networks
(http://www.research.microsoft.com/dtas/msbn/default.htm)
http://www.snn.ru.nl/nijmegen
J. Gama
56
28
Bibliografia
Tom Mitchell, Machine Learning, (chapter 6), McGraw-Hill,1997
R. Duda, P. Hart, D. Stork; Pattern Classification, J. Willey & Sons, 2000
J.Pearl, Probabilistic Reasoning in Intelligent Systems: Networks of Plausible
Inference, Morgan Kaufmann, 1988
P. Domingos, M.Pazzani; On the Optimality of the Simple Bayes Classifier under
zero-one loss, Machine Learning, 29
R. Neapolitan, Learning Bayesian Networks, Prentice Hall, 2004
J. Gama
57
rvores de Deciso
Joo Gama
Jgama@liacc.up.pt
29
Sumario
rvores de deciso
Motivao
Construo de uma rvore de deciso
Critrios para seleccionar atributos
Entropia
Podar a rvore
Estimativas de erro
Extenses
rvores multivariadas
J. Gama
59
rvores de Deciso
Uma rvore de deciso utiliza uma estratgia de dividir-paraconquistar:
Um problema complexo decomposto em sub-problemas mais simples.
Recursivamente a mesma estratgia aplicada a cada sub-problema.
Crescente interesse
CART (Breiman, Friedman, et.al.)
C4.5 (Quinlan)
Splus, Statistica, SPSS , R
J. Gama
60
30
J. Gama
61
J. Gama
62
31
Representao
Uma rvore de deciso representa a disjuno de conjunes de
restries nos valores dos atributos
Cada ramo na rvore uma conjuno de condies
O conjunto de ramos na rvore so disjuntos
DNF (disjuntive normal form)
0
b
0
-
1
+
1
+
J. Gama
63
A ideia base:
1.
2.
3.
4.
Escolher um atributo.
Estender a rvore adicionando um ramo para cada valor do atributo.
Passar os exemplos para as folhas (tendo em conta o valor do atributo
escolhido)
Para cada folha
1. Se todos os exemplos so da mesma classe, associar essa classe folha
2. Seno repetir os passos 1 a 4
J. Gama
64
32
Exemplos:
O conjunto de dados original:
Tempo
Temperatu. Humidade
vento
Selecciona um atributo:
Joga
Sol
85
85
No
No
Sol
80
90
Sim
No
Nublado
83
86
No
Sim
Chuva
70
96
No
Sim
Chuva
68
80
No
Sim
Chuva
65
70
Sim
No
Nublado
64
65
Sim
Sim
Sol
72
95
No
No
Sol
69
70
No
Sim
Chuva
75
80
No
Sim
Sol
75
70
Sim
Sim
Nublado
72
90
Sim
Sim
Nublado
81
75
No
Sim
Chuva
71
91
Sim
No
Vento
No
Sim
J. Gama
65
10 / 10
10 / 10
5/5
J. Gama
5/5
10 / 0
0 / 10
66
33
Medida da diferena dada por uma funo baseada nas propores das classes
entre os ns descendentes.
Valoriza a disparidade entre as parties.
Lopez de Mantaras
Medida de independncia
Medida do grau de associao entre os atributos e a classe.
J. Gama
67
Entropia
J. Gama
68
34
Ganho de Informao
# Exs
v entropia Exs
v
# Exs
J. Gama
69
Informao da Classe:
p(sim) = 9/14
p(no) = 5/14
Info(joga) =
p(sim|tempo=sol) = 2/5
p(no|tempo=sol) = 3/5
Info(joga|tempo=sol)
Sim
No
Sol
Nublado
Chuva
J. Gama
70
35
Fayyard e Irani (1993) mostram que de todos os possveis pontos de referncia aqueles
que maximizam o ganho de informao separam dois exemplos de classes diferentes.
J. Gama
71
Joga
64
Sim
65
No
68
Sim
69
Sim
70
Sim
71
No
72
No
p(sim | temperatura<70.5)=4/5
p(no | temperatura<70.5)=1/5
p(sim | temperatura>70.5)=5/9
p(no | temperatura>70.5)=4/9
72
Sim
Info(joga | temperatur<70.5) =
75
Sim
75
Sim
80
No
81
Sim
83
Sim
85
No
J. Gama
72
36
Repetir o processo
J. Gama
73
J. Gama
74
37
Critrios de paragem
Quando parar a diviso dos exemplos?
Todos os exemplos pertencem mesma classe.
Todos os exemplos tm os mesmos valores dos atributos (mas diferentes
classes).
O nmero de exemplos inferior a um certo limite.
(?) O mrito de todos os possveis testes de partio dos exemplos muito
baixo.
J. Gama
75
Fim
J. Gama
76
38
Dois problemas:
Que atributo seleccionar para teste num n?
Quando parar a diviso dos exemplos ?
J. Gama
77
39
Sobre-ajustamento
O algoritmo de partio recursiva do conjunto de dados gera
estruturas que podem obter um ajuste aos exemplos de treino perfeito.
Em domnios sem rudo o nr. de erros no conjunto de treino pode ser 0.
J. Gama
79
Erro (%)
30
25
Treino
20
Test
15
10
5
0
1
10 20 30 40 50 60 70 80 90 100
Nr. de Nos da Arvore
J. Gama
80
40
Sobre-ajustamento (overfitting)
Definio:
Uma arvore de deciso d faz sobre-ajustamento aos dados se existir uma arvore
d tal que:
d tem menor erro que d no conjunto de treino
mas d tem menor erro na populao.
J. Gama
81
Sobre-ajustamento
Occams razor: preferncia pela hiptese mais simples.
Existem menos hipteses simples do que complexas.
Se uma hiptese simples explica os dados pouco provvel que seja uma
coincidncia.
Uma hiptese complexa pode explicar os dados apenas por coincidncia.
J. Gama
82
41
Simplificar a arvore
Duas possibilidades:
Parar o crescimento da arvore mais cedo (pre-pruning).
Crescer uma arvore completa e podar a arvore (pos-pruning).
Growing and pruning is slower but more reliable
Quinlan, 1988
O problema do Xor
Requer olhar em frente mais que um nvel.
J. Gama
83
Critrios
Critrios:
Obter estimativas fiveis do erro a partir do conjunto de treino.
Optimizar o erro num conjunto de validao independente do utilizado para
construir a arvore.
Minimizar:
erro no treino + dimenso da arvore
Cost Complexity pruning (Cart)
J. Gama
84
42
Estimativas de Erro
J. Gama
85
Valores Desconhecidos
Pr-Processados
Substituir o valor desconhecido pelo valor mais provvel
Atributos numricos: mdia.
Atributos nominais: moda.
Na construo do modelo
Assumir que um atributo tem como possvel valor o valor desconhecido.
Atribuir um peso a cada exemplo.
Nos exemplos em que o atributo de teste toma um valor desconhecido, o exemplo
passado para todos os ns descendentes com um peso proporcional probabilidade
de um exemplo seguir o ramo.
J. Gama
86
43
Extenses
Algumas Ideias:
rvores com funes nas folhas
NBTree usa Nave Bayes nas Folhas
rvores Incrementais
Hoeffding Trees
Florestas de rvores
.
J. Gama
88
44
Mtodo no-paramtrico
No assume nenhuma distribuio particular para os dados.
Pode construir modelos para qualquer funo desde que o numero de exemplos de treino
seja suficiente.
J. Gama
89
( a b ) (c d )
Replicao de sub-arvores
J. Gama
90
45
O espao de Hipteses
O espao de hipteses
completo
Qualquer funo pode ser
representada por uma rvore de
deciso.
No reconsidera opes
tomadas
Mnimos locais
J. Gama
91
Bibliografia Adicional
Online:
http://www.Recursive-Partitioning.com/
Tom Mitchell
Machine Learning (chap.3)
MacGrawHill, 1997
Quinlan, R.
C4.5 Programs for Machine Learning
Morgan Kaufmann Publishers, 1993
J. Gama
92
46
Decomposio do Erro
O erro esperado de um classificador pode ser decomposto em:
2
Vis (Bias)
Mede os erros sistemticos.
Estimativa da capacidade de adaptao da linguagem de representao utilizada pelo
algoritmo ao problema.
Varincia
Mede a variabilidade das predies
Estimativa da dependncia do modelo gerado ao conjunto de treino.
J. Gama
93
94
47
2
Variancia x = 1 (1 P(Cl i | x ) )
2
i
J. Gama
95
Exemplo
J. Gama
96
48
O Compromisso Bias-Variance
J. Gama
97
Decomposio em Bias-Variance
Funes Discriminantes
Varincia reduzida
Bias elevado
Arvores de deciso
Erro
Varincia elevada
Bias reduzido
Arvores de
Deciso
Bias +
J. Gama
Discriminantes
Varincia
98
49
Sumario
Avaliao de classificadores
Como estimar o erro do classificador num conjunto de dados?
Qual o melhor algoritmo para um problema?
Amostragem
Validao cruzada
Amostragem com reposio
Teste de Hipteses
Decomposio do erro em bias e variance
J. Gama
99
Modelos Mltiplos
Joo Gama
jgama@liacc.up.pt
50
Modelos Mltiplos
Diferentes algoritmos de aprendizagem exploram:
Diferentes linguagens de representao.
Diferentes espaos de procura.
Diferentes funes de avaliao de hipteses.
Observao:
No existe um algoritmo que seja o melhor para todos os problemas
Resultados experimentais: Projecto Statlog
Resultados Tericos: No free lunch
J. Gama
101
Erro Correlacionado
Uma condio necessria:
Um conjunto melhora sobre os classificadores individuais se estes discordam
entre si. Hansen & Salamon - 1990
i , j = p ( fi ( x) = f j ( x) | fi ( x) f ( x) f j ( x) f ( x))
A,B = 4 / 7 = 0.57
102
51
Modelos Mltiplos
Um estudo em simulao:
Considere um problema de duas classes equi-provveis:
P(Classe1) = P(Classe2)
Numero de classificadores:[3..25]
Com a mesma probabilidade de cometer erros.
P_erro(Classificadori) = {0.45;0.5;0.55}
Contador de Votos
classe
Classificador 1
Erro = P
Classificador 2
Erro = P
....
Exemplo
J. Gama
Classificador n
Erro = P
103
P > 0.5
P < 0.5
A probabilidade de erro do conjunto diminui linearmente
com o numero de classificadores
J. Gama
104
52
J. Gama
105
Condies Necessrias
To achieve higher accuracy the models should be diverse and each
model must be quite accurate
Ali & Pazzani 96
Condies Necessrias
Os classificadores devem ter uma performance melhor que uma escolha
aleatria (random guess)
Os classificadores devem cometer erros no correlacionados.
Diferentes tipos de erros.
Erros em diferentes regies do espao.
J. Gama
106
53
Computacionais
Procura heurstica.
Mximos Locais
Representao
A funo que governa o fenmeno no est em H.
J. Gama
107
Modelos Mltiplos
Combinao de predies
Votao Uniforme
Votao Pesada
Soma de distribuies
Gerar Modelos
Modelos Homogneos
Bagging
Boosting
Modelos Heterogneos
Stacking
Modelos Hbridos
Model Class Selection
J. Gama
108
54
Gerao de Modelos
Mtodos para gerar modelos diferentes
Gerao de classificadores homogneos
Bagging, Breiman 92
Boosting, Schapire & Freund, 94
Option Trees, Buntine 92
Modelos Hbridos
MCS (Brodley, 95)
J. Gama
109
55
Bagging
Aprendizagem:
Obter N rplicas, com reposio, do conjunto de treino.
As amostras tm o mesmo numero de exemplos do conjunto de treino.
usual usar 25 amostras.
Aplicao
Para cada exemplo de teste
Determina a classe predita por cada classificador.
As predies so agregadas por voto uniforme.
O exemplo classificado na classe mais votada.
J. Gama
111
Bagging
Aprendizagem:
Treino
Algoritmo
Aplicao
Modelos
Treino
Teste
J. Gama
Votao
Algoritmo
Uniforme
112
56
Porque Funciona ?
Escolhendo o voto maioritrio sobre muitos modelos, reduz a
variabilidade aleatria dos modelos individuais.
Por exemplo, em arvores de deciso
A escolha do atributo de teste para um n
A escolha dos pontos de referncia nos atributos reais.
J. Gama
113
Bagging
Caractersticas
Requer Algoritmos instveis.
Algoritmos sensveis a pequenas variaes do conjunto de treino.
rvores de Deciso, Redes Neuronais
J. Gama
114
57
Boosting
O problema
Existir um algoritmo tal que:
Dados:
Um nvel de confiana: (0 < < 0.5) e
Um limite para o erro: (0 < < 0.5)
J. Gama
115
Boosting
Aprendizagem
um algoritmo iterativo.
Associa um peso a cada exemplo.
Algoritmo:
Inicializa o peso de cada exemplo de forma uniforme
Iterativamente
Gera um classificador usando a actual distribuio dos exemplos.
A distribuio dada pelos pesos
J. Gama
116
58
Boosting Um Exemplo
Weak learner gera um hiper-plano perpendicular a um dos eixos.
1 Iterao
+
2 Iterao
Conjunto de Treino
+
+
+
Composio dos
2 classificadores
Superfcie de Deciso
+
-
Conjunto de Treino
+
-
+
+
Superfcie de Deciso
J. Gama
117
AdaBoosting
Input:
Conjunto de Dados D,
Algoritmo Alg,
Nr. de Iteraes Lmax
hL = Alg(Dw)
EL = Erro de hL
Se EL > 0.5 Ignora hL
Seno
BL = EL/(1-EL)
Para cada i
wL+1(i) = wL(i)BL1-[hL(xi) <> yi]
Output
Hf(x) = argmaxy SumL(log(1/BL)[hL(x)=y]
J. Gama
118
59
Bagging
Reduo do erro devida varincia.
Efectivo com classificadores instveis
No so reportados exemplos de
degradao do erro.
Boosting
Reduo do erro quer na varincia
quer no bias.
Em problemas com rudo pode haver
degradao da taxa de erro.
J. Gama
119
Data Streams
Joo Gama
jgama@liaad.up.pt
University of Porto
60
121
Data Streams
Continuous flow of data generated at high-speed in
Dynamic, Time-changing environments.
The usual approaches for querying, clustering and
prediction use batch procedures cannot cope with this
streaming setting.
Machine Learning algorithms assume:
Instances are independent and generated at random according to
some probability distribution D.
It is required that D is stationary
J. Gama
122
61
Data Streams
We need to maintain Decision models in real time.
Decision Models must be capable of:
incorporating new information at the speed data arrives;
detecting changes and adapting the decision models to
the most recent information.
forgetting outdated information;
J. Gama
123
Classifiers at anytime
Ideally, produce a model equivalent to the one that would be obtained by a
batch data-mining algorithm
J. Gama
124
62
J. Gama
125
J. Gama
126
63
J. Gama
127
J. Gama
Ai>V
...
128
64
where
R 2 ln(1 / )
2n
J. Gama
129
J. Gama
130
65
J. Gama
131
Functional Leaves
CART book (Breiman, Freadman, et al)
grow a small tree using only the most significant splits. Then do
multiple regression in each of the terminal nodes. (pag. 248)
Perceptron trees
P. Utgoff, 1988
NBTree
R. Kohavi, 1996
...
J. Gama
132
66
J. Gama
133
J. Gama
134
67
Training
Training Time
Time vs.
vs. Nr
Nr of
of Examples
Examples
UFFT
80000
70000
60000
50000
C4.5
3500
40000
30000
20000
10000
0
3000
2500
2000
1500
1000
500
0
100k
200k
300k
400k
500k
750k
1000k
50k
100k
200k
Nr. Examples
UFFT
Time(Seconds)
25000
20000
15000
10000
5000
0
100k
200k
300k
400k
Nr. Examples
400k
500k
750k
1000k
500k
1000k
1500k
UFFT
C4.5
30000
50k
300k
Nr. of Examples
Time (Seconds)
UFFT
C4.5
Time (seconds)
Time (Seconds)
C4.5
40000
35000
30000
25000
20000
15000
10000
5000
0
50k
100k
200k
300k
400k
500k
1000k
1500k
Nr. Examples
J. Gama
135
VFDT - Analysis
Low variance models
Low overfiting
VFDT becomes asymptotically close to that of a
batch learner.
The expected disagreement is /p; where p is the
probability that an example fall into a leaf.
J. Gama
136
68
Change Detection
J.Gama, G.Castillo
LIAAD-University of Porto
Motivation
The Problem:
In most challenge applications of machine learning
Data flows continuously over time
Dynamic Environments
Some characteristic properties of the problem can change over time
Examples:
e-commerce, user modelling
Fraud Detection, Intrusion detection
Monitoring in biomedicine and industrial processes
J. Gama
138
69
Basic Concepts
Concepts are not static, can change over time
Can change over time:
Example:
User Modeling Systems:
to help users to find information
to recommend products
to adapt an interface, etc.
Users needs
Users preferences
Characteristics of the environment
Sensor environment
J. Gama
139
Concept Drift
Concept drift means that the concept about which
data is obtained may shift from time to time, each
time after some minimum permanence.
Any change in the distribution underlying the data
Context: a set of examples from the data stream where
the underlying distribution is stationary
J. Gama
140
70
J. Gama
141
Detecting Drift
The Basic Idea:
When there is a change in the class-distribution of the examples:
The actual model does not correspond any more to the actual distribution.
The error-rate increases
Main Problems:
Detect when the actual model is out-date
Trace of the error rate
React to drift
Re-learn the decision model using the most recent examples
Dynamic Window
Short Term Memory
J. Gama
142
71
Detecting Drift
Suppose a sequence of examples in the form <xi,yi>
The actual decision model classifies each example in the
sequence
In the 0-1 loss function, predictions are either True or
False
The predictions of the learning algorithm are:
T,F,T,F,T,F,T,T,T,F,.
A random variable from Bernoulli trials
143
Detect Drift
The algorithm maintains two registers
Pmin and Smin such that Pmin+Smin = min(pi+si)
Minimum of the Error rate taking the variance of the estimator into
account.
At example j
The error of the learning algorithm will be
Out-control if pj+sj > pmin+ * smin
In-control if pj+sj < pmin+ * smin
Warning if pmin+ * smin > pj+sj > pmin+ * smin
The constants and depend on the confidence level
In our experiments =2 and = 3
J. Gama
144
72
The Algorithm
At example j the actual model
classifies the example
Compute the error and variance: pj
and sj
If the error is
In-control the actual model is updated
Incorporate the example in the
decision model
Warning zone:
Maintain the actual model
First Time:
the lower limit of the window
is: Lwarning = j
Out-Control
Re-learn a new model using as
training set the set of examples
[Lwarning, j]
J. Gama
145
J. Gama
146
73
J. Gama
147
74