SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
14/4/2009
1
SCC5871 – Introdução ao
Aprendizado de Máquina
Aula 6 – Classificação: Dimensão VC e
Máquinas de Vetores Suporte (SVMs)
Prof. Ricardo J. G. B. Campello
PPG-CCMC / ICMC / USP
2
Créditos
Parte do material a seguir consiste de adaptações e
extensões dos originais:
de (Tan et al., 2006)
gentilmente cedidos pelo Prof. André C. P. L. F. de Carvalho
0 1 1 0 0 1 1 0
1 1 0 0 1 0 0 1
0 1 1 0 1 1 1 1
1 0 1 0 0 1 0 0
14/4/2009
2
3
Tópicos
Dimensão VC
SVMs
Caso Binário Linearmente Separável
Caso Binário Não Linearmente Separável
Caso Binário Não Linear
Caso Multi-Classes
4
Minimização de Risco Estrutural
Sabemos que a capacidade de generalização de uma
máquina de aprendizado refere-se à taxa de erro desta
máquina em dados não vistos no treinamento
Da teoria do aprendizado estatístico sabe-se que
essa taxa é limitada superiormente por uma soma de
dois termos:
a taxa de erro nos dados de treinamento
um termo que depende da dimensão VC
de Vapnik-Chervonenkis
14/4/2009
3
5
Minimização de Risco Estrutural
Uma máquina de aprendizado que minimiza o limitante
superior do erro de generalização é dita seguir o princípio
estatístico de minimização de risco estrutural
Representantes importantes desta classe são as SVMs
Máquinas de Vetores Suporte (Support Vector Machines)
Em problemas linearmente separáveis, anulam o 1º termo do
limitante (erro de treinamento) e minimizam o 2º (dim. VC)
Maximizam a capacidade de generalização
6
Dimensão VC
N pontos podem ser rotulados em classes binárias (+/–)
de 2N possíveis maneiras
2N problemas de aprendizado diferentes podem ser definidos
Diz-se que o espaço de hipóteses H de uma máquina de
aprendizado particiona os N exemplos se:
∃ h ∈ H que separa exemplos positivos e negativos para
qualquer um dos 2N problemas
No. máximo de pontos que podem ser particionados por
H é definido como a dimensão VC de H
VC(H) mede a capacidade de representação de H
14/4/2009
4
7
Dimensão VC
Seja um classificador linear em um espaço 2D
d = 2 dimensões
N = 3 pontos ⇒ 2N = 23 = 8 problemas
Existem 3 pontos que sempre podem ser separados
Todos os 8 problemas linearmente separáveis
VC(H) = d + 1
VC(H) = 3
8
Dimensão VC
Seja um classificador linear em um espaço 2D
N = 4 ⇒ 16 problemas
Ao menos um deles sempre será não linearmente separável
VC(H) = 3
VC(H) para um classificador
linear em um espaço de d
dimensões é d + 1
14/4/2009
5
9
Dimensão VC
Seja um classificador na forma de retângulo
em um espaço bidimensional
N = 4 (16 problemas)
x1
x2
VC(H) = 4
Para N = 5 pontos
alguns problemas
sempre serão não
separáveis
10
Dimensão VC
É definida genericamente para uma classe
de modelos de dimensão pré-estabelecida:
Depende da representação das hipóteses
Normalmente depende do no. de atributos
Mas nem sempre
Por exemplo, se H for uma tabela de busca
dimensão VC é infinita !
14/4/2009
6
11
Dimensão VC
Dimensão VC é um conceito teórico
Na prática, é difícil de calcular com
exatidão para a maioria dos classificadores
Quanto mais flexível o classificador,
provavelmente maior sua dimensão VC
portanto maior o limitante superior para a taxa
de erro de generalização
maior o risco de overfitting !
SVMs Lineares
Problema Linearmente Separável:
– Encontrar um hiperplano que discrimine entre as classes
(Tan et al., 2006)
12
14/4/2009
7
SVMs Lineares
Uma possível solução (limiar de decisão linear) é mostrada acima
(Tan et al., 2006)
13
SVMs Lineares
Uma outra possível solução é mostrada acima
(Tan et al., 2006)
14
14/4/2009
8
SVMs Lineares
Outras possíveis soluções...
(Tan et al., 2006)
15
SVMs Lineares
Qual classificador é melhor? B1 ou B2 ?
– Como definir “melhor”... ?
(Tan et al., 2006)
16
14/4/2009
9
SVMs Lineares
Encontrar o hiperplano que maximiza a margem do limiar de decisão
– B1 é muito melhor que B2 !!!
(Tan et al., 2006)
17
SVMs Lineares
0=+ bT
xw
O hiperplano B1 é descrito por um vetor w e por um escalar b
– w é da mesma dimensão dos pontos x e perpendicular a B1
(Tan et al., 2006)
18
14/4/2009
10
SVMs Lineares
( )ab xx −
Note que a partir das expressões acima obtém-se wT (xb – xa) = 0
– o que prova que w é de fato perpendicular a B1
0=+ ba
T
xw
0=+ bb
T
xw
19
SVMs Lineares



