要了解AI偏差,我们需要了解数据集偏差。收集,标记和组织数据是耗时且昂贵的工作。人工智能界中许多流行的数据集可能需要花费数年的时间来制作和发布。此工作需要大量资源,并且不会使数据集创建成为一项小规模或高效的任务。由于创建具有所有可能排列和域的数据集是不切实际的,因此所有数据集都存在某种形式的偏差。数据的这种限制会导致性能下降,并导致跨未表示域的泛化程度降低。
简单的答案是创建更多数据,但这并不容易。更好的解决方案是使用现有解决方案(例如领域自适应)改善现有的机器学习模型。但是,在深入研究解决方案之前,让我们先回顾一下问题本身。
我将讨论一些经常出现的术语,但还有更多。
数据集偏差对应于在数据集中经常看到的属性。例如,在COCO数据集中,“人物”是整个图像中最常见的对象类别。 COCO数据集中的偏差是“人”。偏差可以使人类更容易区分数据集,但是偏差通常还会导致模型性能下降(由于过度拟合),这可能会妨碍学习可靠的功能。
域移位是指训练数据和测试数据具有不同域的情况。例如,当白天图像用于训练数据而夜间图像用于测试数据时,发生域移位。训练数据中的偏差是“白天”。此域偏移导致性能降低。
假设您有一个神经网络,可以拍摄图像并预测对象边界框和标签。您可以将其部署在自动驾驶汽车上以识别行人。假设该模型是在阳光明媚的加利福尼亚州的数据集上训练的。
假设您在冬季在波士顿部署了训练有素的网络。由于网络在训练期间没有看到此类数据,因此在此示例中很可能会丢失很多对象和许多行人。这是域偏移的问题,这是由数据集偏差引起的。源数据来自源域,部署中的目标数据称为目标域。并且它在输入数据上具有分布偏移。分布已从培训时间转到了测试时间。
通常,当在一个数据集上训练模型并将训练后的模型应用于另一数据集时,可能会发生域移位。具体来说,对象的数据集可以来自具有白色背景和规范姿势的产品图像,并且模型可以部署在从移动机器人收集的数据集上,在该数据集中背景混乱,视点和照明条件非常不同。
这是一个非常重要的问题,其中我们正在针对面部皮肤有偏见的数据训练面部检测系统。这会导致在深色皮肤的面部图像上的预测性能较差。我们想改善肤色较深的人的性能。
领域转移的另一个例子是当其训练数据偏向特定形式时。例如,训练数据是RGB图像,而测试数据是深度图像。使用域自适应,我们可以改善深度图像上的检测性能。
在此示例中,机械臂正在拾取物体。理想情况下,我们希望在仿真中训练这些策略,因为它是一种廉价的数据源,不会损坏机器人。但是,在测试时,我们可以获得真实的图像。因此,我们希望能够适应从模拟到现实的这种偏差。 (有关Sim2Real的更多信息,请查看我的Sim2Real概述。即将推出。)
训练数据中的数据集偏差会导致性能下降和对将来的测试数据的泛化。训练和测试过程中图像类型的区别可能会使模型在评估过程中无用。这会导致性能显着下降,并使我们的模型不准确。
例如,如果我们在MNIST上进行训练并在MNIST的图像上对其进行测试,那么它应该具有99%的准确性。但是,如果我们在MNIST域上进行训练并在街景门牌号码(SVHN)上进行测试。我们将看到效果约为67.1%。这远远低于应有的水平,因此这是一个严重的问题。实际上,即使在MNIST和USPS的两个相似外观的域之间,性能仍然存在非常显着的下降。
如今,存在针对AI偏差的解决方案。这些解决方案提高了模型性能。在这里,我们对其中的一些有了高度的了解。
领域适应是领域转移的一种解决方案。这是一种使模型适应新数据集的方法,而新数据集中没有标签也没有标签。我们假设在训练期间可以访问一小组目标域图像。在训练过程中,您可以了解目标分布的外观。
域通用化是域转移的另一种解决方案。它不假定培训数据中存在目标数据。相反,它假设在训练过程中根本没有目标数据。这是严格的零镜头方案,在很大程度上依赖于模型概括。
潜在域发现有助于域泛化。数据集偏差和域移位的某些方面对于人类来说很容易通过观察来推断。但是,有些方面可能具有内在的潜在性,可能不会立即显现出来。这些潜在域存在但未在数据集中标记。例如,可以将在网络上找到的图像视为许多隐藏域的集合。发现潜在域可以显着提高泛化性和性能。
此处未提及的其他解决方案包括迁移学习和表示学习。我们将在以后的文章中更深入地介绍更多解决方案。同时,如果您有任何我想讲的特定主题,请随时与我们联系。另外,如果您不熟悉AI,那么这份简短的AI入门应该会有所帮助。