Machine learning 无监督学习中的培训/测试分离是否必要/有用?

Machine learning 无监督学习中的培训/测试分离是否必要/有用?,machine-learning,unsupervised-learning,Machine Learning,Unsupervised Learning,在监督学习中,我使用典型的训练/测试分割来学习算法,例如回归或分类。关于无监督学习,我的问题是:培训/测试分离是否必要且有用?如果是,原因是什么?这取决于问题、数据集的形式以及用于解决特定问题的无监督算法的类别 大致:- 降维技术通常通过计算重建中的误差进行测试,因此我们可以使用k-折叠交叉验证程序 但关于聚类算法,我建议进行统计测试以测试性能。分割数据集并用有意义的类和交叉验证手工标记测试集也没有什么耗时的技巧 在任何情况下,对有监督的数据使用无监督算法,那么它总是很好的交叉验证 总的来说:-

在监督学习中,我使用典型的训练/测试分割来学习算法,例如回归或分类。关于无监督学习,我的问题是:培训/测试分离是否必要且有用?如果是,原因是什么?

这取决于问题、数据集的形式以及用于解决特定问题的无监督算法的类别

大致:- 降维技术通常通过计算重建中的误差进行测试,因此我们可以使用k-折叠交叉验证程序

但关于聚类算法,我建议进行统计测试以测试性能。分割数据集并用有意义的类和交叉验证手工标记测试集也没有什么耗时的技巧

在任何情况下,对有监督的数据使用无监督算法,那么它总是很好的交叉验证

总的来说:-没有必要在列车测试集中分割数据,但如果我们能做到这一点,它总是更好的

这篇文章解释了交叉验证是一个很好的无监督学习工具 全文可在此查阅

肯定有用。

关于“为什么”我知道的几点

当测试一个模型时,它应该总是在看不见的数据上执行。因此,最好使用train_test_split吐出数据


第二种情况是,数据应始终按格式进行洗牌。否则,拟合模型时会出现n-1类型的数据,这可能不会产生好的结果。

反问:您如何测试?@cel我不确定您的问题是什么意思?问题是:在监督学习中,我拥有真实的输出,我可以将其与之进行比较。但在无监督学习中,该算法通过查找数据中的相似性来工作。但我如何衡量绩效呢?是的,这正是我的观点。测试不是直截了当的,因为你不知道什么是对的,什么是错的。因此,将训练集和测试集划分的一般原则不容易应用于无监督学习。好的,谢谢,我想我明白了it@Gathide不是传统意义上的。显然,你总是必须证明你的算法是有效的。但这要困难得多,因为诸如准确度等标准指标不是现成的。