Граючи з набором даних Boston Housing Dataset та RandomForestRegressor
(з параметрами за замовчуванням) у scikit-learn, я помітив щось дивне: середній бал перехресної перевірки зменшився, оскільки я збільшив кількість складок понад 10. Моя стратегія крос-валідації була така:
cv_met = ShuffleSplit(n_splits=k, test_size=1/k)
scores = cross_val_score(est, X, y, cv=cv_met)
... де num_cvs
було різноманітно. Я встановив , test_size
щоб 1/num_cvs
відобразити на поїзд / тест - поведінка розділити по розмірам до-кратне CV. В основному, я хотів щось подібне до кратного CV, але мені також потрібна була випадковість (отже, ShuffleSplit).
Це випробування повторювалося кілька разів, після чого були складені середні бали та стандартні відхилення.
(Зверніть увагу, що розмір k
позначається площею кола; стандартне відхилення - по осі Y.)
Послідовно, збільшення k
(з 2 до 44) призведе до короткого збільшення балів з подальшим постійним зниженням у міру k
подальшого збільшення (понад ~ 10 разів)! Якщо що-небудь, я б очікував, що більше даних про тренінг призведе до незначного збільшення балів!
Оновлення
Зміна критеріїв оцінювання на абсолютну помилку призводить до поведінки, яку я очікував: підрахунок балів покращується зі збільшенням кількості складок у резюме K-кратного, а не наближається до 0 (як за замовчуванням, ' r2 '). Залишається питанням, чому показник оцінювання за замовчуванням призводить до низької продуктивності як середньої, так і показника STD для збільшення кількості складок.