Você está na página 1de 25

Uma Introduo s Support Vector Machines

Ana Carolina Lorena 1


Andr C. P. L. F. de Carvalho 2

Resumo: Neste artigo apresentada uma introduo s Mquinas de Vetores de


Suporte (SVMs, do Ingls Support Vector Machines), tcnica de Aprendizado de
Mquina que vem recebendo crescente ateno nos ltimos anos. As SVMs vm
sendo utilizadas em diversas tarefas de reconhecimento de padres, obtendo resultados
superiores aos alcanados por outras tcnicas de aprendizado em vrias aplicaes.
Palavras-chave: Aprendizado de Mquina, Classificao, Mquinas de Vetores de
Suporte (Support Vector Machines)
Abstract: This paper presents an introduction to the Support Vector Machines
(SVMs), a Machine Learning technique that has received increasing attention in the
last years. The SVMs have been applied to several pattern recognition tasks, obtaining
results superior to those of other learning techniques in various applications.
Keywords: Machine Learning, Classification, Support Vector Machines
1

Introduo

As Mquinas de Vetores de Suporte (SVMs, do Ingls Support Vector Machines) constituem uma tcnica de aprendizado que vem recebendo crescente ateno da comunidade de
Aprendizado de Mquina (AM) [27]. Os resultados da aplicao dessa tcnica so comparveis e muitas vezes superiores aos obtidos por outros algoritmos de aprendizado, como
as Redes Neurais Artificiais (RNAs) [4, 14]. Exemplos de aplicaes de sucesso podem ser
encontrados em diversos domnios, como na categorizao de textos [19], na anlise de imagens [20, 33] e em Bioinformtica [30, 34].
As SVMs so embasadas pela teoria de aprendizado estatstico, desenvolvida por Vapnik [41] a partir de estudos iniciados em [43]. Essa teoria estabelece uma srie de princpios
que devem ser seguidos na obteno de classificadores com boa generalizao, definida como
a sua capacidade de prever corretamente a classe de novos dados do mesmo domnio em que
o aprendizado ocorreu.
1 Centro

de Matemtica, Computao e Cognio, Universidade Federal do ABC, Rua Catequese, 242, CEP 09090400, Santo Andr, SP
ana.lorena@ufabc.edu.br
2 Departamento de Cincias de Computao, Instituto de Cincias Matemticas e de Computao, Universidade de
So Paulo, Caixa Postal 668, CEP 13560-970, So Carlos, SP
andre@icmc.usp.br

Uma Introduo s Support Vector Machines

Iniciando este artigo, na Seo 2 so apresentados alguns conceitos bsicos de AM.


Uma breve introduo aos principais conceitos da teoria de aprendizado estatstico ento
apresentada na Seo 3. A partir deles, na Seo 4 as SVMs so formuladas para a definio
de fronteiras lineares para a separao de conjuntos de dados binrios. A seguir, na Seo 5
as SVMs da Seo 4 so estendidas de forma a definir fronteiras no lineares. Concluindo, na
Seo 6 so apresentadas algumas discusses dos conceitos vistos e as consideraes finais
deste artigo.

Conceitos Bsicos de Aprendizado de Mquina

As tcnicas de AM empregam um princpio de inferncia denominado induo, no


qual obtm-se concluses genricas a partir de um conjunto particular de exemplos. O aprendizado indutivo pode ser dividido em dois tipos principais: supervisionado e no- supervisionado.
No aprendizado supervisionado tem-se a figura de um professor externo, o qual apresenta o conhecimento do ambiente por conjuntos de exemplos na forma: entrada, sada desejada [14]. O algoritmo de AM extrai a representao do conhecimento a partir desses
exemplos. O objetivo que a representao gerada seja capaz de produzir sadas corretas
para novas entradas no apresentadas previamente.
No aprendizado no-supervisionado no h a presena de um professor, ou seja, no
existem exemplos rotulados. O algoritmo de AM aprende a representar (ou agrupar) as entradas submetidas segundo uma medida de qualidade. Essas tcnicas so utilizadas principalmente quando o objetivo for encontrar padres ou tendncias que auxiliem no entendimento
dos dados [39].
O tipo de aprendizado abordado neste trabalho o supervisionado. Neste caso, dado
um conjunto de exemplos rotulados na forma (xi , yi ), em que xi representa um exemplo
e yi denota o seu rtulo, deve-se produzir um classificador, tambm denominado modelo,
preditor ou hiptese, capaz de predizer precisamente o rtulo de novos dados. Esse processo
de induo de um classificador a partir de uma amostra de dados denominado treinamento.
O classificador obtido tambm pode ser visto como uma funo f , a qual recebe um dado x
e fornece uma predio y.
Os rtulos ou classes representam o fenmeno de interesse sobre o qual se deseja
fazer previses. Neste trabalho, considera-se o caso em que os rtulos assumem valores
discretos 1, . . . , k. Tem-se ento um problema de classificao. Caso os rtulos possuam
valores contnuos, tem-se uma regresso [27]. Um problema de classificao no qual k = 2
denominado binrio. Para k > 2, configura-se um problema multiclasses.
Cada exemplo, tambm referenciado por dado ou caso, tipicamente representado

44

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

por um vetor de caractersticas. Cada caracterstica, tambm denominada atributo, expressa


um determinado aspecto do exemplo [29]. Normalmente, h dois tipos bsicos de atributos:
nominal e contnuo. Um atributo definido como nominal (ou categrico) quando no existe
uma ordem entre os valores que ele pode assumir (por exemplo, entre cores). No caso de
atributos contnuos, possvel definir uma ordem linear nos valores assumidos (por exemplo,
entre pesos <).
Um requisito importante para as tcnicas de AM que elas sejam capazes de lidar com
dados imperfeitos, denominados rudos. Muitos conjuntos de dados apresentam esse tipo de
caso, sendo alguns erros comuns a presena de dados com rtulos e/ou atributos incorretos.
A tcnica de AM deve idealmente ser robusta a rudos presentes nos dados, procurando no
fixar a obteno dos classificadores sobre esse tipo de caso. Deve-se tambm minimizar
a influncia de outliers no processo de induo. Os outliers so exemplos muito distintos
dos demais presentes no conjunto de dados. Esses dados podem ser rudos ou casos muito
particulares, raramente presentes no domnio.
Os conceitos referentes gerao de um classificador a partir do aprendizado supervisionado so representados de forma simplificada na Figura 1. Tem-se nessa figura um
conjunto com n dados. Cada dado xi possui m atributos, ou seja, xi = (xi1 , . . . , xim ). As
variveis yi representam as classes. A partir dos exemplos e as suas respectivas classes, o
algoritmo de AM extrai um classificador. Pode-se considerar que o modelo gerado fornece
uma descrio compacta dos dados fornecidos [1].

