Мой вопрос: в sklearn
как рассчитывается cv_values_
, заданное RidgeCV
? почему это отличается от вывода из metrics.mean_squared_error
?
Например,
X = [1,2,3,4,5,6,7,8,9,10]
X = np.array(X).reshape(-1,1)
y = np.array([1,3.5,4,4.9,6.1,7.2,8.1,8.9,10,11.1])
ax.plot(X, y, 'o')
ax.plot(X, X+1, '-') # help visualize
Скажем, мы обучаем модель Риджа на X и Y.
from sklearn.linear_model import RidgeCV
from sklearn.metrics import mean_squared_error
model = RidgeCV(alphas = [0.001], store_cv_values=True).fit(X, y)
Теперь вывод
mean_squared_error(y_true=y, y_pred=model.predict(X))
равно 0.1204000013110009
, а вывод
model.cv_values_.mean()
is 0.24472577167818438
.
Почему такая огромная разница? Я упускаю что-то очевидное?