Minimizando uma função de perda
Neste exercício, você vai implementar uma regressão linear “do zero” usando scipy.optimize.minimize.
Vamos treinar um modelo no conjunto de dados de preços de casas de Boston, que já está carregado nas variáveis X e y. Para simplificar, não vamos incluir um intercepto no nosso modelo de regressão.
Este exercicio faz parte do curso
Classificadores Lineares em Python
Instruções do exercicio
- Preencha a função de perda para a regressão linear de mínimos quadrados.
- Imprima os coeficientes ajustando o
LinearRegressiondo sklearn.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# The squared error, summed over training examples
def my_loss(w):
s = 0
for i in range(y.size):
# Get the true and predicted target values for example 'i'
y_i_true = y[i]
y_i_pred = w@X[i]
s = s + (____)**2
return s
# Returns the w that makes my_loss(w) smallest
w_fit = minimize(my_loss, X[0]).x
print(w_fit)
# Compare with scikit-learn's LinearRegression coefficients
lr = LinearRegression(fit_intercept=False).fit(X,y)
print(____)