听到“合成”这个词时,您可能会联想到人工或制造的东西。以聚酯和尼龙等合成纤维为例,它们都是通过化学工艺人造的。
虽然合成纤维更经济实惠,更容易大规模生产,但其质量却可以与天然纤维相媲美。合成纤维的设计通常模仿天然纤维,并为特定用途而设计,如弹性氨纶、保暖腈纶或耐用涤纶。
合成数据也是如此。在训练或测试人工智能 (AI) 模型时,这种人工生成的信息可以补充甚至取代真实世界的数据。与真实数据集相比,合成数据集可以通过计算机模拟或生成模型合成,而真实数据集可能获取成本高、访问困难、标注耗时且供应有限。这使得按需生产合成数据集的成本更低,几乎可以无限量生产,并可根据企业的需求进行定制。
尽管合成数据有其优点,但它也带来了挑战。生成过程可能很复杂,数据科学家既要创建真实的数据,又要保证质量和隐私。
然而,合成数据将持续存在。研究公司 Gartner 预测,到 2026 年,75% 的企业将使用生成式 AI 来创建合成的客户数据。1
为了帮助企业充分利用人工数据,以下是生成合成数据的 8 项最佳实践:
了解您的企业为什么需要合成数据,以及合成数据比真实数据更有用的用例。例如,在医疗保健领域,可以人工生成患者记录或医学图像,其中不包含任何敏感数据或个人身份信息 (PII)。这也允许研究人员和数据科学团队之间安全地共享数据。
合成数据可在软件开发过程中用作测试数据,代替敏感的生产数据,但仍能模拟其特征。它还能让公司避免版权和知识产权问题,在用户不知情或未经用户同意的情况下生成数据,而不是使用网络爬虫从网站上抓取和收集信息。
此外,人工数据还可以作为一种数据增强形式。它可以用来提高数据的多样性,特别是对于 AI 模型训练中代表性不足的群体。当信息稀缺时,合成数据可以填补空白。
例如,金融服务公司 JP Morgan 发现,由于欺诈案件比非欺诈案件少,很难有效地训练 AI 驱动的欺诈检测模型。该组织使用合成数据生成来创建更多欺诈交易示例(ibm.com 外部链接),从而加强模型训练。
合成数据质量取决于支撑它的真实数据。在准备原始数据集以供机器学习 (ML) 算法生成合成数据时,请务必检查并纠正任何错误、不准确和不一致之处。删除所有重复数据,并输入缺失值。
考虑在原始数据中添加边缘情况或异常值。这些数据点可以代表不常见的事件、罕见的情景或极端情况,反映现实世界的不可预测性和多变性。
InstructLab(ibm.com 外部链接)的首席架构师 Akash Srivastava 说:"这归根结底要看种子实例。”InstructLab 是 IBM 和 Red Hat 的一个开源项目,采用协作的方式为模型添加新的知识和技能,由 IBM 新的合成数据生成方法和分阶段培训协议提供支持。“通过生成的示例需要模仿真实世界的用例。”
合成数据仍然容易继承和反映其所基于的原始数据中可能存在的偏差。混合多种来源的信息,包括不同人口群体和地区的信息,有助于减少生成数据中的偏差。
多样化的数据源还能提高合成数据集的质量。不同的数据源可以提供单一数据源或少数几个数据源所缺乏的基本细节或重要背景。此外,在合成数据生成过程中加入检索增强生成功能,可以提供最新的特定领域数据,从而提高准确性并进一步提高质量。
数据科学家可以分析真实数据中的统计分布,并生成反映这些分布的合成样本。然而,这需要大量的知识和专业技能,而且并非所有数据都符合已知分布。
变分自编码器 (VAE) 是一种深度学习模型,可根据训练数据生成各种变体。编码器将输入数据压缩到低维空间,捕获输入中包含的有意义信息。然后,解码器根据压缩后的表示重建新数据。与 GAN 一样,VAE 也可用于图像生成。
转换器模型,如生成式预训练转换器 (GPT),擅长理解语言的结构和模式。它们可用于为自然语言处理应用生成合成文本数据,或为分类或回归任务创建人工表格数据。
务必要考虑模型崩溃的问题,即当模型在 AI 生成的数据上反复训练后,其性能会下降。这就是为什么必须将合成数据生成过程建立在真实数据的基础上。
例如,在 InstructLab 中,合成数据的生成由分类法驱动,该分类法定义了原始数据所来自的领域或主题。这可以防止模型决定必须根据哪些数据进行训练。
“你并不是要求模型一直循环下去并崩溃。我们通过将模型与采样过程解耦,完全绕过了崩溃的过程,”Srivastava 说。
高质量数据对模型性能至关重要。使用基于保真度和效用的指标来验证合成数据质量。保真度是指合成数据集与真实世界数据集的相似程度。实用性评估合成数据用于训练深度学习或 ML 模型的效果。
衡量保真度涉及将合成数据与原始数据进行比较,通常会使用统计方法和直方图等可视化方法。这有助于确定生成的数据集是否保留了真实数据集的统计属性,例如分布、平均值、中位数、极差和方差等。
例如,通过相关系数和列联系数来评估相关相似性,对于帮助确保数据点之间的依赖性和关系得以保持并准确呈现真实世界的模式也是至关重要的。神经网路、生成模型和语言模型通常擅长捕捉表格数据和时间序列数据中的关系。
衡量效用需要使用合成数据作为机器学习模型的训练数据,然后将模型性能与使用真实数据进行的训练进行比较。以下是一些常见的基准测试指标:
准确度或精确度可计算正确预测的百分比。
召回率是对实际正确预测的量化。
F1 分数将准确度和召回率结合为单个指标。
初始分数和 Fréchet 初始距离 (FID) 都会评估生成图像的质量。
合成数据生成工具或提供商可能已经掌握了这些指标,但您也可以使用其他分析软件包,例如 SDMetrics(ibm.com 外部链接),这是一个用于评估表格合成数据的开源 Python 库。
在验证人工数据时,人情味仍然至关重要,这可以简单到从合成数据集中随机抽取 5 到 10 个样本并亲自进行评估。“你必须有一个人来进行验证,”Srivastava 说。“这些都是非常复杂的系统,就像任何复杂的系统一样,有许多微妙的地方可能会出错。依靠指标,依靠基准,严格测试你的管道,但一定要随机抽取一些样本,手动检查它们是否能提供你想要的数据。
使用合成数据的优势之一是它不包含任何敏感数据或 PII。然而,企业仍然必须验证其生成的新数据是否符合隐私法规。例如欧盟的《通用数据保护条例》(GDPR) 或美国的《健康保险流通和责任法案》(HIPAA)。
像对待专有数据一样对待合成数据,采用内置安全措施和访问控制,防止数据被黑客攻击和泄漏。在生成过程中还必须采取保障措施,以防止合成数据被逆向工程并追溯到真实世界的等同数据,从而在数据分析过程中泄露敏感信息。这些保障措施包括隐藏或掩盖敏感数据的屏蔽技术、擦除或移除 PII 的匿名化技术,以及用于添加“噪声”或为数据集引入随机性的差异化隐私技术。
Srivastava 说:“至少需要进行 PII 屏蔽或擦除,或者更进一步,使用差异化隐私保护方法。”“如果不使用本地模型,这一点就变得更加重要。如果你要将[数据]发送给第三方提供商,那么在这些方面格外小心就更重要了。”
合成数据通常无法同时在保真度、效用和隐私性方面进行优化,通常需要权衡利弊。屏蔽或匿名化可能会在名义上降低效用,而差异化隐私可能会略微降低准确性。但是,不采取任何隐私措施都有可能暴露 PII。组织必须平衡并优先考虑对其特定用例至关重要的因素。
记录合成数据生成工作流,例如清理和准备原始数据集的策略、生成数据和维护隐私的机制以及验证结果。包括您的选择和决定背后的理由,以实现问责制和透明度。
在对合成数据生成流程进行定期审查时,记录尤为重要。这些记录可作为审计跟踪,有助于评估工作流的有效性和可重复性。
定期监控合成数据的使用情况和性能,以发现任何可能出现的意外行为或改进机会。根据需要调整和完善生成流程。
就像纤维是面料的基础一样,数据是 AI 模型的基石。虽然合成数据生成仍处于早期阶段。合成数据生成过程的进步有助于提高合成数据的质量、可靠性和效用,就像合成纤维几乎等同于天然纤维一样。
1 3 Bold and Actionable Predictions for the Future of GenAI (ibm.com 外部链接), Gartner, 12 April 2024
企业要想蓬勃发展,就必须利用数据建立客户忠诚度,实现业务流程自动化,并利用 AI 驱动的解决方案进行创新。
通过 IBM Consulting 发掘企业数据的价值,建立以洞察分析为导向的组织,实现业务优势。
推出 Cognos Analytics 12.0,人工智能驱动洞察分析可以更好地做出决策。