0

我是机器学习的新手。我做了一个测试,但不知道如何解释和评估。

情况1:

我首先将数据(数据A,约8000字)随机分成10组(a1..a10)。在每个组中,我使用 90% 的数据来构建 ngram 模型。然后在同一组的其他 10% 数据上测试这个 ngram 模型。结果低于 10% 的准确度。其他 9 组以同样的方式完成(分别建立模型并分别在该组剩余的 10% 数据上进行测试)。所有结果的准确率约为 10%。(这是 10 折交叉验证吗?)

案例二:

我首先基于大约 8000 个单词的整个数据集(数据 A)构建了一个 ngram 模型。然后我把这个A分成10组(a1,a2,a3..a10),当然是随机的。然后我使用这个 ngram 分别测试 a1,a2..a10。我发现该模型在所有组中的准确率几乎达到 96%。

如何解释这种情况。提前致谢。

4

3 回答 3

3
  1. 是的,10 倍交叉验证。

  2. 这种测试方法有在训练集上测试的共同缺陷。这就是准确性被夸大的原因。这是不现实的,因为在现实生活中,您的测试实例是新颖的,并且系统以前看不到。

N 折交叉验证是许多作品中使用的有效评估方法。

于 2012-05-23T20:02:12.297 回答
2

您需要阅读过度拟合的主题。

您描述的情况给人的印象是您的 ngram 模型严重过度拟合:它可以“记住” 96% 的训练数据。但是当在适当的子集上训练时,它只能实现对未知数据 10% 的预测。

于 2012-05-23T20:43:37.693 回答
0
  1. 这称为 10 折交叉验证
于 2012-05-24T12:20:43.893 回答