−≤+−
≥++
=
)(quadradosse1
(círculos)se1
)(
kb
kb
y T
T
xw
xw
x
0=+ bT
xw
kbT
−=+xw
kbT
=+xw
rótulos de classes
20
14/4/2009
11
SVMs Lineares



−≤−
+≥+
=
)(quadrados1se1
(círculos)1se1
)(
xw
xw
x T
T
y
1−=xwT
1+=xwT






⋅=
w
w
b
k
1






=
x
x
1
rótulos de classes
21
SVMs Lineares
1−=a
T
xw
1+=b
T
xw
( ) ( )ab
T
ab xx
w
w
xxw −⋅=−= projmargem
( )
( ) 2
2
=−
=−
ab
T
ab
T
k
xx
w
xxw
k
w
2
margem =
14/4/2009
12
SVMs Lineares
ω
2
margem =
Nota:
k é uma constante
portanto não afeta a direção de w
w é um vetor de pesos desconhecidos
assim como k é, em princípio, um valor desconhecido
logo, w pode ser redefinido para incluir k em seus pesos
ou seja, ωωωω = w/k
Isso leva à equação tradicional para a margem:
SVMs Lineares
Problema de Otimização:
– Maximizar a margem do limiar de decisão
em função do vetor de parâmetros w
sujeito às seguintes restrições:
– Mas maximizar a margem é equivalente a
minimizar



−≤−
+≥+
=
1se1
1se1
)(
xw
xw
x T
T
y
ωωω T
=
2
24
14/4/2009
13
SVMs Lineares
Problema de Otimização:
– Dados N padrões xi (i = 1, ..., N) e os respectivos
rótulos de classe y(xi) = +1 ou -1, deseja-se:
– Problema quadrático com restrições lineares
Problema é convexo em w = [w0 w1 ... wd]T = [ w0 ωωωωT ]T
Solução global ótima é encontrada por métodos numéricos !
( ) Niy i
T
i
T
,,11)(s.a.
min
L=+≥⋅ xwx
ωω
w
25
SVMs Lineares
Classificação (para w ótimo): classe =
Vetores
Suporte



≤−
≥+
0se1
0se1
xw
xw
T
T
26
14/4/2009
14
SVMs Lineares
E se o problema for não linearmente separável ?
– Problema de otimização é infactível...
(Tan et al., 2006)
exemplos
inconsistentes
27
SVMs Lineares Relaxados
Primeira alternativa presume que classificador
linear é apropriado, apesar da não separabilidade
– e.g., exemplos inconsistentes devido a ruído
Abordagem:
– Flexibilizar as restrições de otimização
utilizando variáveis de relaxamento do problema
essas variáveis são conhecidas como “slack”
– Novas restrições:



+−≤−
−+≥+
=
ii
T
ii
T
iy
ξ
ξ
1se1
1se1
)(
xw
xw
x
28
14/4/2009
15
SVMs Lineares Relaxados
Interpretação geométrica do relaxamento:
– por simplicidade para uma variável slack ξi referente a
uma instância xi particular (uma restrição específica)
xi
1−=xwT
i
T
ξ+−= 1xw
SVMs Lineares Relaxados
Problema desta Abordagem:
– Não há restrições sobre o número de
classificações incorretas...
– Algoritmo tenderá a maximizar a margem do
limiar de decisão indefinidamente
relaxando as restrições o quanto for necessário
Solução:
– Inserir uma penalidade sobre os relaxamentos
– Nova função objetivo: 







+ ∑=
N
j
j
T
1
ξαωω
30
14/4/2009
16
Problema de Otimização:
– Dados N padrões xi (i = 1, ..., N) e os respectivos
rótulos de classe y(xi) = +1 ou -1, deseja-se:
– Problema convexo
Solução global ótima é encontrada por métodos numéricos !
Parâmetro α pode ser escolhido experimentalmente, com
base no desempenho do classificador em dados de validação
( ) Niy ii
T
i
N
j
j
T
N
,,11)(s.a.
min
1
,,, 1
L
K
=−+≥⋅
+ ∑=
ξ
ξα
ξξ
xwx
ωω
w
SVMs Lineares Relaxados
SVMs Não Lineares
E se o problema de classificação for não linear ?
(Tan et al., 2006)
32
14/4/2009
17
SVMs Não Lineares (Tan et al., 2006)
33
Solução é encontrar uma transformação não linear ϕϕϕϕ(x) =
[ϕ1(x) ... ϕm(x)] que mapeie o espaço original dos padrões
para um novo espaço de atributos m-dimensional no qual
os padrões x passam a ser linearmente separáveis
– m pode ser muito maior que a dim. do espaço original
x = [x1 x2]T
m = 2 (mesma de x nesse caso)
ϕϕϕϕ(x) = [ϕ1(x) ϕ2(x)]T
ϕ1(x) = x1
ϕ2(x) = (x1 + x2)4
Problema de Otimização:
– Dados N padrões xi (i = 1, ..., N) e os respectivos
rótulos de classe y(xi) = +1 ou -1, deseja-se:
– Recai em um SVM linear !
Apenas substitui-se xi por ϕϕϕϕ(xi), onde ϕϕϕϕ(xi) = [ 1 ϕϕϕϕ(xi) ]T
Mas isso se a transformação for conhecida...
SVMs Não Lineares
( )( ) Niy i
T
i
T
,,11)(s.a.
min
L=+≥⋅ xwx
ωω
w
ϕ
34
14/4/2009
18
SVMs Não Lineares
Como saber qual a transformação ϕϕϕϕ(x) para tornar
linearmente separável um determinado conjunto
de N padrões x1, ..., xN ???
Problema pode ser contornado utilizando uma
formulação equivalente do problema de otimização
– Formulação via multiplicadores de Lagrange
– Solução depende apenas do produto ϕϕϕϕ(xi)Tϕϕϕϕ(xj) para
cada par de padrões xi e xj, não dos termos individuais
i.e., depende apenas da matriz K(xi, xj) = { ϕϕϕϕ(xi)Tϕϕϕϕ(xj) }i,j=1,...,N
35
SVMs Não Lineares
A matriz K(xi, xj) = { ϕϕϕϕ(xi)Tϕϕϕϕ(xj) } é denominada Kernel
A idéia é de alguma forma determinar essa matriz de
produtos sem precisar conhecer a transformação ϕϕϕϕ(x)
Teorema de Mercer:
– Assegura que, para algumas classes de kernels
K(xi, xj), sempre existe uma transformação ϕϕϕϕ(x) que
permite decompor o kernel como { ϕϕϕϕ(xi)Tϕϕϕϕ(xj) }
teorema não assegura nada sobre a dimensão m do
espaço transformado ϕϕϕϕ(x), que pode até ser infinita
– isso depende da classe de kernels e dos N padrões
– usar kernels pode evitar trabalhar diretamente nesse espaço !
36
14/4/2009
19
SVMs Não Lineares
Dois kernels clássicos que satisfazem o teorema
de Mercer e são muito utilizados em SVMs são:
– Polinomial: K(xi, xj) = (xi
Txj + 1)p
p é um parâmetro definido pelo usuário
– RBF: K(xi, xj) = exp( − ||xi − xj||2 / 2σ2 )
σ é um parâmetro definido pelo usuário
37
SVMs Não Lineares
Solução por multiplicadores de Lagrange:
– São encontrados N multiplicadores de Lagrange λi
Cada multiplicador λi está associado a um padrão xi
Os multiplicadores não nulos referem-se aos vetores suporte
– A classificação de qualquer instância x é dada por:
Classe(x)
38
( ) ( )( )







+=






=
∑
∑
≠
=
0:
1
,1sinal
)()()(sinal
tλt
ttt
N
i
i
T
ii
Ky
y
xxx
xxx
λ
ϕϕλ
14/4/2009
20
SVMs Não Lineares
Nota 1:
– Da função de discriminação anterior, note que para
kernels RBF recai-se exatamente em uma rede
neural RBF, com centros (e número) de neurônios
dados automaticamente pelos vetores suporte !
39
padrão x
kernels
( )∑≠
=
0:
0
tλt
tt yw xλ
SVMs Não Lineares
Nota 2:
– Existem 2 formulações equivalentes para o problema
de otimização por multiplicadores de Lagrange:
Problema Primal: depende explicitamente das variáveis
originais do problema (vetor w), da transformação ϕϕϕϕ(x) e dos
multiplicadores de Lagrange
– Inapropriado pois, além de demandar conhecimento de ϕϕϕϕ(x), opera
na dimensão do espaço transformado, usualmente muito elevada !
Problema Dual: depende apenas dos N multiplicadores
– Opera em um espaço N dimensional, onde N é o no. de padrões
• tipicamente muito menor que a dim. do espaço transformado !
– Solução é função apenas dos Kernels
40
14/4/2009
21
SVMs Não Lineares
Nota 3:
– A maximização de margem realizada no espaço
transformado pelo SVM não-linear não garante a
inexistência de overfitting no classificador
Dados de treinamento sempre serão separáveis para alguma
dimensão suficientemente alta do espaço transformado
Por exemplo, no limite qualquer conjunto de N padrões será
separável com, no máximo, 1 kernel RBF para cada padrão
– N padrões = N vetores suporte
Mas e os demais dados...?
– Controle de overfitting pode ser feito com a mesma
técnica de relaxamento já descrita para SVMs lineares
41
42
Características dos SVMs
Vantagens:
Ao contrário de métodos como ADs, que são susceptíveis a obterem
soluções sub-ótimas, SVMs sempre encontram a melhor solução possível
para o problema de otimização que se propõem resolver
SVMs são conhecidos serem dentre os mais eficientes classificadores
para problemas de elevada dimensionalidade (muitos atributos)
Por maximizarem a margem de separação ao mesmo tempo que permitem
controle da flexibilidade do modelo através da técnica de relaxamento, SVMs
minimizam o risco de overfitting, que é crítico para problemas com grande
dimensionalidade (dados esparsos), em especial na presença de ruído
SVMs podem ser adaptados / estendidos para problemas de regressão
14/4/2009
22
43
Características dos SVMs
Desvantagens:
Ao contrário de métodos como Ads, SVMs são classificadores do tipo
“caixa-preta”, que não permitem interpretação da estratégia de decisão
SVMs são desenvolvidos para atributos numéricos. Tratamento de
atributos categóricos demanda a conversão desses para numéricos
SVMs utilizam métodos numéricos de otimização quadrática que
possuem complexidade mínima O(N2), usualmente O(N3), onde N é o
número de padrões de treinamento
Pode ser crítico a partir de uma determinada quantidade de padrões
Reforça a maior adequabilidade desses classificadores em problemas
envolvendo quantidades relativamente baixas de padrões (dados esparsos)
44
Problemas Multi-Classes
SVMs são classificadores binários
capazes de discriminar entre 2 classes
O que fazer quando se tem um
conjunto maior de classes ???
ou seja, um problema multi-classes ...
14/4/2009
23
45
Problemas Multi-Classes
Padrões de várias classes
{1, 2, ..., n}
Classes mutuamente
excludentes
Temperatura
Pressão
gripe
sarampo
amidalite
46
SVMs Multi-Classes
São necessários múltiplos SVMs binários para
construir um classificador multi-classes
Alternativas mais simples:
Decomposição 1-de-n:
n classificadores binários, cada um treinado para
distinguir uma das classes das demais classes
Decomposição 1-1:
n*(n – 1)/2 classificadores binários, cada um treinado
para distinguir dentre um par de classes
14/4/2009
24
47
SVMs Multi-Classes
Decomposição 1-de-n:
n classificadores binários, cada um treinado para
distinguir uma determinada classe das demais n – 1
decomposição simplifica o problema, pois distinguir entre
apenas 2 classes é um problema mais simples
eventuais empates podem ser resolvidos utilizando
alguma medida de confiabilidade das classificações
por exemplo a distância do padrão ao limiar de decisão de
cada um dos classificadores binários SVM em empate
48
SVMs Multi-Classes
Decomposição 1-1:
n*(n – 1)/2 classificadores binários, cada um treinado para
distinguir entre um par de classes
padrões referentes às n – 2 classes não envolvidas em cada
classificador são ignorados no treinamento
usa mais classificadores que abordagem 1-de-n, mas cada um
deles envolve apenas padrões de 2 classes
Na classificação, classe com maior no. de votos (indicações)
dentre os múltiplos SVMs é escolhida
votação diminui susceptibilidade a erro de um único classificador
14/4/2009
25
49
Referências
Haykin, S., Neural Networks: A Comprehensive
Foundation, 2nd Edition, 1999
E. Alpaydin, Introduction to Machine Learning,
MIT Press, 2004
P.-N. Tan, Steinbach, M., and Kumar, V.,
Introduction to Data Mining, Addison-Wesley,
2006

Mais conteúdo relacionado

Mais procurados

Seminario banco de ossos
Seminario banco de ossosSeminario banco de ossos
Seminario banco de ossosdbarrosr
 
Platts forward-curve-oil
Platts forward-curve-oilPlatts forward-curve-oil
Platts forward-curve-oilGE 94
 
Littlefield Simulation
Littlefield Simulation Littlefield Simulation
Littlefield Simulation Kamal Gelya
 
Shouldice - A great success in service delivery
Shouldice - A great success in service deliveryShouldice - A great success in service delivery
Shouldice - A great success in service delivery10021980
 
CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...
CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...
CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...KRISHNA SOWJANYA
 
Odontologia domiciliar ao idoso frágil: a importância da Odontogeriatria
Odontologia domiciliar ao idoso frágil: a importância da OdontogeriatriaOdontologia domiciliar ao idoso frágil: a importância da Odontogeriatria
Odontologia domiciliar ao idoso frágil: a importância da OdontogeriatriaMaurenMorrisson
 
E commerce as a market entry strategy
E commerce as a market entry strategyE commerce as a market entry strategy
E commerce as a market entry strategyGulchin Huseyn
 
PWC Case Competition
PWC Case CompetitionPWC Case Competition
PWC Case CompetitionHaokun Chen
 

Mais procurados (10)

Seminario banco de ossos
Seminario banco de ossosSeminario banco de ossos
Seminario banco de ossos
 
Platts forward-curve-oil
Platts forward-curve-oilPlatts forward-curve-oil
Platts forward-curve-oil
 
Sistemas Adesivos.pdf
Sistemas Adesivos.pdfSistemas Adesivos.pdf
Sistemas Adesivos.pdf
 
Littlefield Simulation
Littlefield Simulation Littlefield Simulation
Littlefield Simulation
 
RICOH Canada Inc
RICOH Canada IncRICOH Canada Inc
RICOH Canada Inc
 
Shouldice - A great success in service delivery
Shouldice - A great success in service deliveryShouldice - A great success in service delivery
Shouldice - A great success in service delivery
 
CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...
CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...
CUSTOMER PROFITABILIY AND CUSTOMER RELATIONSHIP MANAGAEMTN AT RBC FINANCIAL G...
 
Odontologia domiciliar ao idoso frágil: a importância da Odontogeriatria
Odontologia domiciliar ao idoso frágil: a importância da OdontogeriatriaOdontologia domiciliar ao idoso frágil: a importância da Odontogeriatria
Odontologia domiciliar ao idoso frágil: a importância da Odontogeriatria
 
E commerce as a market entry strategy
E commerce as a market entry strategyE commerce as a market entry strategy
E commerce as a market entry strategy
 
PWC Case Competition
PWC Case CompetitionPWC Case Competition
PWC Case Competition
 

Semelhante a Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)

