问题标签 [decision-tree]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
36886 浏览

algorithm - 帮助理解交叉验证和决策树

我一直在阅读决策树和交叉验证,我理解这两个概念。但是,我无法理解与决策树有关的交叉验证。本质上,交叉验证允许您在数据集相对较小时在训练和测试之间交替,以最大化您的错误估计。一个非常简单的算法是这样的:

  1. 决定你想要的折叠次数(k)
  2. 将您的数据集细分为 k 个折叠
  3. 对训练集使用 k-1 折叠来构建树。
  4. 使用测试集来估计有关树中错误的统计信息。
  5. 保存结果以备后用
  6. 重复步骤 3-6 k 次,为您的测试集留出不同的折叠。
  7. 平均迭代中的错误以预测总体错误

我无法弄清楚的问题是最后你会有 k 个决策树,它们可能都略有不同,因为它们可能不会以相同的方式拆分,等等。你选择哪棵树?我的一个想法是选择错误最小的那个(尽管这并不能使它成为最佳选择,只是它在给出的折叠中表现最好 - 也许使用分层会有所帮助,但我读过的所有内容都说它只会有一点帮助)。

据我了解,交叉验证的重点是计算节点统计信息,以后可用于修剪。所以实际上树中的每个节点都会根据给它的测试集计算出统计数据。重要的是节点统计数据中的这些,但如果你平均你的错误。当每棵树的选择分裂的内容可能有所不同时,如何在 k 树的每个节点中合并这些统计信息等。

计算每次迭代的总体误差有什么意义?这不是修剪过程中可以使用的东西。

对于这个小皱纹的任何帮助将不胜感激。

0 投票
2 回答
115 浏览

oop - 做 DDD 时如何处理“默认值”

我很想看看人们在做 DDD 时如何处理决策树。例如,我们有一个要求,当持久化特定类型的新实例时,必须建立一些“默认”关联(相当多)。不过,用户可以在以后自由更改它们。因此,如果有人创建一个决策表,您如何在您的领域中表示它,或者您呢?这是在保险领域,例如,如果我选择一个选项,则所有相关的“默认”福利、选项等都会添加到保单中,但用户可以稍后自由更改。

0 投票
3 回答
404 浏览

algorithm - 什么样的图来表示这个业务逻辑决策树?

我通常如何在图表中表示此业务逻辑?

它是有向无环图吗?如何用图形术语表示图形中的“和”/“或”逻辑?

(我正在寻找正确的图形术语,这样我就可以集中阅读。)

0 投票
3 回答
4564 浏览

machine-learning - 多元决策树学习器

确实存在许多单变量决策树学习器实现(C4.5 等),但实际上有人知道多变量决策树学习器算法吗?

0 投票
2 回答
1607 浏览

c# - 用决策树逻辑实现程序

系统实现了“Think Animal”游戏。

主要用例是:

在 MS SQL Server 和 C# 中实现决策树逻辑时,我在哪里可以获得一些信息和一些示例。任何信息都会很有用。谢谢

0 投票
7 回答
9712 浏览

python - 使用 python 解析 CSV 文件(稍后制作决策树)

首先,全面披露:这是一个单向作业,所以我不想收到代码。:)。我更在寻找方法;我对python陌生,读过一本书但还没有写任何代码。

整个任务是导入 CSV 文件的内容,从 CSV 文件的内容创建决策树(使用ID3 算法),然后解析第二个 CSV 文件以针对树运行。有一个很大的(可以理解的)偏好让它能够处理不同的 CSV 文件(我问我们是否被允许对列名进行硬编码,主要是为了消除它的可能性,答案是否定的)。

CSV 文件采用相当标准的格式;标题行用 # 标记,然后显示列名,之后的每一行都是一系列简单的值。例子:

目前,我正在尝试解决第一部分:解析 CSV。要为决策树做出决策,字典结构似乎是最合乎逻辑的;所以我正在考虑按照以下方式做一些事情:

但是,如果我这样做,我不确定如何在键和值之间进行映射。我还想知道是否有某种方法可以对列表中的每个字典执行操作,因为我需要做的事情是“每个人都返回列 Column1 和 Column4 的值,所以我可以数数谁有什么!” - 我认为有一些机制,但我认为我不知道该怎么做。

字典是最好的方法吗?使用其他数据结构做事情会更好吗?如果是这样,是什么?

0 投票
2 回答
3078 浏览

.net - 在 SharePoint 中实施决策树

在 SharePoint 中实施决策树的最佳方式是什么?是否有可用的 Web 部件?Sharepoint 的任何 Fab 40 模板是否包含决策树 Web 部件?我已经搜索过,但我无法在任何地方找到有用的答案。请建议。

0 投票
3 回答
900 浏览

code-generation - 来自字符串的机器学习和代码生成器

问题:给定一组手工分类的字符串(或一组有序的字符串向量)生成一个分类函数来分类更多输入。就我而言,该数据(或大部分数据)不是自然语言。

问题:是否有任何工具可以做到这一点?我正在考虑某种合理完善、下载、安装和运行的东西,而不是一些图书馆或脆弱的学术程序。


(请不要拘泥于细节,因为真实的细节会限制对不太有用的回复的回答,并且在 NDA 之下。)

作为我正在查看的示例;我要过滤的输入是从日志中提取的计算机生成的状态字符串。根据需要通知谁或需要采取什么行动来过滤错误消息(例如)。

0 投票
2 回答
2691 浏览

python - 使用python遍历二叉决策树?

如何使用python语言遍历二叉决策树。给定一棵树,我想知道我们如何从根遍历到所需叶子所需叶子的特征以字典形式给出假设并且必须从根遍历到叶子用特征列表中给出的详细信息回答每个节点的问题.. 决策树节点具有格式 ((question)(left tree)(right tree)) 遍历它时应该回答每个节点的问题并选择左或右并遍历直到叶子?

0 投票
2 回答
2277 浏览

programming-languages - 用于实现决策树的语言

什么是实现决策树的编程语言的好选择?实施结果仅供个人使用,无需考虑发布能力等。

我听说 Octave 是一个不错的选择,谁能解释为什么推荐使用基于矩阵的语言来实现决策树?