DALL·E 2 预训练风险缓解措施

OpenAI Blog 论文

摘要

# DALL·E 2 预训练风险缓解措施 来源:[https://openai.com/index/dall-e-2-pre-training-mitigations/](https://openai.com/index/dall-e-2-pre-training-mitigations/) 在主动学习阶段,我们通过为可能存在困难或分类错误的图像收集人工标签,迭代改进分类器。值得注意的是,我们使用了两种主动学习技术从包含数亿个未标记图像的数据集中选择图像,以供人工标注。

为了将 DALL·E 2 的魔力分享给广泛的受众,我们需要降低强大图像生成模型带来的风险。为此,我们采取了各种防护措施,防止生成的图像违反我们的内容政策。
查看原文 导出为 Word 导出为 PDF
查看缓存全文

缓存时间: 2026/04/20 14:55

# DALL·E 2 预训练缓解措施 来源: https://openai.com/index/dall-e-2-pre-training-mitigations/ 在主动学习阶段,我们通过为可能难以分类或被误分类的图像收集人类标签来迭代改进分类器。值得注意的是,我们使用了两种主动学习技术从包含数亿张未标记图像的数据集中选择图像呈现给人类进行标注。首先,为了降低分类器的假正例率(即将无害图像误分类为暴力或性感内容的频率),我们为当前模型分类为正例的图像分配了人类标签。为了使这一步工作良好,我们将分类阈值调整为接近 100% 的召回率但较高的假正例率;这样,我们的标注者主要标注的是真正的负例。虽然这种技术有助于减少假正例并减少标注者查看可能有害图像的需求,但它无法帮助发现模型当前遗漏的更多正例。 为了降低分类器的假负例率,我们采用了第二种主动学习技术:最近邻搜索。具体来说,我们运行了多折交叉验证以找到当前标记数据集中模型往往误分类为负的正样本(为此,我们实际上训练了数百个具有不同训练-验证分割的分类器版本)。随后,我们在感知特征空间中扫描大量未标记图像集合,寻找这些样本的最近邻,并为发现的图像分配人类标签。得益于我们的计算基础设施,扩展分类器训练和最近邻搜索到多个 GPU 是轻而易举的,使主动学习步骤能在数分钟而非数小时或数天内完成。 为了验证数据过滤器的有效性,我们使用相同的超参数训练了两个 GLIDE 模型:一个在未过滤数据上,一个在过滤后的数据集上。我们将前者称为*未过滤模型*,后者称为*过滤模型*。不出所料,我们发现过滤模型在响应此类内容请求时通常产生较少明确或图形化的内容。然而,我们还发现了数据过滤的意外副作用:它创造或放大了模型对某些人口统计特征的偏见。 生成模型试图匹配其训练数据的分布,包括其中的任何偏见。因此,过滤训练数据可能会在下游模型中创造或放大偏见。一般来说,修复原始数据集中的偏见是一项困难的社会技术任务,我们继续对其进行研究,超出了本文的范围。我们在这里解决的问题是数据过滤本身引起的偏见放大。通过我们的方法,我们旨在防止过滤模型比未过滤模型*更加*有偏见,从本质上减少数据过滤引起的分布偏移。 作为由过滤引起的偏见放大的具体例子,考虑提示词"一个首席执行官"。当我们的未过滤模型为这个提示词生成图像时,它倾向于生成更多男性而不是女性的图像,我们预计大部分偏见反映了我们当前的训练数据。然而,当我们通过过滤模型运行相同的提示词时,偏见似乎被放大了;生成的几乎完全是男性的图像。 我们推测这种特殊情况的偏见放大来自两个地方:首先,即使女性和男性在原始数据集中代表大致相等,数据集可能偏向于在更性感的背景下呈现女性;其次,我们的分类器本身可能由于实现或类定义而存在偏见,尽管我们在数据收集和验证阶段做出了努力确保情况并非如此。由于这两种效果,我们的过滤器可能会删除比男性更多的女性图像,这改变了模型在训练中观察到的性别比例。 为了更彻底地调查过滤引起的偏见,我们需要一种方法来衡量数据过滤对各种概念的偏见影响程度。值得注意的是,我们的暴力和性内容过滤器纯粹基于图像,但我们数据集的多模态性质允许我们直接衡量这些过滤器对文本的影响。由于每个图像都附带文本标题,我们能够查看过滤和未过滤数据集中手工选择的关键词的相对频率,以估计过滤器对任何给定概念的影响程度。 为了将其付诸实践,我们使用 Apache Spark 计算了两个过滤和未过滤数据集中所有标题中少数几个关键词(例如"parent"、"woman"、"kid")的频率。尽管我们的数据集包含数亿个文本-图像对,但使用我们的计算集群计算这些关键词频率仅需几分钟。 计算关键词频率后,我们能够确认我们的数据集过滤器确实扭曲了某些关键词的频率。例如,过滤器将单词"woman"的频率降低了 14%,而单词"man"的频率仅被降低了 6%。这在大规模上确认了我们通过采样在两个数据集上训练的 GLIDE 模型时已经观察到的内容。 现在我们有了一个衡量过滤引起的偏见的代理,我们需要一种方法来缓解它。为了解决这个问题,我们的目标是重新加权过滤后的数据集,使其分布更好地匹配未过滤图像的分布。作为说明这个想法的玩具示例,假设我们的数据集包含 50% 的猫咪照片和 50% 的狗狗照片,但我们的数据过滤器删除了 75% 的狗狗但只删除了 50% 的猫咪。最终数据集将是 2/3 的猫咪和 1/3 的狗狗,基于似然的生成模型在此数据集上训练可能会生成更多猫咪图像而不是狗狗。我们可以通过将每个狗狗图像的训练损失乘以 2 来修复这种不平衡,模拟重复每个狗狗图像两次的效果。事实证明,我们可以以大致自动的方式将这种方法扩展到我们的真实数据集和模型——也就是说,我们无需手工选择我们想要重新加权的特征。 我们使用来自特殊分类器的概率为过滤数据集中的图像计算权重,类似于 Choi 等人(2019)采用的方法(https://arxiv.org/abs/1910.12008)。为了训练这个分类器,我们从两个数据集中统一采样图像并预测图像来自哪个数据集。特别是,这个模型预测 *P(未过滤|图像)*,给定先验 *P(未过滤) = 0.5*。实际上,我们不希望这个模型太强大,否则它可能学会我们过滤器最初实现的确切函数。相反,我们希望模型比我们原始数据过滤器更平滑,捕捉受过滤器影响的宽泛类别,同时对特定图像是否会被过滤仍然不确定。为此,我们在一个小型 CLIP(https://openai.com/index/clip/) 模型之上训练了一个线性探针。 一旦我们有了预测图像来自未过滤数据集的概率的分类器,我们仍然需要将这个预测转换为图像的权重。例如,假设 *P(未过滤|图像)* = 0.8。这意味着样本在未过滤数据中找到的可能性是在过滤数据中的 4 倍,权重为 4 应该纠正不平衡。更一般地说,我们可以使用权重 *P(未过滤|图像)/P(过滤|图像)*。A(https://openai.com/index/dall-e-2-pre-training-mitigations/#citation-bottom-A) 这个重新加权方案实际上能多好地缓解放大的偏见?当我们使用新的加权方案微调我们之前的过滤模型时,微调模型的行为在我们之前发现的有偏见的例子上更加密切地匹配未过滤模型。虽然这令人鼓舞,但我们也想使用基于关键词的偏见启发式方法更彻底地评估这种缓解。为了在考虑新加权方案的同时衡量关键词频率,我们可以简单地将过滤数据集中关键词的每个实例乘以包含它的样本的权重。这样做,我们得到一组新的关键词频率,反映了过滤数据集中的样本权重。 在我们检查的大多数关键词中,重新加权方案减少了过滤引起的频率变化。对于我们之前的"man"和"woman"示例,相对频率减少变成了 1% 和 -1%,而它们的先前值分别为 14% 和 6%。虽然这个指标只是实际过滤偏见的代理,但令人欣慰的是,我们基于图像的重新加权方案实际上显著改善了基于文本的指标。 我们继续调查 DALL·E 2 中的剩余偏见,部分通过对模型行为的更大规模评估和调查过滤如何影响偏见和能力发展。 我们观察到 DALL·E 2 的内部前身有时会逐字复制训练图像。这种行为是不可取的,因为我们希望 DALL·E 2 默认创建原始、独特的图像,而不是仅仅"拼接"现有图像的片段。此外,逐字复制训练图像可能会引发关于版权侵权、所有权和隐私的法律问题(如果人们的照片存在于训练数据中)。 为了更好地理解图像回吐的问题,我们收集了一个经常导致重复图像的提示词数据集。为此,我们使用训练有素的模型为来自我们训练数据集的 50,000 个提示词采样图像,并按感知相似性与相应训练图像排序样本。最后,我们手工检查了顶部匹配,在 50k 个总提示词中发现了仅几百个真正的重复对。尽管回吐率似乎小于 1%,但出于上述原因,我们认为有必要将该率推至 0。 当我们研究我们的回吐图像数据集时,我们注意到了两种模式。首先,这些图像几乎全是简单的矢量图形,由于其低信息含量,可能易于记忆。其次,更重要的是,这些图像在训练数据集中都有许多接近重复。例如,可能有一个矢量图形看起来像显示 1 点钟时间的时钟——但随后我们会发现一个训练样本包含显示 2 点钟的相同时钟,然后是 3 点钟,等等。一旦我们意识到这一点,我们使用分布式最近邻搜索来验证,确实,所有回吐的图像在数据集中都有感知相似的重复。其他工作(https://arxiv.org/abs/2202.06539)和工作(https://arxiv.org/abs/2202.07646)在大型语言模型中观察到了类似现象,发现数据重复与记忆化密切相关。 上述发现表明,如果我们对数据集进行去重,我们可能会解决回吐问题。为了实现这一点,我们计划使用神经网络来识别看起来相似的图像组,然后从每个组中删除除一个外的所有图像。B(https://openai.com/index/dall-e-2-pre-training-mitigations/#citation-bottom-B) 然而,这需要检查每个图像是否是数据集中每个其他图像的重复。由于我们的整个数据集包含数亿张图像,我们天真地需要检查数百万亿对图像对以找到所有重复。虽然这在技术上是可以实现的,特别是在大型计算集群上,但我们找到了一个更高效的替代方案,它的效果几乎同样好,成本仅为一小部分。 考虑在执行去重之前聚类数据集会发生什么。由于附近的样本通常落入相同的集群,大部分重复对不会跨越集群决策边界。然后我们可以在不检查集群外部重复的情况下在每个集群内去重样本,仅错过所有重复对的一小部分。这比天真的方法快得多,因为我们不再需要检查每一对图像。C(https://openai.com/index/dall-e-2-pre-training-mitigations/#citation-bottom-C) 当我们在数据的一个小子集上实证测试这种方法时,使用 *K=1024* 个集群时发现了 85% 的所有重复对。为了改进上述算法的成功率,我们利用了一个关键观察:当你聚类数据集的不同随机子集时,生成的集群决策边界通常相当不同。因此,如果一个重复对跨越了一个数据聚类的集群边界,相同的对可能在不同聚类的单个集群内落下。你尝试的聚类越多,你发现给定重复对的可能性就越大。实际上,我们选择了使用五个聚类,这意味着我们在五个不同集群的并集中搜索每个图像的重复。实际上,这在我们数据的子集上发现了 97% 的所有重复对。 令人惊讶的是,我们数据集的将近四分之一被去重删除了。当我们查看找到的接近重复对时,许多包含了有意义的更改。回想时钟例子:数据集可能包含同一时钟在一天中不同时间的许多图像。虽然这些图像可能导致模型记忆这个特定时钟的外观,但它们也可能帮助模型学习区分时钟上的时间。鉴于删除了这么多数据,我们担心删除此类图像可能会损害模型性能。 为了测试去重对模型的影响,我们使用相同的超参数训练了两个模型:一个在完整数据集上,一个在数据集的去重版本上。为了比较模型,我们使用了用于评估原始 GLIDE 模型的相同人类评估。令人惊讶的是,我们发现人类评估者轻微*更偏好*在去重数据上训练的模型,表明数据集中大量冗余图像实际上伤害了性能。 一旦我们有了在去重数据上训练的模型,我们重新运行了我们之前在来自训练数据集的 50k 个提示词上进行的回吐搜索。我们发现新模型在给定训练数据集中图像的确切提示词时从未回吐过训练图像。为了进一步推进这个测试,我们还对 50k 个生成图像中的每一个在整个训练数据集上执行了最近邻搜索。这样,我们认为我们可能会捕捉模型回吐与给定提示词相关的图像之外的不同图像。即使通过这个更彻底的检查,我们也从未发现过图像回吐的情况。