Support Vector Machines
Support Vector MachinesSupport Vector Machines
Support Vector MachinesLeandro Farias
 
[José Ahirton Lopes] Support Vector Machines
[José Ahirton Lopes] Support Vector Machines[José Ahirton Lopes] Support Vector Machines
[José Ahirton Lopes] Support Vector MachinesAhirton Lopes
 
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.Adrienne Oliveira
 
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive BayesAhirton Lopes
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenaçãoJonas Mendonça
 
Aula 7 a1 cap9 expansaotaylor
Aula 7 a1 cap9 expansaotaylorAula 7 a1 cap9 expansaotaylor
Aula 7 a1 cap9 expansaotaylorRobsoncn
 
Mineração de dados com a presença da deriva conceitual
Mineração de dados com a presença da deriva conceitualMineração de dados com a presença da deriva conceitual
Mineração de dados com a presença da deriva conceitualLuis Miguel Rojas Aguilera
 
Sistemas lineares
Sistemas linearesSistemas lineares
Sistemas linearescon_seguir
 
2337 prova matematica_ed_001-2014
2337 prova matematica_ed_001-20142337 prova matematica_ed_001-2014
2337 prova matematica_ed_001-2014Claudiana Silva
 
Aprendizagem Automática
Aprendizagem AutomáticaAprendizagem Automática
Aprendizagem Automáticabutest
 
Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...
Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...
Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...Luciano Araki
 
