Por
Ricardo Henao
[email protected]Director:
Jorge Eduardo Hurtado G´
omez
ENVIADO EN PARCIAL CUMPLIMIENTO DE LOS REQUERIMIENTOS PARA EL GRADO DE MSC. EN CONTROL Y AUTOMATIZACI ´ON INDUSTRIAL
EN LA
UNIVERSIDAD NACIONAL DE COLOMBIA MANIZALES, COLOMBIA
MAYO 2004
c
INGENIER´IAS EL ´
ECTRICA, ELECTR ´
ONICA Y COMPUTACI ´
ON
Los abajo firmantes certifican haber leido y recomendado a la facultad
de Facultad de Ingenier´ıa y Administraci´
on la aceptaci´
on de la tesis titulada
“
Selecci´
on de Hiperpar´
ametros en M´
aquinas de Soporte Vectorial
”
por
Ricardo Henao
en parcial cumplimiento de lor requerimientos para el
grado de
Msc. en Control y Automatizaci´
on Industrial
.
Fecha: Mayo 2004
Director:
Jorge Eduardo Hurtado G´omez
Jurados:
Germ´an Castellanos D.
Julio Fernando Su´arez
Oscar Ortega L.
Autor:
Ricardo Henao
T´ıtulo:
Selecci´
on de Hiperpar´
ametros en M´
aquinas de Soporte
Vectorial
Facultad:
Ingenier´
ıas El´
ectrica, Electr´
onica y Computaci´
on
Grado:
M.Sc.
T´
ermino:
Julio
A˜
no:
2004
Con esta se concede permiso a la Universidad Nacional de Colombia de circular y copiar este trabajo para prop´ositos no comerciales y a discresi´on ante solicitud de individuales o instituciones.
Firma del Autor
EL AUTOR SE RESERVA OTROS DERECHOS DE PUBLICACION Y NI LA TESIS NI EXTRACTOS EXTENSOS DE ELLA PUEDEN SER PUBLICADOS O REPRODUCIDOS EN OTRA FORMA SIN LA AUTORIZACION POR ESCRITO DEL AUTOR.
EL AUTOR CERTIFICA QUE HA OBTENIDO PERMISO PARA EL USO DE CUALQUIER MATERIAL CON DERECHOS RESERVADOS QUE APARECIERE EN LA TESIS (EXCEPTO EXTRACTOS CORTOS QUE UNICAMENTE REQUIEREN UN RECONOCIMIENTO APROPIADO EN EL CASO ESCRITOS ACADEMICOS) Y QUE TAL USO ES CLARAMENTE RECONOCIDO.
´
Indice General
IV
´
Indice de Tablas
VII
´
Indice de Figuras
VIII
Resumen
IX
Abstract
X
Agradecimientos
XI
1. Introducci´
on
1
1.1. Trabajo Previo . . . .
2
1.2. Objetivos Principales del Trabajo . . . .
4
1.3. Estructura del Documento . . . .
4
2. M´
aquinas de Soporte Vectorial
5
2.1. Clasificaci´
on con Vectores de Soporte . . . .
5
2.2. Caso Linealmente no Separable . . . .
8
2.3. M´
aquinas de Soporte no Lineales . . . .
9
2.4. Capacidad de Generalizaci´
on . . . .
11
2.4.1. Riesgo Actual, Riesgo Emp´ırico y Dimensi´
on VC . . . .
11
2.4.2. La Dimensi´
on VC de las SVM
. . . .
13
IV
2.5.1. M´
etodo de Descomposici´
on . . . .
18
2.5.2. Selecci´
on del Conjunto de Trabajo y Criterio de Parada . . . .
19
2.5.3. Convergencia del M´
etodo de Descomposici´
on . . . .
22
2.5.4. Soluci´
on Anal´ıtica . . . .
23
2.5.5. C´
alculo de
b
. . . .
26
2.5.6. Contracci´
on . . . .
27
2.5.7. Caching . . . .
29
2.5.8. Complejidad Computacional
. . . .
29
2.6. M´
aquinas de Soporte Multi Clase . . . .
30
3. Selecci´
on de Hiperpar´
ametros en M´
aquinas de Soporte Vectorial
32
3.1. B´
usqueda en Malla . . . .
33
3.2. B´
usqueda en L´ınea . . . .
33
3.2.1. Cota de Radio/Margen para L2 . . . .
35
3.2.2. Cota de Radio/Margen para L1 . . . .
36
3.3. Limitaciones Actuales . . . .
37
4. Estrategias Evolutivas
39
4.1. Adaptaci´
on Arbitraria de Distribuciones Normales . . . .
41
4.2. Adaptaci´
on de la Matriz de Covarianza
. . . .
43
4.3. Trayectoria Evolutiva: Cumulaci´
on . . . .
45
4.4. El Algoritmo (
µ
W, λ
)-CMA-ES . . . .
46
4.5. Valores para los Par´
ametros Internos . . . .
49
4.6. Limitaciones y Aspectos Pr´
acticos
. . . .
50
5. M´
etodo Propuesto
51
5.1. CMA-ES-SVM . . . .
52
5.2. Caracter´ısticas del CMA-ES-SVM
. . . .
54
6. Resultados Num´
ericos
56
6.1. Conjuntos Artificiales
. . . .
56
6.1.1. Balanceado . . . .
57
6.1.2. No Balanceado . . . .
58
6.1.3. Damero . . . .
59
6.1.4. Dos Curvas . . . .
60
6.1.5. Dos Anillos . . . .
60
6.1.6. Anillos Cruzados . . . .
62
6.2. Conjuntos Est´
andares . . . .
64
6.3. Conjunto Multi Clase
. . . .
68
6.4. Resultados con Kernel Polinomial . . . .
68
6.5. Conjuntos de Problemas Reales . . . .
69
6.5.1. Identificaci´
on de Voces Patol´
ogicas . . . .
69
6.5.2. Clasificaci´
on de Arritmias en ECG . . . .
70
7. Discusi´
on Final, Sumario y Trabajo Posterior
73
A. Kernels
76
A.1. Kernels Definidos Positivos
. . . .
77
A.2. Reproducci´
on de un Mapeo con Kernel . . . .
77
A.3. Reproducci´
on de un Espacio de Hilbert mediante Kernels . . . .
79
A.4. El Kernel de Mercer . . . .
79
A.5. Ejemplos y Propiedades de Kernels . . . .
81
B. Algoritmo BFGS
83
Ap´
endices
76
4.1. Par´
ametros defecto para (
µ
W, λ
) . . . .
49
6.1. Estructura de los conjuntos artificiales . . . .
57
6.2. Resultados para el conjunto balanceado . . . .
58
6.3. Resultados para el conjunto no balanceado
. . . .
59
6.4. Resultados para el conjunto damero
. . . .
61
6.5. Resultados para el conjunto dos curvas . . . .
61
6.6. Resultados para el conjunto dos anillos . . . .
63
6.7. Resultados para el conjunto anillos cruzados . . . .
63
6.8. Estructura de los conjuntos est´
andares . . . .
65
6.9. Resultados para los conjuntos est´
andar . . . .
66
6.10. Resultados para los conjuntos est´
andar. (Continuaci´
on)
. . . .
67
6.11. Estructura de los conjuntos multi clase . . . .
68
6.12. Resultados para conjuntos multi clase . . . .
68
6.13. Resultados para kernel polinomial
. . . .
69
6.14. Estructura del conjunto para identificaci´
on de voces patol´
ogicas . . . .
70
6.15. Resultados para identificaci´
on de voces patol´
ogicas . . . .
71
6.16. Estructura del conjunto para clasificaci´
on de arritmias en ECG . . . .
72
6.17. Resultados para clasificaci´
on de arritmias en ECG . . . .
72
2.1. Hiperplanos que separan correctamente los datos . . . .
7
2.2. Mapeo del espacio de entrada en otro de dimensi´
on alta . . . .
10
2.3. Soluci´
on anal´ıtica de un problema de optimizaci´
on de dos variables . . . . .
24
4.1. L´ıneas de igual densidad de probabilidad en dos distribuciones normales . .
40
6.1. Izquierda: Conjunto balanceado. Derecha: Conjunto no balanceado . . . . .
57
6.2. Izquierda: Conjunto damero. Derecha: Conjunto dos curvas . . . .
60
6.3. Izquierda: Conjunto dos anillos. Derecha: Conjunto anillos cruzados
. . . .
62
A.1. Problema de clasificaci´
on mapeado con kernel polinomial . . . .
76
Este trabajo de tesis presenta un nuevo m´
etodo de selecci´
on autom´
atica de hiperpar´
ametros
en maquinas de soporte vectorial utilizando estrategias evolutivas y cotas efectivas del error
de validaci´
on o riesgo emp´ırico. El desarrollo descrito en esta tesis involucra una t´
ecnica
de estrategias evolutivas denominada adaptaci´
on de matriz de covarianza, que a grandes
rasgos reduce el tiempo de convergencia en la medida que un menor n´
umero de evaluaciones
de la funci´
on objetivo son necesarias y que desaleatoriza al m´
aximo el procedimiento para
obtener soluciones m´
as estables. En particular, dos cotas del error de validaci´
on fueron
empleadas, la validaci´
on cruzada como generalizaci´
on del esquema LOO y el
span
como
medida efectiva tanto te´
orica como pr´
actica ya que no necesita m´
ultiples evaluaciones de
la SVM, es continua, posee conexi´
on directa con otras como Radio/Margen y requiere una
carga computacional considerablemente peque˜
na. Adem´
as, permite la posibilidad de
em-plear diferentes funciones kernel debido a que no exige diferenciabilidad en dicha funci´
on,
esquemas multi clase y selecci´
on de m´
ultiples par´
ametros sin tener que reformular
substan-cialmente todo el algoritmo. Por ´
ultimo, los resultados num´
ericos muestran un desempe˜
no
bastante competitivo con las otras t´
ecnicas revisadas en este trabajo.
This thesis work introduces a new method for automatic hiperparameter selection for
support vector machines using evolutive strategies and validation error or empirical risk
bounds. The actual approach involves an evolution strategy technique designated as
covari-ance matrix adaptation, which in general terms reduces the convergence rates and obtain
steady solutions due to its derandomized nature. In particular, two empirical risk bounds
where used, crossvalidation as generalized LOO scheme and
span
bound because do not
require multiple SVM evaluations, is continuous, and hold direct connection with some
others like Radius/Margin and its computational cost is low as well. Besides, this method
allows a wide variety of kernel functions since do not demand differentiability, multi-class
schemes and multiple parameter selection without substantial reformulation of the entire
algorithm. Finally, the numerical results reveal a competitive performance related to
an-other considered methods within this work.
El autor quiere agradecer al Profesor Jorge Eduardo Hurtado supervisor de esta tesis, por
sus m´
ultiples sugerencias y apoyo constante no solo durante el tiempo que dur´
o este trabajo
sino desde que estoy trabajando con ´
el. Tambi´
en, al Profesor Germ´
an Castellanos por todo
el apoyo prestado desde que estoy trabajando en investigaci´
on.
Adem´
as, a los profesores S.S. Keerthi, C.J. Lin y N. Hansen por toda la ayuda prestada a
trav´
es de correos electr´
onicos.
Finalmente, Fabian Ojeda y Juan Carlos Ria˜
no por la ayuda prestada con la revisi´
on de
este trabajo y comentarios pertinentes, al grupo de Control y Procesamiento Digital de
Se˜
nales por proporcionar un espacio apropiado para el trabajo de investigaci´
on, incluso
m´
as all´
a del alcance de este trabajo. Los dem´
as supongo saben quienes son.
Esta investigaci´
on fue realizada en el marco de la investigaci´
on “An´
alisis y procesamiento
digital de im´
agenes m´
edicas y se˜
nales bioel´
ectricas” realizada por la Universidad Nacional
de Colombia sede Manizales mediante la orden contractual 472 de 2003 emitida por el
DIMA.
Manizales, Colombia
Ricardo Henao
Julio 22, 2004
Introducci´
on
“I shall certainly admit a system as empirical or scientific only if it is capable of being tested by experience. These considerations suggest that not the verifiability but the falsifiability of a system is to be taken as a criterion of demarcation. It must be possible for an empirical scientific system to be refuted by experience.”
K. Popper. The Logic of Scientific Discovery (1934, ch. 1, sect. 6)
En el ´area de reconocimiento de patrones y m´as espec´ıficamente en la parte de clasificaci´on, las m´aquinas de soporte vectorial (SVM), se han convertido en los ´ultimos a˜nos en una de las t´ecnicas m´as importantes sobre otras muy populares como: k−´esimo vecino cercano (KNN), redes neu-ronales artificiales (ANN) y ´arboles de clasificaci´on (CART); dado que su aparato matem´atico est´a fundamentado sobre bases muy s´olidas [ver Vapnik, 1995] que hacen que posea m´ultiples ventajas sobre las otras t´ecnicas mencionadas [ver Vapnik, 1998, Sch¨olkopf and Smola, 2002]. Sinembargo, Lin [2003] presenta en perspectiva la posibilidad de hacer que las m´aquinas de soporte vectorial se conviertan en el principal m´etodo de clasificaci´on (seg´un “KDNuggets 2002 Poll 1”, las redes neuronales y los ´arboles de clasificaci´on permanecen como principales herramientas) argumentando que el problema de las SVM es elmal empleo que se les da probablemente por falta de conocimiento
1http:://www.kdnuggets.com, A Site for Data Mining, Knowledge Discovery, Genomic Mining, Web
Mining.
de la metodolog´ıa. Lo que usualmente los usuarios desprevenidos est´an haciendo es (ver blackboard http://www.kernel-machines.org): convertir la informaci´on a clasificar al formato de alg´un progra-ma SVM disponible sin tener en cuenta en la progra-mayor´ıa de los casos las implicaciones del forprogra-mato, escalamiento, etc, para luego tratar aleatoriamente con valores de par´ametros y kernels indiscrimi-nadamentesin hacer validaci´on y sin saber de antemano que los par´ametros por defecto en dichos programas son sorprendentemente importantes y el hecho es que muchos de los usuarios obtienen como resultado valores de error y generalizaci´on insatisfactorias.
Lo m´ınimo que se espera que haga el usuario seg´un Lin [2003] es escalar los datos para validaci´on y entrenamiento, considerar el kernel RBF (Radial Basis Function) y encontrar valores adecuados para C y σ2 (o γ). Ahora, esto de encontrar“valores adecuados” a veces no es tarea f´acil, sin
mencionar que lo que se pretende no es encontrar valores adecuados sino los mejores valores para un caso dado. Hasta el momento, las t´ecnicas de selecci´on de par´ametros o selecci´on del modelo como tambi´en es llamado son las siguientes: b´usqueda manual intuitiva, cotas para LOO (leave one out) o para riesgo emp´ırico, b´usqueda en dos sentidos y b´usqueda en malla.
1.1.
Trabajo Previo
En el tema de selecci´on de hiperpar´ametros en SVM no se ha hecho mucho hasta el momento debido a que es un tema relativamente nuevo, sinembargo el trabajo realizado es bastante significativo. En el trabajo con reconocimiento de patrones y m´as espec´ıficamente en el ´area de clasificadores es necesario encontrar medidas que sean proporcionales al error de clasificaci´on (funci´on de riesgo y dimensi´on VC), es decir, que sean referentes al momento de seleccionar los par´ametros en la SVM sin tener que realizar un proceso de validaci´on, que dependiendo del volumen de los datos puede ser prohibitivo en t´erminos de tiempo y recursos computacionales. [Wahba et al., 2000] establece mediante demostraciones matem´aticas y pruebas num´ericas la consistencia de la validaci´on cruzada (en particular LOO) como medida del error en SVM con relaci´on a medidas de margen en el hiperespacio de SVM. Joachims [2000] realiza pruebas con SVM utilizando como medidas del error: error de entrenamiento, “hold-out testing”, Boostrap, Jack-knife y validaci´on cruzada en contraste a una t´ecnica introducida por el llamada estimadorξαbasada en la soluci´on de losαen el problema dual de SVM y las p´erdidas del entrenamiento ξ, obteniendo mejores resultados que validaci´on cruzada y Boostrap en varias bases de datos est´andar. Vapnik and Chapelle [2000] introduce el concepto despan de los vectores de soporte como forma de obtener par´ametros ´optimos en SVM
por este ser una medida bastante precisa de el error de validaci´on. Jaakkola and Haussler [1999] realiza pruebas matem´aticas para llegar a una formulaci´on que genera una cota superior para LOO analizando la soluci´on de la funci´on de costo de SVM. Opper and Winther [2000] utilizan un m´etodo inspirado en la teor´ıa de respuesta lineal y prueban que bajo el supuesto de que los vectores de soporte no cambian cuando se remueve un ejemplo bajo el esquema de LOO se puede obtener una matriz de productos punto entre los vectores de soporte que deriva en una cota superior para la estimaci´on del error. Vapnik [1998] propone bajo el supuesto que la soluci´on de SVM no presenta errores de entrenamiento, una cota para el error de validaci´on basada en LOO que es la relaci´on entre el margen y el radio de los vectores de soporte de la m´aquina entrenada. Keerthi and Ong [2000] hace un an´alisis del aporte del valor del corrimiento en la formulaci´on de SVM en la optimalidad del entrenamiento. Sundararajan and Keerthi [2001] deriva resultados de la probabilidad surrogativa de Geisser (GPP), error predictivo de Geisser (GPE) y error de validaci´on cruzada para escoger los par´ametros del kernel en el caso RBF. Lee and Lin [2001] propone un m´etodo de selecci´on autom´atica basada en LOO y una reducci´on simple del espacio de b´usqueda de los hiperpar´ametros utilizando una descomposici´on matricial del problema dual de SVM (BSVM). Chapelle et al. [2002] propone una metodolog´ıa fundamentada en la diferenciabilidad del kernel, el criterio de Radio/Margen y su dependencia con la soluci´on del problema de optimizaci´on de SVM para derivar un esquema de gradiente descendiente para obtener hiperpar´ametros ´optimos. Keerthi and Lin [2003] hacen un an´alisis del comportamiento asint´otico de los par´ametros de SVM con kernel gaussiano y derivan un procedimiento heur´ıstico para encontrarlos y obtener un error de generalizaci´on bajo. Keerthi [2002] presenta una implementaci´on del m´etodo de Chapelle et al. [2002] utilizando kernel RBF, NPA (algoritmo de punto cercano) como algoritmo de optimizaci´on iterativo para SVM, SMO (optimizaci´on secuencial m´ınima) para resolver el problema de Radio/Margen y quasi-Newton como procedimiento de gradiente descendiente. Chung et al. [2003] utiliza la cota Radio/Margen con kernel gaussiano para hacer una modificaci´on en el esquema de SVM y derivar a partir de L1-SVM y L2-SVM un m´etodo de selecci´on autom´atica de par´ametros. Duan et al. [2003] hace una evaluaci´on emp´ırica del desempe˜no de varias medidas para selecci´on de hiperpar´ametros, entre ellos: error de validaci´on (como referente), validaci´on cruzada, cota χi−alpha, cota VC (Vapnik-Chervonekis), Span aproximado yD2kwk2, utilizando bases de datos est´andar en reconocimiento de patrones.
1.2.
Objetivos Principales del Trabajo
Las publicaciones reportadas hasta la fecha presentan un marcado inter´es por encontrar cotas del riesgo emp´ırico de manera que no sea necesario llevar a cabo una validaci´on para evaluar la soluci´on obtenida por una SVM para un problema dado. En la medida en que ha sido posible se han desarrollado m´etodos de selecci´on autom´atica de hiperpar´ametros haciendo uso de dichas cotas y m´etodos de optimizaci´on. Con esto, no es parte de esta tesis realizar un trabajo de investigaci´on acerca de las cotas, ni de la forma o caracter´ısticas del espacio de los hiperpar´ametros o relaciones entre ellos. Teniendo en cuenta las consideraciones anteriores, los objetivos de este trabajo son:
Profundizar en las t´ecnicas actuales bas´andose en la teor´ıa de SVM con el fin de desarrollar un algoritmo de selecci´on autom´atica de hiperpar´ametros en SVM con miras obtener un buen desempe˜no de los clasificadores en cuanto a error de validaci´on y costo computacional.
Analizar las t´ecnicas actuales de selecci´on de par´ametros para identificar sus ventajas y desventajas, como base del trabajo a realizar. Investigar acerca de m´etodos de optimizaci´on, b´usqueda y par´ametros efectivos en SVM para luego desarrollar un algoritmo de selecci´on de hiperpar´ametros autom´atica que ofrezca ventajas sobre las otras desarrolladas hasta el momento.
Para finalizar, se debe decir que en cuanto a los experimentos num´ericos realizados, las compara-ciones con otras t´ecnicas han de realizarse de acuerdo a las posibilidades y el criterio del autor.
1.3.
Estructura del Documento
Partiendo del hecho que se considera primordial que este documento sea lo m´as compacto y completo posible, en los cap´ıtulos 2 y 4 se presentan respectivamente, los fundamentos te´oricos y considera-ciones pr´acticas de las SVM y la clase de estrategias evolutivas empleadas en este trabajo. En el cap´ıtulo 3 se describen los m´etodos de selecci´on autom´atica como componentes del marco com-parativo usado para los experimentos en el cap´ıtulo 6. En el cap´ıtulo 5 se describe y se hacen las consideraciones pertinentes con respecto al algoritmo propuesto. El documento termina con un sumario de los resultados obtenidos e ideas para un trabajo posterior, adem´as de un ap´endice concerniente a kernels como complemento a los fundamentos te´oricos de las SVM.
M´
aquinas de Soporte Vectorial
Las M´aquinas de Soporte Vectorial (SVM), han mostrado en los ´ultimos a˜nos su capacidad en la clasificaci´on y reconocimiento de patrones en general. El objetivo de este cap´ıtulo es presentar los fundamentos b´asicos, tanto te´oricos como pr´acticos de las SVM y soportar su potencial en tareas de clasificaci´on. Intuitivamente, dado un grupo de datos distribuidos en dos clases, una SVM lineal busca un hiperplano de tal manera que la mayor cantidad de puntos de la misma clase queden al mismo lado, mientras se maximiza la distancia de dichas clases al hiperplano. De acuerdo a Vapnik [1995], este hiperplano minimiza el riesgo de clasificaciones err´oneas en el grupo tomado para realizar el proceso de validaci´on.
2.1.
Clasificaci´
on con Vectores de Soporte
Para un grupo de entrenamiento de tama˜noN compuesto de pares atributo-etiqueta (xi, yi)1≤i≤N,
siendoxi∈Rn yyi∈ {−1,1}, se desea obtener una ecuaci´on para un hiperplano que divida dicho
grupo de entrenamiento, de manera que aquellos puntos con igual etiqueta queden al mismo lado del hiperplano. Esto significa encontrar unwy un btal que
yi(w0xi+b)>0, i= 1, ..., N (2.1)
Si existe un hiperplano que satisfaga (2.1), se dice que los datos sonlinealmente separables. En este caso,wyb se pueden escalar as´ı,
m´ın
1≤i≤N yi(w
0x
i+b)≥1
de tal manera, que el punto mas cercano al hiperplano tenga como distancia 1/kwk. Luego (2.1) se puede escribir como
yi(w0xi+b)≥1 (2.2)
as´ı, entre todos los posibles hiperplanos, aquel cuya distancia al punto m´as cercano es m´axima se denomina el “´optimo hiperplano de separaci´on” (OSH). Mientras la distancia al hiperplano ´optimo sea 1/kwk, encontrar el OSH equivale a resolver el siguiente problema
m´ın w,b 1 2w 0w sujeto ayi(w0xi+b)≥1, ∀i (2.3)
La cantidad 2/kwk es llamada “margen” y el hiperplano que maximiza dicho margen, OSH. El margen puede ser visto como una medida de la dificultad del problema, as´ı, entre m´as peque˜no sea el margen m´as dif´ıcil es el problema; o de otro modo, se espera una mejor capacidad de generalizaci´on si el margen es m´as grande (ver figura 2.1).
Mientrasw0wsea convexo, minimizar la ecuaci´on (2.3) sujeto a (2.2) es posible utilizando multipli-cadores de Lagrange [Burges, 1998]. Seanα={α1, ..., αN} losN multiplicadores de Lagrange no
negativos asociados a (2.2), para minimizar (2.3) se debe encontrar el punto de silla de la siguiente funci´on de Lagrange L(w, b, α) =1 2w 0w− N X i=1 αi[yi(w0xi+b)−1] (2.4)
Para encontrar dicho punto, hay que minimizar la funci´on (2.4) sobre wy b, y luego maximizarla sobre los multiplicadores de Lagrange αi ≥0. El punto de silla debe satisfacer las condiciones de
Figura 2.1: Hiperplanos que separan correctamente los datos. El OSH de la derecha tiene
un margen mayor por lo tanto se espera una mejor generalizaci´
on
Karush-Kuhn-Tucker (KKT) [Burges, 1998], ∂L(w, b, α) b = N X i=1 yiαi= 0 ∂L(w, b, α) w =w− N X i=1 αiyixi= 0 (2.5)
Substituyendo (2.5) en (2.4) el problema de optimizaci´on apunta ahora a resolver
m´ax N X i αi− 1 2 N X i,j αiαjyiyjx0ixj sujeto a N X i=1 yiαi= 0 yαi≥0, ∀i (2.6)
Esto puede ser logrado utilizando m´etodos de programaci´on cuadr´atica est´andar [Burges, 1998]. Una vez el vectorα0={α0
i, ..., α0N} soluci´on de (2.6) ha sido encontrado, a partir de (2.5), el OSH
(w, b) tiene la siguiente forma
w0=
N X
i=1
mientrasb0 puede ser obtenido a partir de las condiciones de KKT
α0i[yi(w0xi+b)−1] = 0 (2.8)
N´otese que de la ecuaci´on (2.8), los puntos para los cuales α0i > 0, satisfacen la desigualdad en (2.2). Geom´etricamente, esto significa que aquellos puntos son los m´as cercanos al OSH (ver figura 2.1). Estos puntos juegan un papel importante debido a que son los ´unicos valores necesarios en la expresi´on para el OSH (ver ecuaci´on 2.7) y son llamados “vectores de soporte” (SV), por el hecho que dan “soporte” a la expansi´on dew0.
Dado un vector de soportexi, el par´ametrobpuede ser obtenido de las condiciones KKT como
b0=yi−w00xi
El problema de clasificar un nuevo puntox, es resuelto examinando el signo de w00x+b0. Ahora,
considerando la expansi´on (2.7) de w0, la funci´on de decisi´on f(x) para el hiperplano puede ser
escrita como f(x) = sign N X i=1 α0iyix0ix+b !
2.2.
Caso Linealmente no Separable
Si los datos son linealmente no separables, buscar un OSH carece completamente de sentido. Con la finalidad de posibilitar las violaciones, se pueden introducir variables “slack” (de relajaci´on)
(ξ1, ..., ξN), para ξi ≥ 0 [Cortes and Vapnik], de manera que la expresi´on (2.2) se puede escribir
como
yi(w0xi+b)≥1 +ξi, ∀i
El prop´osito de las variablesξies permitir puntos err´oneamente clasificados, los cuales correspondan
generalizado puede ser obtenido como la soluci´on del siguiente problema m´ın w,b 1 2w 0w+C N X i=1 ξi sujeto ayi(w0xi+b)≥1 +ξi yξ≥0, ∀i (2.9)
El primer t´ermino es minimizado para controlar la capacidad de aprendizaje del mismo modo que en el caso separable; el segundo t´ermino permite mantener bajo control el n´umero de clasificaciones err´oneas. El par´ametroC es elegido por el usuario de manera que un valor grande es equivalente a asignar una alta penalizaci´on a los errores. En analog´ıa con el caso separable, la utilizaci´on de multiplicadores de Lagrange deriva en el siguiente problema de optimizaci´on,
m´ax N X i αi− 1 2 N X i,j=0 αiαjyiyjx0ixj sujeto a X i yiαi = 0 y 0≥αi≥C, ∀i (2.10)
de la ecuaci´on (2.10) se puede notar que la ´unica diferencia hasta el momento con el caso separable es que ahoraαtiene una cota superiorC.
2.3.
M´
aquinas de Soporte no Lineales
El principio de SVM no lineal consiste en mapear el espacio de entrada a un espacio de representaci´on de dimensi´on alta a trav´es de una funci´on no lineal elegida a priori [Boser et al., 1992], ver figura 2.2.
Sinembargo en este caso, surge un problema computacional, la dimensi´on del espacio de repre-sentaci´on puede ser muy alta y la dificultad radica en c´omo construir un hiperplano de separaci´on en este espacio. La respuesta al problema parte de que para construir dicho hiperplano, el mapeo
Espacio de entrada
Espacio de representación
Hiperplano óptimo en el espacio de representación
Figura 2.2: La SVM mapea el espacio de entrada en otro de representaci´
on de dimensi´
on
alta y luego construye un OSH sobre este ´
ultimo
m´ax N X i αi− 1 2 N X i,j αiαjyiyjφ(xi)0φ(xj) sujeto a N X i=1 yiαi= 0 y αi≥0, ∀i
de lo anterior, el algoritmo de entrenamiento solo depende de los datos a trav´es de los productos punto en el espacio de representaci´on, esto es, funciones de la formaφ(xi)0φ(xj). Sea dada una
fun-ci´on kernel sim´etricaKtal queK(xi, xj) =φ(xi)0φ(xj), de modo que el algoritmo de entrenamiento
dependa solo deK y el mapeoφno sea usado expl´ıcitamente.
Dadoφ:Rd→ H, el kernelK esK(x
i, xj) =φ(xi)0φ(xj), pero de manera inversa, dado un kernel
K se deben establecer las condiciones para que el mapeo exista. Tales condiciones son aseguradas por las condiciones de Mercer (ver ap´endice A):
Teorema 1 SeaK(x, y)una funci´on sim´etrica continua enL2(C), luego, existe un mapeoφy una
expansi´on, tal que
K(x, y) =
∞
X
i=1
si y solo si, para alg´ung∈L2(C), tal que
Z
C×C
K(x, y)g(x)g(y)dxdy≥0 (2.12)
N´otese que para casos espec´ıficos, puede no ser f´acil mostrar cuando las condiciones de Mercer son cumplidas, mientras que (2.12) debe mantenerse para alg´ung∈L2(C). Sin embargo, es f´acil probar
que la condici´on se cumple para el kernel polinomialK(x, y) = (x0y)p [ver Burges, 1998]. Los primeros kernels investigados para reconocimiento de patrones fueron los siguientes
Polinomial:K(x, y) = (x0y+c)dpara c >0
Funci´on de base radial (RBF): K(x, y) =exp(−γkx−yk2) paraγ >0
Sigmoide:tanh(κx0y+ν)
El primero resulta en un clasificador con funci´on de decisi´on polinomial, el segundo un clasificador con funci´on de base radial y el ´ultimo un tipo particular de red sigmoidal de dos capas. Para el caso de RBF, el n´umero de centros (n´umero de SV), los centros (SV), los pesos (αi) y el desplazamiento
(b) son generados autom´aticamente por la SVM en la etapa de entrenamiento y dan excelentes resultados en comparaci´on a la red RBF cl´asica [Sch¨olkopf et al., 1996]. De la misma forma, para el caso del perceptr´on multicapa (MLP), la arquitectura (n´umero de nodos ocultos) es determinada por el entrenamiento de la SVM.
2.4.
Capacidad de Generalizaci´
on
En esta secci´on, se dan algunas bases te´oricas que describen la capacidad de generalizaci´on de las SVM.
2.4.1.
Riesgo Actual, Riesgo Emp´ırico y Dimensi´
on VC
Suponiendo que se tienenN observaciones (xi, yi)1≤i≤N para xi ∈Rn yyi ∈ {−1,1} donde yi es
la etiqueta paraxi, se asume existe una probabilidadP(x, y) para la cual los datos est´an descritos.
definida como un grupo de posibles mapeosx→f(x, α) donde las funcionesf(x, α) son descritas por los par´ametros ajustablesα. Una elecci´on particular deα, genera una “m´aquina entrenada” en particular. Esto es, por ejemplo, una red neuronal con una arquitectura fija, dondeαcorresponde a los pesos y los desplazamientos, es en efecto una m´aquina de aprendizaje.
La esperanza del error de validaci´on, para una m´aquina entrenada es por consiguiente [Vapnik, 1995]:
R(α) =
Z 1
2|y−f(x, α)|dP(x, y)
La cantidadR(α) es llamada riesgo esperado o simplemente “riesgo”. Se llamar´a aqu´ı riesgo actual para enfatizar que es la cantidad en la que finalmente se est´a interesado. El “riesgo emp´ırico”,
Remp(x) est´a definido como la medida de error en un grupo dado de validaci´on:
Remp(α) = 1 2N N X i=1 |yi−f(x, α)|
La cantidadQ((xi, yi), α) = 21|yi−f(x, α)| es llamada “p´erdida”. Para el caso descrito aqu´ı, solo
toma valores entre 0 y 1. Si se escoge unη, de manera que 0≤η≤1, luego, con una probabilidad de al menos 1−η, la siguiente cota se mantiene [Vapnik, 1995]
R(α)≤Remp(α) +
s
h(log(2N/h) + 1)−log(η/4)
N
dondehes un entero no negativo llamado dimensi´on de Vapnik-Chervonenkis (VC) y es la medida de la capacidad de la m´aquina de aprendizaje. El segundo t´ermino de la desigualdad es llamado “confidencia VC”, el cual es tan peque˜no como la dimensi´on VC, por lo tanto una forma de controlar
la capacidad de generalizaci´on de una m´aquina es manipular la dimensi´on VC.
Sea definido un grupo de funciones {f(α)}, tal que para un grupo dado de N puntos, se puedan etiquetar de todas las posibles 2N formas, y para cada etiqueta, un miembro del grupo{f(α)}pueda encontrar la manera de asignar dichas etiquetas. Se dice que este grupo de puntos es fragmentado por el grupo de funciones. La dimensi´on VC para el grupo de funciones{f(α)}est´a definido como el n´umero m´aximo de puntos de entrenamiento que pueden ser fragmentados por{f(α)}.
2.4.2.
La Dimensi´
on VC de las SVM
Primero, se presenta un teorema que establece una cota de la dimensi´on VC para hiperplanos de separaci´on
Teorema 2 Sea X ⊂ Rn un conjunto de vectores, ∀x ⊂ X, kxk
2 < R. Un subconjunto S de
hiperplanos, tales que∀(w, b)⊂S,
inf
x⊂X|w
0x+b|= 1
|w| ≤A
tiene una dimensi´on VC acotada por
V Cdim<m´ın(R2A2, n) + 1
De manera que minimizando w0w, tambi´en la cota de la dimensi´on VC para los hiperplanos de separaci´on y, por lo tanto una mejor generalizaci´on esperada. N´otese que en el caso de SVM no lineal, este teorema debe ser aplicado sobre el espacio de representaci´on, as´ı, la capacidad de generalizaci´on est´a bajo control, incluso si el espacio es infinito dimensional.
2.4.3.
Procedimiento Leave-One-Out
Una manera de predecir el desempe˜no de generalizaci´on de una SVM es estimar la dimensi´on VC calculando el t´erminoR2w0w. Otra manera es utilizar un estimador Leave-one-Out (LOO) [Vapnik,
1998]. Dada una muestra deN+ 1 ejemplos de entrenamiento, el procedimiento para LOO consiste en seguir los siguientes pasos (∀i):
Remover el ejemploxi del grupo de entrenamiento
Entrenar la m´aquina con el nuevo grupo de entrenamiento a fin de obtener losαi
Probar sixi es correctamente clasificado
El n´umero de errores cometidos por la m´aquina en el procedimiento LOO est´a denotado porLN+1.
LN+1= N+1 X n=1 Q((xi, yi), α) La cantidad LN+1
N+1, es la estimaci´on del error de generalizaci´on. Gracias a esto el siguiente teorema
es v´alido
Teorema 3 (Luntz y Brailovsky, 1969) El estimador LOO es no sesgado, esto es
E LN+1 N+ 1 =E(RN)
La esperanza del t´ermino del lado izquierdo es tomada del grupo de entrenamiento de tama˜no
N+ 1 yE(RN) es la esperanza del riesgo actual para OSH construidos sobre la base de un grupo
de entrenamiento de tama˜noN. Entonces, para controlar la capacidad de generalizaci´on se debe tratar de minimizar el n´umero de errores cometidos en el procedimiento LOO.
Nota 1 Para SVM, el procedimiento LOO se debe realizar solo en los vectores de soporte, los no vectores de soporte ser´an reconocidos correctamente debido a que un no vector de soporte no afecta la funci´on de decisi´on.
2.4.4.
Cotas para el Estimador de Leave-One-Out
Se muestran aqu´ı, diferentes cotas para el estimador LOO en SVM.N´
umero de SV
Debido al hecho presentado en la nota 1, se puede restringir la sumatoria solo a los vectores de soporte y luego acotar superiormente cada t´ermino en la suma por 1, de lo cual se obtiene la siguiente cota del n´umero de errores cometidos por el procedimiento LOO [Vapnik, 1995]
T =NSV
N
Jaakkola-Haussler
Para SVM sin valor de desplazamiento, analizando el proceso de optimizaci´on del algoritmo de SVM cuando se calcula el error LOO, Jaakkola and Haussler [1999] provee la siguiente desigualdad
yp(f0(xp)−fp(xp))≤α0pK(xp, xp) =Up
de la cual se extrae la siguiente cota
T = 1 N N X p=1 Ψ(α0pK(xp, xp)−1)
En [Wahba et al., 2000] se propone una estimaci´on de los errores producidos bajo el esquema LOO, para el cual en el caso de SVM con margen r´ıgido (C=∞) se vuelve
T = 1
N
X
α0pK(xp, xp)
lo cual se puede ver como una cota superior de Jaakkola-Haussler siempre y cuando Ψ(x−1)≤x
parax≥0.
Opper-Winther
En el caso de SVM con margen r´ıgido sin desplazamiento, Opper and Winther [2000] utiliza un m´etodo basado en la teor´ıa de respuesta lineal para probar que bajo el supuesto que un grupo de vectores de soporte no cambia cuando se remueve un ejemplop, se tiene
yp(f0(xp)−fp(xp)) =
α0
p
(KSV−1)pp
dondeKSV es la matriz de productos internos entre los vectores de soporte y que lleva a la siguiente
T = 1 N N X p=1 Ψ( α 0 p (KSV−1)pp −1)
Radio-Margen
Sea que el margen ´optimo es igual a M y que las im´agenesφ(xi) de los vectores de entrenamiento
xi, est´an contenidas en una esfera de radioR. Entonces, el siguiente teorema se mantiene [Vapnik
and Chapelle, 2000]
Teorema 4 Dado un conjunto de entrenamientoZ ={(x1, y1), ...,(xN, yN)}, un espacio de
repre-sentaci´on enHy un hiperplano(w, b), el margen M(w, b, Z)y el radioR(Z)son definidos como
M(w, b, Z) = m´ın (xi,yi)∈Z yi(w0φ(xi) +b) kwk R((Z)) = m´ın a,xi kφ(xi) +ak
El algoritmo de margen m´aximo, LN : (X × Y)N → H ×R toma como entrada el conjunto de
entrenamiento de longitud N y devuelve un hiperplano en el espacio de representaci´on, tal que el margen es maximizado. N´otese que asumiendo que dicho grupo de entrenamiento es separable, entonces M(w, b, Z) > 0. Bajo este supuesto, para todas las medidas de probabilidad P(Z), la probabilidad esperada de clasificaci´on err´onea es
perr(w, b) =P(sign(w0φ(X) +b)6=Y) con la cota E{perr(LN−1(Z))} ≤ 1 NE R2(Z) M2(L(Z), Z) (2.13)
donde la esperanza es tomada sobre un subconjunto aleatorio deZ de longitud N−1 para el lado izquierdo yN para el derecho en (2.13).
Este teorema se ajusta a la idea de construcci´on de un hiperplano que separe los datos con un margen grande (entre m´as grande sea dicho margen, mejor sera el desempe˜no del hiperplano construido).
De acuerdo al teorema 4, el desempe˜no promedio depende de EnMR22
o
y no simplemente de cuan grande sea el margenM.
Para SVM sin desplazamiento y sin errores de entrenamiento, Vapnik [1998] propone la siguiente cota superior para el n´umero de errores cometidos por LOO
T = 1
N
R2
M2 (2.14)
dondeRyM son respectivamente el radio y el margen definidos en el teorema 4.
Span de los Vectores de Soporte
Vapnik and Chapelle [2000] derivaron otra estimaci´on utilizando el concepto delspande los vectores de soporte. Bajo el supuesto de que los SV permanecen intactos durante el procedimiento de LOO, la siguiente igualdad es cierta
yp(f0(xp)−fp(xp)) =α0pS
2
p
dondeSp es la distancia entre el puntoφ(xi) y la colecci´on Λp, y a su vez,
Λp= X i6=p , α0 i>0 λiφ(xi), X i6=p λ= 1
de lo que se obtiene, el n´umero exacto de errores cometidos por LOO bajo el supuesto previo. As´ı, la cota para LOO se define como sigue
T = 1 N N X p=1 Ψ(α0pSp2−1) (2.15)
Adem´as, la estimaci´on delspanpuede ser relacionada con las otras mencionadas con formulaciones simples [Chapelle et al., 2002].
2.5.
Algoritmo de Entrenamiento
Considerando la f´ormula general para la SVM, es decir, no lineal y no separable:
m´ax N X i αi− 1 2 N X i,j αiαjyiyjK(xi, xj) sujeto a N X i=1 yiαi= 0 y 0≤αi≤C, ∀i (2.16)
el m´etodo de descomposici´on es tenido en cuenta considerando la densidad de la matriz kernel
K(xi, xj) de la ecuaci´on (2.11). Buena parte del trabajo al rededor de este m´etodo puede ser
encontrado en [Osuna et al., 1997, Joachims, 1999, Platt, 1999, Saunders et al., 1998].
2.5.1.
M´
etodo de Descomposici´
on
Partiendo de la ecuaci´on (2.16) se puede realizar la siguiente representaci´on vectorial:
m´ın α 1 2α 0Qα−e0α sujeto ay0α= 0 y 0≤αi≤C, ∀i (2.17) dondeQij =yiyjK(xi, xj) ye= 1, ∀i. Algoritmo 1
Dado un n´umero q < N, como tama˜no del conjunto de trabajo, se encuentra α1 soluci´on
inicial y se hacek= 1
Siαk es la soluci´on ´optima de la ecuaci´on (2.17) se termina, de otro modo se busca un
con-juntoB ⊂ {1, ..., N}con tama˜no q. Se definenL≡ {1, ..., N}\B,αkB y αkL como subvectores deαk correspondientes aB y a Lrespectivamente
Se resuelve el siguiente problema respecto deαB: m´ın αB 1 2α 0 BQBBαB−(eB+QBLαkL)0αB sujeto a yB0 αB=−yL0α k L y 0≤(αB)i≤C, ∀i (2.18) donde " QBB QBL QLB QLL #
es una permutaci´on de la matrizQ
Se dejaαkB+1 como soluci´on ´optima de (2.18) yαkL+1≡αk
L. Se hacek=k+ 1 y se vuelve al
paso 2
La idea b´asica del algoritmo de descomposici´on es que en cada iteraci´on los ´ındices{1, ..., N} del conjunto de entrenamiento, sean separados en dos m´as peque˜nosByL, dondeBes el de trabajo. El vectorαLes fijado de manera que el objetivo sea 12α
0
BQBBαB−(eB−QBLαL)0αB+12α
0
LQLLαL−
e0LαL. Luego, se resuelve un subproblema respecto deαB,Bes actualizado en cada iteraci´on (n´otese
que para simplificar la notaci´on se utilizaB en vez deBk) y el decrecimiento estricto de la funci´on
objetivo se sostiene (ver secci´on 2.5.3 referente a la convergencia te´orica del algoritmo).
2.5.2.
Selecci´
on del Conjunto de Trabajo y Criterio de Parada
Una de las partes importantes en el algoritmo de descomposici´on es la selecci´on del grupo de trabajo
B. La condici´on de Karush-Kuhn Tucker (KKT) en la ecuaci´on (2.17) muestra que existe un escalar y dos vectores no negativosλyµ, tales que
Qα+e+by=λ−µ
λiαi= 0, µi(C−α)i= 0
λi≥0, µi≥0, ∀i
(2.19)
N´otese que si se escriben las condiciones de KKT para el primario y el dual, resultan ser las mismas y el multiplicador de Lagrange de la restricci´on linealy0α= 0 coincide con el valor de desplazamiento
Qα+e+by≥0, si α= 0 = 0, si 0< α < C
≤0, si α=C
ahora, utilizandoy=±1, ∀iy asumiendo queC >0, se tiene que
y= 1, αt< C ⇒ (Qα+e)t+b≥0⇒b≥ −(Qα+e)t=−∇f(α)t
y=−1, αt>0 ⇒ (Qα+e)t−b≤0⇒b≥(Qα+e)t=∇f(α)t
y=−1, αt< C ⇒ (Qα+e)t−b≥0⇒b≤(Qα+e)t=∇f(α)t
y= 1, αt>0 ⇒ (Qα+e)t+b≤0⇒b≤ −(Qα+e)t=−∇f(α)t
dondef(α) = 12α0Qα+e0αy∇f(α) es el gradiente def(α) enαy considerando
i≡argmax({−∇f(α)t|yt= 1, αt< C},{∇f(α)t|yt=−1, αt>0})
j≡argmin({∇f(α)t|yt=−1, αt< C},{−∇f(α)t|yt= 1, αt>0})
(2.20)
de manera queB={i, j}puede usarse como grupo de trabajo para el subproblema en la ecuaci´on (2.18) del m´etodo de descomposici´on, dondeiy j son los dos elementos que m´as violan las condi-ciones de KKT. La idea de utilizar dos elementos como grupo de trabajo son tomadas del algoritmo de optimizaci´on secuencial m´ınima (SMO) de Platt [1999]. La principal ventaja de esto, es que la soluci´on anal´ıtica de la ecuaci´on (2.17) puede ser obtenida sin la necesidad de un programa de optimizaci´on comercial. N´otese que la ecuaci´on (2.20) es un caso especial del m´etodo SV Mlight
en Joachims [1999]. Para ser m´as preciso, enSV Mlight, si αes la soluci´on actual del problema, el
siguiente es resuelto m´ınd∇f(α)0d y0d= 0, −1≤d≤1, dt≥0, siαt= 0, dt≤0, siαt= 0 (2.21) |{dtdt6= 0}|=q (2.22)
n´otese que|{dtdt6= 0}|es el conjunto de componentes ded que no son cero. La restricci´on en la
componentes deαcon dt diferentes de cero son incluidas en el grupo de trabajoB utilizado para
construir el subproblema en la ecuaci´on (2.18). En efecto,dunicamente se usa para identificar´ By no para encontrar la direcci´on de b´usqueda.
Puede ser visto claramente que siq= 2 la soluci´on de la ecuaci´on (2.21) es
i= argmin{∇f(α)tdt|ytdt= 1; dt≥0, siαt= 0; dt≤0,siαt=C}
j= argmin(∇f(α)tdt|ytdt=−1; dt≥0, siαt= 0; dt≤0,siαt=C}
la cual es igual a la ecuaci´on (2.20) y corresponde a la segunda modificaci´on del algoritmo SMO en Keerthi et al. [1999].
Ahora, se pueden definir
gi≡ ( −∇f(α)i siyi= 1, αi< C ∇f(α)isiyi=−1, αi>0 (2.23) y gj≡ ( −∇f(α)j siyj =−1, αj< C ∇f(α)j siyj= 1, αj>0 (2.24)
De la ecuaci´on (2.21) se tiene que
gi≤ −gj (2.25)
lo cual implica que αes una soluci´on ´optima de la ecuaci´on (2.16), de manera que el criterio de parada puede ser escrito e implementado de la siguiente forma como
gi≤ −gj+ (2.26)
2.5.3.
Convergencia del M´
etodo de Descomposici´
on
La convergencia de los m´etodos de descomposici´on fue inicialmente estudiada en Chang et al. [2000] sinembargo, no coinciden con las implementaciones existentes. En esta secci´on, solo se tienen en cuenta resultados de convergencia para el m´etodo espec´ıfico de descomposici´on de la secci´on 2.5.1.
A partir de Keerthi and Gilbert [2002] se tiene que
Teorema 5 Dado cualquier >0despu´es de un n´umero finito de iteraciones la expresi´on en (2.26) ser´a satisfecha.
El teorema 5 establece la llamada propiedad de terminaci´on finita, de modo que se tiene la seguridad de que luego de un n´umero finito de pasos el algoritmo terminar´a.
Teorema 6 Si {αk} es la secuencia generada por el algoritmo de descomposici´on en la secci´on
2.5.1, el l´ımite de cualquiera de sus subsecuencias convergentes es soluci´on ´optima de la ecuaci´on (2.17).
El teorema 5 no implica el teorema 6 si se considerangjygjen la ecuaci´on (2.26) como funciones de
αque no son continuas. Por consiguiente no se puede tomar el l´ımite en ambos lados de la ecuaci´on (2.26) y afirmar que cualquier punto convergente ya satisface las condiciones de KKT.
El teorema 6 fue inicialmente demostrado como una caso especial de los resultados generales en Lin [2001c] donde algunos supuestos son necesarios. Partiendo de la demostraci´on en Lin [2001a], los supuestos son eliminados, por tanto el teorema es completamente v´alido.
Considerando la convergencia local, debido a que el algoritmo utilizado es una caso especial de uno discutido en Lin [2001b], se tiene el siguiente teorema
Teorema 7 Si Q es definida positiva y el dual del problema de optimizaci´on es degenerado (ver supuesto2 en Lin [2001b]), existe unc <1, tal que luego de que ksuficientemente grande,
f(αk+1)−f(α∗)≤c(f(αk)−f(α∗))
Con esto, el m´etodo de descomposici´on aqu´ı descrito es linealmente convergente. Los resultados mostrados en esta secci´on, son v´alidos para kernels que pueden ser considerados como el producto punto entre dos vectores de caracter´ısticas, esto es, Qes semidefinida positiva. Por ejemplo, para algunos kernels como el sigmoidal (ver ecuaci´on A.5) Q puede no ser semidefinida positiva por tanto la ecuaci´on (2.17) es un problema de optimizaci´on no convexo que puede contener varios m´ınimos locales. Sinembargo, con unas peque˜nas modificaciones del algoritmo 1 se puede garantizar la convergencia a un m´ınimo local (ver Lin and Lin [2003]).
2.5.4.
Soluci´
on Anal´ıtica
Con la selecci´on del grupo de trabajo en la secci´on 2.5.2, la ecuaci´on (2.18) se convierte en un problema de dos variables
m´ın αi,αj 1 2[αiαj] " Qii Qij Qji Qjj # " αi αj # + (Qi,LαL−1)αi+ (Qj,LαL−1)αj sujeto ayiαi+yjαj = 0≡ −y0Lα k L 0≤αi, αj≤C (2.27)
En Platt [1999] se sustituyeαi poryi(−yL0αL−yjαj) en la funci´on objetivo de la ecuaci´on (2.18)
y se resuelve la minimizaci´on sin restricciones respecto aαi, obteni´endose la siguiente soluci´on
αnewj ≡ αj+ − Gi−Gj Qii+Qjj+2Qij siyi6=yj αj+ Gi+Gj Qii+Qjj−2Qij si yi=yj (2.28) donde Gi≡ ∇f αi yGj≡ ∇f(α)j
Si este ´ultimo valor est´a por fuera de de la posible regi´on paraαi, el valor en la ecuaci´on (2.28) es
truncado y asignado aαnewj . Por ejemplo, siyi=yj yC≤αi+αj ≤2C,αnewj debe satisfacer
de modo que el m´aximo valor paraαnew
i yαnewj esC. Por consiguiente
αj+ Gi+Gj Qii+Qjj−2Qij ≤L entoncesαjnew=Ly αnewi =αi+αj−αnewj =C (2.29)
Esto puede ser ilustrado en la figura 2.3 en la cual se optimiza una funci´on cuadr´atica sobre un segmento de recta. El segmento de recta es la intersecci´on entre la restricci´on linealyiαi+yjαj y
las restricciones acotadas 0≤αi yαj≤C.
Figura 2.3: Soluci´
on anal´ıtica de un problema de optimizaci´
on de dos variables
No obstante, la igualdad en la ecuaci´on (2.29) podr´ıa no mantenerse si la operaci´on de punto flotante causara queαi+αj−αnewj =αi+αj−(αi+αj−C) lo cual es diferente deC. Luego, en la mayor´ıade los casos, una peque˜na toleranciaαes especificada de manera que todoαi≥C−αes una cota
superior yαi ≤α = 0. Esto ´ultimo es necesario ya que algunos datos podr´ıan ser considerados
err´oneamente como vectores de soporte. En adici´on el c´alculo del valor de desplazamiento tambi´en necesita correcci´on para aquellos valores libres deαi (0≤αi≤C).
En Hsu and Lin [2002b] es se˜nalado que si todos losαi obtienen sus valores mediante asignaciones
directas, no es necesario utilizar un valor deα. Para ser m´as precisos, en una operaci´on de punto
flotante siαi←C es asignado, una futura comparaci´on entreαi yC retornar´a verdadero siempre
Otro peque˜no problema es que el denominador en la ecuaci´on (2.28) puede ser cero. Cuando esto sucede,
Qij =±(Qii+Qij)/2
por lo tanto
QiiQjj−Q2ij=QiiQjj−(Qii+Qjj)2/4 =−(Qii−Qij)2/a≤0
Ahora, considerando queQBB es definida positiva, el denominador cero en la ecuaci´on (2.28) no es
posible. De ah´ı que este problema solo pueda suceder cuandoQsea singular de 2×2. A continuaci´on se discuten dos situaciones en las cuales dicha matriz puede ser singular
La funci´onφno mapea los datos en vectores independientes en el espacio de alta dimensio-nalidad haciendo queQsea solo semidefinida positiva. Por ejemplo utilizando un kernel lineal o polinomial de orden bajo.
Algunos kernels tienen una interesante propiedad por la cualφ(xi)∀(i) son independientes
siempre y cuandoxi6=xj. Un ejemplo de esto es el kernel RBF (ver Micchelli [1986]), debido
a que en muchas situaciones pr´acticas algunosxi son los mismos lo cual implica columnas (o
filas) deQque son exactamente iguales y con esto la posibilidad de queQBBsea singular.
De cualquier manera, incluso si el denominador en la ecuaci´on (2.28) es cero no hay problemas num´ericos desde que en la ecuaci´on (2.26) se puede ver que
gi+gj≥
y durante el proceso de iteraci´on
gi+gj =±(−Gi−Gj), siyi6=yj, (y)
Si la matriz del kernel no es semidefinida positivaQii+Qjj±2Qij puede no ser positiva entonces la
ecuaci´on (2.28) puede no producir una actualizaci´on de modo que el valor objetivo sea disminuido. Adem´as el algoritmo puede permanecer en un solo punto qued´andose en un ciclo infinito. En Lin and Lin [2003] se estudia este problema en detalle y se propone la siguiente modificaci´on
αjnew≡ αj+ −Gi−Gj m´ax(Qii+Qjj+2Qij,0) siyi6=yj αj+ Gi+Gj m´ax(Qii+Qjj−2Qij,0) siyi=yj as´ı, se garantiza el decrecimiento estricto de la funci´on objetivo.
2.5.5.
C´
alculo de
b
Despu´es de encontrar la soluci´onαal problema de optimizaci´on la variablebdebe ser calculada para ser utilizada en la funci´on de decisi´on. Las condiciones KKT de la ecuaci´on (2.17) fueron mostradas en la ecuaci´on (2.20). Ahora, para el caso dey= 1 si existenαique satisfagan 0≤αi≤Centonces
se hace,r1=∇f(α)i. Para evitar errores num´ericos, se promedian como
r1=
P
0≤αi≤C,yi=1∇f(α)i P
0≤αi≤C,yi=11 Por otro lado, si no existe talαi, r1 debe satisfacer
m´ax
αi=C,yi=1
∇f(α)i≤r1≤ m´ın
αi=0,yi=1 ∇f(α)i
de donde r1 toma el punto medio del rango. Para yi =−1 un r2 se calcula de manera similar y
luego de que ambosr1yr2 son obtenidos,
−b= r1−r2 2
N´otese que las condiciones de KKT pueden ser escritas como
m´ax
αi>0,yi=±1
∇f(α)i≤ m´ın αi<C,yi=±1
de modo que el siguiente criterio de parada puede ser utilizado pr´acticamente: el algoritmo de descomposici´on para si en la iteraci´onαsatisface
m´ax(− m´ın αi<C,yi=1 ∇f(α)i+ m´ax αi>0,yi=1 ∇f(α)i, − m´ın αi<C,yi=−1 ∇f(α)i+ m´ax αi>0,yi=−1 ∇f(α)i)<
donde >0 es una constante elegida como tolerancia de parada.
2.5.6.
Contracci´
on
Considerando que en muchos de los problemas pr´acticos, el n´umero de vectores de soporte libres (0 ≤ αi ≤ C) es peque˜no, la t´ecnica de contracci´on reduce el tama˜no del problema de trabajo
sin considerar algunas variables acotadas [Joachims, 1999]. En un punto cercano al final del pro-ceso iterativo, el m´etodo de descomposici´on identifica un posible conjunto A de modo que todos los vectores de soporte libres queden contenidos en ´el. Para esto, el siguiente teorema muestra que en las iteraciones finales de la descomposici´on propuesta en la secci´on 2.5.2 solo las variables correspondientes a un conjunto peque˜no tienen la posibilidad de moverse [Lin, 2002]
Teorema 8 Si l´ımk→∞αk = ¯α por el teorema 6, entonces, α¯ es una soluci´on ´optima. Incluso,
cuandok es suficientemente grande, solo los elementos en
{t| −yt∇f( ¯α)t= m´ax( m´ax ¯ αi<C,yi=1 −∇f( ¯α)i, m´ax ¯ αi>0,yi=−1 ∇f( ¯α)i) = m´ın( m´ın ¯ αi<C,yi=−1 ∇f( ¯α)i, m´ın ¯ αi>0,yi=1 −∇f( ¯α)i)
pueden todav´ıa seguir siendo modificados.
por lo tanto, se tiende a pensar que si la variableαi es igual aC para algunas iteraciones, al final
de la soluci´on, ´esta permanece como cota superior. De ah´ı que en vez de resolver todo el problema de la ecuaci´on (2.17), se trabaja con uno de menor tama˜no
m´ın αA 1 2α 0 AQAAαA−(eA+QALαkL) 0α A sujeto ay0AαA=−y0Lα k L y 0≤(αA)i ≤C, ∀i (2.30)
dondeL={1, ..., N}\A. Sinembargo, esta heur´ıstica puede fallar si la soluci´on de la ecuaci´on (2.30) no es una parte correspondiente a la de la ecuaci´on (2.17). Cuando esto sucede, el problema completo se vuelve a optimizar desde un punto dondeαB es una soluci´on ´optima de la ecuaci´on (2.30) yαL
son variables acotadas identificadas antes del proceso de contracci´on. N´otese que mientras que se est´a resolviendo el problema de contracci´on solo se conoce el gradiente QAAαA+QALαL+eA
de la ecuaci´on (2.30). Considerando esto ´ultimo, cuando se optimiza de nuevo el problema de la ecuaci´on (2.17) se debe reconstruir completamente el gradiente def(α)ilo cual es un tanto costoso
en t´erminos computacionales. Para evitar esto, en vez de iniciar el proceso de contracci´on al final del proceso iterativo, se inicia desde el principio como sigue:
Luego de cada m´ın(N,1000) iteraciones se tratan de contraer algunas variables. As´ı, durante el proceso iterativo,
m´ın({∇f(αk)t|yt=−1, αt< C},{−∇f(αk)t|yt= 1, αt>0}) =−gii
<m´ax({−∇f(αk)t|yt= 1, αt< C},{∇f(αk)t|yt=−1, αt>0}) =gjj
la ecuaci´on (2.25) no se satisface todav´ıa. Entonces, se supone que sigi≤ −giide la ecuaci´on
(2.23) yαtest´a dentro del rango, es muy posible queαtno vuelva a cambiar, por lo tanto se
desactiva esa variable. Similarmente para−gj ≥gjj de la ecuaci´on (2.24) conαt dentro del
rango. De esta manera, el conjunto A de variables activas es din´amicamente reducido cada m´ın{L,1000}iteraciones.
Es claro que la estrategia de contracci´on arriba mencionada es muy agresiva considerando que el m´etodo de descomposici´on tiene una convergencia lenta y una gran cantidad de las iteraciones es consumida alcanzando el d´ıgito final de precisi´on requerido, no es deseado que se pierdan iteraciones innecesariamente debido a una contracci´on err´onea. Con esto, cuando el m´etodo de descomposici´on alcanza primero la toleranciagi≤ −gj+10, el gradiente completo
es reconstruido. Luego, basados en la informaci´on correcta, se utilizan las ecuaciones (2.23) y (2.24) para desactivar algunas variables y continuar con el m´etodo de descomposici´on.
Como el tama˜no del conjuntoAes din´amicamente reducido, para disminuir el costo computacional del gradiente∇f(α) durante las iteraciones se mantiene siempre
¯
Gi=C
X αj=c
As´ı, para el gradiente∇f(α)i coni3A se tiene ∇f(α)i= X i=1 Qijαj= ¯Gi+ X 0<αj<C Qijαj, ∀i
2.5.7.
Caching
Otra t´ecnica para reducir el costo computacional es el caching. teniendo en cuenta que que Q es completamente densa y puede no ser guardada en la memoria del computador, los elementosQij
son calculados en cuanto sea necesario. Luego, utilizando la idea de almacenamiento de cache se pueden guardar los elementos deQij recientemente usados [Joachims, 1999] haciendo que el costo
computacional de posteriores iteraciones sea menor.
El teorema 8 soporta el uso de caching debido a que en las iteraciones finales, solo algunas columnas de la matrizQ siguen siendo necesitadas de manera que si el cache contiene dichas columnas, se pueden evitar la mayor´ıa de las evaluaciones del kernel para esta etapa.
Para la implementaci´on pr´actica, se utiliza una estrategia simple consistente en din´amicamente guardar solo las columnas recientes utilizadas de la matrizQAA de la ecuaci´on (2.30).
2.5.8.
Complejidad Computacional
La discusi´on en la secci´on 2.5.3 es acerca de la convergencia global asint´otica del m´etodo de descom-posici´on. En adici´on, la convergencia lineal (teorema 7) es una propiedad de la tasa de convergencia local. En esta secci´on, se discute la complejidad computacional del m´etodo.
La mayor cantidad de operaciones residen en el c´alculo de QBLαkL+eB y la actualizaci´on de
∇f(αk) a∇f(αk+1). N´otese que∇f(α) es usada tanto en la selecci´on del grupo de trabajo como
en la condici´on de parada, de modo que puede considerarse todo junto como
y
∇f(αk+1) =∇f(αk) +Q:,B(αkb+1−α k
B) (2.32)
dondeQ:,B es la submatriz de Q con ´ındices enB. Esto es, en la k−´esima iteraci´on con∇f(αk)
conocido y la parte derecha de la ecuaci´on (2.31) como constructor del subproblema. Luego de que el subproblema es resuelto, la ecuaci´on (2.32) es empleada para obtener el pr´oximo∇f(αk+1). Como B contiene solo dos elementos y resolver el subproblema es f´acil, el costo sustancial reside en el c´alculo de Q:,B(αkb+1−α
k
B). La operaci´on en s´ı toma O(2N), sinembargo si Q:,B no est´a
disponible en el cache y cada operaci´on del kernel cuesta O(n) en efecto, cada columna de Q:,B
necesitaO(nN). De manera que la complejidad esiteraciones×O(N) oiteraciones×O(N n) seg´un sea el caso teniendo en cuenta que si se utiliza contracci´on,N disminuye gradualmente. Desafor-tunadamente, no se sabe mucho acerca de la complejidad del n´umero de iteraciones. Sinembargo, algunos resultados interesantes fueron obtenidos por Hush and Scovel [2003] aunque solo para los m´etodos de descomposici´on descritos en Chang et al. [2000].
2.6.
M´
aquinas de Soporte Multi Clase
En esta secci´on se discute el m´etodo para SVM multi clase “uno contra uno” [Knerr et al., 1990], en el cualk(k−1)/2 clasificadores deben ser construidos para entrenar pares de diferentes clases. La primera utilizaci´on de este m´etodo con SVM fue en Friedman [1996], KreSSel [1999]. Para el entrenamiento de las clasesi−´esima y j−´esima se resuelve el siguiente problema binario:
m´ın wij,bij,ξij 1 2(w ij)0wij+CX t (ξtij) (wij)0φ(xt) +bij ≥1−ξijt , sixt ∈I (wij)0φ(xt) +bij ≥ −1 +ξtij, sixt ∈J ξtij≥0
En la clasificaci´on se utiliza la estrategia de votaci´on de manera que la clase se asigna para cada puntox como la resultante con mayor n´umero de votos o en el caso que dos clases tengan igual n´umero de votos, simplemente la de menor ´ındice.
La otra t´ecnica m´as usada para SVM multi-clase es “uno contra todos” en la cual se construyen
k modelos binarios entre la clase i−´esima y el resto de las muestras de las otras clases juntas. Sinembargo, no se considera debido a que en la literatura [Weston and Watkins, 1998, Platt et al., 2000] presenta un menor desempe˜no que “uno contra uno”.
Adem´as, si bien se entrenan m´as clasificadoresk(k−1)/2, cada problema es m´as peque˜no (adem´as relativamente balanceado) haciendo que el tiempo de entrenamiento total no sea mayor al de “uno contra todos”. Algunos detalles comparativos de estas y otras t´ecnicas puede ser encontrado en Hsu and Lin [2002a].
Selecci´
on de Hiperpar´
ametros en
M´
aquinas de Soporte Vectorial
En el problema de aprendizaje supervisado se toma un conjunto de pares entrada salida y se trata de construir una funci´on f que mapea los vectores de entrada xi ∈ Rn en etiquetas yi ∈
{−1,1}. El objetivo consiste entonces en encontrar unaf ∈ F que minimize el riesgo emp´ıricoRemp
(ver secci´on 2.4.1) en ejemplos posteriores. Los algoritmos de aprendizaje usualmente dependen de par´ametros que controlan el tama˜no de la clase F o en la forma como la b´usqueda es realizada enF. Actualmente existen varias t´ecnicas para encontrar dichos par´ametros. El riesgo emp´ırico o error de generalizaci´on puede ser estimado o bien utilizando algunos de los datos no empleados en el entrenamiento (validaci´on de muestra independiente o validaci´on cruzada) o mediante alguna cota dada por el an´alisis te´orico (ver secci´on 2.4.4).
Usualmente existen m´ultiples par´ametros para ajustar al mismo tiempo, es mas, la estimaci´on del error no es una funci´on expl´ıcita de tales valores de manera que la estrategia natural es una b´usqueda exhaustiva en el espacio de los par´ametros lo cual corresponde a correr el algoritmo de entrenamiento en cada valor posible previamente almacenado en un vector (sujeto a alguna discretizaci´on). Otra manera, es encontrar una metodolog´ıa que autom´aticamente los ajuste, en el caso de la SVM, tomando ventaja tanto de sus propiedades de formulaci´on como de su algoritmo.
De manera espec´ıfica, los par´ametros de los cuales depende la SVM son: el denotado comoC que
controla el balance entre la maximizaci´on del margen y la penalizaci´on del error, as´ı como todos los que aparecen en el mapeo no lineal al espacio de representaci´on o kernel. Como es ampliamente conocido, uno de los factores m´as importantes en el desempe˜no de las SVM es la selecci´on de la funci´on kernel, sinembargo, en la pr´actica muy pocos son utilizados debido a la dificultad inherente en el ajuste de dichos par´ametros.
3.1.
B´
usqueda en Malla
Esta t´ecnica ha sido utilizada durante los ´ultimos a˜nos, aunque nunca fue presentada formalmente. Debido a su simplicidad, es usada ampliamente por muchos investigadores del ´area de aprendizaje de m´aquina. Esta procedimiento consiste en construir una malla acotada de vectores de par´ametros conteniendo todas las posibles combinaciones en un espacio acotado de b´usqueda y para un paso de discretizaci´on escogido. Debido a que es necesario utilizar alguna medida del desempe˜no de la SVM, la validaci´on cruzada denparticiones es usada de modo que el vector de par´ametros elegido es aquel para el cual el error de validaci´on sea menor para una tarea en espec´ıfico. La b´usqueda en malla para el kernel RBF est´a dada por la siguiente definici´on:
Definici´on 9 Para un par de par´ametros de la SVM y el kernel: C y σ respectivamente, con
Cmin,σmin como cotas inferiores,Cmax,σmax como cotas superiores yC∆,σ∆como los pasos de
discretizaci´on, la malla de entrenamiento puede ser construida como sigue:
(Ci, σj) = (Cmin+iCδ, σmin+jσδ) para 0≤i≤ny 0≤j≤m
donden= Cmax−Cmin
C∆ ,m=
σmax−σmin
σ∆ y (Ci, σj)conforman una matriz de tama˜non×m.
Dado que todas las combinaciones son necesarias para calcular una soluci´on, un total de (n+1)(m+ 1) optimizaciones de la funci´on de SVM son empleadas.
3.2.
B´
usqueda en L´ınea
Esta t´ecnica inicialmente presentada por Chapelle et al. [2002] emplea el hecho de que la cota de Radio/Margen (ver secci´on 2.4.4) es diferenciable, con el objeto de desarrollar un algoritmo
“´optimo” para encontrar los par´ametros de la SVM partiendo de la idea que la b´usqueda exhaustiva en el espacio de par´ametros puede ser prohibitiva. Esta metodolog´ıa propone tomar ventaja de propiedades espec´ıficas de la formulaci´on de la SVM para minimizar una cota de la estimaci´on del error de generalizaci´on empleando un algoritmo de gradiente descendiente sobre un conjunto de par´ametros dados.
Reescribiendo la f´ormula de Radio/Margen dada en la ecuaci´on (2.14) se tiene
LOO≤4R2kwk2 (3.1)
dondewes la soluci´on de (2.3) yRes el radio de la esfera m´as peque˜na conteniendo todos losφ(xi).
Adem´as, Vapnik [1998] muestra queR2es el valor objetivo del siguiente problema de optimizaci´on:
m´ın β 1−β 0Kβ sujeto a 0≤βi , i= 1, ..., l eTβ = 1 (3.2)
sinembargo, debido a que es posible que losφ(xi) sean no linealmente separables no es pr´actico usar
(2.3). Adem´as, unφaltamente no lineal, puede producir f´acilmente sobre entrenamiento. Luego, es mejor resolver una de las siguientes variaciones de (2.9),
m´ın w,b, 1 2w 0w+C N X i=1 ξi L1−SVM (3.3) o m´ın w,b, 1 2w 0w+C 2 N X i=1 ξi2 L2−SVM (3.4)
De modo que ahora se puede hacer referencia a dos clases de SVM, L1-SVM y L2-SVM respecti-vamente dependiendo si los errores son penalizados lineal o cuadr´aticamente. A continuaci´on, se describen los m´etodos de selecci´on para Radio/Margen utilizando L1 y L2.
3.2.1.
Cota de Radio/Margen para L2
Con relaci´on a la formulaci´on para L2-SVM en (3.4) y haciendoK(xi, xj) =zi.zj, el problema de
SVM puede ser convertido a margen r´ıgido como:
m´ın e w 1 2kwek 2 sujeto ayi(wei.zi+b)≥0 ∀i (3.5)
dondezi denota la transformaci´on a un espacio de representaci´on modificado dado por:
e
zi.ezj=Ke(xi, xj) =K(xi, xj) + 1
Cδij
conδij = 1, sii=j y 0 en otro caso. As´ı, la expresi´on en (3.1) puede ser volverse a escribir como
se muestra en Vapnik and Chapelle [2000]
LOO≤f(C, σ), 1
NR
2
kwek2 (3.6)
siendowecomo la soluci´on de (3.5). Debido a que (3.6) es diferenciable respecto deC yσ, es apro-piado utilizar alguna de las t´ecnicas basadas en gradiente descendiente, por ejemplo el algoritmo Quasi-Newton para minimizarf(C, σ). El c´alculo del gradiente de f(C, σ) requiere quekwek2yR2
sean conocidos, sinembargo, recientemente Chapelle et al. [2002] provee un resultado bastante ´util que hace f´acil la obtenci´on de dichos gradientes una vez los duales de (3.4) y (3.2) son resueltos. Con esto ´ultimo se mantiene que:
∂f ∂C = 1 N[ ∂kwek2 ∂C R 2+k e wk2∂R2 ∂C ] ∂f ∂σ2 = 1 N[ ∂kwek2 ∂σ2 R 2+k e wk2∂R2 ∂σ2] ∂kwek2 ∂C = X i αi C2 ∂kwek2 ∂σ2 =− X i,j αiαjyiyjKe(xi, xj) kxi−xjk2 2σ4 ∂R2 ∂C =− X i βi C2(1−βi) ∂R2 ∂σ2 =− X i,j βiβjKe(xi, xj) kxi−xjk2 2σ4
luego, si kwek2, R2, αy β est´an disponibles, el gradiente de f(C, σ) es f´acil de obtener. Como es