福瑞鑫 & 丽台科普 - 什么是合成数据?

2021-07-08 14:05:36

由计算机模拟或算法生成的合成数据是一种替代真实数据的低成本方法。这种方法正在被越来越多地用于创建精确的 AI 模型。

在如今这个 AI 时代,数据已成为像“石油”一样的宝藏资源,但只有少数幸运者能够坐享其成。因此,许多人都在自己制造物美价廉的“燃料”。这种“燃料”就是合成数据。

什么是合成数据?

合成数据是计算机模拟或算法所生成的带有注释的信息,可以用于代替真实数据。

换言之,合成数据是在数字世界中创建的数据,而不是从现实世界中采集或测量的数据。

虽然是人造数据,但合成数据能够从数学或统计学上反映真实数据。研究表明,在训练 AI 模型方面,合成数据与基于实际物体、事件或人的数据一样好,甚至比它们更好。

福瑞鑫 & 丽台科普 | 什么是合成数据?

用户可以使用 NVIDIA Omniverse 中的 Python 生成用于自动驾驶汽车的合成数据。

这就是为什么深度神经网络开发者越来越多地使用合成数据来训练他们的模型。事实上,根据 2019 年该领域的一项调查,使用合成数据是“现代深度学习,尤其是计算机视觉领域最有前途的通用技术之一”,这项技术依赖于图像和视频等非结构化数据。

俄罗斯圣彼得堡斯特科洛夫研究所数学研究所的 Sergey I. Nikolenko 写了一份长达 156 页的报告,其中引用了 719 篇关于合成数据的论文。Nikolenko 得出的结论是:“合成数据对于进一步发展深度学习至关重要……而且还有许多潜在的用例有待发现。”

随着 AI 先驱吴恩达呼吁大范围向更加以数据为中心的机器学习方法转变,合成数据正在不断地增长。吴恩达号召人们支持数据质量基准或竞赛——许多人认为数据质量占到 AI 工作的 80% 。

他在《The Batch》中写道:“大多数基准提供一套固定的数据并邀请研究人员对代码进行迭代……也许现在正是固定代码并邀请研究人员改进数据的时候。”

增强和匿名数据与合成数据的对比

大多数开发者对数据增强已十分熟悉。这是一种将新数据添加到真实世界数据集中的技术。例如他们可能会通过旋转或提亮现有的图像来创建一个新的图像。

鉴于对隐私的关注和政府的隐私政策,从数据集中删除个人信息已成为一种日益普遍的做法。这被称为数据匿名化,在金融和医疗等行业所使用的一种结构化数据——文本中特别流行。

增强数据和匿名数据一般不被视为合成数据,但可以使用这些技术创建合成数据。例如开发者可以混合两张真实世界的汽车图像,创建出一张包含两辆汽车的新合成图像。

为什么合成数据如此重要?

开发者需要大型、精心标记的数据集来训练神经网络。更加多样化的训练数据通常会使 AI 模型变得更加精确。

问题在于采集和标记包含几千甚至几千万个元素的数据集十分耗时而且往往会耗费过高的成本。

于是大家开始使用合成数据。第一批专门提供合成数据服务的公司之一——AI.Reverie 的联合创始人 Paul Walborsky 估计,一张图像的标记成本是 6 美元,而人工生成的成本只有 6 美分。

节省成本还只是其优点之一。Walborsky 表示:“合成数据已成为处理隐私问题的关键。它通过确保数据能够代表真实世界的多样性来减少偏见。”

由于合成数据集自动标记并且能够刻意加入罕见但关键的极端案例,因此它有时比真实数据更好。

合成数据的历史

合成数据以各种形式存在了几十年。它存在于电脑游戏(如飞行模拟器)和从原子到星系等各种科学模拟中。

哈佛大学统计学教授 Donald B. Rubin 在帮助美国政府部门解决诸如人口普查中对贫困人口的计算严重不足这样的问题时,想到了一个主意。他在 1993 年的一篇论文中对其进行了描述,而这篇论文常常被视为合成数据诞生的标志。

Rubin 解释说:“我在那篇论文中使用了合成数据一词指代多个模拟数据集。”

“每一个数据集看起来都可能是由创建真实数据集的同一个流程创建的,但没有一个数据集会揭示任何真实数据,这在研究个人、保密的数据集时具有巨大的优势。”

福瑞鑫 & 丽台科普 | 什么是合成数据?

开发者可以通过提供更多种类和提高AI精度的更改来扩展合成数据集。

在 AI 大爆炸,即 2012 年的 ImageNet 竞赛之后,神经网络识别物体的速度超过了人类,研究人员开始认真地寻找合成数据。

NVIDIA 模拟技术和 AI 高级总监 Gavriel State 表示,几年内,“研究人员在实验中使用渲染图像并且获得了足够好的回报。大家开始投资于能够使用 3D 引擎和内容管道生成数据的产品和工具。”

