cross_val_score в регрессии Ridge / Lasso - PullRequest
0 голосов
/ 14 июля 2020

Я использую регрессию Ridge в записной книжке Jupyter, которую я прилагаю здесь.

ridge = Ridge(alpha=optimal_ridge.alpha_)

ridge_scores = cross_val_score(ridge, Xs, y, cv=10)

print(ridge_scores)
print(np.mean(ridge_scores))`

При применении функции cross_val_score к моему оценщику, какие метри c она мне дает? Я получил 10 значений ниже 1 (полученные в результате перекрестной проверки), а именно:

[0.90397003 0.88391849 0.77181566 0.85037008 0.85705655 0.88257961
 0.9114154  0.91447498 0.93543431 0.93167352]

Спасибо!

1 Ответ

0 голосов
/ 14 июля 2020

Согласно docs , он использует «счетчик по умолчанию оценщика (если доступен)». В вашем случае оценщиком является Ridge, и его функция score возвращает «коэффициент определения R ^ 2 прогноза», как указано в его документах .

Кроме того, вы можете определить ваша собственная функция оценки и передайте ее в cross_val_score в качестве параметра ( docs ):

def your_scorer(estimator, X, y):
    ...

cross_val_score(ridge, Xs, y, cv=10, scoring=your_scorer)
...