Introdução à Amostragem Compressiva
Introdução à Amostragem CompressivaIntrodução à Amostragem Compressiva
Introdução à Amostragem CompressivaEdmar Gurjão
 

Semelhante a Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs) (20)

Support Vector Machines
Support Vector MachinesSupport Vector Machines
Support Vector Machines
 
Apresentacao-Llanos-8.pdf
Apresentacao-Llanos-8.pdfApresentacao-Llanos-8.pdf
Apresentacao-Llanos-8.pdf
 
[José Ahirton Lopes] Support Vector Machines
[José Ahirton Lopes] Support Vector Machines[José Ahirton Lopes] Support Vector Machines
[José Ahirton Lopes] Support Vector Machines
 
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
 
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
 
Introdução à otimização convexa.
Introdução à otimização convexa.Introdução à otimização convexa.
Introdução à otimização convexa.
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenação
 
Aula 7 a1 cap9 expansaotaylor
Aula 7 a1 cap9 expansaotaylorAula 7 a1 cap9 expansaotaylor
Aula 7 a1 cap9 expansaotaylor
 
Mineração de dados com a presença da deriva conceitual
Mineração de dados com a presença da deriva conceitualMineração de dados com a presença da deriva conceitual
Mineração de dados com a presença da deriva conceitual
 
