用于实现决策树的语言
Posted
技术标签:
【中文标题】用于实现决策树的语言【英文标题】:Languages for implementing decision trees 【发布时间】:2011-02-27 06:38:33 【问题描述】:什么是用于实现决策树的编程语言的好选择?实施结果仅供个人使用,无需考虑能否发布等。
我听说 Octave 是一个不错的选择,谁能解释一下为什么推荐使用基于矩阵的语言来实现决策树?
【问题讨论】:
【参考方案1】:我使用Standard ML 来实现决策树并将编译器从特定领域的语言编写到决策树中。我也将类似的决策树编译成 C 代码。
这真的取决于你想用决策树做什么。如果您正在尝试做一些复杂的事情,或者您正在尝试使决策树特别易于阅读和编写,我建议您创建一种特定于域的语言或将特定于域的运算符嵌入到Haskell 或标准 ML 中。如果你只是想开始,你可以从 ML 开始(对于初学者来说比 Haskell 更容易),这样可以为以后保留一些选择。
总的来说,ML 和 Haskell 都非常擅长表示和操作各种树。
我无法解释为什么有人会推荐基于矩阵的语言用于决策树。
【讨论】:
感谢您的信息。我想我用 Octave 找错树了。由于这篇具体的文章 - onlamp.com/pub/a/python/2006/02/09/… - 我正在考虑使用 Python,而且我想学习 Python 已经有一段时间了,这可能是一个好的开始。你怎么看? 为什么有这样的好处?我可以勾勒出一些回应:简单、一致、自然…… :) 但除了简单之外,这些语言还极具表现力。有供阅读的。【参考方案2】:我很确定第一个决策树是用 LISP 编写的。
仍然有许多这样的算法仍然是用 LISP 编写的。 如果您决定选择 LISP,您可以找到许多文档。 Scheme 也是一种很好的语言,它比 LISP 更简单/更小。
两种语言的学习曲线也很快。
恕我直言
【讨论】:
以上是关于用于实现决策树的语言的主要内容,如果未能解决你的问题,请参考以下文章
R语言基于树的方法:决策树,随机森林,套袋Bagging,增强树
R语言使用party包中的ctree函数构建条件推理决策树的流程和步骤条件推理决策树是传统决策树的一个重要变体条件推理树的分裂是基于显著性测试而不是熵/纯度/同质性度量来选择分裂