Я намагаюся використовувати випадкову регресію лісу в науках-учах. Проблема в тому, що я отримую дійсно високу помилку тесту:
train MSE, 4.64, test MSE: 252.25.
Ось так виглядають мої дані: (синій: реальні дані, зелений: передбачуваний):
Я використовую 90% для тренувань і 10% для тесту. Це код, який я використовую після спробу декількох комбінацій параметрів:
rf = rf = RandomForestRegressor(n_estimators=10, max_features=2, max_depth=1000, min_samples_leaf=1, min_samples_split=2, n_jobs=-1)
test_mse = mean_squared_error(y_test, rf.predict(X_test))
train_mse = mean_squared_error(y_train, rf.predict(X_train))
print("train MSE, %.4f, test MSE: %.4f" % (train_mse, test_mse))
plot(rf.predict(X))
plot(y)
Які можливі стратегії для поліпшення мого пристосування? Чи є ще щось, що я можу зробити, щоб витягти базову модель? Мені здається неймовірним, що після стількох повторень одного шаблону модель поводиться так погано з новими даними. Чи я взагалі маю надію намагатися відповідати цим даним?