Discussão do artigo "Técnicas do MQL5 Wizard que você deve conhecer (Parte 15): Máquinas de Vetores de Suporte com o Polinômio de Newton"

 

Novo artigo Técnicas do MQL5 Wizard que você deve conhecer (Parte 15): Máquinas de Vetores de Suporte com o Polinômio de Newton foi publicado:

Máquinas de Vetores de Suporte classificam dados com base em classes predefinidas, explorando os efeitos de aumentar sua dimensionalidade. É um método de aprendizado supervisionado que é bastante complexo, dado seu potencial para lidar com dados multidimensionais. Neste artigo, consideramos como uma implementação muito básica de dados bidimensionais pode ser feita de maneira mais eficiente com o Polinômio de Newton ao classificar a ação do preço.

Máquinas de Vetores de Suporte (SVM) é um algoritmo de classificação de aprendizado de máquina. A classificação é diferente da clusterização, que consideramos em artigos anteriores aqui e aqui, sendo que a principal diferença entre os dois é que a classificação separa dados em conjuntos predefinidos, com supervisão, enquanto a clusterização busca determinar quais e quantos são esses conjuntos, sem supervisão

Em resumo, o SVM classifica dados considerando a relação que cada ponto de dados terá com todos os outros, se uma dimensão fosse adicionada aos dados. A classificação é alcançada se um hiperplano puder ser definido, separando claramente os conjuntos de dados predefinidos. 

Frequentemente, os conjuntos de dados considerados têm múltiplas dimensões, e é essa característica que torna o SVM uma ferramenta muito poderosa para classificar esses conjuntos de dados, especialmente se os números em cada conjunto forem pequenos ou se a proporção relativa dos conjuntos de dados for distorcida. O código-fonte de implementação para SVMs que têm mais de 2 dimensões é muito complexo, e os casos de uso em Python ou C# geralmente utilizam bibliotecas, deixando ao usuário um mínimo de entrada de código para obter um resultado. 

Dados de alta dimensão tendem a ajustar excessivamente os dados de treinamento, o que os torna menos confiáveis em dados fora da amostra, e esta é uma das principais desvantagens do SVM. Dados de menor dimensão, por outro lado, se validam cruzadamente de forma muito melhor e têm casos de uso mais comuns. 

Para este artigo, consideraremos um caso muito básico de SVM que lida com dados bidimensionais (também conhecido como SVM linear), pois o código-fonte completo da implementação será compartilhado sem referência a bibliotecas de terceiros. Normalmente, o hiperplano separador é derivado de um dos dois métodos: um kernel polinomial ou um kernel radial. Este último é mais complexo e não será discutido aqui, pois lidaremos apenas com o primeiro, o kernel polinomial.

Autor: Stephen Njuki