Introdução
Neste laboratório, utilizaremos o Classificador de Regressão Logística para classificar as duas primeiras características do conjunto de dados Iris com base em suas etiquetas. Usaremos a biblioteca scikit-learn para carregar e pré-processar o conjunto de dados, criar uma instância do Classificador de Regressão Logística e ajustar os dados. Finalmente, exibiremos as fronteiras de decisão no gráfico de dispersão.
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.
Carregar o Conjunto de Dados e Pré-processar
Usaremos a biblioteca scikit-learn para carregar o conjunto de dados Iris. O conjunto de dados contém 3 classes de 50 instâncias cada, onde cada classe se refere a um tipo de planta de íris. Cada instância tem 4 características: comprimento da sépala, largura da sépala, comprimento da pétala e largura da pétala.
import matplotlib.pyplot as plt
from sklearn.linear_model import LogisticRegression
from sklearn import datasets
from sklearn.inspection import DecisionBoundaryDisplay
## carregar o conjunto de dados Iris
iris = datasets.load_iris()
X = iris.data[:, :2] ## apenas as duas primeiras características são utilizadas.
Y = iris.target
Criar uma Instância do Classificador de Regressão Logística e Ajustar os Dados
Criaremos uma instância do Classificador de Regressão Logística e ajustaremos os dados.
## Criar uma instância do Classificador de Regressão Logística e ajustar os dados.
logreg = LogisticRegression(C=1e5)
logreg.fit(X, Y)
Exibir as Fronteiras de Decisão no Gráfico de Dispersão
Exibiremos as fronteiras de decisão no gráfico de dispersão usando a função DecisionBoundaryDisplay da biblioteca scikit-learn.
_, ax = plt.subplots(figsize=(4, 3))
DecisionBoundaryDisplay.from_estimator(
logreg,
X,
cmap=plt.cm.Paired,
ax=ax,
response_method="predict",
plot_method="pcolormesh",
shading="auto",
xlabel="Comprimento da sépala",
ylabel="Largura da sépala",
eps=0.5,
)
## Plotar também os pontos de treino
plt.scatter(X[:, 0], X[:, 1], c=Y, edgecolors="k", cmap=plt.cm.Paired)
plt.xticks(())
plt.yticks(())
plt.show()
Resumo
Neste laboratório, utilizamos o Classificador de Regressão Logística para classificar as duas primeiras características do conjunto de dados Iris com base em suas etiquetas. Carregamos e pré-processamos o conjunto de dados utilizando a biblioteca scikit-learn, criamos uma instância do Classificador de Regressão Logística e ajustamos os dados. Finalmente, exibimos as fronteiras de decisão no gráfico de dispersão.