训练样例是什么?用来教模型的一条条数据
训练样例(Training Instance),也叫训练样本或训练实例,是指训练数据集中的每一条数据。机器学习模型正是通过学习大量的训练样例,从中总结出规律,才能对新的数据做出预测。
样本、样例和标签
周志华《机器学习》对相关的术语做了区分。一个“示例”或“样本”是对一个事件或对象的描述,由若干个属性,也就是特征组成,比如一个西瓜可以用“色泽青绿、根蒂蜷缩、敲声浊响”来描述。如果每个西瓜还附带了“好瓜”或“坏瓜”这样的结果信息,这个结果就叫作标记,也就是标签;拥有了标记信息的示例,则称为“样例”。所有用于训练模型的样例组成了训练集。在日常的使用中,这几个词常常被混用,统称为样本。
在不同的任务中,训练样例的形式各不相同:在图像分类中,一个训练样例是一张图片加上它的类别;在房价预测中,是一套房子的各项属性加上它的成交价格;在机器翻译中,是一句原文加上它的译文;在大语言模型的预训练中,是一段文本,模型要学习预测其中的每一个下一个词;在指令微调中,是一个问题或指令加上一个理想的回答;在基于人类反馈的强化学习中,是一个问题以及人对多个回答的偏好排序。
训练样例的数量
一般来说,训练样例越多,模型能学到的信息越多,就越有可能获得好的泛化能力,越不容易过拟合。深度学习模型尤其需要大量的训练样例:图像识别的经典数据集 ImageNet 有上百万张标注的图片,大语言模型的预训练语料多达数万亿个词元。需要多少训练样例,取决于任务的难度和模型的复杂程度:模型越复杂,通常需要越多的样例。当训练样例很少时,可以借助数据增强、迁移学习、少样本学习等方法。
训练样例的质量
训练样例的质量往往比数量更重要。“垃圾进,垃圾出”:如果训练样例中有大量的错误标签、噪声或重复数据,模型就会学到错误的规律。代表性:训练样例应该能代表模型将来实际要处理的数据。如果训练样例只来自某个地区、某个时间段或某类人群,模型在其他情况下的表现可能很差。均衡性:如果某些类别的样例太少,模型可能会忽视这些类别。在大模型时代,研究者普遍发现,对训练数据进行仔细的筛选、去重和清洗,能显著地提升模型的效果,有时少量高质量的数据,比大量低质量的数据更有用。
与验证样例和测试样例的区别
除了训练样例,通常还需要验证样例和测试样例:验证样例用于调整超参数、选择模型;测试样例用于在最后评估模型在新数据上的表现。三者必须严格地分开,训练样例不能出现在测试集中,否则测试结果就无法反映模型在真正的新数据上的能力,这叫数据泄露。对于大语言模型,还需要特别注意公开的评测题目是否被混入了训练数据中。此外,训练样例中可能包含个人信息或受版权保护的内容,收集和使用时需要遵守相关的法律法规。