Weka 的不同测试选项是啥意思?
Posted
技术标签:
【中文标题】Weka 的不同测试选项是啥意思?【英文标题】:What do Weka's different test options mean?Weka 的不同测试选项是什么意思? 【发布时间】:2017-04-15 06:06:40 【问题描述】:所以我最近开始使用 Weka,在使用 J48 等构建树时有几个测试选项。以下是选项,包括我对它们的理解:
-
使用训练集 - 我只知道它非常乐观,不一定有用。即使Weka's documentation at 2.1.5 也不是很具体。
提供的测试集 - 非常不言自明,您为其提供了一个测试集。
交叉验证 - 我通过阅读 this 简短示例理解了它。
百分比拆分 - 我认为这意味着将数据集划分为一定百分比的两组,一组用于训练,一组用于测试。
我想知道的是训练集(第一个选项)到底是什么以及它的作用。它从哪里得到这个训练集,它究竟测试了哪些数据?如果你能纠正我对其余部分的理解,如果它是错误的。
【问题讨论】:
【参考方案1】:第一个选项只是意味着“使用所有加载的数据来运行这个算法”。你选择这个
尝试一下, 首先查看输出中的结果部分, 检查性能/运行持续时间, 检查 Weka 的输出是否与不同软件(例如 R 或 Matlab)的相同算法的实现相匹配。 ...【讨论】:
那么我理解它首先对所有数据进行训练,然后对所有数据进行测试是否正确?即它在训练和测试中使用相同的确切数据,这可以解释为什么我在尝试的一些数据上看到 100% 的准确率,而在 10 倍交叉验证下它下降到 70% 确实如此。使用此选项,您将获得 100% 的准确度。 10 倍交叉验证是获得更真实结果的推荐选项。他们一直在 Weka MOOC 中使用它。 显然这取决于您的样本量。如果样本量很小,那么 5 折交叉验证也可能是一个不错的选择,因为切片/折叠仍然具有更合适的最小尺寸。 10以上差别不大。 如果您的数据集包含 100 个样本,则有 2 个极端:(1)您可以将其拆分为 2 个集,训练集和测试集。这是浪费的,并且会产生很大的偏差(比如说,您的 2 种方法可能非常不同)。 (2) 如果你把它分成 99 个折叠并使用一个进行测试,并平均 99 次拟合,这往往会有很大的方差。因此,K = 5 到 10 为这种偏差-方差折衷提供了很好的折衷方案。 (见 ISLR 书) 只是简单地阅读了链接的博文,但我认为他谈到了 k-最近邻算法和决策边界的可视化。那是我在谈论的另一件事。我的“K”不同,K-Fold 交叉验证。我本可以将其称为 n 倍交叉验证,但按照惯例,n 通常用于测量/行的数量。我的参考来自 ISLR sec 5-1-4 www-bcf.usc.edu/~gareth/ISL/ISLR%20Seventh%20Printing.pdf。 - 我会在这里停下来;这个帖子太长了。【参考方案2】:选项一是:
测试集 = 训练集
得到的分数当然容易过拟合,这就是为什么它“高度乐观但不一定有用”。
【讨论】:
以上是关于Weka 的不同测试选项是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章