假设将数据分区为训练/验证/测试集以进一步应用某些分类算法,并且训练集不包含完整数据集中存在的所有类标签 - 比如一些带标签的记录“x”仅出现在验证集中,而不出现在培训中。
这是有效的分区吗?以上可能会产生许多后果,例如混淆矩阵将不再是正方形,在算法期间我们也可能会评估错误,这会受到训练集中看不见的标签的影响。
第二个问题如下:分区算法是否常常关注上述问题,并以训练集包含所有现有标签的方式对数据进行分区?
答案 0 :(得分:2)
这是分层抽样应该解决的问题。
答案 1 :(得分:0)
如果您保留包含所有标签集的列表,则可以确定训练集中不存在的标签。然后,当您对验证集进行测试时,生成一对(训练集中的标签,预测),以及(不在训练集中的标签,0)作为验证结果。我不知道你编写的是哪种语言,但它可以在scikit-learn中使用python轻松实现。您可以查看post以获取更多详细信息。