Estoy tratando de usar Regresión forestal aleatoria en scikits-learn. El problema es que recibo un error de prueba muy alto:
train MSE, 4.64, test MSE: 252.25.
Así es como se ven mis datos: (azul: datos reales, verde: predicho):
Estoy usando 90% para entrenamiento y 10% para prueba. Este es el código que estoy usando después de probar varias combinaciones de parámetros:
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)
¿Cuáles son las posibles estrategias para mejorar mi ajuste? ¿Hay algo más que pueda hacer para extraer el modelo subyacente? Me parece increíble que después de tantas repeticiones del mismo patrón, el modelo se comporte tan mal con los nuevos datos. ¿Tengo alguna esperanza de intentar ajustar estos datos?