我想在本文中复制算法 - https://www.ii.pwr.edu.pl/~tomczak/PDF/[MZSTJT].pdf
我理解它的方式我需要:
我正在使用xgboost的Python API。有没有办法在迭代之间控制Dmatrix,所以我可以添加新功能?
答案 0 :(得分:0)
据我所知,开箱即用是不可能的。问题是整体的每个树都有不同的特征,而算法并不是为了这个特征而做的(据我所知)。
您可以做的是使用您的Dmatrix训练模型,进行特征选择/生成并创建包含新功能的新Dmatrix并训练新的增强树模型。
只是浏览一下这篇文章,我会说他们提出的建议主要是我上面提出的建议。它们不包括以前基础学习者的新功能,基本上学习者可以是任何模型(可能只是梯度提升的树在近期表现得非常好 - 除了CNN之外)。他们的算法结果只是一组“基础”模型。他们把它称为增强树木的集合(所以是一个整体的集合)。
他们的方法主要是普通特征选择程序的包装变体,其特殊之处在于它们还可以创建合成特征。
另一方面,他们的结果看起来并不那么好,确定它很重要,但没有给出足够的数据。您也可以使用原始的XGBoost算法,并且很可能在现实世界性能方面不会变得更糟(仅仅是我的两分钱)。