Exemplo de Regressão Ridge com Scikit-Learn

Beginner

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

Introdução

Este laboratório demonstra como usar a Regressão de Ridge para estimar coeficientes colineares de um estimador. A Regressão de Ridge é um tipo de regressão linear que aplica a regularização L2 ao modelo.

Neste exemplo, geraremos uma matriz de Hilbert 10x10 e usaremos a Regressão de Ridge para estimar os coeficientes da matriz.

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 praticar.

Às 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.

Importação de Bibliotecas Necessárias

Neste passo, importamos as bibliotecas necessárias para este exemplo.

import numpy as np
import matplotlib.pyplot as plt
from sklearn import linear_model

Gerar Dados

Neste passo, geraremos uma matriz de Hilbert 10x10 e definiremos a variável alvo y como um vetor de uns.

X = 1.0 / (np.arange(1, 11) + np.arange(0, 10)[:, np.newaxis])
y = np.ones(10)

Calcular Caminhos de Regressão Ridge

Neste passo, calcularemos os caminhos da Regressão Ridge para diferentes níveis de regularização.

n_alphas = 200
alphas = np.logspace(-10, -2, n_alphas)

coefs = []
for a in alphas:
    ridge = linear_model.Ridge(alpha=a, fit_intercept=False)
    ridge.fit(X, y)
    coefs.append(ridge.coef_)

Visualizar Resultados

Neste passo, visualizaremos os resultados dos caminhos da Regressão Ridge.

ax = plt.gca()

ax.plot(alphas, coefs)
ax.set_xscale("log")
ax.set_xlim(ax.get_xlim()[::-1])  ## inverter eixo
plt.xlabel("alpha")
plt.ylabel("pesos")
plt.title("Coeficientes Ridge em função da regularização")
plt.axis("tight")
plt.show()

Resumo

Neste laboratório, demonstramos como utilizar a Regressão Ridge para estimar coeficientes colineares de um estimador. Geramos uma matriz de Hilbert 10x10 e utilizamos a Regressão Ridge para estimar os coeficientes da matriz. Em seguida, visualizamos os resultados dos caminhos da Regressão Ridge. A Regressão Ridge é útil para reduzir a variação (ruído) em matrizes altamente mal-condicionadas. Ao definir um determinado nível de regularização, podemos equilibrar o efeito da regularização e a função de perda quadrática.