Synthetic Data
发现合成数据如何驱动 AI 和机器学习。学习如何为 Ultralytics YOLO26 生成高质量数据集以立即提高模型准确度。
合成数据是人工生成的信息,它模仿了现实世界数据的统计属性、模式和结构特征。在人工智能 (AI)和机器学习 (ML)这两个快速发展的领域中,当收集真实数据的成本高昂、耗时或受到隐私法规限制时,这类数据便成为了一项关键资源。与从现实世界事件中收集的有机数据不同,合成数据是通过计算机模拟和先进生成模型等技术由算法创建的。行业分析师Gartner 预测,到 2030 年,合成数据在 AI 模型中的地位将超过真实数据,从而从根本上改变智能系统的构建和部署方式。
合成数据在 AI 开发中的作用#
利用合成数据集的主要动力是克服传统数据收集和标注固有的局限性。训练强大的计算机视觉 (CV)模型通常需要包含各种场景的海量数据集。当现实世界的数据稀缺时(例如罕见病诊断或危险的极端情况交通事故),合成数据就能填补这一空白。
生成此类数据可以让开发者按需创建完美标注的训练数据。这包括用于对象检测的精确边界框或用于语义分割的像素级完美掩码,从而消除了人工标注过程中经常出现的人为错误。此外,它还允许工程师有意地用代表性不足的群体或环境变量平衡数据集,从而解决AI 中的偏见问题,确保模型的性能更加公平。
实际应用#
合成数据正在彻底改变那些对数据隐私、安全性和可扩展性要求极高的行业。
- **自动驾驶模拟:**仅在物理世界中测试自动驾驶汽车既危险又受地理位置限制。各公司会利用逼真的模拟器(例如 NVIDIA Omniverse)来训练其感知系统。这些模拟器可生成数十亿英里的虚拟里程,让 AI 接触到在现实世界中难以持续捕获的恶劣天气、不稳定的行人和复杂的城市布局。
- **医疗保健和医学影像:**诸如 HIPAA 和 GDPR 等患者隐私法严格规范了医疗记录的共享。合成数据能够创建真实的医学图像分析数据集(如 X 光片或 MRI 扫描),这些数据集保留了病理学特征,同时不包含任何个人身份信息。这使得研究人员能够在不泄露患者机密的情况下协同训练肿瘤检测模型。
为视觉 AI 生成合成数据#
创建高质量的合成数据通常涉及两种主要方法:仿真引擎和生成式 AI。仿真引擎(如 Unity Engine)使用 3D 图形来渲染具有基于物理的光照和纹理的场景。或者,生成模型(例如生成对抗网络 (GAN)和扩散模型)会学习真实数据的分布,以合成出崭新的、逼真的示例。
生成合成数据集后,它可用于训练高性能模型。以下 Python 示例演示了如何使用 ultralytics 包加载可能在合成数据上训练的模型,从而对图像执行推理。
from ultralytics import YOLO
# Load the YOLO26 model (latest stable generation for superior accuracy)
model = YOLO("yolo26n.pt")
# Run inference on a source image (this could be a synthetic validation image)
results = model("https://ultralytics.com/images/bus.jpg")
# Display the detection results to verify model performance
results[0].show()合成数据与数据增强#
将合成数据与数据 augmentation区分开来是很有帮助的,因为这两种技术的目的都是扩展数据集,但其运作方式不同。
- 数据增强涉及对现有真实图像应用变换——如翻转、旋转、裁剪或颜色调整——以创建细微的变化。它依赖于原始数据源。
- 合成数据涉及使用算法或模拟从零开始创建全新的数据实例。它不严格要求为每个输出提供原始图像,从而能够生成相机从未捕捉到过的场景。
Ultralytics Platform 上的现代工作流通常会结合这两种方法:使用合成数据来填补数据集中的空白,并在训练期间应用数据增强,以最大程度地提高诸如 YOLO26 等模型的鲁棒性。