Figura 1. Induo de classificador em aprendizado supervisionado


A obteno de um classificador por um algoritmo de AM a partir de uma amostra de
dados tambm pode ser considerada um processo de busca [27]. Procura-se, entre todas as
hipteses que o algoritmo capaz de gerar a partir dos dados, aquela com melhor capacidade
de descrever o domnio em que ocorre o aprendizado.
Para estimar a taxa de predies corretas ou incorretas (tambm denominadas taxa de
acerto e taxa de erro, respectivamente) obtidas por um classificador sobre novos dados, o con-

RITA Volume XIV Nmero 2 2007

45

Uma Introduo s Support Vector Machines

junto de exemplos , em geral, dividido em dois subconjuntos disjuntos: de treinamento e de


teste. O subconjunto de treinamento utilizado no aprendizado do conceito e o subconjunto
de teste utilizado para medir o grau de efetividade do conceito aprendido na predio da
classe de novos dados.
Um conceito comumente empregado em AM o de generalizao de um classificador,
definida como a sua capacidade de prever corretamente a classe de novos dados. No caso em
que o modelo se especializa nos dados utilizados em seu treinamento, apresentando uma
baixa taxa de acerto quando confrontado com novos dados, tem-se a ocorrncia de um superajustamento (overfitting). tambm possvel induzir hipteses que apresentem uma baixa
taxa de acerto mesmo no subconjunto de treinamento, configurando uma condio de subajustamento (underfitting). Essa situao pode ocorrer, por exemplo, quando os exemplos
de treinamento disponveis so pouco representativos ou quando o modelo obtido muito
simples [29]. Na Seo 3, esses conceitos so ilustrados e discutidos novamente. So feitas
ento consideraes e motivaes sobre a escolha de classificadores com boa capacidade de
generalizao.

A Teoria de Aprendizado Estatstico

Seja f um classificador e F o conjunto de todos os classificadores que um determinado


algoritmo de AM pode gerar. Esse algoritmo, durante o processo de aprendizado, utiliza
um conjunto de treinamento T , composto de n pares (xi , yi ), para gerar um classificador
particular f F .
Considere, por exemplo, o conjunto de treinamento da Figura 2 [38]. O objetivo
do processo de aprendizado encontrar um classificador que separe os dados das classes
crculo e tringulo. As funes ou hipteses consideradas so ilustradas na figura por
meio das bordas, tambm denominadas fronteiras de deciso, traadas entre as classes.

Figura 2. Conjunto de treinamento binrio e trs diferentes hipteses

46

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

Na imagem da Figura 2a, tem-se uma hiptese que classifica corretamente todos os
exemplos do conjunto de treinamento, incluindo dois possveis rudos. Por ser muito especfica para o conjunto de treinamento, essa funo apresenta elevada sucetibilidade a cometer
erros quando confrontada com novos dados. Esse caso representa a ocorrncia de um superajustamento do modelo aos dados de treinamento.
Um outro classificador poderia desconsiderar pontos pertencentes a classes opostas
que estejam muito prximos entre si. A ilustrao da Figura 2c representa essa alternativa.
A nova hiptese considerada, porm, comete muitos erros, mesmo para casos que podem ser
considerados simples. Tem-se assim a ocorrncia de um sub-ajustamento, pois o classificador
no capaz de se ajustar mesmo aos exemplos de treinamento.
Um meio termo entre as duas funes descritas representado na Figura 2b. Esse
preditor tem complexidade intermediria e classifica corretamente grande parte dos dados,
sem se fixar demasiadamente em qualquer ponto individual.
A Teoria de Aprendizado Estatstico (TAE) estabelece condies matemticas que
auxiliam na escolha de um classificador particular f a partir de um conjunto de dados de
treinamento. Essas condies levam em conta o desempenho do classificador no conjunto
de treinamento e a sua complexidade, com o objetivo de obter um bom desempenho tambm
para novos dados do mesmo domnio.
3.1

Consideraes sobre a Escolha do Classificador

Na aplicao da TAE, assume-se inicialmente que os dados do domnio em que o


aprendizado est ocorrendo so gerados de forma independente e identicamente distribuda
(i.i.d.) de acordo com uma distribuio de probabilidade P (x, y), que descreve a relao
entre os dados e os seus rtulos [5, 38]. O erro (tambm denominado risco) esperado de um
classificador f para dados de teste pode ento ser quantificado pela Equao 1 [28]. O risco
esperado mede ento a capacidade de generalizao de f [31]. Na Equao 1, c(f (x), y)
uma funo de custo relacionando a previso f (x) quando a sada desejada y. Um tipo de
funo de custo comumente empregada em problemas de classificao a 0/1, definida por
c(f (x), y) = 21 |y f (x)| [38]. Essa funo retorna o valor 0 se x classificado corretamente e 1 caso contrrio.
Z
R (f ) = c(f (x) , y)dP (x, y)
(1)
Infelizmente, no possvel minimizar o risco esperado apresentado na Equao 1
diretamente, uma vez que em geral a distribuio de probabilidade P (x, y) desconhecida
[28]. Tem-se unicamente a informao dos dados de treinamento, tambm amostrados de
P (x, y). Normalmente utiliza-se o princpio da induo para inferir uma funo f que mi-

RITA Volume XIV Nmero 2 2007

47

Uma Introduo s Support Vector Machines

nimize o erro sobre esses dados e espera-se que esse procedimento leve tambm a um menor
erro sobre os dados de teste [38]. O risco emprico de f , fornecido pela Equao 2, mede
o desempenho do classificador nos dados de treinamento, por meio da taxa de classificaes
incorretas obtidas em T [28].
n

Remp (f ) =

1X
c(f (xi ) , yi )
n i=1

(2)

Esse processo de induo com base nos dados de treinamento conhecidos constitui o
princpio de minimizao do risco emprico [38]. Assintoticamente, com n , possvel estabelecer condies para o algoritmo de aprendizado que garantam a obteno de
classificadores cujos valores de risco emprico convergem para o risco esperado [28]. Para
conjuntos de dados menores, porm, geralmente no possvel determinar esse tipo de garantia. Embora a minimizao do risco emprico possa levar a um menor risco esperado, nem
sempre isso ocorre. Considere, por exemplo, um classificador que memoriza todos os dados
de treinamento e gera classificaes aleatrias para outros exemplos [37]. Embora seu risco
emprico seja nulo, seu risco esperado 0,5.
A noo expressa nesses argumentos a de que, permitindo que f seja escolhida a
partir de um conjunto de funes amplo F , sempre possvel encontrar uma f com pequeno
risco emprico. Porm, nesse caso os exemplos de treinamento podem se tornar pouco informativos para a tarefa de aprendizado, pois o classificador induzido pode se super-ajustar
a eles. Deve-se ento restringir a classe de funes da qual f extrada. Existem diversas
abordagens para tal. A TAE lida com essa questo considerando a complexidade (tambm
referenciada por capacidade) da classe de funes que o algoritmo de aprendizado capaz de
obter [38]. Nessa direo, a TAE prov diversos limites no risco esperado de uma funo de
classificao, os quais podem ser empregados na escolha do classificador. A prxima seo
relaciona alguns dos principais limites sobre os quais as SVMs se baseiam.
3.2

