RECONOCIMIENTO DE PATRONES BASADO EN SUPPORT VECTOR MACHINES.
Enviado por Alexander Hoyo • 17 de Octubre de 2016 • Trabajo • 2.106 Palabras (9 Páginas) • 254 Visitas
RECONOCIMIENTO DE PATRONES BASADO EN SUPPORT VECTOR MACHINES
Alexander HOYO
Departamento de Tecnología Industrial
Universidad Simón Bolívar
Caracas 1080, Venezuela
RESUMEN
En esta investigación se presenta un procedimiento para realizar reconocimiento de patrones basado en Support Vector Machines o Máquinas de Vectores de Soporte, utilizando conjuntos de datos de múltiples variables numéricas, el procedimiento consistió en el entrenamiento de redes neuronales artificiales utilizando un algoritmo basado en mínimos cuadrados y haciendo uso de la teoría de optimización lagrangeana para kernelizar el algoritmo propuesto por Anlauf y Biehl [1] denominado Adatron. Se utilizaron diversas funciones kernel para probar la efectividad del procedimiento. La implementación computacional fue desarrollada en lenguaje C++ bajo Linux utilizando la herramienta de diseño “Qt3 designer”. Los datos utilizados para el entrenamiento y validación fueron obtenidos en el UCI Machine Learning Repository de la Universidad de California en Irvine [2]. Los resultados obtenidos presentan una mejora con respecto a resultados reportados alrededor del 0,5% en el peor de los casos y hasta un 5% en los mejores resultados.
Palabras claves: Reconocimiento de patrones, Support Vector Machines, Red Neuronal Artificial, Optimización Lagrangeana, Adatron, Kernel.
1. INTRODUCCIÓN
Mucha de la información que se maneja en la vida real se presenta en forma de patrones complejos como imágenes, sonidos, texto, trazas, entre otros y existen diversas técnicas para tratar problemas de reconocimiento de patrones y no hay un método que sea la panacea. Diversas razones hacen que los sistemas de reconocimiento de patrones operativos sean muy específicos del problema a resolver, primero la naturaleza de los patrones: caracteres escritos, símbolos, dibujos, imágenes biomédicas, objetos tridimensionales, firmas, huellas dactilares, espectrogramas, imágenes de teledetección, cromosomas, etc. En segundo lugar están los requerimientos del sistema, especialmente en tiempo de respuesta, hacen que algunos métodos de reconocimiento, aún siendo superiores en éxito, no sean aplicables en la práctica; y por último factores económicos [3, 4].
El Reconocimiento de Patrones puede considerarse; de forma genérica; como una disciplina de la Inteligencia Artificial, donde intervienen cuatro procesos fundamentales, resumidos de la siguiente forma: Adquisición y representación del conocimiento, que consiste en la transferencia y transformación de conocimientos de una o más fuentes (libros, manuales, expertos, etc.) a un sistema informático y representarlo (expresarlo) de forma útil para la máquina con vista a un tratamiento posterior, también se interpreta como la adquisición de patrones de clase conocida y su almacenamiento para establecer el patrón prototipo de cada clase. El segundo proceso es el Aprendizaje, que implica cambios en el sistema, el cual se adapta para poder llevar a cabo la misma tarea a partir de las mismas condiciones de un modo más eficaz cada vez. En un sistema de Reconocimiento de Patrones, dependiendo del método de aprendizaje, se trata de calcular el patrón prototipo o el conjunto de patrones prototipos que caracterizan cada una de las clases a discriminar [5].
Un tercer proceso es el de Clasificación, que consiste en proporcionar nuevos prototipos al sistema, independientes de los utilizados en el aprendizaje, para que éste los etiquete utilizando el conjunto de clases disponibles. Por último se tiene el proceso de Evaluación, toda clasificación acarrea una medida de error, bondad o confianza. Deben proporcionarse mecanismos para evaluar esta bondad. Normalmente se utiliza un conjunto de patrones etiquetados por expertos y no usados en el aprendizaje [3, 4].
Esta investigación se centra en los últimos tres procesos: Aprendizaje, Clasificación y Evaluación, se implementó una Red Neuronal Artificial entrenada con patrones reales de múltiples variables obtenidos del UCI Machine Learning Repository de la Universidad de California en Irvine, el algoritmo de aprendizaje utilizado fue el del Adatron, el procedimiento realizado consistió en separar los conjuntos de patrones en dos porciones de forma aleatoria, eligiéndose una porción de los patrones para el entrenamiento y otra para la validación.
2. REDES NEURONALES ARTIFICIALES Y CLASIFICACIÓN
Las Redes Neuronales Artificiales (RNA) son implementaciones matemáticas de una máquina de aprendizaje lineal, que puede representarse gráficamente como se observa en la Figura 1, la Ec. (1) muestra su comportamiento matemático, donde x representa la entrada n-dimensional de la red, y representa a la salida, b (umbral) y w (pesos sinápticos) y representan los parámetros que regulan la red y se obtienen mediante un proceso de adaptación o entrenamiento [1, 6, 7].
[pic 1]
Figura 1. Representación gráfica de una RNA
El problema de clasificación se puede enunciar de la siguiente forma: dada una serie de patrones, representados por vectores m-dimensionales de atributos (espacio de entradas X), cada patrón posee una etiqueta o clase (dominio de salida Y). Se desea determinar una función a partir del conjunto de entrenamiento, que prediga la clase a la cual pertenezca un nuevo patrón de entrada [8].
3. DATA EXPERIMENTAL
Se utilizaron tres bases de datos obtenidas en el UCI Machine Learning Repository de la Universidad de California en Irvine [2]. Las bases utilizadas constituyen patrones numéricos de múltiples atributos y dos clases, específicamente se utilizó la base “Mammographic Mass Database” recolectada por el Instituto de Radiología de la Universidad Erlangen-Nuremberg en Alemania, entre los años 2003 y 2006. Esta base de datos consta de 961 instancias que poseen información sobre mamografías.
Esta data posee aproximadamente igual porcentaje de casos benignos y malignos, de las 961 instancias, 516 casos son de severidad benigna y 445 casos son de severidad maligna, estos patrones poseen 5 atributos. También se utilizó la base de datos “Breast Cancer Wisconsin Database” de cáncer de mamas y ofrece información sobre la malignidad o benignidad de tumores en mamas y está constituida por 699 instancias, 458 casos benignos y 241 casos malignos, estos patrones poseen 10 atributos. La última base de datos fue la “Pima Indians Diabetes Database” que posee 768 instancias sobre pacientes que se les ha realizado estudios sobre diabetes en el National Institute of Diabetes and Digestive and Kidney Diseases, estos patrones poseen 8 atributos, la base posee 500 casos negativos y 268 casos donde la prueba resultó positiva para diabetes.
...