Support vector machines for binary classification: theory and practice
Máquinas de vector soporte para clasificación binaria: teoría y práctica
Ver/ Abrir
Identificadores
URI: https://hdl.handle.net/10902/29906Registro completo
Mostrar el registro completo DCAutoría
Remírez Miquélez, SergioFecha
2023-07Director/es
Derechos
Attribution-NonCommercial-NoDerivatives 4.0 International
Palabras clave
Support vector machine (SVM)
Binary classification
Hard margin SVM
Soft margin SVM
Wolfe duality
Kernel function
Máquina de vector soporte
Clasificación binaria
SVM con margen duro
SVM con margen blando
Dualidad de Wolfe
Función kernel
Resumen/Abstract
In this paper we study support vector machines (SVM) for binary classification. We will start with the case where the data set of the classification problem is linearly separable, for which we will consider hard margin SVM. We will continue with the case where the data set is not necessarily linearly separable, for which we will use soft margin SVM. In both cases we will formulate a quadratic optimization problem and we will obtain an alternative formulation using Wolfe duality.
The final theoretical part of this paper consists in using kernel functions to improve the versatility of support vector machines for the case where the data set is not linearly separable.
Finally, we have done an experimental part applying the Scikit-learn library in Python to ”Breast Cancer Wisconsin (Diagnostic) Data Set”. Moreover, Matlab has been used for some illustrative examples.
En este trabajo estudiamos las máquinas de vector soporte (SVM por sus siglas en inglés) para clasificación binaria. Comenzaremos con el caso en el que el conjunto de datos del problema de clasificación es linealmente separable, para el cual consideraremos las SVM con margen duro. Continuaremos con el caso en el que el conjunto de datos no es necesariamente linealmente separable, para el que usaremos las SVM con margen blando. En ambos casos formularemos un problema de optimización cuadrática y obtendremos una formulación alternativa mediante la dualidad de Wolfe.
La última parte teórica de este trabajo consiste en utilizar las funciones kernel para potenciar la versatilidad de las máquinas de vector soporte para el caso en que los datos no sean separables linealmente.
Por último, hemos realizado una parte experimental utilizando la librería Scikitlearn de Python y la base de datos “Breast Cancer Wisconsin (Diagnostic) Data Set”. Además, Matlab ha sido usado para algunos ejemplos ilustrativos.