决策网络/决策森林是不是考虑输入之间的关系

Posted

技术标签:

【中文标题】决策网络/决策森林是不是考虑输入之间的关系【英文标题】:Does a Decision Network / Decision Forest take into account relationships between inputs决策网络/决策森林是否考虑输入之间的关系 【发布时间】:2012-04-06 13:52:22 【问题描述】:

我有处理神经网络的经验,特别是具有反向传播性质的神经网络,并且我知道在传递给训练器的输入中,当引入隐藏层时,输入之间的依赖关系是结果模型知识的一部分。

决策网络也是如此吗?

我发现有关这些算法 (ID3) 等的信息有些难以找到。我已经能够找到实际的算法,但是诸如预期/最佳数据集格式和其他概述之类的信息很少。

谢谢。

【问题讨论】:

【参考方案1】:

决策树实际上很容易向其提供数据,因为它们所需要的只是一张数据表,以及该数据中的哪一列是您想要预测的特征(或列)。对于任何特征,该数据可以是离散的或连续的。现在有几种决策树,它们对连续值和离散值有不同的支持。而且它们的工作方式不同,因此了解每一种的工作方式可能具有挑战性。

Different decision tree algorithms with comparison of complexity or performance

根据您感兴趣的算法类型,如果您想尝试实现它,如果不阅读实际论文,可能很难找到信息。我已经实现了 CART 算法,唯一的选择是找到关于它的原始 200 页的书。大多数其他处理方法只讨论了足够详细的拆分等想法,而没有在更高层次上讨论任何其他方面。

至于是否考虑到事物之间的依赖关系。我相信它只假设每个输入特征和预测特征之间的依赖关系。如果输入独立于预测特征,则不能将其用作拆分条件。但是,在其他输入特征之间,我相信它们必须彼此独立。我必须检查这本书以确保这是真的与否,但我认为这是真的。

【讨论】:

感谢您的回答。我在想一种方法可能是修改算法以获取输入值之间的关系,并将计算用作附加输入值。这基本上会平方输入到树中的输入数量,但可能会暴露数据点和输出之间的一些额外关联。 CART 算法的独特之处在于它是一棵二叉树。一个分裂总是分裂成两个分支。但它可以选择使用代理拆分沿多个值和多个特征进行拆分。您可能想要研究 CART 中的代理拆分,因为它会同时沿多个特征拆分。对输入进行平方会非常昂贵,因为在测试必须优化的分类特征的拆分时,CART 已经有一个 O(n!) 算法。平方意味着仅考虑 2 个特征之间的关系,如果关系在 4、5 或 6 个之间怎么办?... 我认为最终你会试图找到我认为使用代理拆分覆盖的特征之间的依赖关系。在两个特征的关系中,您会发现其中一个拆分支配另一个特征,但您可以考虑第二个、第三个等对拆分的贡献程度的阈值。

以上是关于决策网络/决策森林是不是考虑输入之间的关系的主要内容,如果未能解决你的问题,请参考以下文章

决策树(DecisionTree)和随机森林(Random Forests)

随机森林的训练过程

随机森林(分类与回归)

随机森林

求会matlab和机器学习的大牛,教我怎么实现一个随机森林

随机森林(Random Forest)和梯度提升树(GBDT)有什么区别?