O que é um hiperplano?
Um hiperplano no espaço N-dimensional é um subespaço (N-1)-dimensional; Se o espaço for tridimensional, seus hiperplanos são os planos bidimensionais. Um espaço N-Dimensional é sempre abrangente por um conjunto de n vetores linearmente independentes, e é sempre possível encontrar n vetores mutuamente ortogonais que abrangem o espaço. Isso pode ou não estar na definição de um espaço vetorial finito-dimensional, mas é um fato para o qual a prova pode ser encontrada em quase qualquer livro de álgebra linear de graduação.
Como resultado, um hiperplano no espaço n é abrangido por vetores linearmente independentes n-1 e tem um vetor de enésimo (não no avião) ortogonal.
O que é uma máquina vetorial de suporte?
A máquina de vetor de suporte (SVM) é um algoritmo de classificação binária de aprendizado de máquina supervisionado. Dado um conjunto de dois tipos de pontos em n dimensões, o SVM gera um hiperplano dimensional (n-1) para dividir esses pontos em dois grupos, como mostrado abaixo:
Na figura acima, o SVM escolherá a linha vermelha como o melhor hiperplano que separa as classes azul e verde.
Vamos supor que você tenha dois tipos de pontos em um avião que é linearmente separável. O SVM encontrará uma linha reta que divide esses pontos em dois tipos e está o mais longe possível de todos eles. Essa linha é conhecida como hiperplano e foi escolhida para que os valores extremos não sejam ignorados, e pontos de diferentes classes são o mais longe possível. Se os pontos não puderem ser separados, o SVM usa uma transformação do kernel para aumentar as dimensões dos pontos.
O caso discutido acima foi bem direto porque os dados eram linearmente separáveis - como vimos, poderíamos desenhar uma linha reta para separar tipos de pontos vermelhos e azuis.
E se os dados não forem linearmente separáveis? Não poderemos separar as classes desenhando um hiperplano reto. Para enfrentar esse desafio, vamos adicionar uma terceira dimensão ao conjunto de dados. Tivemos duas dimensões até agora: x e y. Criamos uma nova dimensão e mandamos que ela seja calculada de uma maneira conveniente para nós: z = x2 + y2.
Isso criará um espaço tridimensional a partir dos pontos anteriores. Podemos inferir da figura abaixo que, inicialmente, os pontos não eram linearmente separáveis, mas depois de aplicar a função do kernel, separamos facilmente os pontos de dados. Existem muitas funções de kernel disponíveis que você pode escolher de acordo com o seu caso de uso.
Vantagens do SVM
Desvantagens do SVM
Previsão de instruções do preço das ações usando SVM
As previsões do mercado de ações são feitas prevendo o valor futuro das ações de uma empresa ou outro instrumento financeiro negociado em uma bolsa usando análise fundamental ou técnica.
O benefício da previsão do mercado de ações é que ele permite que você investem com sabedoria e lucrativamente.
A primeira tarefa para esta implementação é importar todas as bibliotecas e módulos em nosso script. Sklearn será usado para construir o modelo, os pandas serão usados para lidar com quadros de dados e Numpy é para álgebra linear. Abaixo estão as importações necessárias que fazemos:
de Sklearn.SVM Import SvcA próxima tarefa é ler o conjunto de dados do arquivo. O arquivo estará em armazenamento externo e você pode baixar o conjunto de dados aqui.
# Lendo o arquivo CSV do armazenamento externoAtribua o DateTime como o índice do quadro de dados e solte a coluna "Data"
# Fazendo data como coluna de índiceAtribua os recursos de entrada a uma variável
# Crie variáveis preditivasAtribuir coluna de destino a outra variável
# Variáveis de destinoDivida o conjunto de dados em amostras de trem e teste. As amostras de trem aumentarão o modelo, enquanto as amostras de teste identificarão a precisão do modelo.
split = int (0.9*len (df))Crie o modelo SVM agora
# Classificador de vetor de suporteVocê pode encontrar a precisão deste modelo usando várias métricas.
Para prever o sinal do estoque, use o método abaixo.
df ['sig'] = modelo.prever (x)Conclusão
Este artigo passou pela discussão, vantagens e casos de uso de máquinas vetoriais de suporte. É um algoritmo popular e com eficiência espacial para tarefas de classificação e regressão, e usa princípios geométricos para resolver nossos problemas. Mais tarde, também implementamos a previsão de direção do preço das ações usando o algoritmo SVM. A previsão de preços das ações é extremamente útil no mundo dos negócios e, quando empregamos automação para isso, cria mais hype para esse problema.