相似文章

减少DALL·E 2的偏见并提高安全性

OpenAI Blog

OpenAI宣布基于研究预览反馈对DALL·E 2的安全系统和偏见缓解进行改进,包括防止欺骗性内容生成的措施和增强的内容过滤。

DALL·E 2 研究预览版更新

OpenAI Blog

OpenAI 宣布扩展 DALL·E 2 研究预览版的访问权限,分享了安全指标以及来自早期用户创建的 300 万张图像的学习成果。该公司计划每周新增最多 1000 名用户,同时继续完善内容政策执行并解决训练数据偏差问题。

DALL·E 3 系统卡

OpenAI Blog

# DALL·E 3 系统卡 来源:[https://openai.com/index/dall-e-3-system-card/](https://openai.com/index/dall-e-3-system-card/) OpenAI## 摘要 DALL·E 3 是一个人工智能系统,接收文本提示作为输入,生成新图像作为输出。DALL·E 3 在 DALL·E 2 的基础上进行了改进,提高了字幕保真度和图像质量。在本系统卡中,我们分享了为 DALL·E 3 部署所做的工作,包括外部专家红队评估和关键风险的评估

DALL·E 2:拓展创意可能

OpenAI Blog

OpenAI 强调来自 118 个以上国家的 3000 多位艺术家正在将 DALL·E 2 整合到他们的创意工作流中,展示了从儿童癌症患者的医学插画到博物馆展览和杂志封面等多样化应用。

DALL·E API 现已推出公开测试版

OpenAI Blog

OpenAI 宣布 DALL·E API 现已推出公开测试版,允许开发者直接将图像生成功能集成到他们的应用中。早期采用者包括 Microsoft、CALA 和 Mixtiles,具备内置安全功能和内容审核。