Различные результаты в SciKit Learn - PullRequest
0 голосов
/ 09 января 2020

У меня есть куча случайных лесных регрессоров с различными значениями альфа, используемых для сокращения стоимости сложности. Мой код основан на учебном примере здесь . Для обучения и тестирования оценки создаются с использованием кода ниже:

train_scores = [reg.score(X_train, y_train) for reg in regs]
test_scores = [reg.score(X_test, y_test) for reg in regs]

Затем я выбираю альфа-значение, которое приводит к наибольшему результату тестирования. Это значение затем объединяется с другими заданными мной гиперпараметрами и используется для сохранения регрессора. Следующий код делает это, а затем прогнозирует некоторые целевые значения.

 hyperparams['ccp_alpha'] = ccp_alphas[test_scores.index(max(test_scores))]

 rfr2 = RandomForestRegressor(**hyperparams)                                      
 rfr2.fit(X_train, y_train)

 y_pred = rfr2.predict(X_test)

Тем не менее, я замечаю, что, как правило, существует разница между оценкой тренировок при тестировании различных альф и оценкой тестов, которую я получаю из значений тест / прогноз. Разница невелика, возможно +/- 0,1 р2.

Это только из-за случайной природы лесов?

BJR.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...