Limites no Risco Esperado

Um limite importante fornecido pela TAE relaciona o risco esperado de uma funo
ao seu risco emprico e a um termo de capacidade. Esse limite, apresentado na Equao 3,
garantido com probabilidade 1 , em que [0, 1] [5].

R (f ) 6 Remp (f ) +

v  


 
u
u h ln 2n/ + 1 ln /
t
h
4
n

(3)

Nessa equao, h denota a dimenso Vapnik-Chervonenkis (VC) [41] da classe de

48

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

funes F qual f pertence, n representa a quantidade de exemplos no conjunto de treinamento T e a parcela de raiz na soma referenciada como termo de capacidade.
A dimenso VC h mede a capacidade do conjunto de funes F [5]. Quanto maior o
seu valor, mais complexas so as funes de classificao que podem ser induzidas a partir
de F . Dado um problema de classificao binrio, essa dimenso definida como o nmero
mximo de exemplos que podem ser particionados em duas classes pelas funes contidas
em F , para todas as possveis combinaes binrias desses dados.
Para ilustrar esse conceito, considere os trs dados apresentados na Figura 3 [38].
Pode-se verificar que, para qualquer conformao arbitrria dos rtulos crculo e tringulo que esses dados possam assumir, possvel determinar retas capazes de separ-los.
Porm, para os quatro pontos em <2 ilustrados na Figura 4, existem rtulos para os dados
que podem ser separados por uma reta (Figura 4a), mas tambm possvel definir rtulos
tal que uma s reta seja incapaz de realizar a separao em classes (Figura 4b) [14]. Para
uma diviso binria arbitrria desses quatro pontos em <2 , deve-se ento recorrer a funes
de complexidade superior das retas. Essa observao se aplica a quaisquer quatro pontos
no espao bidimensional. Portanto, a dimenso VC do conjunto de funes lineares no espao bidimensional 3, uma vez que existe (pelo menos) uma configurao de trs pontos
nesse espao que pode ser particionada por retas em todas as 23 = 8 combinaes binrias
de rtulos.

Figura 3. Separaes de trs dados em <2 por meio de retas


A contribuio principal da Inequao 3 est em afirmar a importncia de se controlar
a capacidade do conjunto de funes F do qual o classificador extrado. Interpretando-a
em termos prticos, tem-se que o risco esperado pode ser minimizado pela escolha adequada,

RITA Volume XIV Nmero 2 2007

49

Uma Introduo s Support Vector Machines

Figura 4. Separaes de quatro dados em <2 por meio de retas


por parte do algoritmo de aprendizado, de um classificador f que minimize o risco emprico
e que pertena a uma classe de funes F com baixa dimenso VC h. Com esses objetivos,
definiu-se um princpio de induo denominado minimizao do risco estrutural [42].
Como no limite apresentado o termo de capacidade diz respeito classe de funes F
e o risco emprico refere-se a um classificador particular f , para minimizar ambas as parcelas divide-se inicialmente F em subconjuntos de funes com dimenso VC crescente [42].
comum referir-se a esse processo como introduzir uma estrutura em F , sendo os subconjuntos definidos tambm denominados estruturas [38]. Minimiza-se ento o limite sobre as
estruturas introduzidas.
Considera-se subconjuntos Fi da seguinte forma: F0 F1 . . . Fq F . Como
cada Fi maior com o crescimento do ndice i, a capacidade do conjunto de funes que
ele representa tambm maior medida que i cresce, ou seja, h0 < h1 < . . . < hq < h.
_

Para um subconjunto particular Fk , seja f k o classificador com o menor risco emprico.


_

A medida que k cresce, o risco emprico de f k diminui, uma vez que a complexidade do
conjunto de classificadores maior. Porm, o termo de capacidade aumenta com k. Como
resultado, deve haver um valor timo k em que se obtm uma soma mnima do risco emprico
e do termo de capacidade, minimizando assim o limite sobre o risco esperado. A escolha da
_

funo f k constitui o princpio da minimizao do risco estrutural. Os conceitos discutidos


so ilustrados na Figura 5.
Embora o limite representado na Equao 3 tenha sido til na definio do procedimento de minimizao do risco estrutural, na prtica surgem alguns problemas. Em primeiro
lugar, computar a dimenso VC de uma classe de funes geralmente no uma tarefa trivial.
Soma-se a isso o fato de que o valor de h poder ser desconhecido ou infinito [28].
Para funes de deciso lineares do tipo f (x) = w x, entretando, existem resultados

50

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

Figura 5. Princpio de minimizao do risco estrutural [38]


alternativos que relacionam o risco esperado ao conceito de margem [37]. A margem de um
exemplo tem relao com sua distncia fronteira de deciso induzida, sendo uma medida
da confiana da previso do classificador. Para um problema binrio, em que yi {1, +1},
dada uma funo f e um exemplo xi , a margem %(f (xi ), yi ) com que esse dado classificado
por f pode ser calculada pela Equao 4 [37]. Logo, um valor negativo de %(xi , yi ) denota
uma classificao incorreta.
% (f (xi ), yi ) = yi f (xi )

(4)

Para obter a margem geomtrica de um dado xi em relao a uma fronteira linear


f (x) = w x + b, a qual mede efetivamente a distncia de xi fronteira de deciso, divide-se
o termo direita da Equao 4 pela norma de w, ou seja, por kwk [38]. Para exemplos incorretamente classificados, o valor obtido equivale distncia com sinal negativo. Para realizar
uma diferenciao, a margem da Equao 4 ser referenciada como margem de confiana.
A partir do conceito introduzido, possvel definir o erro marginal de uma funo
f (R (f )) sobre um conjunto de treinamento. Esse erro fornece a proporo de exemplos
de treinamento cuja margem de confiana inferior a uma determinada constante > 0
(Equao 5) [37].

RITA Volume XIV Nmero 2 2007

51

Uma Introduo s Support Vector Machines

R (f ) =

1X
I (yi f (xi ) < )
n i=1

(5)

Na Equao 5, I(q) = 1 se q verdadeiro e I(q) = 0 se q falso.


Existe uma constante c tal que, com probabilidade 1 [0, 1], para todo > 0 e
F correspondendo classe de funes lineares f (x) = w x com kxk R e kwk 1, o
seguinte limite se aplica [37]:
s
R (f ) 6 R (f ) +

c
n

R2
log2
2

 
 
n
1
+ log

