决策树 - Scikit,Python
Decision Trees - Scikit, Python
我正在尝试根据一些训练数据创建决策树。我以前从未创建过决策树,但已经完成了一些线性回归模型。我有 3 个问题:
通过线性回归,我发现以迭代方式绘制图表、拟合模型、分组因子水平、检查 P 统计等相当容易,直到我最终得到一个好的预测模型。我不知道如何评估决策树。有没有办法获得模型的摘要(例如,statsmodels 中的 .summary() 函数)?这应该是一个迭代过程,我决定一个因素是否重要 - 如果是,我怎么知道?
我在可视化决策树方面一直很不成功。在我尝试过的各种不同方式中,代码似乎 运行 没有任何错误,但没有出现/绘图。我唯一能成功的是 tree.export_text(model)
,它只是声明 feature_1、feature_2,等等。我不知道这些功能实际上是什么。有人在可视化方面遇到过这些困难/有简单的解决方案吗?
我生成的混淆矩阵如下:
[[ 0 395]
[ 0 3319]]
即该模型将所有行预测为相同的结果。有谁知道为什么会这样?
Scikit-learn 是一个旨在构建预测模型的库,因此没有显着性检验、置信区间等。您始终可以构建自己的统计数据,但这是一个乏味的过程。在 scikit-learn 中,您可以使用 RFE、RFECV 等递归地消除特征。您可以找到 feature selection algorithms here. For the most part, these algorithms get rid off the least important feature in each loop according to feature_importances
的列表(其中每个特征的重要性定义为它对减少熵、基尼系数等的贡献。 ).
visualize a tree最直接的方法是tree.plot_tree()
。特别是,您应该尝试将特征的名称传递给 feature_names
。如果您想要更具体的答案,请向我们展示您到目前为止所做的尝试。
尝试另一个 criterion
,设置更高的 max_depth
,等等。有时数据集有无法识别的记录。例如,两个观察值在所有特征中具有完全相同的值,但目标标签不同。你的数据集中是这种情况吗?
我正在尝试根据一些训练数据创建决策树。我以前从未创建过决策树,但已经完成了一些线性回归模型。我有 3 个问题:
通过线性回归,我发现以迭代方式绘制图表、拟合模型、分组因子水平、检查 P 统计等相当容易,直到我最终得到一个好的预测模型。我不知道如何评估决策树。有没有办法获得模型的摘要(例如,statsmodels 中的 .summary() 函数)?这应该是一个迭代过程,我决定一个因素是否重要 - 如果是,我怎么知道?
我在可视化决策树方面一直很不成功。在我尝试过的各种不同方式中,代码似乎 运行 没有任何错误,但没有出现/绘图。我唯一能成功的是
tree.export_text(model)
,它只是声明 feature_1、feature_2,等等。我不知道这些功能实际上是什么。有人在可视化方面遇到过这些困难/有简单的解决方案吗?我生成的混淆矩阵如下:
[[ 0 395] [ 0 3319]]
即该模型将所有行预测为相同的结果。有谁知道为什么会这样?
Scikit-learn 是一个旨在构建预测模型的库,因此没有显着性检验、置信区间等。您始终可以构建自己的统计数据,但这是一个乏味的过程。在 scikit-learn 中,您可以使用 RFE、RFECV 等递归地消除特征。您可以找到 feature selection algorithms here. For the most part, these algorithms get rid off the least important feature in each loop according to
feature_importances
的列表(其中每个特征的重要性定义为它对减少熵、基尼系数等的贡献。 ).visualize a tree最直接的方法是
tree.plot_tree()
。特别是,您应该尝试将特征的名称传递给feature_names
。如果您想要更具体的答案,请向我们展示您到目前为止所做的尝试。尝试另一个
criterion
,设置更高的max_depth
,等等。有时数据集有无法识别的记录。例如,两个观察值在所有特征中具有完全相同的值,但目标标签不同。你的数据集中是这种情况吗?