模型使用的数据集如何保证验证集和测试集的分布保持一致

相信很多人都会有这种疑惑,我们用标准数据来训练,但是在真是的测试过程中,输入数据的并不会是标准数据,导致了训练与测试的两个过程中数据分布的不一致。

首先要说,训练集合与测试集合的分布完全一样,这个不太现实,因为相对于有限的训练集,测试集合理论上趋于无限大,所以无法穷尽。然而我们也不能为了单单去拟合我们手里的测试集而调整模型。

那么要了解业务场景,要知道你的产品需要到哪些场景中,人为的分析数据源,这样收集到的数据可能会更好。

这里假定你有个识别人脸的应用,你的数据集是来自某知名人脸数据库(简称原数据库),10w张左右,图片清晰标注明确。而你的用户是手机上传图像,图像模糊且场景较复杂,1w张左右。那么现在其实你应该关心的是1w张用户数据,但是1w张样本太少了(假设),那么此时可以随机划分出一部分用户图像与原数据库混合训练,但是测试集合一定是用户图像而非你的原数据库。那么这样的模型可能就会表现的更好一些(相对)。

posted @ 2018-12-25 13:42  今夜无风  阅读(2013)  评论(0编辑  收藏  举报