(6)

Como na Equao 3, tem-se na Expresso 6 novamente o erro esperado limitado pela


soma de uma medida de erro no conjunto de treinamento, neste caso o erro marginal, a
um termo de capacidade. A interpretao do presente limite de que uma maior margem
implica em um menor termo de capacidade. Entretanto, a maximizao da margem pode levar
a um aumento na taxa de erro marginal, pois torna-se mais difcil obedecer restrio de todos
os dados de treinamento estarem distantes de uma margem maior em relao ao hiperplano
separador. Um baixo valor de , em contrapartida, leva a um erro marginal menor, porm
aumenta o termo de capacidade. Deve-se ento buscar um compromisso entre a maximizao
da margem e a obteno de um erro marginal baixo.
Como concluso tem-se que, na gerao de um classificador linear, deve-se buscar
um hiperplano que tenha margem elevada e cometa poucos erros marginais, minimizando
assim o erro sobre os dados de teste e de treinamento, respectivamente. Esse hiperplano
denominado timo [38].
Existem diversos outros limites reportados na literatura, assim como outros tipos de
medida de complexidade de uma classe de funes [28]. Um exemplo a dimenso fatshattering, que caracteriza o poder de um conjunto de funes em separar os dados com uma
margem [35]. Os limites apresentados anteriormente, embora possam ser considerados
simplificados, provm uma base terica suficiente compreeno das SVMs.

SVMs Lineares

As SVMs surgiram pelo emprego direto dos resultados fornecidos pela TAE. Nesta
seo apresentado o uso de SVMs na obteno de fronteiras lineares para a separao de
dados pertencentes a duas classes. A primeira formulao, mais simples, lida com problemas
linearmente separveis, definidos adiante [3]. Essa formulao foi posteriormente estendida

52

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

para definir fronteiras lineares sobre conjuntos de dados mais gerais [10]. A partir desses
conceitos iniciais, na Seo 5 descreve-se a obteno de fronteiras no lineares com SVMs,
por meio de uma extenso das SVMs lineares.
4.1

SVMs com Margens Rgidas

As SVMs lineares com margens rgidas definem fronteiras lineares a partir de dados
linearmente separveis. Seja T um conjunto de treinamento com n dados xi X e seus
respectivos rtulos yi Y, em que X constitui o espao dos dados e Y = {1, +1}. T
linearmente separvel se possvel separar os dados das classes +1 e 1 por um hiperplano
[38].
Classificadores que separam os dados por meio de um hiperplano so denominados
lineares [6]. A equao de um hiperplano apresentada na Equao 7, em que w x o
b
produto escalar entre os vetores w e x, w X o vetor normal ao hiperplano descrito e kwk
corresponde distncia do hiperplano em relao origem, com b <.
f (x) = w x + b = 0

(7)

Essa equao divide o espao dos dados X em duas regies: w x + b > 0 e w


x + b < 0. Uma funo sinal g(x) = sgn(f (x)) pode ento ser empregada na obteno das
classificaes, conforme ilustrado na Equao 8 [37].

g (x) = sgn (f (x)) =

+1 se w x + b > 0
1 se w x + b < 0

(8)

A partir de f (x), possvel obter um nmero infinito de hiperplanos equivalentes,


pela multiplicao de w e b por uma mesma constante [31]. Define-se o hiperplano cannico
em relao ao conjunto T como aquele em que w e b so escalados de forma que os exemplos
mais prximos ao hiperplano w x + b = 0 satisfaam a Equao 9 [28].
|w xi + b| = 1

(9)

Essa forma implica nas inequaes 10, resumidas na Expresso 11.




w xi + b > +1 se yi = +1
w xi + b 6 1 se yi = 1

(10)

yi (w xi + b) 1 > 0, (xi , yi ) T

(11)

RITA Volume XIV Nmero 2 2007

53

Uma Introduo s Support Vector Machines

Seja x1 um ponto no hiperplano H1 :w x + b = +1 e x2 um ponto no hiperplano


H2 :w x + b = 1, conforme ilustrado na Figura 6. Projetando x1 x2 na direo de w,
perpendicular ao hiperplano separador w x + b = 0, possvel obter a distncia entre os
hiperplanos H1 e H2 [6]. Essa projeo apresentada na Equao 12.

(x1 x2 )

(x1 x2 )
w

kwk kx1 x2 k


(12)

Figura 6. Clculo da distncia d entre os hiperplanos H1 e H2 [15]


Tem-se que w x1 + b = +1 e w x2 + b = 1. A diferena entre essas equaes
fornece w (x1 x2 ) = 2 [15]. Substituindo esse resultado na Equao 12, tem-se:
2 (x1 x2 )
kwk kx1 x2 k

(13)

Como deseja-se obter o comprimento do vetor projetado, toma-se a norma da Equao


13, obtendo:
2
kwk

(14)

Essa a distncia d, ilustrada na Figura 6, entre os hiperplanos H1 e H2 , paralelos ao


hiperplano separador. Como w e b foram escalados de forma a no haver exemplos entre H1

54

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

1
a distncia mnima entre o hiperplano separador e os dados de treinamento. Essa
e H2 , kwk
distncia definida como a margem geomtrica do classificador linear [6].

A partir das consideraes anteriores, verifica-se que a maximizao da margem de


separao dos dados em relao a w x + b = 0 pode ser obtida pela minimizao de kwk
[5]. Dessa forma, recorre-se ao seguinte problema de otimizao [38]:
Minimizar
w,b

1
2
kwk
2

Com as restries: yi (w xi + b) 1 > 0, i = 1, . . . , n

(15)
(16)

As restries so impostas de maneira a assegurar que no haja dados de treinamento


entre as margens de separao das classes. Por esse motivo, a SVM obtida possui tambm a
nomenclatura de SVM com margens rgidas.
O problema de otimizao obtido quadrtico, cuja soluo possui uma ampla e estabelecida teoria matemtica [38]. Como a funo objetivo sendo minimizada convexa e
os pontos que satisfazem as restries formam um conjunto convexo, esse problema possui
um nico mnimo global [31]. Problemas desse tipo podem ser solucionados com a introduo de uma funo Lagrangiana, que engloba as restries funo objetivo, associadas a
parmetros denominados multiplicadores de Lagrange i (Equao 17) [38].

L (w, b, ) =

n
X
1
2
i (yi (w xi + b) 1)
kwk
2
i=1

(17)

A funo Lagrangiana deve ser minimizada, o que implica em maximizar as variveis


i e minimizar w e b [28]. Tem-se ento um ponto de sela, no qual:
L
=0
b

L
=0
w

(18)

A resoluo dessas equaes leva aos resultados representados nas expresses 19 e


20.
n
X

i yi = 0

(19)

i=1

w=

n
X

i yi xi

(20)

i=1

RITA Volume XIV Nmero 2 2007