福特和宝马的合成数据

今天,银行、汽车制造商、无人机、工厂、医院、零售商、机器人和科学家都在使用合成数据。

来自福特的研究人员曾在最近播客中描述了他们如何结合游戏引擎和生成对抗网络(GAN)来创建用于AI训练的合成数据。

为了优化其汽车制造流程,宝马使用 NVIDIA Omniverse 创建了一座虚拟工厂,在这个模拟平台上使用多种工具进行合作。宝马所生成的数据帮助公司精密调整装配线工人和机器人一起高效制造汽车的方式。

医院、银行和商店的合成数据

医学影像等领域的医疗机构使用合成数据来训练 AI 模型,同时保护患者隐私。例如初创企业 Curai 使用 40 万个模拟医学案例训练了一个诊断模型。

Nikolenko 在他 2019 年的一次调查中表示:“用于医学影像的 GAN 架构,无论是生成合成数据还是改编来自其他领域的真实数据……都将在未来几年内定义该领域的技术水平。”

GAN 在金融领域也日益受到重视。美国运通公司通过研究如何使用 GAN 创建合成数据,完善其 AI 欺诈检测模型。

在零售业,初创企业 Caper 等公司只需使用 3D 模拟技术为每款产品生成五张图像并创建一个包含一千张图像的合成数据集。这种数据集使智能商店成为了可能——商店中的顾客可以直接拿走自己需要的商品,无需排队结账。

如何创建合成数据?

NVIDIA 的 State 告诉我们,“现在有无数种技术”可以生成合成数据。例如变分自编码器可以“压紧”数据集,然后使用解码器生成相关的合成数据集。

虽然 GAN 正在增长,尤其是在研究领域,但模拟仍然十分受欢迎,原因有二:模拟支持大量对静态和动态图像进行分割和分类,从而生成完美标签的工具;模拟可以快速生成具有不同颜色、照明、材料和姿势的物体和环境版本。

后一项能力能够提供对域随机化至关重要的合成数据。而域随机化正在被越来越多地用于提高 AI 模型的精度。

专业建议:使用域随机化

域随机化使用一个物体及其环境的数千种变化来让 AI 模型更加容易地理解普遍规律。下面的视频展示了一座智能仓库如何使用域随机化来训练一个 AI 机器人。

域随机化有助于缩小所谓的域鸿沟——如果一个 AI 模型使用在某天碰巧遇到的具体情况进行训练,那就无法做出完美的预测。因此 NVIDIA 正在将合成数据生成工具的域随机化集成到 Omniverse

这类技术正在帮助计算机视觉应用从检测和分类图像中的物体转向看到和理解视频中的活动。

AI.Reverie 的 Walborsky 表示:“市场正朝着这个方向发展,但这项技术正在变得更加复杂。合成数据可以让您创建充分注释的视频帧,因此在这方面更有价值。”

从哪里获取合成数据?

虽然这个行业只有短短几年的历史,但已经有 50 多家公司提供合成数据。每家公司都有自己的“法宝”,他们往往专注于一个特定的垂直市场或技术。

例如有少数公司专门提供用于医疗的合成数据。有半数公司提供开源工具或数据集,其中包括麻省理工学院开发的一套库、项目和教程—— Synthetic Data Vault。

NVIDIA 的目标是与大量合成数据和数据标签服务供应商合作。在其最新合作伙伴中:

纽约的 AI.Reverie提供带有可配置型传感器的模拟环境,用户可以在该环境中采集自己的数据集。该公司已在农业、智慧城市、安全和制造业等领域开展了多个大型项目。

伦敦的 Sky Engine 为各个市场提供计算机视觉应用并帮助用户设计自己的数据科学工作流程。

以色列的 Datagen 为多个市场创建来自模拟的合成数据集,包括智能商店、机器人以及汽车和建筑内饰。

CVEDIA 为空客、霍尼韦尔和西门子等提供基于合成数据的自定义计算机视觉工具。

使用 Omniverse 开辟全新市场

NVIDIA 旨在通过 Omniverse 为有意在虚拟世界中进行构建或合作的各行业设计师和程序员提供更广阔的空间。而合成数据生成是 NVIDIA 预计将在这一领域所开展的众多业务之一。

NVIDIA 在 Omniverse 中创建了一个机器人技术应用—— Isaac Sim。用户可以在这个虚拟世界中用合成数据和域随机化来训练机器人并将所得到的软件部署到在真实世界中工作的机器人上。

Omniverse 支持多款垂直市场应用,例如用于自动驾驶汽车的 NVIDIA DRIVE Sim 等,使开发者能够在安全的现实模拟环境中测试自动驾驶汽车,即使在疫情期间也能生成有用的数据集。

这些应用是展示如何通过模拟实现 AI 合成数据承诺的最新示例。

*本文转载自NVIDIA英伟达企业解决方案


电话咨询
最新产品
官方商城
QQ客服