Introdução
Neste laboratório, utilizaremos a biblioteca Python scikit-learn para explorar a diferença entre os métodos de Regressão Linear Ordinária (OLS) e Regressão Ridge. Examinaremos como esses dois métodos de regressão linear lidam com o ruído nos dados e como diferem em suas previsões.
Dicas da Máquina Virtual
Após o arranque da VM, 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 o problema rapidamente para si.
Importar Bibliotecas
Neste passo, importamos as bibliotecas Python necessárias.
import numpy as np
import matplotlib.pyplot as plt
from sklearn import linear_model
Criar Dados
Neste passo, criaremos os dados que utilizaremos para a nossa análise.
X_train = np.c_[0.5, 1].T
y_train = [0.5, 1]
X_test = np.c_[0, 2].T
Definir Classificadores
Neste passo, definiremos os classificadores de Regressão Linear (OLS) e Regressão Ridge.
classifiers = dict(
ols=linear_model.LinearRegression(), ridge=linear_model.Ridge(alpha=0.1)
)
Visualizar os Resultados
Neste passo, visualizaremos os resultados da nossa análise.
for name, clf in classifiers.items():
fig, ax = plt.subplots(figsize=(4, 3))
for _ in range(6):
this_X = 0.1 * np.random.normal(size=(2, 1)) + X_train
clf.fit(this_X, y_train)
ax.plot(X_test, clf.predict(X_test), color="gray")
ax.scatter(this_X, y_train, s=3, c="gray", marker="o", zorder=10)
clf.fit(X_train, y_train)
ax.plot(X_test, clf.predict(X_test), linewidth=2, color="blue")
ax.scatter(X_train, y_train, s=30, c="red", marker="+", zorder=10)
ax.set_title(name)
ax.set_xlim(0, 2)
ax.set_ylim((0, 1.6))
ax.set_xlabel("X")
ax.set_ylabel("y")
fig.tight_layout()
plt.show()
Resumo
Neste laboratório, aprendemos a utilizar a biblioteca Python scikit-learn para explorar as diferenças entre a Regressão Linear Ordinária (OLS) e a Regressão Ridge. Vimos como estes dois métodos de regressão linear lidam com o ruído nos dados e como diferem nas suas previsões. Também visualizamos os resultados da nossa análise.