数据集的大小和质量

“乱码,下垃圾”

上述说法适用于机器学习。毕竟,模型的质量只有数据。但是,您如何衡量和改进数据集的质量呢?为获得实用的结果,您需要多少数据? 答案取决于您所解决的问题类型。

数据集的大小

一般而言,您的模型应使用比可训练参数至少多一个数量级的样本进行训练。大型数据集上的简单模型通常优于小型数据集上的精美模型。Google 已成功使用大型数据集训练简单的线性回归模型。

哪些内容会算作“大量”数据?具体取决于项目。考虑以下数据集的相对大小:

数据集 规模(样本数)
鸢尾花数据集 150(总计值)
MovieLens(2000 万个数据集) 20000263(总预算)
Google Gmail 智能回复 2.38000000(训练集)
Google 图书 Ngram 4.680 亿
谷歌翻译 万亿

如您所见,数据集有多种大小。

数据集的质量

如果数据质量不高,使用很多数据是没用的;质量也很重要。但怎样才算是“质量”呢?是一个模糊的术语。 不妨考虑采用实证分析方法,并选择可产生最佳结果的选项。秉持这种理念,高质量数据集能让您成功解决您关注的业务问题。换言之,如果数据能完成其预期任务,即构成良好结果。

不过,在收集数据时,更具体地定义质量会很有帮助。质量的某些方面往往与性能更好的模型相对应:

  • 可靠性
  • 特征表示
  • 最大限度减少偏差

可靠性

“可靠性”是指可信任数据的程度。 与基于不可靠数据训练的模型相比,基于可靠数据集训练的模型更有可能产生有用的预测。在衡量可靠性时,您必须确定:

  • 标签错误有多常见?例如,如果您的数据带有人工标签,那么有时人就会犯错。
  • 您的地图项有噪声吗?例如,GPS 测量结果会发生波动。 有一些噪声是没有问题的。您永远不会完全清除数据集中所有噪声。您还可以收集更多示例。
  • 数据是否已根据您的问题进行了适当过滤?例如,您的数据集是否应包含来自聊天机器人的搜索查询?如果您正在构建垃圾内容检测系统,那么答案很可能是肯定的,但如果您要改进人工搜索结果,那就不可以。

哪些因素会导致数据不可靠?回想一下机器学习速成课程,由于以下一个或多个原因,数据集中的许多示例都是不可靠的:

  • 省略的值。例如,有人忘记输入某个房子的年龄值。
  • 示例重复。例如,服务器错误地上传同一日志两次。
  • 标签有误。例如,有人错误地将一棵橡树的图片标记为枫树。
  • 特征值错误。例如,有人输入了额外的数字,或者温度计被遗落在太阳底下。

Google 翻译注重选择可靠性的“最佳子集”,也就是说,某些数据的标签质量高于其他部分。

特征表示

回想一下机器学习速成课程,该表示法是将数据映射到实用特征。您需要考虑以下问题:

  • 数据如何向模型显示?
  • 是否应对数值进行归一化
  • 您应如何处理离群值

本课程的转换数据部分将重点介绍特征表示。

训练与预测

假设您获得了出色的离线效果。那么,在您的实时实验中,结果不会恢复。可能出现的情况

此问题表明了训练/供应偏差,即,在训练时和传送时,针对指标计算不同的结果。偏差的原因可能很细微,但会对结果造成致命影响。在预测时,请始终考虑模型可用的数据。在训练期间,请仅使用可在投放中使用的功能,并确保训练集能够代表您的服务流量。