Помилка через недо-/переобучення
Набір даних про цукерки особливо вразливий до переобучення. Є лише 85 спостережень, тож якщо ви використаєте 20% для тестової вибірки, ви втрачаєте багато важливих даних, які можна було б використати для моделювання. Уявімо ситуацію, коли більшість шоколадних цукерок потрапили до тренувальної вибірки, а до відкладеної — лише кілька. Наша модель може побачити лише, що шоколад — ключовий чинник, і не виявити, що інші атрибути теж важливі. У цій вправі ви дослідите, як використання занадто багатьох ознак (стовпців) у моделі випадкового лісу може призвести до переобучення.
Ознака — це стовпці даних, які використовуються в рішенні дерева. Параметр max_features обмежує кількість доступних ознак.
Ця вправа є частиною курсу
Валідація моделей у Python
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Update the rfr model
rfr = RandomForestRegressor(____=25,
____=1111,
____=2)
rfr.fit(X_train, y_train)
# Print the training and testing accuracies
print('The training error is {0:.2f}'.format(
mae(y_train, rfr.predict(X_train))))
print('The testing error is {0:.2f}'.format(
mae(y_test, rfr.predict(X_test))))