返回首页

Roadmap
更新于 2026年10月26日 全文 1237 字未阅读

数据集:标签#

这一节,我们将聚焦于数据集中的「标签」。

直接标签与派生标签#

先把两种不同类型的标签摆在一起看:

  • 直接标签,指的是与模型想要做的预测完全一致的那个标签。也就是说,模型要预测的东西,在你的数据集里原封不动地就躺着某一列。举个例子,一列叫 bicycle owner 的数据,对于一个「判断某人是否拥有自行车」的二分类模型来说,就是一个直接标签。

  • 派生标签,指的是与模型想要做的预测相似,但并不相同——的标签。比如,一个人订阅了《Bicycle Bizarre》杂志,那他多半——但不一定——拥有自行车。

一般来说,直接标签要优于派生标签。如果你的数据集里提供了可行的直接标签,那大概就该用它。只是很多时候,直接标签并不存在。

派生标签永远是一种妥协——它是对直接标签的不完美近似。但也有不少派生标签近似得足够接近,照样能派上用场。用派生标签的模型,其效用上限就取决于派生标签与最终预测之间的关联到底有多紧密。

同时,别忘了每个标签都必须要表示成一个浮点数,这跟 特征向量 的情况是一样的(毕竟机器学习本质上就是一堆数学运算)。有时候,直接标签确实存在,却很难表示成一个浮点数——那就退一步,用派生标签。

练习:检验你的理解#

下面,我们再通过几个示例来理解一下。你的公司想做这样一件事:

给自行车车主邮寄优惠券(「购买自行车头盔立享 15% 折扣)。

那么,模型要做的就变成了:

预测出哪些人拥有自行车。

可惜的是,数据集里并没有一列叫 bike owner。不过倒是有那么一列,叫 recently bought a bicycle。

那么,recently bought a bicycle 对这个模型来说,是一个好的派生标签,还是一个差的派生标签?

人工生成的数据#

有些数据是人工生成的:由一个或多个人去检查某些信息,然后给出一个值,通常是标签。比如,一位或多位气象学家可以查看天空的照片,辨认出云的类型。

与之相对应的,还有些数据是自动生成的:由软件(也可能就是另一个机器学习模型)来确定这个值。比如,一个机器学习模型可以查看天空照片,自动识别出云的类型。

这一节要探讨的,正是人工生成数据的好处与坏处。

优点#

  • 人工标注者能胜任各种各样的任务,哪怕是先进的机器学习模型都可能觉得棘手的任务。

  • 这个过程会迫使数据集的所有者制定出清晰、一致的评判标准。

缺点#

  • 你通常得付钱给人工标注者,所以人工生成的数据可能很贵。

  • 人都会犯错。所以同一条数据,可能得让多个标注者反复评估。

把下面这几个问题想清楚,你才知道自己到底需要什么:

  • 你的标注者需要多高的技能?(比如,标注者必须掌握某门特定的语言吗?做对话或 NLP 应用时,你需要语言学家吗?)

  • 你需要多少条带标签的样本?又需要多快拿到手?

  • 你的预算是多少?

一定要复核人工标注的结果。比如说,你自己先标 1000 条样本,然后看看自己的结果和其他标注者的结果是否吻合。如果出现了分歧,不要想当然地认定自己的评分才是对的——尤其当其中牵涉到价值判断的时候。如果确实是人工标注者引入了错误,那就考虑给他们补充一些说明,然后再试一次。

记得,最好亲手过一遍你的数据,无论当初是怎么拿到的,都是一次很好的练习。Andrej Karpathy 在 ImageNet 上就这么干过,并且把当时的经历写了下来。

模型可以混合使用自动生成的标签和人工生成的标签来训练。不过对大多数模型来说,额外引入一套人工生成的标签(而且这套标签可能很快就会过时),通常并不值得为此增加的复杂度与维护成本。话虽如此,有时候人工生成的标签确实能提供一些自动标签里拿不到的额外信息。


关键术语:

  • 标签

  • 特征向量

阅读 --