我有一个使用 XGBoost 训练过的大型数据集(195 个特征 x 20m 样本)。我想看看遗传算法是否可以击败 XGBoost,因为数据噪声太大,容易过度拟合。
我想使用基于树的模型,这样我就不必对数据进行标准化,而且这些特征确实有一些相互关系。
有没有完成这一切的python包?即,可以通过遗传优化过程创建树?
我有一个使用 XGBoost 训练过的大型数据集(195 个特征 x 20m 样本)。我想看看遗传算法是否可以击败 XGBoost,因为数据噪声太大,容易过度拟合。
我想使用基于树的模型,这样我就不必对数据进行标准化,而且这些特征确实有一些相互关系。
有没有完成这一切的python包?即,可以通过遗传优化过程创建树?
非常新的版本:
该软件包的主要目标是允许创建在某些方面比贪心算法生成的树更好的决策树。树的创建是通过遗传算法完成的。为了尽可能快地实现树的进化,最耗时的组件是在 Cython 中编写的。还有一些实现机制可以使用旧树来创建新树,而无需从一开始就对所有观察结果进行分类(目前在 developermnet 中)。计划允许多线程进化。创建的树应该具有与贪心算法生成的树相当的精度和更小的尺寸。
还值得检查:
PyGAD 是一个开源 Python 库,用于构建遗传算法和优化机器学习算法。
参考:
https://hal.inria.fr/hal-01405549/document
https://www.hindawi.com/journals/tswj/2014/468324/
https://www.kdnuggets.com/2018/07/genetic-algorithm-implementation-python.html