原文annas-archive.org/md5/9d5ab593b867c3a47f27572d629020aa译者飞龙协议CC BY-NC-SA 4.0第十四章合成到真实领域自适应本章向您介绍了一个常见的问题通常限制了合成数据的使用性称为领域差距问题。在本章中您将学习到各种弥合这一差距的方法这将帮助您更好地利用合成数据。同时本章讨论了合成到真实领域的自适应的最新研究。因此您将了解您可能用于自己问题的方法。然后它代表了在此背景下的问题和挑战以便更好地理解这个问题。在本章中我们将涵盖以下主要主题机器学习中的领域差距问题合成到真实领域自适应的方法合成到真实领域自适应——问题和挑战机器学习中的领域差距问题在本节中我们将了解领域差距是什么以及为什么它在机器学习中是一个问题。领域差距是限制合成数据在实际中可用性的主要问题之一。它通常指的是两个或更多领域中的数据分布和属性的不相似性。它不仅与合成数据相关。然而它是机器学习中一个常见的问题。在测试类似但略有不同的数据集时通常会发现机器学习模型性能的下降。更多信息请参阅Who is closer: A computational method for domain gap evaluation(doi.org/10.1016/j.patcog.2021.108293)。数据集之间领域差距的主要原因可以与以下因素相关联对传感器变化的敏感性类别和特征分布的差异概念漂移让我们更详细地讨论这些观点。对传感器变化的敏感性在计算机视觉中你的机器学习模型可能在某些相机、设置和参数捕获的图像上表现良好但在使用不同相机或不同参数捕获的相似输入下会彻底失败。例如你的计算机视觉模型可能在从第一人称视角捕获的视频上表现良好但在从第三人称视角捕获的视频上会彻底失败。因此我们可以看到即使是同一任务如动作识别通常也会侧重于研究人的视角如在通过建模主体-动作相关性进行第一人称活动识别doi.org/10.1109/IJCNN55064.2022.9892547。另一个例子是相机的视野FoV。一些计算机视觉任务如语义分割也是在特定的相机视野下进行的。在标准视野下捕获的 Cityscapes 和 Synscapes 数据集上训练的语义分割方法在由超广角鱼眼镜头捕获的鱼眼图像上进行分割时会失败。例如请参阅FPDM用于门监控的鱼眼全景分割数据集ieeexplore.ieee.org/stamp/stamp.jsp?tparnumber9959151。类别和特征分布的差异属性、类别和特征分布的差异或不一致性是合成域和真实域之间或甚至在同一真实域中训练和测试在不同数据集上时出现领域差距的主要原因之一。当处理基于时间序列的问题时这一点可以清楚地观察到。很多时候训练数据变得过时并不来自测试或评估数据的同一分布。例如一个基于一年前收集的数据来预测通货膨胀率的机器学习模型一旦应用于当前数据可能由于领域差距问题而表现不佳。这是因为源数据和目标数据分布以及特征现在与预期不同。概念漂移概念漂移指的是输入特征和输出目标之间关系的变化。让我们举一个说明性的例子。假设我们设计了一个对象分类器“打印机”是我们感兴趣的对象之一。正如你在图 14.1中可以看到的“打印机”概念在时间上发生了剧烈变化从早期的打字机到喷墨打印机再到激光打印机。因此如果你的训练数据只包含旧打印机打字机它将因为领域差距问题而难以准确分类现代打印机。https://github.com/OpenDocCN/freelearn-ml-zh/raw/master/docs/syn-dt-ml/img/B18494_14_01.jpg图 14.1 – 概念漂移的示例来源Pixabay接下来让我们探讨缓解合成域和真实域之间领域差距问题的主要解决方案。从合成到现实域自适应的方法在本节中你将学习从合成到现实域自适应的关键方法。我们将讨论以下方法域随机化对抗域自适应基于特征的域自适应让我们从域自适应中最常用的方法之一开始。域随机化域随机化是一种通常用于缓解域差距问题并提高目标域上机器学习模型性能的机制或程序。这种方法旨在随机化训练数据或环境的主要属性和属性例如模拟器以增加机器学习模型在训练阶段所接触到的场景的多样性。因此我们可以增加机器学习模型对未来可能遇到的场景的鲁棒性。有关更多信息请参阅从模拟到现实世界的域随机化用于迁移深度神经网络(arxiv.org/pdf/1703.06907.pdf)。让我们考察在两个有趣的领域中通常随机化的主要元素计算机视觉和自然语言处理。计算机视觉在几乎任何计算机视觉问题、任务或系统中我们都有以下四个主要元素如图图 14.2所示。2https://github.com/OpenDocCN/freelearn-ml-zh/raw/master/docs/syn-dt-ml/img/B18494_14_02.jpg图 14.2 – 计算机视觉中要随机化的主要元素接下来让我们更详细地讨论这些元素。物体它们通常是计算机视觉的主要焦点。它们充满场景并与彼此、光照和环境相互作用。计算机视觉中的许多主要任务如物体检测、识别、分割和跟踪从根本上与这些图像在三维世界中的外观以及世界如何被相机投影为二维图像有关。利用域随机化来缓解域差距例如我们可以随机化以下元素以多样化物体的外观纹理和材料颜色形状维度变形和动画正如你所见决定哪些因素更相关取决于任务和问题。光照尽管光照对于使物体对观察者可见是必要的但它几乎为几乎所有计算机视觉任务都带来了一个令人畏惧的问题。光照条件的一点点变化会极大地改变物体的外观从而改变像素的强度这使得这些物体对于基于机器学习的计算机视觉模型来说难以识别、检测或跟踪。因此为了使我们的机器学习模型在各种光照条件下保持鲁棒性我们可能需要多样化以下元素光照强度光照颜色和温度光源光照异常耀斑、眩光和闪烁相机和传感器特性相机从场景中捕获视觉数据这是计算机视觉模型最通用和传统的输入。因此为了确保我们的机器学习模型即使在新的相机设置下也能很好地泛化我们需要在训练阶段多样化例如多样化的相机设置。这可以通过以下方式实现相机位置方向海拔视角光圈、曝光和焦点此外相机参数如焦距的变化也可能极大地改变世界被捕捉和感知的方式。因此它将直接影响计算机视觉系统识别世界的方式。因此我们可能需要在我们的训练数据中考虑以下传感器特性变化镜头畸变蒙影色差划痕雾光泄漏环境因素即使场景、光照和相机参数相同环境因素也会在很大程度上改变场景可能的外观。例如像雾这样的天气条件充当低通滤波器移除远离相机的物体细节。因此这使得在这些场景中提取稳健特征变得更加困难。因此许多机器学习模型可能在类似情况下失败或挣扎。在许多情况下我们无法清楚地识别我们的计算机视觉系统将工作的环境因素因此我们可能需要随机化以下因素天气状况白天时间室内和室外环境污染程度风的影响地形和景观路面状况人群密度背景杂乱地理位置信息因此基于我们在本节中学到的知识为了缓解源训练和目标评估域之间的领域差距我们需要在训练过程中使我们的机器学习模型学习的场景多样化并随机化。接下来让我们深入了解如何利用领域随机化来解决 NLP 问题。自然语言处理NLP与我们在计算机视觉中讨论的类似领域随机化也可以用于 NLP 问题。通常它可以部署来使 NLP 模型更加鲁棒和准确。更多信息请参阅《扩大规模与提炼语言引导的机器人技能获取》(arxiv.org/abs/2307.14535)。如您在图 14.3中所见有四个关键元素可以随机化以在实际中提高 NLP 模型的泛化能力https://github.com/OpenDocCN/freelearn-ml-zh/raw/master/docs/syn-dt-ml/img/B18494_14_03.jpg图 14.3 – NLP 中需要随机化的主要元素让我们详细讨论以下这些元素文本变化为了提高 NLP 模型对现实世界问题的泛化能力和鲁棒性引入了许多文本变化来增强和补充训练数据。这通常通过以下元素的变化来完成词汇表句子结构句子长度上下文NLP 模型可以在不同的上下文中以及各种应用中使用。例如ChatGPT 可以用来回答关于各种主题的问题如医疗保健、数学、金融和历史。它可以用来提出旅行计划甚至总结文本。因此在训练数据中多样化这些元素至关重要主题领域文本体裁如社交媒体、研究论文和小说语言因素一个理想的 NLP 模型应该能够处理和回应不同格式和风格的查询。此外它应该能够理解各种应用中的情感。因此以下因素应在训练阶段随机化以确保在实际应用中表现更佳风格如正式、非正式、技术或口语情感如积极、消极或中性表达噪声和扰动在训练数据中引入扰动并指导 NLP 模型如何处理这些场景将确保您的 ML 模型学会如何正确应对这些问题。现实世界是嘈杂的因此在训练阶段关注以下因素至关重要以覆盖通常在文本数据中观察到的这些已知不完美之处拼写错误语法错误标点符号错误接下来让我们探索另一种有趣的域适应方法。对抗域适应对抗域适应是基于 GANs 在合成域和真实域之间架起桥梁的另一种强大技术。在这种域适应方法中生成器试图提取域无关的特征而判别器试图识别数据的来源合成还是真实。一旦模型训练完成判别器无法再识别数据域的来源生成器就可以生成域不变的特征。更多信息请参阅对抗判别域适应(arxiv.org/pdf/1702.05464.pdf)。让我们简要讨论一个来自计算机视觉的例子说明这种合成到真实域的自适应方法如何被利用。例如让我们考虑车辆重识别问题。研究表明使用对抗性领域自适应训练合成和真实数据提高了两个评估真实数据集CityFlow-ReID(paperswithcode.com/dataset/cityflow)和VeRi(github.com/VehicleReId/VeRi)的性能与其他解决方案相比有很好的差距。该方法在合成和真实车辆重识别数据集的混合上训练。机器学习模型被引导学习判别性特征特别是从真实训练图像中学习。同时它还被引导学习合成域和真实域之间的共同特征。更多细节请参阅StRDAN用于车辆重识别的合成到真实域自适应网络(arxiv.org/abs/2004.12032)。接下来让我们看看另一种用于领域自适应的方法。基于特征的领域自适应与先前的方法不同基于特征的领域自适应旨在学习一种变换该变换可以从合成域和真实域中提取域无关的特征。这种方法将两个域的特征转换成新的表示然后最小化合成域和真实域之间的差异。换句话说这种方法试图使两个域的特征分布相互对齐。因此这种方法促使机器学习模型学习基本特征同时丢弃特定于领域的细节和变化。例如如果机器学习模型通过在Synscapes(synscapes.on.liu.se)和Cityscapes(www.cityscapes-dataset.com)数据集上训练来学习语义分割我们希望模型能够通过某种方式学习这些对象的意义。例如人类通常在人行道或人行道上行走他们通常具有胶囊状形状。这些都是我们希望模型学习的高级和域不变特征。最后为了详细了解领域自适应方法请参阅领域自适应简评(arxiv.org/pdf/2010.03978v1.pdf)。现在我们已经了解了通常用于合成到真实域自适应的一些关键方法。接下来让我们深入了解它们的共同局限性以及如何在实践中克服它们。合成到真实域的自适应——问题和挑战在本节中你将探索从合成到真实领域自适应的主要问题和挑战。这将帮助你了解这种方法的优势。此外它还将为你提供更深入的了解了解如何在你的问题中克服这些问题。因此我们将重点关注以下问题未知的领域有限的真实数据计算复杂性合成数据局限性多模态数据复杂性让我们在以下小节中详细讨论它们。未知的领域在许多情况下目标是确保你的机器学习模型能够很好地泛化到新的领域。如果我们知道领域领域自适应方法可能有效。然而有时预测这个新领域的属性是不可能的。例如假设你有一个在欧洲表现良好的计算机视觉模型但你还想让这个算法在中国、非洲、中东甚至火星上也能工作我们并不总是能够拥有关于机器学习模型将要部署的环境或领域的先进知识以便进行适当的适应。有限的真实数据如我们所知真实数据稀缺且昂贵。因此监督式领域自适应方法不能轻易应用于所有机器学习问题。此外合成领域和真实领域之间配对数据的有限可用性使得问题更加困难。因此从合成领域到真实领域的映射学习确实复杂且繁琐。计算复杂性领域自适应方法计算成本高可能需要资源、时间、经验、大量预算和领域专家。因此训练这些模型尤其是对抗性领域自适应模型并不容易有时甚至具有挑战性。合成数据局限性合成数据有一些局限性特别是如果数据生成不当。合成数据可能缺乏真实数据的多样性和现实性。因此这使得适应方法弥合差距变得更加困难。请参阅第十三章。多模态数据复杂性最近最先进的计算机视觉系统如Tesla Vision Autopilot利用来自不同来源的数据例如摄像头、激光雷达传感器、雷达传感器、加速度计和陀螺仪。然而生成和标注真实数据以及将其与合成数据匹配并不是一个简单的过程。例如可以生成语义分割、光流或其他相关地面真实情况但模拟虚拟世界中加速度计和陀螺仪的行为非常困难。此外开发一个提供所有这些地面真实情况的模拟器非常复杂。与此并行领域自适应学习如何适当地将一个领域的数据适应到另一个领域也相当困难。总结在本章中你学习了机器学习领域中域差距问题的本质。此外你还探讨了缓解该问题的主要解决方案。我们重点讨论了计算机视觉和自然语言处理中的域随机化。然后你了解了从合成域到真实域适应的主要问题和局限性。在下一章中我们将探讨并强调合成数据中的多样性问题以便更好地理解合成数据在机器学习中的优缺点。第十五章合成数据中的多样性问题本章向您介绍合成数据领域的一个众所周知的问题即生成多样化的合成数据集。它讨论了确保大规模数据集中高度多样性的不同方法。然后它突出了实现合成数据多样性的问题和挑战。在本章中我们将涵盖以下主要内容机器学习中多样化数据的需求生成多样化的合成数据集合成数据领域中的多样性问题机器学习中多样化数据的需求正如我们在前面的章节中讨论和看到的多样化的训练数据提高了机器学习模型对新领域和上下文的泛化能力。实际上多样性有助于你的基于机器学习的解决方案更准确更好地适用于现实世界场景。此外它使模型对噪声和异常更加鲁棒这在实践中通常是不可避免的。有关更多信息请参阅Diversity in Machine Learning(arxiv.org/abs/1807.01477) 和Performance of Machine Learning Algorithms and Diversity inData(doi.org/10.1051/MATECCONF%2F201821004019)。接下来让我们强调使用多样化训练数据在机器学习中的主要优势。总的来说在多样化的数据集上训练和验证你的机器学习模型可以提高以下方面可迁移性问题建模安全性调试过程对异常的鲁棒性创造力客户满意度现在让我们更详细地探讨这些要素中的每一个。可迁移性当你在涵盖各种场景、环境和上下文的多样化数据上训练你的机器学习模型时你提高了你的机器学习解决方案在其他应用和领域中的可迁移性。其原因是当模型在训练阶段学习如何处理更多样化的情况时它就更能适应新的、未见过的上下文。有关更多信息请参阅Can Data Diversity Enhance LearningGeneralization?(aclanthology.org/2022.coling-1.437)。更好的问题建模多样化的训练数据使机器学习模型能够从不同的角度看待问题。例如让我们考虑我们的机器学习模型正在学习一个语义分割任务。在恶劣天气条件下以及具有各种颜色、纹理和形状的物体下训练模型将有助于模型更好地学习从 RGB 图像到语义分割图像的映射。因此它将显著提高性能因为模型已经学会了如何捕捉各种变化下的更广泛范围的模式。这些模式和输入特征与输出标签之间的关联在训练数据集较少多样化的情况下可能不容易识别。安全性最近的研究表明在多样化的训练数据上训练您的机器学习模型可以提高模型对对抗攻击的鲁棒性。因此多样化的训练数据使您的模型更加可靠和安全。例如在多样化的对抗训练样本集上训练您的机器学习模型可以显著提高模型对对抗攻击的鲁棒性。这些攻击主要涉及通过添加噪声来操纵图像以欺骗机器学习模型同时仍然使它们对人类眼睛来说是可识别的。例如某些像素强度的轻微变化如交通标志的颜色可能会导致机器学习模型以高置信度错误地将它归类为不同的类别。更多信息请参阅针对深度神经网络对抗攻击的多样性对抗训练(www.mdpi.com/2073-8994/13/3/428) 和对抗攻击在交通标志识别中的应用一项调查(arxiv.org/pdf/2307.08278.pdf)。调试过程利用多样化的数据在验证和评估阶段有助于机器学习从业者识别其机器学习模型和算法的弱点和局限性。因此他们可以在具有挑战性的场景下避免代价高昂的失败。此外他们可以迭代他们的解决方案并减轻任何潜在的问题和问题。例如假设我们正在提出一个新的个人识别机器学习模型。为了清楚地了解我们模型的局限性我们需要在涵盖各种照明条件、摄像机视角、室内和室外场景以及其他相关属性的不同数据集上评估该模型。这将帮助我们找出我们方法中的弱点。通过回到我们的例子我们可能会看到我们的模型在夜间或摄像机非常靠近人的时候难以识别人。这种观察对于改进模型和防止代价高昂的失败至关重要而这不能在没有使用适当的多样化验证或评估数据集的情况下实现。对异常的鲁棒性在包含异常的多样化训练数据上训练您的机器学习模型有助于模型学习如何处理类似的情况。因此它使您的基于机器学习的解决方案对异常值和意外情况更加鲁棒。例如假设您为深度估计训练了机器学习模型该模型是在正常条件下由行业标准传感器收集的标准数据上进行的。如果相机传感器部分损坏或者一些灰尘或雨滴积累在相机镜头上您的模型可能会失败。因此在类似的场景下训练您的机器学习模型可以提高您机器学习系统的鲁棒性和可靠性。更多信息请参阅一种新的跨扰动用于单域泛化(arxiv.org/pdf/2308.00918.pdf)。创造力在创意是关键要求的领域中在多样化的训练数据上训练生成模型是满足这一需求所必需的。例如一个大型语言模型或图像生成器将显著受益于从不同来源收集的文本或视觉数据的训练。这将帮助这些生成模型接触到各种主题、风格、想法和观点这将提供充足的知识并促使模型在各个任务和应用中更加具有创造力。对于一些有趣的例子请参阅Deep Dream Generator(deepdreamgenerator.com)、AutoDraw(www.autodraw.com)、Stablecog(stablecog.com) 和DALL-E2(openai.com/dall-e-2)。包容性部署适当代表现实世界的多样化训练数据有助于让客户感觉到你的基于机器学习的解决方案是包容性的不会歧视全球人口的任何特征。因此确保你的机器学习模型对所有客户都能按预期工作无论他们的年龄、种族、性别、地理位置、语言和宗教这一点至关重要。如果客户因为上述任何因素而感到处于不利地位他们将对你的业务产生负面印象而不仅仅是应用程序本身。此外这还可能导致组织面临法律问题和不良后果。另一方面这有助于决策者做出更合适的决策这些决策会仔细考虑目标受众中每个人口群体的独特需求。现在我们已经了解了在多样化的训练数据上训练我们的机器学习模型的重要性让我们来探讨如何生成多样化的合成数据。生成多样化的合成数据集在本节中你将学习到生成多样化合成数据集的不同方法。我们将讨论以下内容潜在空间变化集成合成数据生成多样性正则化结合外部知识逐步训练使用游戏引擎进行程序化内容生成潜在空间变化潜在空间通常指的是一个高维空间其中训练数据以更抽象或紧凑的方式表示。具有许多层的深度学习旨在使潜在空间中的特征捕获更多语义和概念信息。更多详情请参阅第一章。因此这些特征在该空间中通过机器学习模型在训练阶段传达关于问题的编码信息。我们可能无法直接将潜在空间中的变化与在如 GANs 等模型中生成的图像上的变化联系起来。然而在*《解释 GANs 的潜在空间以进行语义人脸编辑》(arxiv.org/abs/1907.10786)和《GANs 中潜在语义的闭式分解》*(arxiv.org/abs/2007.06600)中表明改变潜在空间中的某些属性可以生成独特且多样化的合成样本。例如如果你仔细改变潜在空间中的某些特征你可能会生成具有不同姿势、背景、光照和天气条件的新样本。集合合成数据生成通常部署以提高生成合成数据多样性的一种方法是使用多个生成模型以确保它们能够捕获预期的数据分布。这在分布复杂且无法使用单个生成模型进行建模的情况下尤其适用。更多信息请参阅*《用于合成训练数据生成的 GANs 集合》*(arxiv.org/pdf/2104.11797.pdf)。在这项工作中使用了多个 GANs 来提高生成的合成数据多样性。研究人员特别关注了这种方法在合成数字病理切片方面的有效性。GANs 在训练数据集上是独立且相互隔离地训练的。这项工作表明优化过程的随机性对于更好地表示训练数据分布和丰富 GANs 生成的数据多样性是基本的。多样性正则化鼓励生成模型生成多样化的合成样本的另一种方法是利用训练目标或损失中的正则化项。换句话说你可以对生成模型生成相似的合成样本进行惩罚。因此你的模型将倾向于生成更多样化的样本以最小化训练损失。例如这种方法在用于多样化图像合成的模式寻找生成对抗网络arxiv.org/pdf/1903.05628.pdf中被采用以解决 GAN 中的模式坍塌问题并提高生成合成图像的多样性。有关 GAN 中模式坍塌问题的更多详细信息请参阅第七章。这种方法不需要对 GAN 的架构进行任何修改。它只是将损失函数改为鼓励生成器生成不同的图像。因此生成器被鼓励更好地覆盖训练数据分布从而生成更多样化的合成图像。关于 GAN 中正则化方法的综述请参阅GAN 中的正则化和归一化系统调查arxiv.org/abs/2008.08930。结合外部知识你还可以对生成过程进行条件化以鼓励生成模型生成具有特定属性和特定场景下的合成数据。例如如果你的数据在雨天采集的训练样本较少你可以明确地条件化 GAN 模型以生成更多这种天气条件下的示例。此外你可能防止生成模型生成与你的问题不相关的示例。例如如果你在室内环境中生成猫的图像你可能防止你的 GAN 在恶劣天气条件下生成示例因为这些条件在这个特定环境中是不适用的。这可以通过各种方式实现例如修改损失函数对这些无关或不希望的预测施加惩罚。在这种情况下判别器至少需要做出两个不同的预测一个用于评估样本是真实还是虚假另一个用于确定其相关性。进阶训练增加生成的合成样本多样性的另一种有趣的方法是在训练过程中逐渐引入更复杂的模式在整个训练过程中增加生成器和判别器的层数并在训练阶段对多样性较低的示例进行惩罚。这鼓励合成数据生成模型生成更多样化和变体化的数据。例如在*《用于提高质量、稳定性和变化的渐进式增长 GAN》*arxiv.org/pdf/1710.10196.pdf的研究中研究人员通过添加新层并在训练过程中使用更详细和更高分辨率的图像来增长生成器和判别器显著提高了 GAN 训练过程的稳定性和生成合成图像的多样性。使用游戏引擎进行程序性内容生成程序性内容生成PCG是视频游戏中广泛使用的一种方法用于使虚拟世界多样化且丰富从而提高玩家的体验。同样的概念可以用于游戏引擎和模拟器中以创建多样化的 3D 虚拟世界从而生成多样化的合成数据。PCG 可以用于生成纹理、对象、地图、动画和其他场景元素。具体示例请参阅*《ProcSy程序化合成数据集生成用于语义分割影响因子研究网络》*uwaterloo.ca/waterloo-intelligent-systems-engineering-lab/procsy。到目前为止我们已经学习了通常用于提高生成合成数据多样性的主要方法。接下来让我们了解这些方法的主要问题和局限性。合成数据领域的多样性问题正如我们所见多样性有助于我们构建健壮、准确和通用的机器学习模型。此外我们还学习了在实践中提高合成数据多样性的许多方法。在本节中我们将探讨我们在尝试生成多样化合成数据时通常遇到的三种主要问题平衡多样性与现实性隐私和保密问题验证和评估挑战平衡多样性与现实性通常在多样性和逼真度之间存在权衡。在不考虑这些生成的样本逼真度的前提下生成多样化的合成示例可能会引入或增加合成域和真实域之间的领域差距。更多细节请参阅第十三章和第十四章。例如假设我们想要为特定的计算机视觉任务或应用生成带有运动汽车的图像。虽然生成覆盖现实世界中大多数可用真实运动汽车样本的多样化运动汽车至关重要但我们不希望生成在问题上下文中不太可能观察到的运动汽车。因此我们的目标始终应该是生成能够准确反映现实世界分布的合成数据。它应该是多样化的同时也应该是逼真的以便在实际中用于训练和测试机器学习模型。隐私和保密问题当生成受隐私或保密问题限制的具有真实数据的合成数据时生成多样化的合成数据变得相当困难。其背后的原因是对于真实数据属性、模式和关联的理解有限这些关联无法通过给定小规模训练数据集的生成模型来学习。因此对于这类应用生成模型生成多样化的合成数据变得极其困难。请参阅第三章以深入了解大规模真实数据集的隐私问题。验证和评估挑战该领域的主要问题之一是评估生成的合成数据的多样性以及因此在实际应用中该数据的可用性。开发一个稳健、可靠和通用的多样性评估指标在实践中将非常有用。最先进的指标通常是问题相关的实验性的并且缺乏适当的理论框架。更多信息请参阅生成模型的可靠保真度和多样性指标(arxiv.org/abs/2002.09797)。摘要在本章中我们讨论了为什么数据多样性对于基于机器学习的解决方案至关重要。我们还考察了生成多样化合成数据的关键方法。然后我们强调了主要问题和挑战。在下一章中我们将关注合成数据中的另一个相关且有趣的问题即逼真度。第十六章计算机视觉中的逼真度在本章中您将了解为什么在计算机视觉中需要逼真合成数据。然后您将探索生成逼真合成数据的主要方法。之后您将理解主要挑战和限制。尽管本章侧重于计算机视觉但讨论可以推广到其他领域和应用。在本章中我们将涵盖以下主要主题计算机视觉中的合成数据逼真度逼真度方法逼真度评估指标逼真合成数据面临的挑战和限制计算机视觉中的合成数据逼真度在本节中您将了解为什么逼真度在计算机视觉中至关重要。合成数据的逼真度是缓解真实和合成数据之间领域差距的主要因素之一。因此在逼真合成数据上训练计算机视觉模型可以提高这些模型在真实数据上的性能。更多详情请参阅Hypersim: A Photorealistic Synthetic Dataset for Holistic Indoor Scene Understanding(arxiv.org/abs/2011.02523) 和A Review of Synthetic Image Data and Its Use in Computer Vision(www.ncbi.nlm.nih.gov/pmc/articles/PMC9698631)。此外合成数据可以用来评估计算机视觉算法。然而在非逼真合成数据上评估这些模型可能会导致这些模型表现出较差的性能这并非因为测试场景的挑战性质而是因为领域差距本身。因此逼真合成数据对于有效地训练和准确评估机器学习模型至关重要。现在让我们讨论利用逼真合成数据的主要好处。首先让我们深入了解特征提取。特征提取计算机视觉算法通常依赖于在训练阶段学习的自动特征提取。机器学习模型学习如何识别最可靠和具有判别性的特征和模式后续子模块利用这些特征和模式来学习实际任务例如语义分割、深度估计和视觉目标跟踪。在非逼真合成数据上训练您的计算机视觉模型这些数据过度简化了现实世界会导致不适当的特征提取。相反逼真合成数据帮助机器学习模型学习如何提取判别性特征。因此机器学习模型将在现实世界中表现良好。这是因为真实数据帮助机器学习模型更好地理解场景元素之间的关系它们如何相互影响以及它们如何有助于正在学习的任务。领域差距真实感合成数据缓解了合成域和真实域之间的领域差距。主要原因在于真实数据部分重采样了真实数据这有助于计算机视觉模型在更接近模型实际部署环境的训练数据上训练。因此模型可以从训练阶段学习的合成数据中很好地泛化。另一方面大规模、多样但非真实感的合成数据可能会扩大领域差距并显著阻碍性能。坚韧性创建能够模拟真实光照、纹理、着色器、动画和摄像机运动的模拟器使研究人员能够生成大规模、多样化的合成训练数据集这些数据集能够恰当地反映现实世界中的挑战和多样性。因此计算机视觉算法可以在更多真实场景中训练以学习如何适应现实世界的实际复杂性。这对于使计算机视觉算法在现实世界中更加健壮至关重要因为在现实世界中收集真实数据可能极其昂贵或不可行。性能基准测试合成数据提供了一种更准确、更高效的方式来生成地面真实数据参考第五章。地面真实数据对于评估机器学习模型性能至关重要。真实感合成数据使我们能够确保合成数据的性能适当反映了真实世界中的预期。相反非真实感合成数据不太适合进行准确评估和基准测试。真实感方法在本节中你将了解并探索通常用于生成真实感合成数据的主要方法。我们将了解以下内容基于物理的渲染神经风格迁移基于物理的渲染PBR基于物理的渲染PBR方法在游戏引擎如Unity和Unreal中得到了广泛应用用于准确模拟 3D 虚拟世界中的材料如何与光线相互作用。在现实世界中这是一个复杂的过程因此它需要深入了解光学并简化这些过程以适用于游戏引擎。基于物理的材料对于这种方法至关重要。它们类似于现实世界中类似材料如何与光线相互作用。这些材料通常具有基于现实世界材料真实测量的属性和参数。这些属性可能包括吸收、散射和折射系数和参数。需要注意的是PBR 背后的主要原则是能量守恒这意味着材料反射和散射的光能不应超过该材料接收到的总入射或接收光能。如预期的那样部署一个照片真实感渲染管线将帮助我们模拟和渲染更准确和真实的光照和材质行为。因此我们可以生成更具照片真实感的合成数据。神经风格迁移神经风格迁移是一种著名的技巧它可以将一种艺术风格从一个图像转移到另一个图像同时保留后者的内容。这种方法可以应用于合成数据集以提高其照片真实感从而缓解合成数据和真实数据之间的领域差距。例如Sim2Real风格迁移模型可以部署以弥合合成数据和真实数据在姿态估计任务之间的差距。更多信息请参阅Sim2Real Instance-Level Style Transfer for 6D Pose Estimation(arxiv.org/abs/2203.02069)。此外还有许多有趣的研究探讨了如何将来自Grand Theft AutoV电子游戏的合成数据集GTA5https://www.v7labs.com/open-datasets/gta5适配到真实的Cityscapes数据集www.cityscapes-dataset.com。照片真实度评估指标在这个主题领域中的一个主要问题是定量评估生成的合成图像的照片真实感。在本节中我们将探讨通常使用的指标。我们将探讨以下内容结构相似性指数度量SSIM学习感知图像块相似度LPIPS专家评估结构相似性指数度量SSIMSSIM 是衡量两张图像之间结构相似度最广泛使用的指标之一。它首次在题为Image quality assessment: from error visibility to structural similarity的论文中提出ieeexplore.ieee.org/document/1284395。SSIM 指标并不比较两张图像的个别像素。然而它考虑了一组像素假设空间上接近的像素具有相互依赖性。这些依赖性可以与由给定图像捕获和呈现的实际物体结构联系起来。SSIM 特别关注像素之间的空间关系如边缘和纹理以评估图像与参考图像的接近程度。最近研究表明当 SSIM 用于比较图像或包含在机器学习模型的训练损失中时可能会导致不正确或意外的结果。更多信息请参阅Understanding SSIM(arxiv.org/pdf/2006.13846.pdf)。学习感知图像块相似度LPIPSLPIPS通过利用在大规模数据集上训练用于计算机视觉任务的神经网络来衡量特征空间中图像之间的距离例如在ImageNet数据集上训练的VGG。研究发现LPIPS 给出了与人类感知图像之间相似性的更相似结果。更多信息请参阅深度特征作为感知度量不可理喻的有效性(arxiv.org/abs/1801.03924)。在这篇论文中研究发现在复杂视觉任务上训练的机器学习模型学习到了丰富、通用和有用的世界视觉表示。这种知识可以用来以类似于人类可能感知这种相似性的方式来评估图像之间的视觉相似性。专家评估在某些应用中我们可能需要请求领域专家对生成的合成图像进行评估。例如假设你的生成模型正在生成用于后续训练癌症预测机器学习模型的计算机断层扫描CT合成图像。我们仍然可以利用定性指标如结构相似性指数SSIM来评估与真实数据对应的结构相似性峰值信噪比PSNR来衡量生成图像的质量弗雷歇起始距离FID来了解生成样本的现实性和多样性以及 LPIPS 来评估与真实数据的感知相似性。然而对于这些关键问题专家评估仍然是必不可少的。对合成生成数据的专家评估对于验证其有效性、质量和多样性至关重要。最重要的是这种评估对于确认合成数据符合伦理标准是必不可少的。接下来让我们讨论生成光真实合成数据的一些主要挑战。光真实合成数据面临的挑战和限制在本节中你将探索阻碍在实际中生成光真实合成数据的主要挑战。我们将强调以下限制。创建超逼真场景现实世界是复杂、多样和错综复杂的细节丰富。现实场景中的元素具有各种形状、复杂的动态和高度非线性的相互作用。此外我们对世界的视觉和感知是有限的并受许多因素的影响例如认知偏差和颜色感知。此外我们可能根据上下文和评估者的不同对光真实性有不同的判断。例如更真实的是前景物体真实而背景不真实还是相反所有这些因素共同使得在实际中生成高度逼真的场景相当困难。资源与光真实性的权衡预算、时间、技能和其他因素限制了生成的合成数据的照片级真实感。正如预期的那样模拟由高多边形 3D 模型和多样化、逼真的动画组成的世界需要大量的计算资源。此外采用高级和复杂的光渲染机制如光线追踪和 PBR进一步增加了对更多处理能力和资源的需求。“光线追踪”是一种渲染技术可以模拟光的真实行为及其与场景元素的复杂交互。因此在资源和照片级真实感之间始终存在权衡。因此对于您特定的实际问题确定您所说的“照片级真实感”是什么非常重要。此外您还需要仔细考虑您将部署哪些指标来评估生成的合成数据的质量和照片级真实感同时考虑到可用的资源。摘要在本章中您了解了促使研究人员努力在计算机视觉问题中生成的合成数据中实现高照片级真实感的主要原因。您了解了通常用于此目的的两个主要方法。然后您探讨了用于评估生成的合成数据照片级真实感的知名定量和定性指标。最后您检查了一些在实践中阻碍生成理想照片级真实感合成数据的问题。在下一章和最后一章中我们将总结并结束本书。第十七章结论在本章中我们将总结我们在合成数据之旅中学到的所有内容。我们将再次强调基于真实数据的机器学习解决方案的主要问题。然后我们将回顾基于合成数据的解决方案的好处、挑战和局限性。最后我们将突出一些有趣的未来展望。在本章中我们将涵盖以下主要主题真实数据及其问题合成数据作为解决方案现实世界案例研究挑战和局限性未来展望真实数据及其问题在本书的第一部分我们学习了为什么机器学习模型需要大规模标注数据第一章。然后我们深入分析了真实数据的主要问题并彻底分析了标注过程的关键缺点第二章。之后我们讨论并学习了为什么隐私阻碍了某些领域如金融和医疗保健的机器学习进步第三章。合成数据作为解决方案然后我们将合成数据作为解决这些复杂问题和挑战的解决方案介绍第四章和第五章。在此之后我们探讨了生成合成数据的各种知名方法第三部分。我们深入探讨了利用模拟器和游戏引擎生成合成数据第六章。然后我们详细探讨了生成对抗网络GANs第七章。稍后在我们探索一种新颖的合成数据生成方法时我们发现了关于利用视频游戏作为合成数据来源的宝贵见解第八章。最后我们广泛研究了扩散模型并探讨了它们在合成数据生成中的多种应用第九章。现实世界案例研究我们通过提供计算机视觉第十章、自然语言处理第十一章和预测分析第十二章等不同领域的成功应用实例讨论并展示了在现实场景中利用合成数据的有效性。然后我们了解了一些限制合成数据可用性的知名领域特定问题并揭示了在实践中有效利用合成数据的一些最佳实践第十三章。挑战和局限性为了确保你们了解通常阻碍合成数据有效利用的常见问题我们全面研究了合成到真实域适应方法。我们深入研究了机器学习中的域差距问题并了解了合成到真实域适应的主要方法第十四章。然后我们学习了为什么在机器学习中多样化的数据至关重要并发现了生成多样化合成数据集的主要策略。在此之后我们强调了生成多样化合成数据的主要问题和挑战第十五章。之后我们学习了为什么在计算机视觉中生成逼真数据至关重要。我们还了解了提高逼真度的主要方法并讨论了必要的逼真度评估指标。然后我们涵盖了在实践中生成逼真合成数据所面临的挑战和限制第十六章。未来展望我们一起探讨了合成数据的潜力。现在轮到你们在这个机器学习领域解锁新的机会和可能性了。我强烈鼓励你们加入合成数据社区例如 Discord 上的 Mostly AI 合成数据社区mostly.ai/synthetic-data-discord-community和 AI 中合成数据的创建和使用开放社区opensynthetics.com。你们可以随时探索合成数据生成工具如 Synthesizedwww.synthesized.io、Gretel.aigretel.ai和 Neurolabswww.neurolabs.ai。在未来合成数据预计将更加多样化、更加真实、成本更低并且更容易生成和利用。政府和决策者已经意识到合成数据巨大的优势。包括美国政府在内的许多政府都有明确的计划来推进隐私保护数据共享和分析PPDSA方法www.whitehouse.gov/wp-content/uploads/2023/03/National-Strategy-to-Advance-Privacy-Preserving-Data-Sharing-and-Analytics.pdf。正如预期的那样合成数据是这些解决方案的核心。因此在不久的将来将有更多的研究、关注和资金投入到合成数据领域。摘要在本章中我们简要概述了本书涵盖的内容。首先我们讨论了收集和标注大规模真实数据集的需求以及通常与之相关的主要问题。然后我们看到合成数据提供了一个巧妙的解决方案优雅地缓解了这些问题的多数部分。其次我们掌握了生成多样化和真实合成数据的主要方法。第三我们探讨了各种案例研究并了解了基于合成数据的机器学习解决方案的主要问题和局限性。实质上你已经学会了如何克服真实数据问题以及如何提高你的机器学习模型性能。此外你还掌握了仔细权衡每种合成数据生成方法优缺点的艺术。你同样也获得了在实践中更好地利用合成数据的最佳实践。现在随着我们接近使用合成数据学习机器学习的旅程的尾声你已经具备了推动机器学习领域边界的技能和知识。你准备好将合成数据应用于自己的问题、研究和企业在学术界、工业界、社会乃至更广阔的领域产生重大影响