55

Uma Introduo s Support Vector Machines

Substituindo as equaes 19 e 20 na Equao 17, obtm-se o seguinte problema de


otimizao:

Maximizar

n
X

i=1

Com as restries:

n
1 X
i j yi yj (xi xj )
2 i,j=1

i > 0, i = 1, . . . , n
n
P
i yi = 0

(21)

(22)

i=1

Essa formulao denominada forma dual, enquanto o problema original referenciado como forma primal. A forma dual possui os atrativos de apresentar restries mais
simples e permitir a representao do problema de otimizao em termos de produtos internos
entre dados, o que ser til na posterior no-linearizao das SVMs (Seo 5). interessante
observar tambm que o problema dual formulado utilizando apenas os dados de treinamento
e os seus rtulos.
Seja a soluo do problema dual e w e b as solues da forma primal. Obtido o
valor de , w pode ser determinado pela Equao 20. O parmetro b definido por
e por condies de Khn-Tucker, provenientes da teoria de otimizao com restries e que
devem ser satisfeitas no ponto timo. Para o problema dual formulado, tem-se [33]:
i (yi (w xi + b ) 1) = 0, i = 1, . . . , n

(23)

Observa-se nessa equao que i pode ser diferente de 0 somente para os dados que se
encontram sobre os hiperplanos H1 e H2 . Estes so os exemplos que se situam mais prximos
ao hiperplano separador, exatamente sobre as margens. Para os outros casos, a condio
apresentada na Equao 23 obedecida apenas com i = 0. Esses pontos no participam
ento do clculo de w (Equao 20). Os dados que possuem i > 0 so denominados
vetores de suporte (SVs, do Ingls Support Vectors) e podem ser considerados os dados mais
informativos do conjunto de treinamento, pois somente eles participam na determinao da
equao do hiperplano separador (Equao 26) [5].
O valor de b calculado a partir dos SVs e das condies representadas na Equao
23 [38]. Computa-se a mdia apresentada na Equao 24 sobre todos xj tal que j > 0, ou
seja, todos os SVs. Nessa equao, nSV denota o nmero de SVs e SV representa o conjunto
dos SVs.
b =

1 X 1
w xj
nSV
yj

(24)

xj SV

56

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

Substituindo w pela expresso na Equao 20, tem-se:


1 X
b =
nSV

xj SV

X
1

i yi xi xj
yj

!
(25)

xi SV

Como resultado final, tem-se o classificador g(x) apresentado na Equao 26, em que
sgn representa a funo sinal, w fornecido pela Equao 20 e b pela Equao 25.
!
g (x) = sgn (f (x)) = sgn

yi i xi

x+b

(26)

xi SV

Esta funo linear representa o hiperplano que separa os dados com maior margem,
considerado aquele com melhor capacidade de generalizao de acordo com a TAE. Essa
caracterstica difere as SVMs lineares de margens rgidas das Redes Neurais Perceptron, em
que o hiperplano obtido na separao dos dados pode no corresponder ao de maior margem
de separao.
4.2

SVMs com Margens Suaves

Em situaes reais, difcil encontrar aplicaes cujos dados sejam linearmente separveis. Isso se deve a diversos fatores, entre eles a presena de rudos e outliers nos dados
ou prpria natureza do problema, que pode ser no linear. Nesta seo as SVMs lineares
de margens rgidas so estendidas para lidar com conjuntos de treinamento mais gerais. Para
realizar essa tarefa, permite-se que alguns dados possam violar a restrio da Equao 16.
Isso feito com a introduo de variveis de folga i , para todo i = 1, . . . , n [37]. Essas
variveis relaxam as restries impostas ao problema de otimizao primal, que se tornam
[38]:
yi (w xi + b) > 1 i , i > 0, i = 1, . . . , n

(27)

A aplicao desse procedimento suaviza as margens do classificador linear, permitindo


que alguns dados permaneam entre os hiperplanos H1 e H2 e tambm a ocorrncia de alguns
erros de classificao. Por esse motivo, as SVMs obtidas neste caso tambm podem ser
referenciadas como SVMs com margens suaves.
Um erro no conjunto de treinamento indicado por um valor de i maior que 1. Logo,
a soma dos i representa um limite no nmero de erros de treinamento [5]. Para levar em

RITA Volume XIV Nmero 2 2007

57

Uma Introduo s Support Vector Machines

considerao esse termo, minimizando assim o erro sobre os dados de treinamento, a funo
objetivo da Equao 15 reformulada como [5]:
1
2
kwk + C
Minimizar
2
w,b,

n
X

!
i

(28)

i=1

A constante C um termo de regularizao que impe um peso minimizao dos


erros no conjunto de treinamento em relao minimizao da complexidade do modelo
n
P
[31]. A presena do termo
i no problema de otimizao tambm pode ser vista como
i=1

uma minimizao de erros marginais, pois um valor de i (0, 1] indica um dado entre as
margens. Tem-se ento uma formulao de acordo com os princpios da TAE discutidos na
Seo 3.
Novamente o problema de otimizao gerado quadrtico, com as restries lineares
apresentadas na Equao 27. A sua soluo envolve passos matemticos semelhantes aos
apresentados anteriormente, com a introduo de uma funo Lagrangiana e tornando suas
derivadas parciais nulas. Tem-se como resultado o seguinte problema dual:

Maximizar

n
X

i=1

Com as restries:

n
1 X
i j yi yj (xi xj )
2 i,j=1

0 6 i 6 C, i = 1, . . . , n
n
P
i yi = 0

(29)

(30)

i=1

Pode-se observar que essa formulao igual apresentada para as SVMs de margens
rgidas, a no ser pela restrio nos i , que agora so limitados pelo valor de C.
Seja a soluo do problema dual, enquanto w , b e denotam as solues da
forma primal. O vetor w continua sendo determinado pela Equao 20. As variveis i
podem ser calculadas pela Equao 31 [11].

X
i = max 0, 1 yi
yj j xj xi + b

(31)

j=1

A varivel b provm novamente de e de condies de Khn-Tucker, que neste


caso so [33]:

58

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

i (yi (w xi + b ) 1 + i ) = 0

(32)

(C i ) i = 0

(33)

Como nas SVMs de margens rgidas, os pontos xi para os quais i > 0 so denominados vetores de suporte (SVs), sendo os dados que participam da formao do hiperplano
separador. Porm, neste caso, pode-se distinguir tipos distintos de SVs [33]. Se i < C,
pela Equao 33, i = 0 e ento, da Equao 32, estes SVs encontram-se sobre as margens
e tambm so denominados livres. Os SVs para os quais i = C podem representar trs
casos [33]: erros, se i > 1; pontos corretamente classificados, porm entre as margens, se
0 < i 6 1; ou pontos sobre as margens, se i = 0. O ltimo caso ocorre raramente e os SVs
anteriores so denominados limitados. Na Figura 7 so ilustrados os possveis tipos de SVs.
Pontos na cor cinza representam SVs livres. SVs limitados so ilustrados em preto. Pontos
pretos com bordas extras correspondem a SVs limitados que so erros de treinamento. Todos
os outros dados, em branco, so corretamente classificados e encontram-se fora das margens,
possuindo i = 0 e i = 0.

