我在 CatBoost 网站上看到它应该优于任何其他增强的训练模型,并决定自己在 Kaggle 的https://www.kaggle.com/c/house-prices-advanced-regression-techniques上尝试一下。
我创建了一些基本内核,没有任何复杂的预处理、特征选择、GridSearch、堆叠等……只是为了比较 XGBR 和 CatBoost 的性能。但据我所知,XGBR 总是优于 CatBoost。
https://www.kaggle.com/markbquant/compare-catboostregressor-vs-xgbregressor
CatBoost 参数:iterations=100, depth=3, learning_rate=0.1
XGBR 参数:subsample=0.7, colsample_bytree=0.7, n_estimators=500, learning_rate=0.03, max_depth=5, min_child_weight=3
例如,在 Kaggle 中,XGBR 的得分为 0.134,而 CatBoot 的得分仅为 0.197(我尝试了 one_hot_max_size 和 cat_features)。如果有人能指出 CatBoost 模型有什么问题,我将不胜感激,可能缺少一些优化。