Sistemas lineares
Sistemas linearesSistemas lineares
Sistemas lineares
 
2337 prova matematica_ed_001-2014
2337 prova matematica_ed_001-20142337 prova matematica_ed_001-2014
2337 prova matematica_ed_001-2014
 
Aprendizagem Automática
Aprendizagem AutomáticaAprendizagem Automática
Aprendizagem Automática
 
Otimização convexa e cvx
Otimização convexa e cvxOtimização convexa e cvx
Otimização convexa e cvx
 
Introdução metodos computacionais
Introdução metodos computacionaisIntrodução metodos computacionais
Introdução metodos computacionais
 
Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...
Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...
Aula inaugural - Curso de Dinâmica dos Fluidos Computacional (Pós-graduação: ...
 
Cursocalc1ead
Cursocalc1eadCursocalc1ead
Cursocalc1ead
 
Revisao 2 2019.pdf
Revisao 2 2019.pdfRevisao 2 2019.pdf
Revisao 2 2019.pdf
 
Introdução à Amostragem Compressiva
Introdução à Amostragem CompressivaIntrodução à Amostragem Compressiva
Introdução à Amostragem Compressiva
 
Atividades smte2012
Atividades smte2012Atividades smte2012
Atividades smte2012
 
Inteligência de Enxames: Abelhas
Inteligência de Enxames: AbelhasInteligência de Enxames: Abelhas
Inteligência de Enxames: Abelhas
 

Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)

  • 1. 14/4/2009 1 SCC5871 – Introdução ao Aprendizado de Máquina Aula 6 – Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs) Prof. Ricardo J. G. B. Campello PPG-CCMC / ICMC / USP 2 Créditos Parte do material a seguir consiste de adaptações e extensões dos originais: de (Tan et al., 2006) gentilmente cedidos pelo Prof. André C. P. L. F. de Carvalho 0 1 1 0 0 1 1 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0
  • 2. 14/4/2009 2 3 Tópicos Dimensão VC SVMs Caso Binário Linearmente Separável Caso Binário Não Linearmente Separável Caso Binário Não Linear Caso Multi-Classes 4 Minimização de Risco Estrutural Sabemos que a capacidade de generalização de uma máquina de aprendizado refere-se à taxa de erro desta máquina em dados não vistos no treinamento Da teoria do aprendizado estatístico sabe-se que essa taxa é limitada superiormente por uma soma de dois termos: a taxa de erro nos dados de treinamento um termo que depende da dimensão VC de Vapnik-Chervonenkis
  • 3. 14/4/2009 3 5 Minimização de Risco Estrutural Uma máquina de aprendizado que minimiza o limitante superior do erro de generalização é dita seguir o princípio estatístico de minimização de risco estrutural Representantes importantes desta classe são as SVMs Máquinas de Vetores Suporte (Support Vector Machines) Em problemas linearmente separáveis, anulam o 1º termo do limitante (erro de treinamento) e minimizam o 2º (dim. VC) Maximizam a capacidade de generalização 6 Dimensão VC N pontos podem ser rotulados em classes binárias (+/–) de 2N possíveis maneiras 2N problemas de aprendizado diferentes podem ser definidos Diz-se que o espaço de hipóteses H de uma máquina de aprendizado particiona os N exemplos se: ∃ h ∈ H que separa exemplos positivos e negativos para qualquer um dos 2N problemas No. máximo de pontos que podem ser particionados por H é definido como a dimensão VC de H VC(H) mede a capacidade de representação de H
  • 4. 14/4/2009 4 7 Dimensão VC Seja um classificador linear em um espaço 2D d = 2 dimensões N = 3 pontos ⇒ 2N = 23 = 8 problemas Existem 3 pontos que sempre podem ser separados Todos os 8 problemas linearmente separáveis VC(H) = d + 1 VC(H) = 3 8 Dimensão VC Seja um classificador linear em um espaço 2D N = 4 ⇒ 16 problemas Ao menos um deles sempre será não linearmente separável VC(H) = 3 VC(H) para um classificador linear em um espaço de d dimensões é d + 1
  • 5. 14/4/2009 5 9 Dimensão VC Seja um classificador na forma de retângulo em um espaço bidimensional N = 4 (16 problemas) x1 x2 VC(H) = 4 Para N = 5 pontos alguns problemas sempre serão não separáveis 10 Dimensão VC É definida genericamente para uma classe de modelos de dimensão pré-estabelecida: Depende da representação das hipóteses Normalmente depende do no. de atributos Mas nem sempre Por exemplo, se H for uma tabela de busca dimensão VC é infinita !
  • 6. 14/4/2009 6 11 Dimensão VC Dimensão VC é um conceito teórico Na prática, é difícil de calcular com exatidão para a maioria dos classificadores Quanto mais flexível o classificador, provavelmente maior sua dimensão VC portanto maior o limitante superior para a taxa de erro de generalização maior o risco de overfitting ! SVMs Lineares Problema Linearmente Separável: – Encontrar um hiperplano que discrimine entre as classes (Tan et al., 2006) 12
  • 7. 14/4/2009 7 SVMs Lineares Uma possível solução (limiar de decisão linear) é mostrada acima (Tan et al., 2006) 13 SVMs Lineares Uma outra possível solução é mostrada acima (Tan et al., 2006) 14
  • 8. 14/4/2009 8 SVMs Lineares Outras possíveis soluções... (Tan et al., 2006) 15 SVMs Lineares Qual classificador é melhor? B1 ou B2 ? – Como definir “melhor”... ? (Tan et al., 2006) 16
  • 9. 14/4/2009 9 SVMs Lineares Encontrar o hiperplano que maximiza a margem do limiar de decisão – B1 é muito melhor que B2 !!! (Tan et al., 2006) 17 SVMs Lineares 0=+ bT xw O hiperplano B1 é descrito por um vetor w e por um escalar b – w é da mesma dimensão dos pontos x e perpendicular a B1 (Tan et al., 2006) 18
  • 10. 14/4/2009 10 SVMs Lineares ( )ab xx − Note que a partir das expressões acima obtém-se wT (xb – xa) = 0 – o que prova que w é de fato perpendicular a B1 0=+ ba T xw 0=+ bb T xw 19 SVMs Lineares    −≤+− ≥++ = )(quadradosse1 (círculos)se1 )( kb kb y T T xw xw x 0=+ bT xw kbT −=+xw kbT =+xw rótulos de classes 20
  • 11. 14/4/2009 11 SVMs Lineares    −≤− +≥+ = )(quadrados1se1 (círculos)1se1 )( xw xw x T T y 1−=xwT 1+=xwT       ⋅= w w b k 1       = x x 1 rótulos de classes 21 SVMs Lineares 1−=a T xw 1+=b T xw ( ) ( )ab T ab xx w w xxw −⋅=−= projmargem ( ) ( ) 2 2 =− =− ab T ab T k xx w xxw k w 2 margem =
  • 12. 14/4/2009 12 SVMs Lineares ω 2 margem = Nota: k é uma constante portanto não afeta a direção de w w é um vetor de pesos desconhecidos assim como k é, em princípio, um valor desconhecido logo, w pode ser redefinido para incluir k em seus pesos ou seja, ωωωω = w/k Isso leva à equação tradicional para a margem: SVMs Lineares Problema de Otimização: – Maximizar a margem do limiar de decisão em função do vetor de parâmetros w sujeito às seguintes restrições: – Mas maximizar a margem é equivalente a minimizar    −≤− +≥+ = 1se1 1se1 )( xw xw x T T y ωωω T = 2 24
  • 13. 14/4/2009 13 SVMs Lineares Problema de Otimização: – Dados N padrões xi (i = 1, ..., N) e os respectivos rótulos de classe y(xi) = +1 ou -1, deseja-se: – Problema quadrático com restrições lineares Problema é convexo em w = [w0 w1 ... wd]T = [ w0 ωωωωT ]T Solução global ótima é encontrada por métodos numéricos ! ( ) Niy i T i T ,,11)(s.a. min L=+≥⋅ xwx ωω w 25 SVMs Lineares Classificação (para w ótimo): classe = Vetores Suporte    ≤− ≥+ 0se1 0se1 xw xw T T 26
  • 14. 14/4/2009 14 SVMs Lineares E se o problema for não linearmente separável ? – Problema de otimização é infactível... (Tan et al., 2006) exemplos inconsistentes 27 SVMs Lineares Relaxados Primeira alternativa presume que classificador linear é apropriado, apesar da não separabilidade – e.g., exemplos inconsistentes devido a ruído Abordagem: – Flexibilizar as restrições de otimização utilizando variáveis de relaxamento do problema essas variáveis são conhecidas como “slack” – Novas restrições:    +−≤− −+≥+ = ii T ii T iy ξ ξ 1se1 1se1 )( xw xw x 28
  • 15. 14/4/2009 15 SVMs Lineares Relaxados Interpretação geométrica do relaxamento: – por simplicidade para uma variável slack ξi referente a uma instância xi particular (uma restrição específica) xi 1−=xwT i T ξ+−= 1xw SVMs Lineares Relaxados Problema desta Abordagem: – Não há restrições sobre o número de classificações incorretas... – Algoritmo tenderá a maximizar a margem do limiar de decisão indefinidamente relaxando as restrições o quanto for necessário Solução: – Inserir uma penalidade sobre os relaxamentos – Nova função objetivo:         + ∑= N j j T 1 ξαωω 30
  • 16. 14/4/2009 16 Problema de Otimização: – Dados N padrões xi (i = 1, ..., N) e os respectivos rótulos de classe y(xi) = +1 ou -1, deseja-se: – Problema convexo Solução global ótima é encontrada por métodos numéricos ! Parâmetro α pode ser escolhido experimentalmente, com base no desempenho do classificador em dados de validação ( ) Niy ii T i N j j T N ,,11)(s.a. min 1 ,,, 1 L K =−+≥⋅ + ∑= ξ ξα ξξ xwx ωω w SVMs Lineares Relaxados SVMs Não Lineares E se o problema de classificação for não linear ? (Tan et al., 2006) 32
  • 17. 14/4/2009 17 SVMs Não Lineares (Tan et al., 2006) 33 Solução é encontrar uma transformação não linear ϕϕϕϕ(x) = [ϕ1(x) ... ϕm(x)] que mapeie o espaço original dos padrões para um novo espaço de atributos m-dimensional no qual os padrões x passam a ser linearmente separáveis – m pode ser muito maior que a dim. do espaço original x = [x1 x2]T m = 2 (mesma de x nesse caso) ϕϕϕϕ(x) = [ϕ1(x) ϕ2(x)]T ϕ1(x) = x1 ϕ2(x) = (x1 + x2)4 Problema de Otimização: – Dados N padrões xi (i = 1, ..., N) e os respectivos rótulos de classe y(xi) = +1 ou -1, deseja-se: – Recai em um SVM linear ! Apenas substitui-se xi por ϕϕϕϕ(xi), onde ϕϕϕϕ(xi) = [ 1 ϕϕϕϕ(xi) ]T Mas isso se a transformação for conhecida... SVMs Não Lineares ( )( ) Niy i T i T ,,11)(s.a. min L=+≥⋅ xwx ωω w ϕ 34
  • 18. 14/4/2009 18 SVMs Não Lineares Como saber qual a transformação ϕϕϕϕ(x) para tornar linearmente separável um determinado conjunto de N padrões x1, ..., xN ??? Problema pode ser contornado utilizando uma formulação equivalente do problema de otimização – Formulação via multiplicadores de Lagrange – Solução depende apenas do produto ϕϕϕϕ(xi)Tϕϕϕϕ(xj) para cada par de padrões xi e xj, não dos termos individuais i.e., depende apenas da matriz K(xi, xj) = { ϕϕϕϕ(xi)Tϕϕϕϕ(xj) }i,j=1,...,N 35 SVMs Não Lineares A matriz K(xi, xj) = { ϕϕϕϕ(xi)Tϕϕϕϕ(xj) } é denominada Kernel A idéia é de alguma forma determinar essa matriz de produtos sem precisar conhecer a transformação ϕϕϕϕ(x) Teorema de Mercer: – Assegura que, para algumas classes de kernels K(xi, xj), sempre existe uma transformação ϕϕϕϕ(x) que permite decompor o kernel como { ϕϕϕϕ(xi)Tϕϕϕϕ(xj) } teorema não assegura nada sobre a dimensão m do espaço transformado ϕϕϕϕ(x), que pode até ser infinita – isso depende da classe de kernels e dos N padrões – usar kernels pode evitar trabalhar diretamente nesse espaço ! 36
  • 19. 14/4/2009 19 SVMs Não Lineares Dois kernels clássicos que satisfazem o teorema de Mercer e são muito utilizados em SVMs são: – Polinomial: K(xi, xj) = (xi Txj + 1)p p é um parâmetro definido pelo usuário – RBF: K(xi, xj) = exp( − ||xi − xj||2 / 2σ2 ) σ é um parâmetro definido pelo usuário 37 SVMs Não Lineares Solução por multiplicadores de Lagrange: – São encontrados N multiplicadores de Lagrange λi Cada multiplicador λi está associado a um padrão xi Os multiplicadores não nulos referem-se aos vetores suporte – A classificação de qualquer instância x é dada por: Classe(x) 38 ( ) ( )( )        +=       = ∑ ∑ ≠ = 0: 1 ,1sinal )()()(sinal tλt ttt N i i T ii Ky y xxx xxx λ ϕϕλ
  • 20. 14/4/2009 20 SVMs Não Lineares Nota 1: – Da função de discriminação anterior, note que para kernels RBF recai-se exatamente em uma rede neural RBF, com centros (e número) de neurônios dados automaticamente pelos vetores suporte ! 39 padrão x kernels ( )∑≠ = 0: 0 tλt tt yw xλ SVMs Não Lineares Nota 2: – Existem 2 formulações equivalentes para o problema de otimização por multiplicadores de Lagrange: Problema Primal: depende explicitamente das variáveis originais do problema (vetor w), da transformação ϕϕϕϕ(x) e dos multiplicadores de Lagrange – Inapropriado pois, além de demandar conhecimento de ϕϕϕϕ(x), opera na dimensão do espaço transformado, usualmente muito elevada ! Problema Dual: depende apenas dos N multiplicadores – Opera em um espaço N dimensional, onde N é o no. de padrões • tipicamente muito menor que a dim. do espaço transformado ! – Solução é função apenas dos Kernels 40
  • 21. 14/4/2009 21 SVMs Não Lineares Nota 3: – A maximização de margem realizada no espaço transformado pelo SVM não-linear não garante a inexistência de overfitting no classificador Dados de treinamento sempre serão separáveis para alguma dimensão suficientemente alta do espaço transformado Por exemplo, no limite qualquer conjunto de N padrões será separável com, no máximo, 1 kernel RBF para cada padrão – N padrões = N vetores suporte Mas e os demais dados...? – Controle de overfitting pode ser feito com a mesma técnica de relaxamento já descrita para SVMs lineares 41 42 Características dos SVMs Vantagens: Ao contrário de métodos como ADs, que são susceptíveis a obterem soluções sub-ótimas, SVMs sempre encontram a melhor solução possível para o problema de otimização que se propõem resolver SVMs são conhecidos serem dentre os mais eficientes classificadores para problemas de elevada dimensionalidade (muitos atributos) Por maximizarem a margem de separação ao mesmo tempo que permitem controle da flexibilidade do modelo através da técnica de relaxamento, SVMs minimizam o risco de overfitting, que é crítico para problemas com grande dimensionalidade (dados esparsos), em especial na presença de ruído SVMs podem ser adaptados / estendidos para problemas de regressão
  • 22. 14/4/2009 22 43 Características dos SVMs Desvantagens: Ao contrário de métodos como Ads, SVMs são classificadores do tipo “caixa-preta”, que não permitem interpretação da estratégia de decisão SVMs são desenvolvidos para atributos numéricos. Tratamento de atributos categóricos demanda a conversão desses para numéricos SVMs utilizam métodos numéricos de otimização quadrática que possuem complexidade mínima O(N2), usualmente O(N3), onde N é o número de padrões de treinamento Pode ser crítico a partir de uma determinada quantidade de padrões Reforça a maior adequabilidade desses classificadores em problemas envolvendo quantidades relativamente baixas de padrões (dados esparsos) 44 Problemas Multi-Classes SVMs são classificadores binários capazes de discriminar entre 2 classes O que fazer quando se tem um conjunto maior de classes ??? ou seja, um problema multi-classes ...
  • 23. 14/4/2009 23 45 Problemas Multi-Classes Padrões de várias classes {1, 2, ..., n} Classes mutuamente excludentes Temperatura Pressão gripe sarampo amidalite 46 SVMs Multi-Classes São necessários múltiplos SVMs binários para construir um classificador multi-classes Alternativas mais simples: Decomposição 1-de-n: n classificadores binários, cada um treinado para distinguir uma das classes das demais classes Decomposição 1-1: n*(n – 1)/2 classificadores binários, cada um treinado para distinguir dentre um par de classes
  • 24. 14/4/2009 24 47 SVMs Multi-Classes Decomposição 1-de-n: n classificadores binários, cada um treinado para distinguir uma determinada classe das demais n – 1 decomposição simplifica o problema, pois distinguir entre apenas 2 classes é um problema mais simples eventuais empates podem ser resolvidos utilizando alguma medida de confiabilidade das classificações por exemplo a distância do padrão ao limiar de decisão de cada um dos classificadores binários SVM em empate 48 SVMs Multi-Classes Decomposição 1-1: n*(n – 1)/2 classificadores binários, cada um treinado para distinguir entre um par de classes padrões referentes às n – 2 classes não envolvidas em cada classificador são ignorados no treinamento usa mais classificadores que abordagem 1-de-n, mas cada um deles envolve apenas padrões de 2 classes Na classificação, classe com maior no. de votos (indicações) dentre os múltiplos SVMs é escolhida votação diminui susceptibilidade a erro de um único classificador
  • 25. 14/4/2009 25 49 Referências Haykin, S., Neural Networks: A Comprehensive Foundation, 2nd Edition, 1999 E. Alpaydin, Introduction to Machine Learning, MIT Press, 2004 P.-N. Tan, Steinbach, M., and Kumar, V., Introduction to Data Mining, Addison-Wesley, 2006