1
Maestría en Ciencias de la Computación Reconocimiento de Patrones [email protected] TAREA 3 Entrega el 1 de abril Tarea 3. Máquinas de soporte vectorial con kernels o Implementar la máquina de soporte vectorial usando kernels no lineales detallada en la diapositiva 35. Se programarán las siguientes funciones: K = kernel(A,B,keropt,params), es la función que rea- liza la transformación no lineal de los datos entre las matrices A y B dado una opción de kernel, keropt, que puede ser 'lin', 'poly', y 'rbf', cuyos parámetros estarán en params, que de- fine el orden para poly y gamma para rbf. La salida K es la ma- triz kernel. [sv,alpha_y,w0] = trainSVM(X,Y,params), es la función que en- trena la SVM, donde X son los patrones de entrenamiento, Y la cla- se (1 ó +1), params son los parámetros que indican el tipo de kernel, el parámetro de la función kernel, y la variable C de la SVM. Las salidas son los vectores de soporte sv, los valores α·Y as asociados a los vectores de soporte sw, y el valor del bias w0. [Yp,e] = classifySVM(X,Y,sv,alpha_y,w0,params), es la función que clasifica usando SVM donde donde X son los patrones de prueba, Y la clase verdadera (1 ó +1). Las salidas son Yp que son las clases predichas por la SVM y e el porcentaje de error. o Las funciones anteriores se ejecutarán desde un archivo principal para cla- sificar conjuntos de datos reales. Para encontrar los mejores parámetros de la SVM se hará una búsqueda en malla de ambos valores dentro de un ran- go (por ejemplo, gamma=[0.01 0.1 0.5 1] de la RBF y C=[1, 10, 100, 1000]). En cada paso de la búsqueda el conjunto original se dividirá en en- trenamiento (70%) y prueba (30%) y se considerarán 31 ejecuciones, de modo que los parámetros más adecuados están definidos en la media del porcentaje de error más baja. o Reporte de la práctica.

tarea03_rp.pdf

Embed Size (px)

DESCRIPTION

tarea

Citation preview

  • Maestra en Ciencias de la Computacin Reconocimiento de Patrones [email protected]

    TAREA 3

    Entrega el 1 de abril

    Tarea 3. Mquinas de soporte vectorial con kernels

    o Implementar la mquina de soporte vectorial usando kernels no lineales detallada en la diapositiva 35. Se programarn las siguientes funciones:

    K = kernel(A,B,keropt,params), es la funcin que rea-liza la transformacin no lineal de los datos entre las matrices A y B dado una opcin de kernel, keropt, que puede ser 'lin', 'poly', y 'rbf', cuyos parmetros estarn en params, que de-fine el orden para poly y gamma para rbf. La salida K es la ma-triz kernel.

    [sv,alpha_y,w0] = trainSVM(X,Y,params), es la funcin que en-trena la SVM, donde X son los patrones de entrenamiento, Y la cla-se (1 +1), params son los parmetros que indican el tipo de kernel, el parmetro de la funcin kernel, y la variable C de la SVM. Las salidas son los vectores de soporte sv, los valores Y as asociados a los vectores de soporte sw, y el valor del bias w0.

    [Yp,e] = classifySVM(X,Y,sv,alpha_y,w0,params), es la funcin que clasifica usando SVM donde donde X son los patrones de prueba, Y la clase verdadera (1 +1). Las salidas son Yp que son las clases predichas por la SVM y e el porcentaje de error.

    o Las funciones anteriores se ejecutarn desde un archivo principal para cla-sificar conjuntos de datos reales. Para encontrar los mejores parmetros de la SVM se har una bsqueda en malla de ambos valores dentro de un ran-go (por ejemplo, gamma=[0.01 0.1 0.5 1] de la RBF y C=[1, 10, 100, 1000]). En cada paso de la bsqueda el conjunto original se dividir en en-trenamiento (70%) y prueba (30%) y se considerarn 31 ejecuciones, de modo que los parmetros ms adecuados estn definidos en la media del porcentaje de error ms baja.

    o Reporte de la prctica.