今天聊一聊合成数据 (Synthetic Data)
企业在部署人工智能时,往往会遇到数据获取困难、成本高昂,或采集的数据根本不可用等挑战。研究人员在 2018 年曾发现,顶尖的面部识别软件在识别肤色较深的人时,错误率高达 34%。原因就在于用于训练这些模型的数据缺少一整个种群的子集。在这种情况下,合成数据可以提供一种令人信服的解决方案。
合成数据是通过计算机程序人工生成的数据,而不是由真实事件产生的数据。企业可以通过使用合成数据填补潜在或边缘的使用场景、节省数据采集成本及满足隐私要求。随着计算能力的提高和云数据存储的崛起,比以往更容易获取的合成数据无疑是推动 AI 部署的一股积极力量。
为什么要使用合成数据?
改进模型的可靠性
无需采集更多数据,即可为模型获取更多样化的数据。合成数据可以用同一个人的不同发型、头部姿势等来训练模型,还能以肤色、种族特征、骨骼结构等特征创造出不同面孔,使模型变得更加可靠。
比“真实”数据获取更快
团队可以在短时间内生成大量的合成数据。当真实数据依赖于很少发生的事件时,这一点尤其有帮助,例如自动驾驶场景下的极端路况。数据科学家还可以设置算法,在合成数据创建时自动进行标注,从而减少标注过程的耗时。
边缘案例的补充
机器学习算法更喜欢均衡的数据集。例如补充肤色较深的面孔合成数据,不仅可以使模型的准确度提高,还会生成更符合道德标准的模型。合成数据可以帮助团队涵盖更多数据不足或根本不存在的边缘用例。
保护用户的个人信息
根据行业和数据类型的不同,企业在处理敏感数据时可能会面临数据安全挑战。例如在医疗行业,患者数据通常包括个人健康信息。合成数据可以减轻对这类隐私问题的担忧,因为它不涉及真人的信息。
合成数据的应用场景有哪些?
自动驾驶
在自动驾驶的性能测试中,极端天气下获取真实路况数据可能存在困难或危险。在所有可能的驾驶体验中,有太多的变量需要考虑,不能完全依赖于真车进行现场测试。合成数据比人工采集数据更安全、更快捷。
医疗
由于数据的敏感性,医疗是采用合成数据的首选行业。通过合成数据,可以捕获所有可能的患者类型及生理信息,最终帮助更快速、更准确地诊断疾病。
安全
合成数据促进了组织安全性的提高。企业可以创建合成数据(图像或视频)来测试自己的安全系统和面部识别平台。视频监控还可以通过合成数据以更低的成本和更快的速度训练模型。
隐私保护
企业需要安全可靠的方法来与他人共享训练数据。合成数据能够在将数据集提供给他人之前隐藏个人身份信息。这被称为隐私保护合成数据,可用于共享科学研究数据集、医学数据、社会学数据和可能包含个人身份信息的其他领域。
如何创建合成数据?
从分布数据中提取
如果没有真实数据,但了解数据集分布情况,则可以按照分布生成合成数据。在此技术中,可生成任意分布(正态分布、指数分布等)的随机样本以创建合成数据。
将真实数据与分布数据拟合
如果有真实数据,则可以使用蒙特卡罗方法等技术来找到数据的最佳拟合分布,并使用它生成合成数据。
深度学习
变分自编码器模型:这种无监督模型压缩初始数据集并将其发送至解码器,然后解码器输出该初始数据集。
生成对抗网络(GAN)模型:GAN 模型由两个网络组成。生成器接收样本数据集并输出合成数据;鉴别器将合成数据与真实数据集进行比较,并迭代微调。
合成数据是一种数据增强技术,不能取代数据采集和标注。数据增强大大提高了模型的精确度,但并不会使模型达到完美。采取的任何方法或生成的数据都必须使模型更可靠。根据模型的不足之处明确定义模型的需求,有助于选择合适的工具并生成正确的数据。
——澳鹏 Appen 数据科学总监
在过去的十年中,我们看到合成数据的使用速度大幅增长。虽然这为企业节省了时间和资金,但并非没有挑战:合成数据缺乏异常值,而这些异常值自然出现在真实数据中,对于模型精确度至关重要。另外,合成数据的质量通常取决于用于生成的输入数据,输入数据中的偏见很容易传播到合成数据中,因此不能低估使用高质量数据作为起点的重要性。最后,我们需要将合成数据与人工标注的真实数据进行比较,作为额外的输出控制。
尽管面临这些挑战,合成数据仍然是一个充满机遇、令人兴奋的领域。在无法获取真实数据的情况下,合成数据能够帮助我们生成创新、包容且更能代表终端用户的人工智能解决方案。
APPEN
25 年来,澳鹏一直为客户提供数据采集和标注服务,经验丰富。我们的专家可以与您的团队合作,分析合成数据是否适用于您的模型,通过我们的服务帮助您快速部署 AI 解决方案并投入市场。
版权声明: 本文为 InfoQ 作者【澳鹏Appen】的原创文章。
原文链接:【http://xie.infoq.cn/article/f0d982f1128bf9ba4edcbcd6e】。文章转载请联系作者。
评论