Figura 7. Tipos de SVs: livres (cor cinza) e limitados (cor preta) [31]
Para calcular b , computa-se a mdia da Equao 24 sobre todos SVs xj entre as
margens, ou seja, com i < C [38].
Tem-se como resultado final a mesma funo de classificao representada na Equao
26, porm neste caso as variveis i so determinadas pela soluo da Expresso 29 com as
restries da Equao 30.

RITA Volume XIV Nmero 2 2007

59

Uma Introduo s Support Vector Machines

SVMs No Lineares

As SVMs lineares so eficazes na classificao de conjuntos de dados linearmente separveis ou que possuam uma distribuio aproximadamente linear, sendo que a verso de
margens suaves tolera a presena de alguns rudos e outliers. Porm, h muitos casos em
que no possvel dividir satisfatoriamente os dados de treinamento por um hiperplano. Um
exemplo apresentado na Figura 8a, em que o uso de uma fronteira curva seria mais adequada
na separao das classes.

Figura 8. (a) Conjunto de dados no linear; (b) Fronteira no linear no espao de entradas; (c)
Fronteira linear no espao de caractersticas [28]

As SVMs lidam com problemas no lineares mapeando o conjunto de treinamento de


seu espao original, referenciado como de entradas, para um novo espao de maior dimenso,
denominado espao de caractersticas (feature space) [15]. Seja : X = um mapeamento,
em que X o espao de entradas e = denota o espao de caractersticas. A escolha apropriada
de faz com que o conjunto de treinamento mapeado em = possa ser separado por uma SVM
linear.
O uso desse procedimento motivado pelo teorema de Cover [14]. Dado um conjunto
de dados no linear no espao de entradas X, esse teorema afirma que X pode ser transformado em um espao de caractersticas = no qual com alta probabilidade os dados so
linearmente separveis. Para isso duas condies devem ser satisfeitas. A primeira que a
transformao seja no linear, enquanto a segunda que a dimenso do espao de caractersticas seja suficientemente alta.

60

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

Para ilustrar esses conceitos, considere o conjunto de dados apresentado na Figura 8a


[28]. Transformando os dados de <2 para <3 com o mapeamento representado na Equao
34, o conjunto de dados no linear em <2 torna-se linearmente separvel em <3 (Figura 8c).
possvel ento encontrar um hiperplano capaz de separar esses dados, descrito na Equao
35. Pode-se verificar que a funo apresentada, embora linear em <3 (Figura 8c), corresponde
a uma fronteira no linear em <2 (Figura 8b).


(x) = (x1 , x2 ) = x21 , 2x1 x2 , x22

(34)

f (x) = w (x) + b = w1 x21 + w2 2x1 x2 + w3 x22 + b = 0

(35)

Logo, mapea-se inicialmente os dados para um espao de maior dimenso utilizando


e aplica-se a SVM linear sobre este espao. Essa encontra o hiperplano com maior margem
de separao, garantindo assim uma boa generalizao. Utiliza-se a verso de SVM linear
com margens suaves, que permite lidar com rudos e outliers presentes nos dados. Para
realizar o mapeamento, aplica-se aos exemplos presentes no problema de otimizao representado na Equao 29, conforme ilustrado a seguir:

Maximizar

n
X

i=1

n
1 X
i j yi yj ((xi ) (xj ))
2 i,j=1

(36)

Sob as restries da Equao 30. De forma semelhante, o classificador extrado se


torna:
!
g (x) = sgn (f (x)) = sgn

i yi (xi ) (x) + b

(37)

xi SV

Em que b adaptado da Equao 24 tambm aplicando o mapeamento aos dados:

b =

1
nSV: <C

X
xj SV :
j <C

!
X
1

i yi (xi ) (xj )
yj

(38)

xi SV

Como = pode ter dimenso muito alta (at mesmo infinita), a computao de pode
ser extremamente custosa ou invivel. Porm, percebe-se pelas equaes 36, 37 e 38 que a
nica informao necessria sobre o mapeamento de como realizar o clculo de produtos

RITA Volume XIV Nmero 2 2007

61

Uma Introduo s Support Vector Machines

escalares entre os dados no espao de caractersticas, pois tem-se sempre (xi ) (xj ), para
dois dados xi e xj , em conjunto. Isso obtido com o uso de funes denominadas Kernels.
Um Kernel K uma funo que recebe dois pontos xi e xj do espao de entradas e
computa o produto escalar desses dados no espao de caractersticas [16]. Tem-se ento:

K (xi , xj ) = (xi ) (xj )

(39)

Para o mapeamento apresentado na Equao 34 e dois dados xi = (x1i , x2i ) e xj =


(x1j , x2j ) em <2 , por exemplo, o Kernel dado por [15]:

 



2
K (xi , xj ) = x21i , 2 x1i x2i , x22i x21j , 2 x1j x2j , x22j = (xi xj )

(40)

comum empregar a funo Kernel sem conhecer o mapeamento , que gerado


implicitamente. A utilidade dos Kernels est, portanto, na simplicidade de seu clculo e em
sua capacidade de representar espaos abstratos.
Para garantir a convexidade do problema de otimizao formulado na Equao 36 e
tambm que o Kernel represente mapeamentos nos quais seja possvel o clculo de produtos
escalares conforme a Equao 39, utiliza-se funes Kernel que seguem as condies estabelecidas pelo teorema de Mercer [26, 37]. De forma simplificada, um Kernel que satisfaz as
condies de Mercer caracterizado por dar origem a matrizes positivas semi-definidas K,
em que cada elemento Kij definido por Kij = K(xi , xj ), para todo i, j = 1, . . . , n [16].
Alguns dos Kernels mais utilizados na prtica so os Polinomiais, os Gaussianos ou
RBF (Radial-Basis Function) e os Sigmoidais, listados na Tabela 1. Cada um deles apresenta
parmetros que devem ser determinados pelo usurio, indicados tambm na tabela. O Kernel
Sigmoidal, em particular, satisfaz as condies de Mercer apenas para alguns valores de e
. Os Kernels Polinomiais com d = 1 tambm so denominados lineares.
Tipo de Kernel
Polinomial
Gaussiano
Sigmoidal

Funo K(xi , xj )
( (xi xj ) + )d 
exp kxi xj k2
tanh ( (xi xj ) + )

Parmetros
, e d

Tabela 1. Funes Kernel mais comuns [8]

62

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

