ISSN - 0103-2569
Introdu cao `as Maquinas de Vetores Suporte
(Support Vector Machines)
Ana Carolina Lorena
Andre C. P. L. F. de Carvaho
N
o
192
RELAT
ORIOS T
ECNICOS DO ICMC
Sao Carlos
Abril/2003
Introdu cao `as Maquinas de Vetores Suporte
(Support Vector Machines)
F.
Considere por exemplo
3
o conjunto de treinamento da Figura 2.1. Deve-se encontrar
um classicador (ou fun cao) que separe as inst ancias de treinamento das classes crculo
e tri angulo. As fun coes ou hip oteses consideradas s ao ilustradas na gura atraves das
bordas, tambem denominadas fronteiras de decis ao, tra cadas entre as classes. Na imagem
2.1c, tem-se uma hip otese que classica corretamente todos os exemplos do conjunto de
treinamento. A funcao utilizada, porem, tem grandes chances de cometer erros quando
confrontada com exemplos de teste distintos dos de treinamento, pois e muito especca
para os ultimos. Esse caso representa a ocorrencia de overtting, em que considera-se que
o algoritmo memorizou os dados do conjunto de treinamento.
Um outro modelo poderia desconsiderar pontos de classes opostas muito proximos
entre si, pois esses dados sao pouco con aveis (mesmo uma pequena quantidade de rudos
pode levar a uma mudan ca do valor de sua classe). A ilustra cao 2.1a representa esta
alternativa, em que se utiliza uma fronteira de decis ao linear. A nova hip otese considerada,
porem, comete muitos erros, mesmo para casos considerados simples. Pode-se considerar
que houve a ocorrencia de undertting, pois o classicador n ao e capaz de se ajustar ate
mesmo `as inst ancias de treinamento.
Um compromisso entre as duas fun coes apresentadas anteriormente e representado em
1
Vari aveis vetoriais serao denotadas em negrito neste relatorio.
2
As descricoes sendo realizadas dizem respeito ao paradigma de aprendizado supervisionado, em que
os exemplos sao rotulados.
3
Baseado em exemplo fornecido em (Smola and Scholkopf, 2002).
5
Figura 2.1: Exemplo de conjunto de dados de treinamento pertencentes a duas classes classi-
cado segundo tres diferentes hip oteses.
2.1b, em que o preditor tem complexidade intermedi aria e classica corretamente grande
parte dos dados.
A Teoria de Aprendizado Estatstico (TAE) visa estabelecer condi coes matem aticas
que permitam a escolha de um classicador f
i=1
1
2
c(f (x
i
) , y
i
) (2.1)
Supoe-se que os exemplos do domnio em que est a ocorrendo o aprendizado (incluindo
os de treinamento) s ao gerados independentemente e identicamente distribudos (i.i.d.)
de acordo com uma distribui cao de probabilidade P. O desempenho de generalizacao de
6
um classicador f pode ent ao ser denido como a probabilidade de que f cometa erro na
classica cao de um novo exemplo gerado segundo P. A partir desta arma cao, dene-se
o Risco Funcional R(f) = P(f(X) ,= Y ) (Equa cao 2.2), que quantica a capacidade
de generalizacao de f (se R(f) for igual a 0, pode-se armar que f generaliza de forma
perfeita).
R(f) =
_
1
2
c(f (x) , y)dP (x, y) (2.2)
Durante o treinamento, R
emp
(f) e facilmente observ avel. O mesmo n ao pode ser
armado sobre R(f), pois em geral a distribui cao de probabilidade P e desconhecida. A
maioria dos algoritmos de aprendizado busca a minimiza cao de R
emp
(f), esperando que
esta leve a um menor R(f). Portanto, na escolha de uma fun cao f, geralmente se opta
por uma fun cao
f tal que R
emp
_
f
_
= min
f F
R
emp
(f). Porem, tambem e desejavel que o
classicador possua uma boa capacidade de generaliza cao, ou seja, que se tenha f
tal
que R(f
) = min
f F
R(f).
Em geral,
f leva a uma boa aproxima cao de f
) = m + 1 (2.6)
em que m e a dimens ao de x.
Este resultado pode ser analisado atraves da observa cao das Figuras 2.3 e 2.4.
Na Figura 2.3, h a tres pontos bidimensionais, o que gera oito possveis combina coes
binarias dos dados, ou seja, oito dicotomias. Um n umero de oito retas e suciente para
fragmentar estes dados em todas classica coes binarias admissveis. As classicacoes
possveis e retas utilizadas em sua fragmenta cao s ao sumarizadas na Tabela 2.1.
Na Figura 2.4, tem-se os pontos bidimensionais x
1
, x
2
, x
3
e x
4
. Uma das possveis
distribuicoes considerada e aquela em que x
1
e x
4
pertencem `a classe crculo e x
2
e x
3
sao da classe tri angulo. Neste caso n ao e possvel separar os dados com o uso de uma
reta.
E necessaria uma fun cao de maior complexidade para realiza cao desta tarefa.
9
x
1
x
2
x
3
Fun cao
f
1
f
2
f
3
f
4
f
5
f
6
f
7
f
8
Tabela 2.1: Ilustra cao esquematica do exemplo apresentado na Figura 2.3.
Figura 2.4: Distribui cao de quatro pontos no espa co bidimensional. Para este caso, verica-se
que n ao e possvel separar as classes por meio de uma reta.
A dimensao VC da Equa cao 2.5 no caso bidimensional e, portanto, igual a 3, em
conformidade com a Equacao 2.6.
2.2.2 Limites Baseados na Dimensao VC
Os teoremas seguintes proveem limites no risco funcional (R(.)) de uma fun cao basea-
dos na dimens ao VC do espaco de hip oteses do qual o classicador e extrado (Smola
et al., 1999b).
Teorema 2.1 (Limite superior) Seja G um conjunto de fun coes de decis ao mapeando
'
m
a 1, +1 com dimens ao VC h. Para qualquer distribui c ao de probabilidade P em
'
m
x1, +1, com probabilidade de ao menos 1 sobre n exemplos e para qualquer
10
hipotese g em G o risco funcional e limitado por
R(g) R
emp
(g) +
c
n
_
h + ln
_
1
__
(2.7)
em que c e uma constante universal. Se g G minimiza o risco emprico (R
emp
(.)), ent ao
com probabilidade 1
R( g) inf
gG
R(g) +
c
n
_
h + ln
_
1
__
(2.8)
Teorema 2.2 (Limite inferior) Seja G um conjunto de fun coes de decis ao mapeando '
m
a 1, +1 com dimens ao VC nita h 1. Para qualquer algoritmo de aprendizado
ha distribui coes tal que com probabilidade de ao menos 1 sobre n exemplos, o risco
funcional da hip otese g G satisfaz
R(g) inf
g
G
R(g
) +
c
n
_
h + ln
_
1
__
(2.9)
em que c e uma constante universal.
O termo mais ` a direita das Equa coes 2.7, 2.8 e 2.9 e tambem denominado termo de
capacidade do conjunto de fun coes G.
Atraves da observa cao das equa coes apresentadas nos Teoremas 2.1 e 2.2, as seguintes
assercoes podem ser realizadas:
O risco funcional de uma fun cao g e minimizado se o n umero de observa coes n
do conjunto de treinamento for sucientemente grande. Quanto maior a amostra
de dados apresentada ao algoritmo de aprendizado, mais a minimiza cao do risco
emprico se aproxima do risco mnimo que o espa co de funcoes G pode alcan car;
O risco medio de g e minimizado se a dimensao VC de G for sucientemente pequena.
Ou seja, quanto menor a dimens ao VC de uma fun cao g escolhida pela Minimiza cao
do Risco Emprico, maior sua capacidade de generaliza cao.
A contribui cao principal dos teoremas apresentados est a em armar a import ancia de
se controlar o termo de capacidade apresentado nas equa coes 2.7 a 2.9.
Como os limites apresentados dizem respeito a uma classe de fun coes G e nao simples-
mente a escolhas de fun coes g, introduz-se uma estrutura em G e realiza-se a minimiza-
cao dos limites sobre escolhas de estruturas. Este princpio e denominado Minimiza cao
do Risco Estrutural (Smola and Scholkopf, 2002).
11
Figura 2.5: Princpio de Minimizacao do Erro Estrutural (Smola and Scholkopf, 2002).
Considera-se conjuntos de estruturas S
i
, com complexidade crescente (. . . S
i1
S
i
S
i+1
. . .). Como as estruturas s ao maiores ` a medida que i cresce, a capacidade das mesmas
tambem e maior com o crescimento deste ndice.
Para cada S
k
, seja
f
k
o classicador com menor Risco Emprico e f
k
o que possui menor
Risco Funcional. A medida que k cresce, o risco emprico diminui, j a que a complexidade
do conjunto de classicadores (ou seja, das fronteiras de decis ao a serem geradas) e maior.
Porem, o termo de capacidade aumenta com k. Como resultado, os limites em R(
f)
fornecidos nos Teoremas 2.1 e 2.2 inicialmente decrescem com o aumento de k, e depois
crescem. Logo, deve haver um valor otimo k
2
, m
_
+ 1 (2.11)
Pode-se observar atraves deste resultado que a dimens ao VC de um conjunto de fun coes
limiares G = sgn(F) com F linear pode ser menor que o valor m+1 calculado no Exemplo
1, em que n ao se levava em conta a margem (Smola et al., 1999b). Este teorema,
portanto, completa a no cao de dimens ao VC para fronteiras lineares. Segundo o mesmo
13
teorema, a margem do classicador linear e a dimens ao VC do espa co de hip oteses do
qual este e extrado se relacionam de forma indiretamente proporcional, ou seja, quanto
maior a margem de um classicador menor sua dimens ao VC. Porem, o limite apresentado
e restrito, pois atraves dele se requer que todos exemplos, inclusive os de teste, estejam
afastados do hiperplano de uma margem .
O Teorema 2.4 apresenta limites no risco funcional de fun coes do tipo sinal com fron-
teiras de decisao lineares em funcao da margem unicamente (Smola and Scholkopf, 2002).
Teorema 2.4 Denindo a margem de um classicador f como
= min
i
y
i
f (x
i
) (2.12)
, seja o erro marginal de f (R
(f) =
1
n
n
i=1
[y
i
f (x
i
) < [ (2.13)
Seja G o conjunto de fun c oes g (x) = sgn (f (x)) = sgn (w x) com |w| e |x|
R, para algum R, > 0. Seja > 0. Para todas distribui coes P gerando os dados,
com probabilidade de ao menos 1 sobre n exemlos, e para qualquer > 0 e
(0, 1), a probabilidade de um ponto de teste amostrado independentemente segundo P ser
classicado incorretamente e limitado superiormente por
R
(g) +
c
n
_
R
2
2
ln
2
n + ln
_
1
__
(2.14)
em que c e uma constante universal.
Deve-se observar que o limite apresentado no Teorema 2.4 n ao se refere a um unico
classicador, mas a um conjunto de preditores treinados em diferentes conjuntos de dados
gerados com a mesma distribui cao de probabilidade P. Porem, sua an alise fornece resul-
tados interessantes. Pode-se vericar que o risco funcional e limitado pela soma do erro
marginal a um termo de capacidade, que tende a 0 quando o n umero de exemplos n tende a
innito. Este termo pode ser minimizado mantendo-se R e pequenos e maximizando-se
a margem . Fixando R e , o termo de maior import ancia torna-se a margem . Maxi-
mizar leva a um termo de capacidade pequeno. Porem, o erro marginal R
() torna-se
maior, pois e mais difcil obedecer a restricao de todos dados de treinamento estarem
distantes de uma margem maior do hiperplano separador. Um baixo valor de , por sua
vez, leva a um erro marginal menor, porem aumenta o termo de capacidade. Deve-se
buscar, portanto, o hiperplano que tenha margem alta e cometa poucos erros marginais,
minimizando-se assim o erro sobre os dados de teste e de treinamento, respectivamente.
14
O hiperplano que possui esta margem e denominado otimo.
O hiperplano otimo, que procura maximizar a margem de separa cao entre os dados,
tambem possui duas propriedades interessantes: robustez em rela cao aos padr oes e ro-
bustez em relacao aos par ametros (Smola and Scholkopf, 2002).
Na robustez em rela cao aos padr oes, tem-se que dado um exemplo x longe da borda
de decisao formada por f(x) = 0, ocasionais perturba coes em x nao levar ao a uma clas-
sicacao incorreta g(x) = sgn(f(x)).
Para o caso da robustez em rela cao aos par ametros, se a margem se separa cao e grande,
uma pequena perturba cao nos par ametros de f nao afeta a classica cao dos dados.
2.3 Considera coes Finais
Este Captulo descreveu a Teoria de Aprendizado Estatstico, proposta por Vapnik e
Chervonenkis no nal da decada de 60 (Vapnik, 1995). Esta teoria apresenta condi coes
matem aticas para a escolha de uma fun cao (hip otese) que separe os dados de treinamento
de forma a efetivamente maximizar a generaliza cao do classicador obtido. Para isto,
busca-se um compromisso entre a minimizacao do erro de treinamento e a complexidade
da funcao escolhida para separa cao dos dados em classes. Essas condi coes sao alcan cadas
atraves do controle da dimens ao VC do conjunto de fun coes do qual o classicador deve ser
extrado. A dimens ao VC mede a complexidade das hip oteses examinadas pelo algoritmo
na busca por uma solu cao.
Apresentou-se tambem uma introdu cao ` a forma como esses princpios pode ser utiliza-
dos na gera cao de classicadores lineares, atraves da maximiza cao da margem de separa cao
entre os dados de treinamento e a fronteira de decis ao induzida para separa cao destes em
classes.
15
Captulo 3
SVMs com Margens Rgidas
As SVMs sao originalmente utilizadas para classica cao de dados em duas classes, ou
seja, na gera cao de dicotomias. Nas considera coes realizadas nos Captulos 3 a 5, sup oe-
se que se deseja classicar objetos m-dimensionais x = (x
1
, x
2
, . . . , x
m
) nas classes +1 e
-1. Portanto, o conjunto de treinamento consiste de n observa coes x
i
'
m
, com suas
respectivas classicacoes binarias.
Este Captulo apresenta como as SVMs podem ser utilizadas para classica cao de
conjuntos de treinamento linearmente separ aveis, denidos a seguir. Estas SVMs s ao
tambem denominadas SVMs com margens rgidas.
3.1 Conjuntos Linearmente Separaveis
Um conjunto de treinamento S e linearmente separ avel se e possvel separar os padr oes
das classes diferentes contidos no mesmo por pelo menos um hiperplano (Russel and
Norvig, 1995).
Classicadores que separam os dados por meio de um hiperplano s ao denominados
lineares, podendo ser denidos pela Equa cao 3.1.
w x + b = 0 (3.1)
Onde w x e o produto escalar entre os vetores w e x, em que w e o vetor normal
ao hiperplano e b e um termo compensador. O par (w, b) e determinado durante o
treinamento do classicador.
Esta equa cao divide o espa co de entradas em duas regi oes: w x+b > 0 e w x+b < 0,
16
Figura 3.1: Conjunto de dados linearmente separ avel e um possvel hiperplano separador.
levando ` a Equa cao 3.2 (M uller et al., 2001).
_
y
i
= +1 se w x
i
+ b > 0
y
i
= 1 se w x
i
+ b < 0
(3.2)
Uma funcao sinal g(x) = sgn(f(x)) = sgn(w x + b), denida no Captulo anterior,
pode ser ent ao aplicada sobre essa fun cao, levando ` a classicacao +1 se f(x) > 0 e -1 se
f(x) < 0.
Logo, um conjunto de treinamento e linearmente separavel se e possvel determinar pelo
menos um par (w, b) tal que fun cao sinal g(x) = sgn(f(x)) consiga classicar corretamente
todos os exemplos contidos neste grupo. Este fato pode ser observado na Figura 3.1.
3.2 SVMs Lineares
Na aplica cao da TAE, deve-se escolher o classicador com o menor risco emprico
possvel e que tambem satisfa ca a restri cao de pertencer a uma famlia F com dimensao
VC pequena, conforme discutido no Captulo 2.
A primeira condi cao, no caso de conjuntos de treinamento linearmente separ aveis, e
satisfeita para pelo menos um par (w, b) denido pela Equa cao 3.1. Em geral, h a diversas
combina coes de valores de w e b capazes de separar corretamente os dados deste tipo de
conjunto.
Para satisfazer a segunda restri cao, utiliza-se o resultado da TAE que relaciona o risco
funcional de uma fun cao ` a margem () de separa cao entre os dados de treinamento e
o hiperplano separador. Uma deni cao formal do conceito de margem e apresentada a
seguir (Smola et al., 1999b).
17
Seja f uma hip otese utilizada para classica cao de entradas na forma (x
i
, y
i
), em que
y
i
representa a classe do padr ao x
i
. Ent ao a Equa cao 3.3 dene a margem com a qual o
padr ao x
i
e classicado. A margem de um classicador e dada ent ao pela Equa cao 3.4.
f
(x
i
, y
i
) = yf(x
i
) (3.3)
= min(y
i
f (x
i
)) (3.4)
Portanto, entre os classicadores que minimizam o risco emprico, deve-se escolher
aquele que possui a maior margem
e denom-
inado otimo.
3.3 Determina cao do Hiperplano
Otimo
Esta Secao apresenta os passos seguidos por uma SVM linear na determina cao do
hiperplano otimo para conjuntos linearmente separ aveis.
Como assumiu-se que o conjunto de treinamento e linearmente separ avel, pode-se rees-
calar w e b de forma que os pontos mais pr oximos do hiperplano separador satisfa cam
[w x+b = 1[ (M uller et al., 2001). Obtem-se com isto a representa cao can onica do hiper-
plano, adotada para facilitar as considera coes subseq uentes realizadas na determina cao
do hiperplano otimo.
A partir dessa considera cao, a desigualdade 3.5 caracteriza os classicadores lineares
que separam o conjunto de treinamento com uma margem positiva. Segundo este sistema,
nao h a pontos entre w x + b = 0 e w x + b = 1, ou seja, sup oe-se que a margem e
sempre maior que a dist ancia entre os hiperplanos w x+b = 0 e [w x+b = 1[ (Campbell,
2000). Devido a essa suposi cao, as SVMs obtidas s ao usualmente denominadas SVMs com
margens rgidas.
_
_
w x
i
+ b +1 se y
i
= +1
w x
i
+ b 1 se y
i
= 1
i = 1, . . . , n
(3.5)
Sejam x
1
um ponto sobre w x+b = 1 e x
2
um ponto sobre w x+b = +1 (Equa cao
3.6). Sup oe-se tambem que x
1
intercepta a reta perpendicular a x
2
, como indicado na
Figura 3.2 (Hearst et al., 1998). Tem-se assim que:
_
w x
1
+ b = 1
w x
2
+ b = 1
(3.6)
18
Figura 3.2: Ilustra cao da dist ancia d entre os hiperplanos w x
1
+ b = 1 e w x
2
+ b = +1.
A partir do sistema 3.6, obtem-se a Equacao 3.7.
w (x
2
x
1
) = 2 (3.7)
Como w e x
2
x
1
sao ortogonais ao hiperplano separador, esses vetores s ao paralelos
entre si. Pode-se desta forma deduzir a Equa cao 3.8.
[w (x
2
x
1
)[ = |w| |x
2
x
1
| (3.8)
em que || representa a norma de um vetor. Substituindo 3.7 em 3.8, obtem-se a Equacao
3.9.
|x
2
x
1
| =
2
|w|
(3.9)
A norma |x
2
x
1
| mede a distancia entre os hiperplanos wx+b = 1 e wx+b = +1.
Logo, pela Equa cao 3.9 pode-se armar que a dist ancia entre os mesmos e dada por 2/|w|.
Da mesma forma, pode-se deduzir que a distancia entre os hiperplanos w x + b = 0 e
w x + b = 1 (ou w x + b = 1) e dada por 1/|w|. Como foi suposto que a margem e
sempre maior que esta ultima dist ancia, a minimiza cao de |w| leva a uma maximiza cao
da margem.
Portanto, o hiperplano otimo e denido para os valores de w e b que satisfazem as de-
sigualdades 3.5 e para os quais a norma |w| e mnima. Este e um problema de otimiza cao
com restri coes e pode ser reescrito como:
Minimizar: |w|
2
19
Sob as restri coes: y
i
(w x
i
+ b) 1 0, para i = 1, . . . , n
Este e um problema cl assico em otimiza cao denominado programa cao quadr atica (Hearst
et al., 1998). O problema de AM e entao reduzido a uma forma que pode ser analisada sob
o ponto de vista de otimiza cao de fun cao quadr atica, para o qual h a uma ampla e esta-
belecida teoria existente. Na resolu cao do mesmo, introduz-se uma fun cao Lagrangiana
1
,
denida em termos de w e b, apresentada em 3.10 (Campbell, 2000).
L(w, b, ) =
1
2
|w|
2
i=1
i
(y
i
(w x
i
+ b) 1) (3.10)
em que os
i
sao denominados multiplicadores de Lagrange. O problema passa a ser ent ao
a minimiza cao de 3.10 em rela cao a w e b e a maximiza cao dos
i
. Os pontos otimos
desta equa cao s ao obtidos por meio da resolu cao das igualdades apresentadas em 3.11 e
3.12.
L
b
= 0 (3.11)
L
w
= 0 (3.12)
As Equa coes 3.11 e 3.12 levam ao resultado representado por 3.13 e 3.14.
n
i=1
i
y
i
= 0 (3.13)
w =
n
i=1
i
y
i
x
i
(3.14)
Substituindo 3.13 e 3.14 em 3.10, obtem-se o seguinte problema de otimiza cao (de-
nominado dual):
Maximizar:
n
i=1
1
2
n
i=1
n
j=1
j
y
i
y
j
x
i
x
j
Sujeito a:
_
_
_
i
0, i = 1, . . . , n
n
i=1
i
y
i
= 0
Calculado o valor otimo
, w
), b
=
1
2
_
max
{i|y
i
=1}
(w
x
i
) + min
{i|y
i
=+1}
(w
x
i
)
_
=
1
2
_
max
{i|y
i
=1}
_
n
j=1
y
j
j
x
i
x
j
_
+ min
{i|y
i
=+1}
_
n
j=1
y
j
j
x
i
x
j
__
(3.15)
Resumindo os procedimentos matem aticos realizados, o Algoritmo 3.1 apresenta o
problema derivado e utilizado na determina cao do hiperplano otimo.
Algoritmo 3.1 Determina cao do hiperplano otimo para conjuntos linearmente separ aveis
(Vert, 2001).
1: Para cada conjunto de treinamento linearmente separavel S = (x
1
, y
1
) , . . . , (x
n
, y
n
)
2: Seja
= (
1
, . . . ,
n
) a solu cao do seguinte problema de otimiza cao com restricoes:
3: Maximizar:
n
i=1
1
2
n
i=1
n
j=1
y
i
y
j
j
x
i
x
j
4: Sob as restri coes:
_
_
_
n
i=1
y
i
i
= 0
i
0, i = 1, . . . , n
5: O par (w
, b
=
n
i=1
y
i
x
i
7: b
=
1
/
2
_
max
{i|y
i
=1}
(w
x
i
) + min
{i|y
i
=+1}
(w
x
i
)
_
Segundo o Algoritmo 3.1, tenta-se encontrar os valores de
, b
).
E demonstrado que
i
assume valores positivos para exemplos do
treinamento que estao a uma dist ancia do hiperplano otimo exatamente igual ` a margem.
Para os outros padr oes, o valor de
i
e nulo. Essa propriedade caracteriza uma esparsivi-
dade da solu cao (Cristianini and Shawe-Taylor, 2000).
Os exemplos para os quais
i
> 0 s ao denominados vetores suporte (Support Vectors
- SVs). A vari avel w
x
i
SV
i
y
i
x
i
(3.16)
Como conseq uencia, o hiperplano otimo e determinado unicamente pelos SVs, que por
este motivo s ao considerados os exemplos mais informativos do conjunto de treinamento.
Os padr oes para os quais
i
= 0 n ao participam na deni cao do hiperplano otimo.
Logo, se apenas o subconjunto dos dados de treinamento formado pelos SVs fossem em-
pregados na indu cao, o classicador obtido seria o mesmo gerado com a utiliza cao de todo
o conjunto.
21
Fixados os valores dos par ametros w
e b
x
i
SV
i
y
i
x
i
x + b
) =
_
_
_
+1 se
xi SV
i
y
i
x
i
x + b
> 0
1 se
xi SV
i
y
i
x
i
x + b
< 0
(3.17)
A partir de 3.17, verica-se que a classicacao de um novo padr ao x requer apenas a
computa cao do produto interno entre x e cada SV.
3.4 Considera coes Finais
Este Captulo apresentou a forma mais simples de SVMs, tambem denominadas SVMs
com margens rgidas, utilizada na gera cao de classicadores para conjuntos de treinamento
linearmente separ aveis.
Um conjunto linearmente separ avel e composto por exemplos que podem ser separados
por pelo menos um hiperplano. As SVMs lineares buscam o hiperplano otimo segundo
a TAE apresentada no Captulo 2, denido como aquele em que a margem de separa cao
entre as classes presentes nos dados e maximizada.
O classicador apresentado, porem, nao e eciente quando confrontado com bases de
dados mais gerais, podendo se orientar por rudos presentes nos dados
3
. Este fato pode ser
observado atraves das Equacoes 3.3 e 3.4. Um padr ao x
i
com r otulo incorreto na base de
dados dever a ter margem negativa. Sendo sua classe y
i
positiva, por exemplo, a previs ao
f(x
i
) gerada pelo classicador dever a ser negativa, implicando em um valor negativo para
a margem
f
(x
i
, y
i
) (Equa cao 3.3). Como a margem do classicador e dada pelo mnimo
entre os
f
(x
i
, y
i
), esta tambem sera negativa (Equa cao 3.4). Logo, o classicador se
orientaria por eventuais erros contidos nos dados.
O Captulo 4 estende os conceitos aqui apresentados para conjuntos de treinamento
mais gerais, o que e realizado atraves de uma suaviza cao das retri coes impostas nas mar-
gens de separacao entre os dados.
3
Rudos s ao denidos como dados imperfeitos (Baranauskas and Monard, 2000). Comumente, essas
imperfei coes sao decorrentes de classica coes incorretas de alguns padr oes durante a gera cao dos conjuntos
de treinamento para os algoritmos de aprendizado.
22
Captulo 4
SVMs Lineares com Margens Suaves
Em situa coes reais, e difcil encontrar aplica coes cujos conjuntos sejam linearmente
separaveis. Isso se deve a diversos fatores, entre eles a presenca de rudos nos dados ou a
pr opria natureza do problema, que pode ser n ao-linear.
Este Captulo estende os conceitos introduzidos no Captulo 3 para lidar com con-
juntos de treinamento mais gerais, atraves do artifcio de suaviza cao de margens. Os
classicadores gerados ainda ser ao lineares e sera admitida, portanto, a ocorrencia de
alguns erros de classica cao.
4.1 Adapta cao das SVMs lineares com margens rgi-
das
Supos-se anteriormente que era possvel determinar w e b tal que houvesse uma regi ao
entre w x +b = 0 e w x +b = 1 sem exemplos de treinamento. No caso de conjuntos
nao linearmente separ aveis, como o apresentado na Figura 4.1, e mais difcil obedecer a
esta restri cao. Na tentatica de lidar com estes casos, introduz-se o conceito de vari aveis de
relaxamento (Figura 4.2), denidas pelas equa coes 4.1 e 4.2 (Vert, 2001). As vari aveis
de relaxamento suavisam as restri coes impostas na determina cao do hiperplano otimo,
sendo admitida com seu uso a ocorrencia de alguns erros de classica cao.
Para y
i
= +1
i
(w, b) =
_
0 se w x
i
+ b 1
1 w x
i
+ b se w x
i
+ b < 1
(4.1)
Para y
i
= 1
i
(w, b) =
_
0 se w x
i
+ b 1
1 +w x
i
+ b se w x
i
+ b > 1
(4.2)
As vari aveis
i
medem onde se encontram os exemplos (x
i
, y
i
) em rela cao aos hiper-
23
Figura 4.1: Exemplo de conjunto n ao linearmente separavel e dois classicadores lineares H
1
e
H
2
gerados sobre o mesmo.
planos w x + b = 1. Se seu valor for 0, o exemplo est a fora da regi ao entre estes
hiperplanos (e classicado corretamente) e se for positivo, mede a dist ancia do padr ao
em rela cao aos mesmos. Outro ponto a ser observado se d a quando o dado e classicado
erroneamente. Neste caso,
i
assume valor maior que 1.
Figura 4.2: As vari aveis de relaxamento
i
.
A inclusao de vari aveis de relaxamento e tambem denominada tecnica de margens
suaves (Cortes and Vapnik, 1995). Por meio desse artifcio se evita que a SVM ajuste o
hiperplano segundo rudos nos dados.
Como observado para o caso de conjuntos linearmente separaveis, na determinacao
de um bom classicador linear procura-se obter o menor n umero possvel de erros no
treinamento e maximizar a margem de separa cao entre as classes (para haver uma boa
generaliza cao).
Para atender ao primeiro requisito no caso de conjuntos mais gerais, as vari aveis de
24
relaxamento
i
devem ter valor mnimo para todo o conjunto de treinamento. J a a segunda
restricao e resolvida atraves da minimiza cao de |w|, de maneira similar ao realizado
anteriormente.
Os valores a serem minimizados podem ser combinados atraves da Equacao 4.3 (Camp-
bell, 2000).
(w, b) = |w|
2
+ C
n
i=1
i
(w, b) (4.3)
em que C e uma constante que imp oe um peso diferente para o treinamento em rela cao ` a
generaliza cao e deve ser determinada empiricamente.
4.2 Determina cao do Hiperplano
Otimo
A partir das considera coes realizadas anteriormente, a determina cao do hiperplano
otimo se resume a encontrar o par (w
, b
i=1
i
Sob as restri coes:
i
i
(w, b), i = 1, . . . , n
Utilizando as Equa coes 4.1 e 4.2, a restri cao pode ser reescrita como (Smola et al.,
1999b):
_
i
0
y
i
(w x
i
+ b) 1
i
(4.4)
Como no caso de conjuntos linearmente separ aveis, chegou-se a um problema de
otimiza cao quadr atica com restri coes. A sua resolu cao envolve os mesmos passos matem ati-
cos apresentados para o caso dos conjuntos linearmente separ aveis (ou seja, introduz-se
uma fun cao Lagrangiana e otimiza-se um problema dual). Os resultados obtidos s ao
semelhantes aos listados anteriormente, com exce cao das seguintes modica coes:
A restri cao
i
0 e substituda por 0
i
C, para i = 1, . . . , n.
A denicao dos SVs e realizada segundo condi coes um pouco modicadas. Estas
condicoes sao descritas no pr oximo par agrafo.
Grande parte dos problemas de otimiza cao s ao baseados em condi coes denominadas
Karush-Kuhn-Tucker (KKT), necessarias para que o conjunto de solu coes seja otimo
(M uller et al., 2001). Para o problema dual das SVMs com margens suaves, as condi coes
25
Figura 4.3: Relacao dos valores dos multiplicadores de Lagrange
i
com as classicacoes geradas
por uma SVM (Almeida et al., 2000). Padr oes sobre a margem tem seus multiplicadores de
Lagrange
i
com valor no intervalo 0 <
i
< C. Padr oes que se encontram entre as margens
tem
i
= C. Os dois grupos descritos correspondem aos SVs. Para os demais padr oes,
i
= 0
sao apresentadas abaixo, em que y
i
f(x
i
) e a margem de classica cao do exemplo i (Almeida
et al., 2000).
(i)
i
= 0 y
i
f (x
i
) 1 e
i
= 0
(ii) 0 <
i
< C y
i
f (x
i
) = 1 e
i
= 0
(iii)
i
= C y
i
f (x
i
) < 1 e
i
0
Os casos (ii) e (iii), em que os multiplicadores de Lagrange possuem valor positivo,
correspondem aos SVs (a determina cao do hiperplano otimo pelas SVMs se d a unicamente
em funcao desses padr oes). Em (ii), tem-se a representa cao de um SV sobre a margem
e em (iii), um SV entre as margens. Para os demais padr oes, o valor do multiplicador
de Lagrange associado e nulo (i). A Figura 4.3 apresenta uma representa cao dos casos
descritos.
Os principais resultados rumo a determina cao do hiperplano otimo para conjuntos
gerais sao apresentados de forma explcita no Algoritmo 4.1.
Resolvido o problema apresentado no Algoritmo 4.1, a classica cao de um novo padr ao
envolve apenas vericar o sinal da Equa cao 4.5, de forma similar ` a descrita no Captulo
26
Algoritmo 4.1 Determina cao do hiperplano otimo para conjuntos de treinamento gerais (Vert,
2001).
1: Para cada conjunto de treinamento S = (x
1
, y
1
) , . . . , (x
n
, y
n
)
2: Seja
= (
1
, . . . ,
n
) a solu cao do seguinte problema de otimiza cao com restricoes:
3: Maximizar:
n
i=1
1
2
n
i=1
n
j=1
y
i
y
j
j
x
i
x
j
4: Sob as restri coes:
_
_
_
n
i=1
y
i
i
= 0
0
i
C, i = 1, . . . , n
5: O par (w
, b
=
n
i=1
i
y
i
x
i
7: b
=
1
/
2
_
max
{i|y
i
=1}
(w
x
i
) + min
{i|y
i
=+1}
(w
x
i
)
_
3.
g(x) = sgn(f (x)) = sgn(
x
i
SV
i
y
i
x
i
x + b
) =
_
_
_
+1 se
xi SV
i
y
i
x
i
x + b
> 0
1 se
xi SV
i
y
i
x
i
x + b
< 0
(4.5)
4.3 Considera coes Finais
Neste Captulo as SVMs lineares com margens rgidas apresentadas no Captulo 3
foram adaptadas para lidar com conjuntos de treinamento n ao linearmente separaveis.
Para isso, e admitida a ocorrencia de alguns erros de classica cao para o conjunto de
treinamento, por meio da introdu cao de vari aveis de relaxamento. Essas modica coes
fazem parte de um processo usualmente denominado suaviza cao de margens (Cortes
and Vapnik, 1995).
Apesar deste novo algoritmo se mostrar melhor que o anterior em situa coes praticas,
seu uso ainda e limitado. Existem aplica coes em que uma fronteira de decisao n ao linear e
mais adequada para separa cao dos dados. O Captulo 5 apresenta a forma como as SVMs
lineares podem ser estendidas para lidar com estes casos.
27
Captulo 5
SVMs Nao Lineares
Os classicadores lineares descritos nos captulos anteriores s ao bastante simples. En-
tretanto, sua utiliza cao e limitada. H a muitos casos em que n ao e possvel dividir satis-
fatoriamente os dados de treinamento por um hiperplano. Um exemplo e apresentado
na Figura 5.1a, em que o uso de uma fronteira curva na separa cao das classes seria mais
adequada. Este Captulo descreve como as SVMs lineares podem ser generalizadas para
lidar com tais situa coes.
Na realiza cao desta tarefa, s ao denidas fun coes reais
1
, . . . ,
M
no domnio do espa co
de entrada. Por meio da utiliza cao destas fun coes, mapea-se o conjunto de treinamento
S (Equa cao 5.1) para um novo espa co, denominado espaco de caractersticas, da maneira
apresentada em 5.2.
S = (x
1
, y
1
) , (x
2
, y
2
) , . . . , (x
n
, y
n
)
em que x
i
= (x
i1
, x
i2
, . . . , x
im
) e y
i
1, +1
(5.1)
Figura 5.1: Transforma cao do conjunto de dados no espa co de entrada (a) para o espa co de
caractersticas (b).
28
Figura 5.2: Exemplo de conjunto n ao linearmente separavel.
x
i
(i = 1, . . . , n) (x
i
) = (
1
(x
i
) ,
1
(x
i
) , . . . ,
M
(x
i
))
(S) = ((x
1
) , y
1
) , ((x
2
) , y
2
) , . . . , ((x
n
) , y
n
)
(5.2)
Estas funcoes
i
podem ser nao-lineares. Em particular, M pode ser muito maior que
m, a dimens ao do espa co de x. Uma caracterstica singular do espa co de caractersticas e
que a escolha de uma fun cao apropriada torna o conjunto de treinamento linearmente
separavel. As SVMs lineares anteriormente apresentadas podem ent ao ser utilizadas sobre
o conjunto de treinamento mapeado nesse espa co (Hearst et al., 1998). Este fato e ilustrado
na Figura 5.1.
Considere, por exemplo, os dados representados na Figura 5.2 (Vert, 2001). Neste caso
um limite circular e mais adequado para separa cao das classes. A Equa cao 5.3 dene essa
fronteira.
x
2
1
+ x
2
2
< r
2
(5.3)
Utilizando a transforma cao denida pela Equa cao 5.4 sobre a Equa cao 5.3, tem-se
como resultado uma classica cao linear em '
3
. Esta e descrita por 5.5, em que w =
(1, 0, 1) e b = r
2
.
(x) =
_
x
2
1
, x
1
x
2
, x
2
2
_
(5.4)
w (x) + b = 0 (5.5)
Portanto, mesmo que a fronteira entre as classes seja polinomial no espa co de en-
tradas, este problema pode ser mapeado para outro de classica cao linear no espa co de
caractersticas.
Logo, os conceitos apresentados nos Captulos anteriores podem ser estendidos para o
caso n ao linear, atraves da denicao de uma fun cao de mapeamento adequada.
29
5.1 Trabalhando com SVMs lineares no espa co de
caractersticas
Como os dados no espa co de caractersticas podem ser ecientemente separados por
meio de fronteiras lineares, e possvel utilizar o SVM linear apresentado no Algoritmo 4.1
1
para separar os padr oes neste novo espa co. As adapta coes realizadas s ao apresentadas
explicitamente pelo Algoritmo 5.1.
Algoritmo 5.1 Determina cao do hiperplano otimo no espaco de caractersticas (Vert, 2001).
1: Para qualquer conjunto de treinamento (S) = ((x
1
), y
1
), . . . , ((x
n
), y
n
)
2: Seja
= (
1
, . . . ,
n
) a solu cao do seguinte problema de otimiza cao com restricoes:
3: Maximizar:
n
i=1
1
2
n
i=1
n
j=1
y
i
y
j
j
(x
i
) (x
j
)
4: Sob as restri coes:
_
_
_
n
i=1
y
i
i
= 0
0
i
C, i = 1, . . . , n
5: O par (w
, b
i=1
i
y
i
(x
i
)
7: b
1
/
2
_
min
{i|y
i
=+1}
(w
(x
i
)) + max
{i|y
i
=1}
(w
(x
i
))
_
O problema de classicacao passa a ser a avalia cao da fun cao 5.6.
g(x) = sgn(f (x)) = sgn(
xi SV
i
y
i
(x
i
) (x) + b
) =
_
_
+1 se
xi SV
i
y
i
(x
i
) (x) + b
> 0
1 se
xi SV
i
y
i
(x
i
) (x) + b
< 0
(5.6)
Alem disso, as considera coes de Karish-Kuhn-Tucker apresentadas para o SVM linear
no Captulo 4 se mantem para o caso n ao linear.
A partir das equa coes listadas no Algoritmo 5.1, percebe-se que a unica informa cao
necessaria sobre o mapeamento e uma denicao de como o produto interno (x
i
)(x
j
)
pode ser realizado, para quaisquer x
i
e x
j
pertencentes ao espa co de entradas. Isto e obtido
com a introdu cao do conceito de Kernels.
5.2 Fun coes Kernel
Um Kernel K e uma funcao que recebe dois pontos x
i
e x
j
do espa co de entradas e
computa o produto escalar (x
i
) (x
j
) no espa co de caractersticas, como descrito em
1
Utiliza-se o Algoritmo 4.1 (e n ao o 3.1) por este ser capaz de lidar com rudos nos dados.
30
5.7 (Haykin, 1999).
K(x
i
, x
j
) = (x
i
) (x
j
) (5.7)
Como exemplo tem-se que o Kernel do mapeamento representado pela Equacao 5.4 e
dado por K(x
1
, x
2
) = (x
1
x
2
)
2
(Hearst et al., 1998). Pode-se observar que esta fun cao e
mais simples que a funcao . Isso ocorre de maneira geral, pois em grande parte dos casos,
assume formas bastante complexas. Por este motivo, e comum denir a funcao Kernel
sem conhecer-se explicitamente o mapeamento . A utilidade dos Kernels esta, portanto,
na simplicidade de c alculo e na capacidade de representar espa cos muito abstratos.
As funcoes devem pertencer a um domnio em que seja possvel o c alculo de pro-
dutos internos. H a um conjunto de fun coes com esta propriedade, que pertencem ao
espaco de Hilbert (Wahba, 2000). Este conhecimento e utilizado na deni cao dos Ker-
nels. Geralmente faz-se uso das condicoes estabelecidas pelo Teorema de Mercer nesta
denicao. Segundo este Teorema, os Kernels devem ser matrizes positivamente denidas,
isto e, a matriz K, em que K
ij
= K(x
i
, x
j
) para todo i, j = 1, . . . , n, deve ter auto-valores
maiores que 0 (Mercer, 1909). Essas fun coes sao usualmente denominadas Kernels de
Mercer (Smola et al., 1999b).
Alguns dos Kernels mais utilizados sao os polinomiais, os Gaussianos ou RBF (Radial-
Basis Function) e os Sigmoidais, apresentados na Tabela 5.1.
Tipo de Kernel Fun cao K(x
i
, x
j
) correspondente Comentarios
Polinomial
_
x
i
T
x
j
+ 1
_
p A potencia p deve ser
especicada pelo usuario
Gaussiano exp
_
1
2
2
|x
i
x
j
|
2
_
A amplitude
2
e
especicada pelo usuario
Sigmoidal tanh (
0
x
i
x
j
+
1
)
Utilizado somente para alguns
valores de
0
e
1
Tabela 5.1: Sum ario dos principais Kernels utilizados nas SVMs (Haykin, 1999).
Alguns pontos podem ser destacados em rela cao aos Kernels apresentados na Tabela
5.1 (Vert, 2001; Haykin, 1999; Burges, 1998):
No caso de Kernels polinomiais, os mapeamentos tambem sao fun coes polinomiais
com complexidade crescente a medida que o expoente p aumenta.
O Kernel Gaussiano corresponde a um espa co de caractersticas de dimensao innita.
Pode-se armar que quase todas formas de mapeamento podem ser implementadas
por esta fun cao em particular. Alem disso, por meio da utiliza cao desse tipo de
31
funcao, dene-se Redes Neurais do tipo RBF (Radial-Basis Function), em que o
n umero de funcoes base radiais e seus centros s ao determinados automaticamente
pelo n umero de SVs e pelos valores de multiplicadores de Lagrange (
i
) associados
aos mesmos, respectivamente
2
.
A utiliza cao do Kernel Sigmoidal, por sua vez, permite explicitar uma Rede Neural
Articial do tipo Perceptron multicamadas. Neste caso, o n umero de neuronios
da camada intermedi aria e os vetores de bias associados aos mesmos tambem sao
determinados pelo n umero de SVs e pelos valores dos (
i
) associados aos mesmos,
respectivamente
3
.
A obten cao de um classicador por meio do uso de SVMs envolve a escolha de uma
funcao Kernel, alem de par ametros desta funcao e do algoritmo para determina cao do
hiperplano otimo (como o valor da constante C, por exemplo). A escolha do Kernel e dos
par ametros considerados tem efeito no desempenho do classicador obtido (M uller et al.,
2001), pois eles denem a fronteira de decis ao induzida. Existem algumas tecnicas para
selecao do modelo, que provem meios para determina cao da fun cao Kernel e par ametros
do algoritmo. Entre elas, tem-se a regra span de Chapelle and Vapnik (2000), a regra de
Jaakola and Haussler (1999) e a regra proposta em Chapelle et al. (2002).
5.3 Considera coes Finais
Como visto neste Captulo, as SVMs lineares podem ser generalizadas de forma a
realizar classica coes n ao lineares. Para isto, utiliza-se o artifcio de levar os dados de
treinamento para um espa co de maior dimens ao. Os dados neste espa co se tornam linear-
mente separaveis. Pode-se entao aplicar as SVMs lineares sobre os dados mapeados neste
espaco, determinando um hiperplano de margem maximizada.
A SVM nao linear incorpora este conceito por meio da utiliza cao de fun coes Kernel, que
permitem o acesso a espa cos complexos (em alguns casos innitos) de forma simplicada.
Ate o momento, foram apresentadas aplica coes de SVMs para problemas de classi-
ca cao bin aria. O pr oximo Captulo apresenta alguns meios propostos para possibilitar o
uso de SVMs em problemas com mais de duas classes.
2
O n umero de fun coes base radiais e seus centros sao par ametros de Redes Neurais do tipo RBF
determinados normalmente de forma emprica. Uma conceitua cao mais detalhada sobre este tipo de rede
pode ser consultada em (Haykin, 1999; Braga et al., 2000).
3
Em uma Rede Neural do tipo Perceptron Multicamadas o n umero de neur onios na camada inter-
mediaria e os valores de bias sao normalmente obtidos de forma emprica. A conceitua cao deste tipo de
rede pode ser consultada em (Haykin, 1999; Braga et al., 2000).
32
Captulo 6
SVMs para Varias Classes
Como p ode ser observado nos Captulos anteriores, as SVMs s ao originalmente uti-
lizadas para classica cao dos dados em duas classes distintas. Estas podem ser denom-
inadas positivas e negativas, respectivamente. Contudo, muitas aplica coes envolvem o
agrupamento em mais de duas classes. Este fato n ao inviabiliza o uso das SVMs. Diver-
sas tecnicas sao propostas para estende-las a problemas desse tipo (multiclasses).
Em um problema multiclasses, o conjunto de treinamento e composto por pares (x
i
, y
i
),
tal que y
i
1, . . . , k. Este Captulo aborda solu coes para problemas em que k > 2.
De fato, qualquer metodo para gerar classicadores multiclasses a partir de preditores
binarios pode utilizar as SVMs como base (Mayoraz and Alpaydm, 1998). As Se coes
6.1 e 6.2 apresentam duas abordagens usuais para realiza cao dessa tarefa, denominadas,
respectivamente, decomposicao um-contra-todos e todos-contra-todos.
6.1 Decomposi cao um-contra-todos
Para a solu cao de um problema multiclasses a partir de SVMs, uma abordagem usual
consiste na gera cao de k SVMs, onde k e o n umero de classes (Weston and Watkins, 1998).
Na cria cao de cada uma dessas m aquinas, uma classe e xada como positiva e as restantes
como negativas. Esta metodologia e denominada decomposicao um-contra-todos (1-c-t)
e e independente do algoritmo de aprendizado utilizado no treinamento dos classicadores
(Mayoraz and Alpaydm, 1998). Na predi cao da classe de um padr ao x, basta escolher a
sada com valor m aximo entre as k SVMs, conforme apresentado na Equa cao 6.1.
f (x) = arg max
1ik
(w
i
(x) + b
i
) (6.1)
O metodo 1-c-t tem a desvantagem de n ao ser possvel prever limites no erro de
generaliza cao atraves de seu uso. Alem disso, seu tempo de treinamento usualmente e
33
longo.
6.2 Decomposi cao todos-contra-todos
Outra abordagem para solu cao de problemas multiclasses a partir de classicadores
binarios envolve a constru cao de k (k 1)/2 SVMs, separando cada classe de outra,
metodo denominado todos-contra-todos (t-c-t). Para unir estes classicadores, Fried-
man (1996) prop os o uso de um esquema de vota cao por maioria, em que cada um dos
classicadores fornece uma classe como resultado. A solu cao nal e dada pela classe que
recebeu mais indica coes. Esta metodologia, porem, tambem nao prove limites no erro de
generaliza cao. Alem disso, o tamanho dos classicadores gerados e em geral grande e a
avalia cao de seu resultado pode ser lenta.
Na resolu cao desses problemas, Platt et al. (2000) sugerem a utiliza cao de um grafo
direcionado acclico
1
(DAG), de forma que o problema de agrupamento em v arias classes
e decomposto em diversas classica coes binarias em cada n o do grafo. Este processo e
ilustrado na Figura 6.1.
A Figura 6.1 apresenta um exemplo com quatro classes. O processamento feito pelo
DAG e equivalente a opera cao de uma lista. Inicialmente, a lista e composta por todas
as classes. Em cada no e gerada uma SVM que separa os elementos da primeira e ultima
classe da lista. Escolhida uma das classes, a outra e eliminada da lista e o processamento
continua da mesma forma, ate que um no folha seja atingido. Portanto, a classica cao de
um exemplo de um problema de k classes requer a avalia cao de k 1 n os, ou seja, k 1
SVMs. Com isso o tempo de gera cao de resultados e reduzido.
Platt et al. (2000) demonstraram que essa tecnica tem erro de generaliza cao limita-
do pela margem m axima obtida em cada n o. Como as SVMs utilizam o princpio de
maximiza cao de margens, seu uso como indutor base e bastante adequado.
6.3 Considera coes Finais
Embora as SVMs sejam originalmente produzidas para gera cao de classicadores
binarios, alguns artifcios permitem que estas sejam aplicadas a problemas multiclasses,
em que o n umero de classes e maior que dois.
Duas abordagens usuais para tal s ao a decomposi cao um-contra-todos e todos-
contra-todos. Sendo k o n umero de classes, no primeiro caso produz-se k classicadores,
cada um separando uma classe i das k 1 restantes. A classe de um novo padr ao e
1
Um grafo direcionado acclico e um grafo sem ciclos, cujas arestas possuem uma orientacao.
34
Figura 6.1: (a) Exemplo de grafo direcionado utilizado para classicar quatro classes a partir
de SVMs bin arias, as quais est ao representados pelos n os da arvore (Platt et al., 2000). (b)
Diagrama do espa co de caractersticas do problema 1/4.
dada pelo ndice da SVM que produz a maior sada. No caso da decomposicao todos-
contra-todos, s ao produzidos classicadores para separa cao de cada classe i de outra j,
em que i, j = 1, . . . , k e i ,= j. Neste caso, a sada de um padr ao e dada por um voto de
maioria entre as SVMs. Os classicadores gerados por decomposi cao todos-contra-todos
tambem podem ser unidos por meio de um grafo direcionado acclico (DAGSVM) (Platt
et al., 2000). Cada uma dessas alternativas tem vantagens e desvantagens, as quais foram
brevemente discutidas neste Captulo. Uma compara cao mais detalhada dos metodos
decomposicionais descritos neste Captulo e apresentada em (Hsu and Lin, 2002).
35
Captulo 7
Treinamento e Implementa coes de
SVMs
O aspecto central na implementa cao das SVMs e a necessidade de resolver um pro-
blema de programa cao quadr atica. Existem v arios pacotes matem aticos que realizam
esta tarefa. Exemplos incluem o MINOS (Murtagh and Saunders, 1993) e o LOQOS
(Vanderbei, 1994). Porem, esses pacotes nao s ao adequados a problemas com grandes
quantidades de dados, pois requerem o armazenamento em memoria da matriz Kernel, a
qual e quadr atica na quantidade de dados.
Ha diversos trabalhos que visam simplicar este processo, os quais prop oem novos
algoritmos para o treinamento de SVMs. Grande parte das tecnicas propostas derivam
solucoes explorando a esparsividade do problema (isto e, o fato de que grande parte dos
multiplicadores de Lagrange
i
possuem valor nulo) e a convexidade da fun cao a ser
otimizada (Cristianini and Shawe-Taylor, 2000). A Se cao 7.1 descreve brevemente alguns
desses trabalhos.
Algumas implementa coes de SVMs disponveis para uso cientco sao listadas na Se cao
7.2.
7.1 Abordagens para o treinamento das SVMS
A alternativa mais direta para solucionar o problema de otimiza cao das SVMs e utilizar
uma estrategia gradiente ascendente (Cristianini and Shawe-Taylor, 2000).
Frie et al. (1998) apresentaram um metodo para o treinamento de SVMs que explora
o uso deste tipo de estrategia, tecnica denominada Kernel Adatron. Uma variante desse
algoritmo, denominada Kernel Adatron com bias e margens suaves (KAbs), lida melhor
com o problema de rudos nos dados por meio da utiliza cao do conceito de bias e margens
36
suaves (Campbell and Cristianini, 1998). O algoritmo KAbs combina a rapidez e sim-
plicidade de uma Rede Neural com o poder preditivo das SVMs. Outra vantagem desse
metodo est a na facilidade de sua implementa cao e na possibilidade de um ajuste iterativo
de alguns par ametros dos Kernels, tal como a vari avel no caso de fun coes Gausianas.
V arias das outras alternativas para simplicar o processo de treinamento das SVMs
compreendem metodos de decomposicao do problema de otimiza cao em subproblemas
menores. Um exemplo e a tecnica de Chunking (Vapnik, 1982). Este algoritmo explora a
esparsividade do vetor de solu coes
_
1 para pontos com
i
= 0
= 1 parapontos com 0 <
i
< C
1 parapontos com
i
= C
(7.1)
Osuna et al. (1997) propuseram outra tecnica decomposicional que limita o tamanho
dos subproblemas de otimiza cao a serem solucionados a cada passo do algoritmo. Para
isto, a tecnica sugerida explora o fato de que uma seq uencia de subproblemas de otimiza-
cao quadr atica que contenham no mnimo um exemplo violando as condi coes de KKT
convergem para a solu cao otima. Esta abordagem e semelhante a do Chunking, porem
o tamanho dos subproblemas atacados e mantido xo. A cada passo do algoritmo, o
mesmo n umero de exemplos e adicionado e removido do problema. A heurstica comu-
mente utilizada neste processo consiste em adicionar os padr oes que violam as condi coes
de KKT e remover os exemplos para os quais
i
tem valor nulo ou igual a C. Com isto,
permite-se lidar com problemas de maior tamanho. Na pr atica, porem, este algoritmo
se mostra lento. Alem disso, na resolu cao de cada subproblema de otimiza cao, ainda e
necessaria a utiliza cao de um programa de otimiza cao. Existem trabalhos que utilizam
heursticas mais sosticadas para escolha dos padr oes a serem removidos e adicionados,
1
As condi coes de KKT da Equa cao 7.1 sao as mesmas utlizadas na determina cao dos SVs para SVMs
com margens suaves, apresentadas no Captulo 4.
37
alem de utilizarem metodos de caching (M uller et al., 2001). Com isto, tornam-se mais
r apidos e adequados a problemas de maior escala. Um exemplo e a ferramenta SVMlight
(Joachims, 1998), descrita na pr oxima Se cao.
O caso mais extremo de decomposi cao do problema e realizado pelo algoritmo Sequen-
tial Minimal Optimization (SMO), de Platt (1999). A cada itera cao do SMO, somente
dois padr oes sao examinados, ou seja, soluciona-se um problema de otimiza cao quadr atica
de tamanho 2 a cada ciclo do algoritmo. Este e o menor tamanho de problema de otimiza-
cao possvel, mantendo a restri cao
n
i=1
i
y
i
= 0. A cada ciclo, escolhidos os valores
1
e
2
a serem otimizados (lembrando que cada
i
corresponde diretamente a um padr ao x
i
),
os
i
remanescentes sao mantidos constantes, e
1
e
2
sao atualizados de forma que a
obedecer a igualdade representada pela Equacao 7.2 (Cristianini and Shawe-Taylor, 2000).
1
y
1
+
2
y
2
= const. =
antigo
1
y
1
+
antigo
2
y
2
(7.2)
Deve-se lembrar que a restri cao 0
1
,
2
C deve ser obedecida. Os novos valores
das vari aveis
1
e
2
podem ser determinados analiticamente, sem a necessidade do uso
de programas de otimiza cao. Na escolha dos exemplos a serem analisados a cada ciclo,
heursticas sao utilizadas. O padr ao correspondente a
1
e escolhido entre aqueles que
violam as condi coes de KKT. O segundo padr ao (
2
) e escolhido de forma que a atu-
aliza cao no par (
1
,
2
) acarrete um maior crescimento no valor da fun cao objetivo. A
implementa cao desta tecnica e simples
2
. Alem disso, este algoritmo geralmente e r apido.
A seguir uma lista, acompanhada de uma breve descri cao, de algumas implementa coes
de SVMs disponveis e apresentada.
7.2 Implementa coes Disponveis
Ha uma grande variedade de implementa coes de SVMs disponveis para uso n ao-
comercial. V arios algoritmos podem ser acessados via (Smola and Scholkopf, 2000). Al-
gumas destas ferramentas sao brevemente descritas a seguir:
SMO: uma implementa cao em C++ do algoritmo SMO para classica cao foi desen-
volvida por Ge (2001). Essa ferramenta deve ser utilizada em plataforma Unix/Linux.
Como Kernel, estao disponveis as funcoes Linear e Gaussiana. Esta implementa cao
lida com problemas bin arios e multiclasses.
SVMlight: implementa cao de Joachims (1998). Pode ser utilizada em proble-
mas de classicacao, bin arios ou multiclasses, e de regress ao. Permite a utiliza cao
2
Um pseudocodigo do SMO pode ser consultado em (Cristianini and Shawe-Taylor, 2000).
38
de v arios tipos de fun cao Kernel: Linear, Polinomial, Gaussiano, Sigmoidal e de
funcoes denidas pelo usu ario. Compilada para plataformas Windows NT, Unix,
Linux e Powermac. Usa ferramenta de programa cao quadr atica para resolu cao dos
problemas de otimiza cao, distribuda juntamente com o software.
mySVM: ferramenta baseada no SVMlight (Sewell, 2001). Utilizada em reconhe-
cimento de padroes (classica cao), sobre problemas bin arios ou multiclasses, e re-
gress ao. Pode ser utilizada em plataformas Windows, Unix e Linux. Possibilita
a utiliza cao de diversas funcoes Kernel, entre as quais: Linear, Polinomial, Gaus-
siana, RBF Anova, Sigmoidal e denidas pelo usu ario, alem permitir o uso de somas
e produtos de Kernels.
LIBSVM: biblioteca de fun coes para SVMs, com interface gr aca, projetada por
Chang and Lin (2003). Possui fontes em C++ e Java. Tambem possui interface
para Matlab. As implementa coes sao baseadas nas ferramentas SMO e SVMlight.
Permite selecao de modelo por cross-validation e atribuir pesos aos dados para lidar
com distribui coes de dados desbalanceadas. Pode ser utilizado em problemas de
classicao multiclasses e regress ao.
SVM toolbox para Matlab: toolbox para Matlab (Schwaighofer, 2002) baseado no
SVMlight. Pode ser utilizado em problemas de classica cao bin aria ou multiclasses.
Pode ser facilmente modicado e requer a utiliza cao de um pacote de otimiza cao,
que pode ser o fornecido pelo Matlab.
SVMTorch: adapta cao do SVMlight, especial para lidar com problemas de larga
escala (Collobert and Bengio, 2001). Pode ser utilizado em problemas de classi-
ca cao (bin aria e multiclasses) e regress ao. Pode ser utilizado em plataformas Unix,
Linux e Windows. Incorpora Kernels Linear, Polinomial, Gaussiano, Sigmoidal e
denidos pelo usu ario.
Existem alguns estudos para compara cao do desempenho de alguns dos algoritmos
citados (Carvalho, 2002; Carrieras and Perez, 2001; Chang et al., 2000). A adequabilidade
de cada um, porem, depende do problema a ser investigado.
7.3 Considera coes Finais
Este Captulo listou alguns trabalhos que visam facilitar o treinamento das SVMs. Em
geral esse processo e complexo, j a que envolve a resolu cao de um problema de otimiza cao
quadr atica. Embora existam diversos pacotes de otimiza cao que solucionam este tipo de
39
problema, estes s ao inadequados para as aplica coes em AM, que em geral caracterizam-se
pela necessidade de lidar com um grande volume de dados.
Diversas tecnicas foram ent ao propostas para adaptar o problema de otimiza cao das
SVMs a aplicacoes de larga escala. Parte destes utilizam estrategias decomposicionais,
em que subproblemas menores s ao otimizados a cada passo do algoritmo (ex.: (Vapnik,
1982; Osuna et al., 1997; Joachims, 1998)).
Algumas implementa coes de SVMs disponveis tambem foram apresentadas.
A seguir, o Captulo 8 apresenta o uso das SVMs em algumas aplica coes praticas.
40
Captulo 8
Aplica c oes
As SVMs vem sendo aplicadas com sucesso a diversos problemas computacionais
(Hearst et al., 1998; Smola et al., 1999b; M uller et al., 2001).
Existem diversos benchmarks para avalia cao dos resultados obtidos por tecnicas de
AM. Em (M uller et al., 2001) um estudo comparativo entre diversas tecnicas de AM,
entre elas as SVMs, Redes Neurais Articiais do tipo RBF e o AdaBoost
1
(AB), e apre-
sentado. A Tabela 8.1 ilustra a taxa de erro observada no teste de classicadores gerados
pelas tecnicas citadas, sobre conjuntos de dados do reposit orio IDA (IDA, 2002). Na
gera cao dos classicadores, os dados foram divididos segundo o metodo 10-fold cross vali-
dation. Segundo este metodo, o conjunto de dados e dividido em 10 parti coes de tamanho
aproximadamente igual. Nove destas parti coes sao utilizadas no treinamento do classi-
cador, enquanto a restante e utilizada em seu teste. Tem-se entao um total de dez pares
de conjuntos para treinamento e teste. O erro total do classicador e dado pela media
dos erros observados em cada parti cao.
Taxa de Erro de Classica cao
Base SVM RBF AB
Cancer seio 26.0 0.47 27.6 0.47 30.4 0.47
Diabetes 23.5 0.17 24.3 0.19 26.5 0.23
Cora cao 16.0 0.33 17.6 0.33 20.3 0.34
Splice 10.9 0.07 10.0 0.10 10.1 0.05
Tireoide 4.8 0.22 4.5 0.21 4.4 0.22
Tabela 8.1: Compara cao entre os erros das tecnicas SVM, RNA RBF e AB para diferentes
bases de dados (M uller et al., 2001). Os melhores resultados sao apresentados em negrito.
Atraves da Tabela 8.1 pode-se vericar a ec acia das SVMs na solu cao de diferentes
1
O AdaBoost e uma tecnica utilizada na gera cao de comites de classicadores. Um comite consiste
de um conjunto de preditores cujas sadas sao combinadas na previs ao da classe de novas instancias
(Baranauskas and Monard, 2000). Na Tabela 8.1, RNAs foram utilizadas como preditores base.
41
tipos de problemas. Os resultados das SVMs s ao superiores ou similares aos das outras
tecnicas apresentadas.
As pr oximas Se coes descrevem aplica coes das SVMs em tres areas distintas: Vis ao
Computacional, Reconhecimento de Dgitos e Bioinform atica.
E focada, porem, a descri-
cao de trabalhos em Bioinform atica, area em que o uso de SVMs tem se mostrado bastante
promissor.
8.1 Visao Computacional
A area de pesquisa de Vis ao Computacional investiga alternativas para incorporar as
caractersticas dos sistema de visao natural em sistemas computacionais. Busca-se extrair
informa coes a partir das imagens, utilizando para isso recursos de Inteligencia Articial,
processamento de imagens e reconhecimento de padr oes (Dowling, 1996).
Uma aplica cao bastante pesquisada e a identica cao de faces humanas em imagens.
Fernandez and Viennet (1999) aplicaram SVMs com Kernel do tipo RBF na realiza cao
desta tarefa. Nos experimentos realizados foram utilizadas 10 imagens de 40 pessoas.
Foram gerados classicadores para as imagens originais e para os mesmos dados submeti-
dos a dois conjuntos de pre-processamentos distintos. O primeiro deles era composto
por reescalas e da tecnica de Analise de Componentes Principais (PCA) (Diamantaras
and Kung, 1996). O segundo, por transla coes e efeitos de zoom. Neste ultimo caso, um
subconjunto dos dados n ao foi submetido aos processamentos citados. Os erros obtidos
durante o teste foram de 5.5%, 3.7% e 1.5%, respectivamente. Na compara cao com outras
tecnicas de AM o melhor resultado foi de 2.7% para o erro, obtido por uma RNA.
Em Hearst et al. (1998) tambem e descrita uma aplica cao de SVMs ao problema
de deteccao de faces em imagens. Para compensar varia coes nas imagens, as seguintes
tecnicas de pre-processamento foram aplicadas: m ascara para diminui cao da dimens ao
das imagens, correcao de gradiente para redu cao de sombras e efeitos de luminosidade e
equaliza cao para lidar com diferen cas de brilho e de curvatura de c ameras. Os resultados
foram comparados aos de Sung and Poggio (1994), que utilizaram clusteriza cao e RNAs
para a mesma tarefa considerada. Os resultados descritos em Hearst et al. (1998) se
mostraram similares e, em alguns casos, superiores.
8.2 Reconhecimento de Dgitos
Esta aplica cao consiste em reconhecer um n umero a partir de dgitos manuscritos.
Diversos trabalhos deste tipo foram conduzidos utilizando a base do Servi co Postal Ame-
ricano (USPS) (Schapire et al., 1997; DeCoste and Scholkopf, 2001; LeCun et al., 1995).
42
Este repositorio contem 9298 dgitos manuscritos na forma de matrizes de dimens ao 16x16,
cujas entradas possuem valores entre 1 e 1.
Em (Campbell, 2000), uma RNA do tipo RBF e uma SVM com Kernel RBF foram
comparadas na resolu cao deste problema, utilizando a base de dados USPS para treina-
mento e teste dos classicadores gerados. Os resultados alcan cados podem ser visualizados
na Tabela 8.2. Verica-se que a SVM mostrou um melhor desempenho no reconhecimento
de todos os dgitos.
Dgito 0 1 2 3 4 5 6 7 8 9
RBF 20 16 43 38 46 31 15 18 37 26
SVM 16 8 25 19 29 23 14 12 25 16
Tabela 8.2: N umero de erros obtidos na classicacao de dgitos manuscritos pertencentes a um
conjunto de teste com 2007 padr oes (Campbell, 2000).
8.3 Bioinformatica
Por Bioinform atica entende-se a aplica cao de tecnicas computacionais, envolvendo
desde o armazenamento de informa coes ` a an alise das mesmas, no gerenciamento de in-
forma coes biol ogicas (Baldi and Brunak, 1998). Os dados neste domnio em geral sao
volumosos e complexos (possuem grande n umero de atributos, ou seja, grande dimens ao),
o que torna o uso das SVMs adequadas.
Seguem algumas das principais aplica coes de interesse em Bioinformatica e como as
SVMs forma empregadas em cada uma delas.
8.3.1 Identica cao de genes
A tarefa de identica cao de genes envolve o reconhecimento e a localiza cao de cada
gene em seq uencias de DNA. Uma abordagem comumente utilizada na realiza cao desta
tarefa envolve determinar sinais que podem ser identicados nas seq uencias e que indicam
situa coes especialmente adequadas ` a localiza cao de genes (Cravem and Shavlik, 1994).
Um exemplo de sinal e o stio de incio de tradu cao (SIT) em seq uencias de mRNA
(
e encontrado igualando-se
f (x) a 0. Resolve-se ent ao o conjunto de Equa coes A.2.
f (x) =
_
f
w
1
(x) , . . . ,
f
w
m
(x)
_
(A.1)
_
_
f (x)
/
x
1
= 0
f (x)
/
x
2
= 0
.
.
.
f (x)
/
x
n
= 0
(A.2)
A.2 Otimiza cao de fun cao com uma restri cao
O problema atacado neste caso e representado por:
54
Figura A.1: Ilustra cao do semi-espaco de possveis solucoes ao problema de otimizacao com
uma restri cao linear.
Minimizar: f(x)
Sob a restri cao: g(x) 0
Se a restri cao for linear, como no caso das SVMs, o conjunto de vetores x que satisfazem
a restri cao pertencem a um semi-espaco delimitado pelo hiperplano g(x) = 0. A Figura
A.1 ilustra este semi-espaco, o qual e denominado por simplicidade de referencia semi-
espaco permitido. O semi-espa co que n ao obedece ` a restri cao ser a referenciado por semi-
espaco nao-permitido.
Deve-se procurar um ponto x
) mni-
mo.
Seja x o ponto otimo procurado (que minimiza f(x) e obedece a restri cao) e x
0
o
ponto que minimiza f(x), sem restri cao. Considerando que a fun cao g(x) e da forma
w x +b = 0 (linear), duas situa coes podem ocorrer em rela cao ao posicionamento de x
0
:
(a) x
0
pertence ao semi-espaco permitido. Neste caso, x
0
e o valor otimo procurado,
ou seja, x
= x
0
. Logo, x
) = 0
w x
+ b 0
(A.3)
55
O ponto otimo x
0
pertence ao semi-espaco nao permitido, ou seja, n ao obedece ` a restri cao. Neste
caso, e provado matematicamente que x
) = w, para algumreal
w x
+ b = 0
(A.4)
O ponto otimo x
_
f (x
) = w
w x
+ b > 0
0
(w x
+ b) = 0
(A.5)
A.3 Otimiza cao com varias restri coes
Neste caso, tem-se o problema:
Minimizar: f(x)
Sob as restri coes: g
i
(x) 0, para i = 1, . . . , n
Similarmente ao apresentado na Se cao anterior, cada restri cao dene um semi-espaco
permitido e um n ao permitido, delimitados por g
i
(x) = 0. A intersec cao dos semi-espa cos
permitidos representa a regi ao onde a solu cao otima deve ser procurada.
Para se solucionar este problema, introduz-se uma fun cao denominada Lagrangiana,
que incorpora informa coes da funcao objetivo e das restri coes a serem obedecidas
1
. A
Lagrangiana para o problema apresentado e dada pela fun cao objetivo subtrada
2
de uma
combina cao linear das restri coes, conforme representado na Equa cao A.6. Os coecientes
da combina cao (
i
) sao usualmente denominados multiplicadores de Lagrange.
L(x, ) = f (x)
n
i=1
i
g
i
(x) (A.6)
1
A teoria de Lagrange tambem e utilizada nos casos sem restricao e com uma restricao. Optou-se por
formaliz a-la somente no caso de mais restricoes para facilitar o entendimento dos conte udos apresentados.
2
Se a restricao fosse g(x) 0, a diferen ca seria substituda por uma soma.
56
A obten cao de uma solu cao otima (x
)
/
x
= 0
i
g
i
(x
) = 0, i = 1, . . . , n
g
i
(x
) 0, i = 1, . . . , n
i
0, i = 1, . . . , n
(A.7)
A Equa cao A.6 deve ser maximizada em rela cao a e minimizada em rela cao a w,
com a restri cao das coordenadas do vetor serem maiores que 0. Esta e a representa cao
primal do problema de otimiza cao. O c alculo da derivada primeira da Lagrangiana em
rela cao as vari aveis primais leva a um conjunto de equa coes. Substituindo os resultados
dessas equacoes da Lagrangiana e em suas restri coes, obtem-se a representa cao dual do
problema. A fun cao resultante contem somente os multiplicadores de Lagrange
i
(tam-
bem denominados vari aveis duais) e deve ser maximizada sob restricoes mais simples.
A formula cao dual em geral e mais simples de ser solucionada, j a que frequentemente e
difcil lidar com as restri coes de desigualdade do problema primal diretamente. Obtidos
os valores dos
i
por algum algoritmo de otimiza cao padr ao (normalmente numerico), as
vari aveis primais otimas podem ser facilmente determinadas.
O exemplo a seguir ilustra os conceitos apresentados (Cristianini and Shawe-Taylor,
2000).
Exemplo: Dado o problema de minimiza cao com fun cao objetivo quadr atica:
Minimizar
1
2
w
Qwk
w
Sujeito a Xw c
em que Q e uma matriz positivamente denida (com auto-valores maiores que 0) de
dimensao n x n, k e um vetor n-dimensional, c e um vetor m-dimensional e X e uma
matriz de dimens ao n x n.
Este e um caso de programa quadr atico, mesma classe de problemas das SVMs. A
Lagragiana deste problema e dada pela Equa cao A.8.
L(w, ) =
1
2
w
Qwk
w +
(Xwc) (A.8)
Esta funcao deve ser minimizada em rela cao a w e maximizada em rela cao a , com
a restri cao 0. Esta e a representa cao primal do problema.
57
Derivando a Equa cao A.8 em rela cao a w e igualando o resultado a 0, obtem-se o
resultado A.9.
w = Q
1
(k X
) (A.9)
Substituindo este valor no problema primal, tem-se a representa cao dual:
Maximizar
1
2
d
1
2
k
Qk
Sujeito a 0
onde P = XQ
1
X
e d = c XQ
1
k.
Logo, o dual de um programa quadr atico e outro programa quadr atico, porem com
restri coes mais simples. Este problema pode ser ent ao solucionado por algoritmos de
otimiza cao. Determinado o valor otimo do vetor
, w