Máquina de Vetores de Suporte de Duas Classes

Cria um modelo de classificação binária usando o algoritmo da máquina do vetor de suporte

Categoria: Machine Learning / Modelo de Inicialização / Classificação

Nota

Aplica-se a: Machine Learning Studio (clássico) apenas

Módulos semelhantes de arrasto e queda estão disponíveis em Azure Machine Learning designer.

Visão geral do módulo

Este artigo descreve como usar o módulo de máquina de vetor de suporte de duas classes no Machine Learning Studio (clássico), para criar um modelo que se baseia no algoritmo da máquina vetorial de suporte.

As máquinas vetoriais de suporte (SVMs) são uma classe bem pesquisada de métodos de aprendizagem supervisionados. Esta implementação específica é adequada à previsão de dois resultados possíveis, baseados em variáveis contínuas ou categóricas.

Depois de definir os parâmetros do modelo, treine o modelo utilizando um dos módulos de treino e fornecendo um conjunto de dados marcado que inclua uma etiqueta ou coluna de resultados.

Mais sobre máquinas vetores de apoio

As máquinas vetoriais de suporte estão entre as primeiras algoritmos de aprendizagem automática, e os modelos SVM têm sido usados em muitas aplicações, desde a recuperação de informações até à classificação de texto e imagem. Os SVMs podem ser utilizados tanto para tarefas de classificação como para regressão.

Este modelo SVM é um modelo de aprendizagem supervisionado que requer dados rotulados. No processo de treino, o algoritmo analisa dados de entrada e reconhece padrões num espaço multidimensional chamado hiperplano. Todos os exemplos de entrada são representados como pontos neste espaço, e são mapeados para categorias de saída de forma a que as categorias sejam divididas por uma lacuna o mais ampla e clara possível.

Para previsão, o algoritmo SVM atribui novos exemplos numa categoria ou noutra, mapeando-os nesse mesmo espaço.

Como configurar a máquina de vetor de suporte Two-Class

Para este tipo de modelo, recomenda-se que normalize o conjunto de dados antes de o utilizar para treinar o classificador.

  1. Adicione o módulo de máquina de vetor de suporte de duas classes à sua experiência em Studio (clássico).

  2. Especifique como pretende que o modelo seja treinado, definindo a opção modo de formação Criar .

    • Parâmetro único: Se souber como pretende configurar o modelo, pode fornecer um conjunto específico de valores como argumentos.

    • Intervalo de parâmetros: Se não tiver a certeza dos melhores parâmetros, pode encontrar os parâmetros ideais especificando vários valores e utilizando o módulo Tune Model Hyperparameters para encontrar a configuração ideal. O treinador itera sobre várias combinações das configurações e determina a combinação de valores que produz o melhor modelo.

  3. Para o número de iterações, escreva um número que denota o número de iterações utilizadas na construção do modelo.

    Este parâmetro pode ser utilizado para controlar o trade-off entre a velocidade de treino e a precisão.

  4. Para lambda, escreva um valor a utilizar como peso para a regularização L1.

    Este coeficiente de regularização pode ser usado para afinar o modelo. Valores maiores penalizam modelos mais complexos.

  5. Selecione a opção, normalize as funcionalidades, se quiser normalizar as funcionalidades antes do treino.

    Se aplicar a normalização, antes do treino, os pontos de dados são centrados na média e dimensionados para ter uma unidade de desvio padrão.

  6. Selecione a opção, Project para a esfera da unidade, para normalizar os coeficientes.

    Projetar valores para o espaço unitário significa que antes do treino, os pontos de dados são centrados em 0 e dimensionados para ter uma unidade de desvio padrão.

  7. Em sementes de número aleatório, digite um valor inteiro para usar como semente se quiser garantir a reprodutibilidade através de corridas. Caso contrário, um valor do relógio do sistema é usado como uma semente, o que pode resultar em resultados ligeiramente diferentes em todas as corridas.

  8. Selecione a opção, Permitir categoria desconhecida, para criar um grupo para valores desconhecidos nos conjuntos de treino ou validação. Neste caso, o modelo pode ser menos preciso para valores conhecidos, mas pode fornecer melhores previsões para novos valores (desconhecidos).

    Se o desmarcar, o modelo só pode aceitar os valores contidos nos dados de treino.

  9. Ligação um conjunto de dados rotulado, e um dos módulos de treino:

    Nota

    Se passar uma gama de parâmetros para o Modelo de Comboio, utilizará apenas o primeiro valor na lista de parâmetros.

    Se passar um único conjunto de valores de parâmetros para o módulo Tune Model Hyperparameters , quando espera uma gama de definições para cada parâmetro, ignora os valores e utiliza os valores predefinidos para o aluno.

    Se selecionar a opção De Alcance de Parâmetros e introduzir um único valor para qualquer parâmetro, esse valor único especificado será utilizado ao longo da varredura, mesmo que outros parâmetros se alterem numa gama de valores.

  10. Execute a experimentação.

Resultados

Após o treino estar completo:

Exemplos

Por exemplo, como este algoritmo de aprendizagem é usado, consulte a Galeria Azure AI:

Notas técnicas

Esta secção contém detalhes de implementação, dicas e respostas a perguntas frequentes.

Dicas de utilização

Para este tipo de modelo, recomenda-se que normalize o conjunto de dados antes de o utilizar para treinar o classificador.

Embora pesquisas recentes tenham desenvolvido algoritmos com maior precisão, este algoritmo pode funcionar bem em conjuntos de dados simples quando o seu objetivo é acelerar sobre precisão. Se não obtém os resultados desejados utilizando o modelo de vetor de suporte de duas classes, experimente um destes métodos de classificação:

Parâmetros do módulo

Nome Intervalo Tipo Predefinição Description
Número de iterações >=1 Número inteiro 1 O número de iterações
Rio Lambda >=duplo. Epsilon Float 0.001 Peso para regularização L1. A utilização de um valor não zero evita a sobreajuste do modelo ao conjunto de dados de treino.
Normalizar as características Qualquer Booleano Verdadeiro Se for verdade, normalize as características.
Project para a esfera unitária Qualquer Booleano Falso Se Verdadeiro, projete as características para um círculo de unidade.
Semente de número aleatório Qualquer Número inteiro A semente para o gerador de números aleatórios usado pelo modelo. Deixe-o em branco para o padrão.
Permitir níveis categóricos desconhecidos Qualquer Booleano Verdadeiro Se verdadeiro, cria um nível adicional para cada coluna categórica. Quaisquer níveis no conjunto de dados de teste que não estejam disponíveis no conjunto de dados de formação são mapeados para este nível adicional.

Saída

Nome Tipo Description
Modelo destreinado Tabela de Dados Um modelo de classificação binária destreinado.

Ver também

Classificação
Lista de Módulos A-Z