Vetores de Suporte LinearSVC

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Máquinas de Vetores de Suporte (SVM) é um algoritmo de aprendizado de máquina popular usado para análise de classificação e regressão. O SVM tenta encontrar a melhor fronteira possível que separa diferentes classes de dados. Neste laboratório, aprenderemos a plotar os vetores de suporte do LinearSVC.

Dicas da Máquina Virtual

Após o arranque da máquina virtual, clique no canto superior esquerdo para mudar para a aba Notebook para aceder ao Jupyter Notebook para a prática.

Por vezes, pode ser necessário esperar alguns segundos para o Jupyter Notebook terminar de carregar. A validação das operações não pode ser automatizada devido a limitações no Jupyter Notebook.

Se tiver problemas durante o aprendizado, não hesite em contactar o Labby. Forneça feedback após a sessão e resolveremos prontamente o problema para si.

Importar Bibliotecas

Primeiro, precisamos importar as bibliotecas necessárias para este laboratório. Usaremos as bibliotecas NumPy, Matplotlib, make_blobs, LinearSVC e DecisionBoundaryDisplay.

Gerar Dados

Vamos gerar alguns dados aleatórios usando a função make_blobs() do Scikit-learn. Esta função gera grupos gaussianos para agrupamento. Vamos gerar 40 amostras com 2 centros.

Plotar Dados

Vamos plotar os dados gerados usando Matplotlib. A função scatter() é usada para plotar os dados.

Treinar LinearSVC

Vamos treinar o modelo LinearSVC com dois parâmetros diferentes de regularização. A função de perda de margem (hinge loss) é usada para treinar o modelo. Usaremos a função fit() para treinar o modelo.

Obter Vetores de Suporte

Os vetores de suporte são as amostras que se encontram dentro dos limites da margem, cujo tamanho é convencionalmente limitado a 1. Podemos obter os vetores de suporte através da função de decisão. Usaremos a função decision_function() para obter a função de decisão do modelo. Em seguida, calcularemos os vetores de suporte a partir da função de decisão.

Plotar Vetores de Suporte

Vamos plotar os vetores de suporte no mesmo gráfico dos dados. Usaremos a função scatter() para plotar os vetores de suporte.

Exibir a Fronteira de Decisão

Vamos exibir a fronteira de decisão no gráfico. Usaremos a classe DecisionBoundaryDisplay para exibir a fronteira de decisão.

Mostrar o Gráfico

Finalmente, vamos mostrar o gráfico com os vetores de suporte e a fronteira de decisão.

Resumo

Neste laboratório, aprendemos como plotar os vetores de suporte do LinearSVC. Usamos a função decision_function() para obter a função de decisão do modelo e, em seguida, calculamos os vetores de suporte a partir da função de decisão. Também aprendemos como exibir a fronteira de decisão no gráfico usando a classe DecisionBoundaryDisplay.