我有三个数据集:训练集、验证集、测试集,我目前正在使用XGBoost分类器来执行一个分类任务。
我用训练集训练了XGBClassifier,并将其保存为pickle文件,以避免每次都需要重新训练。当我从pickle文件中加载模型后,我能够使用其中的预测方法,但似乎无法用验证集或任何其他新数据集来训练这个模型。
注意:我没有得到任何错误输出,jupyter lab的单元格看起来运行得很完美,但我的CPU核心在该单元格运行时都处于休息状态,所以我看到模型并没有被拟合。
这可能是XGBoost的问题,还是pickle保存的模型在加载后无法再次拟合?
回答:
一年前我也有同样的问题,你可以在这里找到问题和答案
不过,通过这种方式,你将继续向现有模型添加“树”(增强器),使用你的新数据。
或许更好的是,在你的训练集和验证集上训练一个新模型。
无论你决定做什么,你应该尝试这两种方法,并评估你的结果,看看哪种方法更适合你的数据。