python中的增强决策树?

机器算法验证 Python 大车 助推
2022-01-24 16:04:53

是否有一个好的 python 库来训练增强的决策树?

4个回答

我首先看的是Orange,它是一个功能齐全的 ML 应用程序,具有 Python 后端。参见例如orngEnsemble

其他有前途的项目是mlpyscikit.learn

我知道PyCV包括几个增强程序,但显然不是 CART。也看看MLboost

您可以使用 Rpy(http://rpy.sourceforge.net/) 使用 R 决策树库。另请查看文章“使用 python 构建决策树”(http://onlamp.com/pub/a/python/2...)。

还有

http://opencv.willowgarage.com/documentation/index.html

http://research.engineering.wustl.edu/~amohan/

更新的答案

情况发生了很大变化,如今答案很明确:

  • scikit-learn是python 中库,有几个用于增强决策树的优秀算法
  • python 中“最好的”提升决策树是XGBoost实现。

更新 1

我在Milk: Machine Learning Toolkit for Python中的基于树的学习器取得了很好的成功。它似乎正在积极开发中,但是当我使用它时文档有点稀疏。测试套件(github.com/luispedro/milk/blob/master/tests/test_adaboost.py)包含一个“增强的树桩”,它可以让你很快地进行:

import numpy as np
import milk.supervised.tree
import milk.supervised.adaboost

def test_learner():
    from milksets import wine
    learner = milk.supervised.adaboost.boost_learner(milk.supervised.tree.stump_learner())
    features, labels = wine.load()
    features = features[labels < 2]
    labels = labels[labels < 2] == 0
    labels = labels.astype(int)
    model = learner.train(features, labels)
    train_out = np.array(map(model.apply, features))
    assert (train_out == labels).mean() > .9