Discusión sobre el artículo "Características del Wizard MQL5 que debe conocer (Parte 15): Máquinas de vectores de soporte utilizando el polinomio de Newton"

 

Artículo publicado Características del Wizard MQL5 que debe conocer (Parte 15): Máquinas de vectores de soporte utilizando el polinomio de Newton:

Las máquinas de vectores de soporte clasifican los datos en función de clases predefinidas explorando los efectos de aumentar su dimensionalidad. Se trata de un método de aprendizaje supervisado bastante complejo dado su potencial para tratar datos multidimensionales. Para este artículo consideramos cómo su implementación muy básica de datos bidimensionales puede hacerse más eficientemente con el polinomio de Newton al clasificar precio-acción.

Support Vector Machines (SVM) es un algoritmo de clasificación de aprendizaje automático. La clasificación es diferente de la agrupación, que hemos considerado en artículos anteriores aquí y aquí, siendo la principal diferencia entre ambas que la clasificación separa los datos en conjuntos predefinidos, con supervisión, mientras que la agrupación busca determinar qué y cuántos de estos conjuntos existen, sin supervisión

En pocas palabras, la SVM clasifica los datos teniendo en cuenta la relación que tendrá cada punto de datos con todos los demás si se añadiera una dimensión a los datos. La clasificación se consigue si se puede definir un hiperplano, que diseccione limpiamente los conjuntos de datos predefinidos. 

A menudo, los conjuntos de datos considerados tienen múltiples dimensiones, y es precisamente este atributo el que convierte a la SVM en una herramienta muy potente para clasificar dichos conjuntos de datos, especialmente si los números de cada conjunto son pequeños o la proporción relativa de los conjuntos de datos está sesgada. El código fuente de la implementación de las SVMs que tienen más de dos dimensiones es muy complejo, y a menudo los casos de uso en Python o C# siempre utilizan bibliotecas, lo que deja al usuario con una mínima entrada de código para obtener un resultado. 

Los datos de alta dimensión tienen tendencia a ajustarse a los datos de entrenamiento, lo que los hace menos fiables en datos fuera de muestra, y éste es uno de los principales inconvenientes de la SVM. Por otro lado, los datos de menor dimensión se validan de forma cruzada mucho mejor y tienen casos de uso más comunes. 

Para este artículo consideraremos un caso muy básico de SVM que maneja datos bidimensionales (también conocido como SVM lineal), ya que el código fuente completo de la implementación debe ser compartido sin referencia a ninguna biblioteca de terceros. Normalmente, el hiperplano de separación se deriva de uno de estos dos métodos: un kernel polinómico o un kernel radial. Este último es más complejo y no se tratará aquí, ya que sólo nos ocuparemos del primero, el núcleo polinómico.

Autor: Stephen Njuki