Consideraes Finais

Neste texto foram descritos os conceitos bsicos a respeito das SVMs para problemas
de classificao, os quais tambm podem ser consultados em [21, 22]. Com princpios embasados na teoria de aprendizado estatstico, essa tcnica de AM se caracteriza por apresentar
uma boa capacidade de generalizao.
As SVMs tambm so robustas diante de dados de grande dimenso, sobre os quais
outras tcnicas de aprendizado comumente obtm classificadores super ou sub ajustados.
Outra caracterstica atrativa a convexidade do problema de otimizao formulado em seu
treinamento, que implica na existncia de um nico mnimo global. Essa uma vantagem das
SVMs sobre, por exemplo, as Redes Neurais Artificiais (RNAs) Perceptron Multicamadas
(Multilayer Perceptron) [4, 14], em que h mnimos locais na funo objetivo minimizada. Alm disso, o uso de funes Kernel na no-linearizao das SVMs torna o algoritmo
eficiente, pois permite a construo de simples hiperplanos em um espao de alta dimenso
de forma tratvel do ponto de vista computacional [5].
Entre as principais limitaes das SVMs encontram-se a sua sensibilidade a escolhas
de valores de parmetros e a dificuldade de interpretao do modelo gerado por essa tcnica,
problemas que tm sido abordados em diversos trabalhos recentes, como [9, 12, 32, 18, 24,
40] e [13, 7, 44], respectivamente.
Observou-se no decorrer deste tutorial que o raciocnio empregado pelas SVMs na
obteno do classificador final leva a um problema de otimizao dual em termos dos dados
de treinamento. Porm, a forma de soluo desse problema no foi apresentada. Existem
diversos pacotes matemticos capazes de solucionar problemas quadrticos com restries.
Contudo, eles geralmente no so adequados a aplicaes de AM, que em geral se caracterizam pela necessidade de lidar com um grande volume de dados. Diversas tcnicas e estratgias foram ento propostas para adaptar a soluo do problema de otimizao das SVMs a
aplicaes de larga escala. Em geral, recorre-se a alguma estratgia decomposicional, em
que subproblemas menores so otimizados a cada passo do algoritmo. Uma discusso mais
detalhada a respeito dos mtodos e algoritmos comumente empregados nesse processo pode
ser encontrada em [11].
O presente artigo tambm se limitou a apresentar a formulao original das SVMs,
a qual capaz de lidar apenas com problemas de classificao binrios. Existe uma srie
de tcnicas que podem ser empregadas na generalizao das SVMs para a soluo de problemas multiclasses. Pode-se recorrer decomposio do problema multiclasses em vrios
subproblemas binrios ou reformular o algoritmo de treinamento das SVMs em verses multiclasses. Em geral, esse ltimo procedimento leva a algoritmos computacionalmente custosos [17]. Por esse motivo, a estratgia decomposicional empregada mais frequentemente.
Revises a respeito da obteno de previses multiclasses com SVMs podem ser consultadas

RITA Volume XIV Nmero 2 2007

63

Uma Introduo s Support Vector Machines

em [22, 23, 25].


As SVMs tambm podem ser aplicadas na soluo de problemas de regresso e no
agrupamento de dados (aprendizado no supervisionado). Contudo, o problema de otimizao para o seu treinamento deve ser reformulado para lidar com as caractersticas e objetivos
desses problemas. Mais detalhes podem ser consultados em [2, 36].

Agradecimentos
FAPESP e ao CNPq pelo apoio financeiro.

Referncias

[1] J. A. Baranauskas and M. C. Monard. Reviewing some machine learning concepts and
methods. Technical Report 102, Instituto de Cincias Matemticas e de Computao,
Universidade de So Paulo, So Carlos. Disponvel em: ftp://ftp.icmc.usp.
br/pub/BIBLIOTECA/rel_tec/RT_102.ps.zip, Fevereiro 2000.
[2] A. Ben-Hur, D. Horn, H. T. Siegelmann, and V. N. Vapnik. A support vector clustering method. In Proceedings of the International Conference on Pattern Recognition
(ICPR00), volume 2, pages 724727, 2000.
[3] B. E. Boser, I. L. Guyon, and V. N. Vapnik. A training algorithm for optimal margin
classifiers. In Proceedings of the 5th Annual Workshop on Computational Learning
Theory, pages 144152, Pittsburg, Pennsylvania, US, 1992.
[4] A. Braga, A. C. P. L. F. Carvalho, and T. B. Ludermir. Redes Neurais Artificiais: Teoria
e Aplicaes. Editora LTC, 2000.
[5] C. J. C. Burges. A tutorial on support vector machines for pattern recognition. Knowledge Discovery and Data Mining, 2(2):143, 1998.
[6] C. Campbell. An introduction to kernel methods. In R. J. Howlett and L. C. Jain,
editors, Radial Basis Function Networks: Design and Applications, pages 155192,
Berlin, 2000. Springer Verlag.
[7] J. L. Castro, L. D. Flores-Hidalgo, C. J. Mantas, and J. M. Puche. Extraction of fuzzy
rules from support vector machines. Fuzzy Sets and Systems archive, 158(18):2057
2077, 2007.
[8] C.-C. Chang and C.-J. Lin. LIBSVM: a library for support vector machines.
Disponvel em: http://www.csie.ntu.edu.tw/~cjlin/libsvm/. Acessado em: 09/2003, 2004.

64

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

[9] O. Chapelle, V. Vapnik, O. Bousquet, and S. Mukherjee. Choosing multiple parameters


for support vector machines. Machine Learning, 46(1-3):131159, 2002.
[10] C. Cortes and V. N. Vapnik. Support vector networks. Machine Learning, 20(3):273
296, 1995.
[11] N. Cristianini and J. Shawe-Taylor. An Introduction to Support Vector Machines and
other kernel-based learning methods. Cambridge University Press, 2000.
[12] K. Duan, S. S. Keerthi, and A. N. Poo. Evaluation of simple performance measures for
tuning SVM hyperparameters. Neurocomputing, 51:4159, 2003.
[13] Xiuju Fu, ChongJin Ong, S. Keerthi, Gih Guang Hung, and Liping Goh. Extracting the
knowledge embedded in support vector machines. In Proceedings IEEE International
Joint Conference on Neural Networks, volume 1, page 296, 2004.
[14] S. Haykin. Neural Networks - A Compreensive Foundation. Prentice-Hall, New Jersey,
2nd edition, 1999.
[15] M. A. Hearst, B. Schlkopf, S. Dumais, E. Osuna, and J. Platt. Trends and controversies
- support vector machines. IEEE Intelligent Systems, 13(4):1828, 1998.
[16] R. Herbrich. Learning Kernel Classifiers: Theory and Algorithms. MIT Press, 2001.
[17] C.-W. Hsu and C.-J. Lin. A comparison of methods for multi-class support vector
machines. IEEE Transactions on Neural Networks, 13(2):415425, March 2002.
[18] F. Imbault and K. Lebart. A stochastic optimization approach for parameter tuning
of support vector machines. In Proceedings of the 17th International Conference on
Pattern Recognition, volume 4, pages 597600, 2004.
[19] T. Joachims. Learning to classify texts using support vector machines: methods, theory
and algorithms. Kluwer Academic Publishers, 2002.
[20] K. I. Kim, K. Jung, S. H. Park, and H. J. Kim. Support vector machines for texture classification. IEEE Transactions on Pattern Analysis and Machine Intelligence,
24(11):15421550, 2002.
[21] A. C. Lorena and A. C. P. L. F. Carvalho. Classificadores de margens largas (Large
Margin Classifiers). Technical Report 195, Instituto de Cincias Matemticas e de Computao, Universidade de So Paulo, So Carlos. Disponvel em: ftp://ftp.icmc.
usp.br/pub/BIBLIOTECA/rel_tec/RT_195.ps.zip, 2003.

