监督学习中测试数据的目的?

时间:2015-03-02 05:30:56

标签: machine-learning test-data supervised-learning

所以这个问题可能看起来有点愚蠢,但我无法绕过它。 测试数据的目的是什么?它只是计算分类器的准确性吗?我正在使用Naive Bayes对推文进行情绪分析。一旦我使用训练数据训练我的分类器,我就使用测试数据来计算分类器的准确性。如何使用测试数据来提高分类器的性能?

2 个答案:

答案 0 :(得分:1)

在进行一般监督机器学习时,测试数据集在确定模型的执行情况方面起着至关重要的作用。您通常会构建一个模型,其中包含90%的输入数据,剩下10%用于测试。然后,您可以通过查看该模型对10%训练集的效果来检查该模型的准确性。模型对测试数据的性能是有意义的,因为模型从未“看到”这些数据。如果模型在统计上是有效的,那么它应该在训练和测试数据集上都表现良好。此常规程序称为交叉验证,您可以阅读更多相关信息here

答案 1 :(得分:0)

你不会 - 就像你猜测的那样,测试数据用于测试,并且不能用于其他任何事情,以免你扭曲你的准确度测量。这是任何机器学习的重要基石 - 如果您使用测试数据进行培训,您只会欺骗自己。

如果您正在考虑这样的绝望措施,正确的方法通常是重新检查您的问题空间和您拥有的解决方案。它是否足以模拟您要解决的问题?如果没有,你能设计一个更好的模型来捕捉问题的本质吗?

机器学习不是灵丹妙药。它不会为您解决问题。太多失败的实验一遍又一遍地证明,"垃圾进入 - 垃圾输出"。