RITA Volume XIV Nmero 2 2007

65

Uma Introduo s Support Vector Machines

[22] A. C. Lorena and A. C. P. L. F. Carvalho. Introduo s mquinas de vetores suporte


(Support Vector Machines). Technical Report 192, Instituto de Cincias Matemticas e
de Computao, Universidade de So Paulo, So Carlos. Disponvel em: ftp://ftp.
icmc.usp.br/pub/BIBLIOTECA/rel_tec/RT_192.ps.zip, Abril 2003.
[23] A. C. Lorena and A. C. P. L. F. Carvalho. Reviso de tcnicas para gerao de classificadores de margens largas multiclasses. Technical Report 221, Instituto de Cincias
Matemticas e de Computao, Universidade de So Paulo, So Carlos. Disponvel
em: ftp://ftp.icmc.usp.br/pub/BIBLIOTECA/rel_tec/RT_221.ps,
Novembro 2003.
[24] A. C. Lorena and A. C. P. L. F. Carvalho. Multiclass SVM design and parameter selection with genetic algorithms. In IEEE Proceedings of the IX Brazilian Symposium on
Neural Networks (SBRN), 2006.
[25] Ana Carolina Lorena. Investigao de estratgias para a gerao de mquinas
de vetores de suporte multiclasses. PhD thesis, Instituto de Cincias Matemticas e de Computao, Universidade de So Paulo, So Carlos. Disponvel
em:
http://www.teses.usp.br/teses/disponiveis/55/55134/
tde-26052006-111406/, 2006.
[26] J. Mercer. Functions of positive and negative type and their connection with the theory
of integral equations. Philosophical Transactions of the Royal Society, A 209:415446,
1909.
[27] T. Mitchell. Machine Learning. McGraw Hill, 1997.
[28] K. R. Mller, S. Mika, G. Rtsch, K. Tsuda, and B. Schlkopf. An introduction to
kernel-based learning algorithms. IEEE Transactions on Neural Networks, 12(2):181
201, Maro 2001.
[29] M. C. Monard and J. A. Baranauskas. Conceitos de aprendizado de mquina. In S. O.
Rezende, editor, Sistemas Inteligentes - Fundamentos e Aplicaes, pages 89114. Editora Manole, 2003.
[30] W. S. Noble. Support vector machine applications in computational biology. In
B. Schlkopf, K. Tsuda, and J.-P. Vert, editors, Kernel Methods in computational biology, pages 7192. MIT Press, 2004.
[31] A. Passerini. Kernel Methods, multiclass classification and applications to computational molecular biology. PhD thesis, Universit Degli Studi di Firenze, 2004.
[32] A. Passerini, M. Pontil, and P. Frasconi. On tuning hyper-parameters of multiclass margin classifiers. In Proceedings of 8th Congress of Associazione Italiana per

66

RITA Volume XIV Nmero 2 2007

Uma Introduo s Support Vector Machines

lIntelligenza Artificiale (AIIA). Disponvel em: http://www-dii.ing.unisi.


it/aiia2002/paper/APAUT/passerini-aiia02.pdf, 2002.
[33] M. Pontil and A. Verri. Support vector machines for 3-D object recognition. IEEE
Transactions on Pattern Analysis and Machine Intelligence, 20(6):637646, 1998.
[34] B. Schlkopf, I. Guyon, and J. Weston. Statistical learning and kernel methods in bioinformatics. In P. Frasconi and R. Shamir, editors, Artificial Intelligence and Heuristic
Methods in Bioinformatics, pages 121. IOS Press, 2003.
[35] J. Shawe-Taylor, P. L. Barlett, R. C. Williamson, and M. Anthony. Structural risk minimization over data-dependent hierarquies. IEEE Transactions on Information Theory,
44(5):19261940, 1998.
[36] A. Smola and B. Schlkopf. A tutorial on support vector regression. Technical Report
NC2-TR-1998-030, NeuroCOLT2, 1998.
[37] A. J. Smola, P. Barlett, B. Schlkopf, and D. Schuurmans. Introduction to large margin classifiers. In A. J. Smola, P. Barlett, B. Schlkopf, and D. Schuurmans, editors,
Advances in Large Margin Classifiers, pages 128. MIT Press, 1999.
[38] A. J. Smola and B. Schlkopf. Learning with Kernels. The MIT Press, Cambridge, MA,
2002.
[39] M. C. P. Souto, A. C. Lorena, A. C. B. Delbem, and A. C. P. L. F. Carvalho. Tcnicas
de Aprendizado de Mquina para problemas de Biologia Molecular, pages 103152.
Minicursos de Inteligncia Artificial, Jornada de Atualizao Cientfica em Inteligncia
Artificial, XXIII Congresso da Sociedade Brasileira de Computao, 2003.
[40] B. F. Souza, A. C. P. L. F. Carvalho, R. Calvo, and R. P. Ishii. Multiclass svm model
selection using particle swarm optimization. In Proceedings of 6th HIS, pages 3136,
2006.
[41] V. N. Vapnik. The nature of Statistical learning theory. Springer-Verlag, New York,
1995.
[42] V. N. Vapnik. Statistical Learning Theory. John Wiley and Sons, 1998.
[43] V. N. Vapnik and A. Y. Chervonenkis. On the uniform convergence of relative frequencies of events to their probabilities. Theory of Probability and its Applications,
16(2):283305, 1971.
[44] Dexian Zhang, Zhixiao Yang, Yanfeng Fan, and Ziqiang Wang. Extracting symbolic
rules from trained support vector machines based on the derivative heuristic information. In Fourth International Conference on Fuzzy Systems and Knowledge Discovery
(FSKD 2007), volume 1, pages 592597, 2007.

RITA Volume XIV Nmero 2 2007

67