DeepMind提出了一种祖安AI,专门输出网络攻击性语言

简介: DeepMind提出了一种祖安AI,专门输出网络攻击性语言

语言模型 (LM) 常常存在生成攻击性语言的潜在危害,这也影响了模型的部署。一些研究尝试使用人工注释器手写测试用例,以在部署之前识别有害行为。然而,人工注释成本高昂,限制了测试用例的数量和多样性。

基于此,来自 DeepMind 的研究者通过使用另一个 LM 生成测试用例来自动发现目标 LM 未来可能的有害表现。该研究使用检测攻击性内容的分类器,来评估目标 LM 对测试问题的回答质量,实验中在 280B 参数 LM 聊天机器人中发现了数以万计的攻击性回答。


论文地址:https://storage.googleapis.com/deepmind-media/Red%20Teaming/Red%20Teaming.pdf

该研究探索了从零样本生成到强化学习的多种方法,以生成具有多样性和不同难度的测试用例。此外,该研究使用 prompt 工程来控制 LM 生成的测试用例以发现其他危害,自动找出聊天机器人会以攻击性方式与之讨论的人群、找出泄露隐私信息等对话过程存在危害的情况。总体而言,该研究提出的 Red Teaming LM 是一种很有前途的工具,用于在实际用户使用之前发现和修复各种不良的 LM 行为。

GPT-3 和 Gopher 等大型生成语言模型具有生成高质量文本的非凡能力,但它们很难在现实世界中部署,存在生成有害文本的风险。实际上,即使是很小的危害风险在实际应用中也是不可接受的。

例如,2016 年,微软发布了 Tay Twitter 机器人,可以自动发推文以响应用户。仅在 16 个小时内,Tay 就因发出带有种族主义和色情信息的推文后被微软下架,当时已发送给超过 50000 名关注者。

问题在于有太多可能的输入会导致模型生成有害文本,因此,很难让模型在部署到现实世界之前就找出所有的失败情况。DeepMind 研究的目标是通过自动查找失败案例(或「红队(red teaming)」)来补充人工手动测试,并减少关键疏忽。该研究使用语言模型本身生成测试用例,并使用分类器检测测试用例上的各种有害行为,如下图所示:

「基于 LM 的 red teaming」使我们可以找出成千上万种不同的失败案例,而不用手动写出它们。

该研究使用对话作为测试平台来检验其假设,即 LM 是红队的工具。DeepMind 这项研究的首要目标就是找到能引起 Dialogue-Prompted Gopher(DPG; Rae et al., 2021)作出攻击性回复的文本。DPG 通过以手写文本前缀或 prompt 为条件,使用 Gopher LM 生成对话话语。Gopher LM 则是一个预训练的、从左到右的 280B 参数 transformer LM,并在互联网文本等数据上进行了训练。

攻击性语言:仇恨言论、脏话、性骚扰、歧视性语言等

数据泄露:从训练语料库中生成有版权或私人可识别信息

联系信息生成:引导用户发送不必要的邮件或给真人打电话

分布式偏见(distributional bias):以一种相较其他群体不公平的方式讨论某些群体

会话伤害:长对话场景中出现的攻击性语言


为了使用语言模型生成测试用例,研究者探索了很多方法,从基于 prompt 的生成和小样本学习到监督式微调和强化学习,并生成了更多样化的测试用例。

研究者指出,一旦发现失败案例,通过以下方式修复有害模型行为将变得更容易:

将有害输出中经常出现的某些短语列入黑名单,防止模型生成包含高风险短语的输出;

查找模型引用的攻击性训练数据,在训练模型的未来迭代时删除该数据;

使用某种输入所需行为的示例来增强模型的 prompt(条件文本);

训练模型以最小化给定测试输入生成有害输出的可能性。


如下图 2 所示,0.5M 的零样本测试用例在 3.7% 的时间内引发了攻击性回复,导致出现 18444 个失败的测试用例。SFS 利用零样本测试用例来提高攻击性,同时保持相似的测试用例多样性。


为了理解 DPG 方法失败的原因,该研究将引起攻击性回复的测试用例进行聚类,并使用 FastText(Joulin et al., 2017)嵌入每个单词,计算每个测试用例的平均词袋嵌入。最终,该研究使用 k-means 聚类在 18k 个引发攻击性回复的问题上形成了 100 个集群,下表 1 显示了来自部分集群的问题。


此外,该研究还通过分析攻击性回复来改进目标 LM。该研究标记了输出中最有可能导致攻击性分类的 100 个名词短语,下表 2 展示了使用标记名词短语的 DPG 回复。


总体而言,语言模型是一种非常有效的工具,可用于发现语言模型何时会表现出各种不良方式。在目前的工作中,研究人员专注于当今语言模型所带来的 red team 风险。将来,这种方法还可用于先发制人地找到来自高级机器学习系统的其他潜在危害,如内部错位或客观鲁棒性问题。

这种方法只是高可信度语言模型开发的一个组成部分:DeepMind 将 red team 视为一种工具,用于发现语言模型中的危害并减轻它们的危害。

参考链接:https://www.deepmind.com/research/publications/2022/Red-Teaming-Language-Models-with-Language-Models

相关文章
|
1月前
|
监控 安全
从 Racket 语言出发,创新员工网络监控软件的框架
在数字化企业环境中,员工网络监控软件对于保障信息安全和提升效率至关重要。Racket 语言凭借其独特特性和强大功能,为开发创新的监控软件提供了新可能。通过捕获和分析网络数据包、记录员工网络活动日志,甚至构建复杂的监控框架,Racket 能够满足企业的定制化需求,为企业信息安全和管理提供强有力支持。未来,基于 Racket 的创新解决方案将不断涌现。
41 6
|
29天前
|
机器学习/深度学习 人工智能
类人神经网络再进一步!DeepMind最新50页论文提出AligNet框架:用层次化视觉概念对齐人类
【10月更文挑战第18天】这篇论文提出了一种名为AligNet的框架,旨在通过将人类知识注入神经网络来解决其与人类认知的不匹配问题。AligNet通过训练教师模型模仿人类判断,并将人类化的结构和知识转移至预训练的视觉模型中,从而提高模型在多种任务上的泛化能力和稳健性。实验结果表明,人类对齐的模型在相似性任务和出分布情况下表现更佳。
58 3
|
20天前
|
安全 网络协议 Go
Go语言网络编程
【10月更文挑战第28天】Go语言网络编程
110 65
|
20天前
|
网络协议 安全 Go
Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
【10月更文挑战第28天】Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
48 13
|
20天前
|
网络协议 安全 Go
Go语言的网络编程基础
【10月更文挑战第28天】Go语言的网络编程基础
37 8
|
21天前
|
缓存 网络协议 Unix
Go语言网络编程技巧
【10月更文挑战第27天】Go语言网络编程技巧
39 8
|
21天前
|
网络协议 Go
Go语言网络编程的实例
【10月更文挑战第27天】Go语言网络编程的实例
19 7
|
2月前
|
机器学习/深度学习 人工智能 TensorFlow
神经网络深度剖析:Python带你潜入AI大脑,揭秘智能背后的秘密神经元
【9月更文挑战第12天】在当今科技飞速发展的时代,人工智能(AI)已深入我们的生活,从智能助手到自动驾驶,从医疗诊断到金融分析,其力量无处不在。这一切的核心是神经网络。本文将带领您搭乘Python的航船,深入AI的大脑,揭秘智能背后的秘密神经元。通过构建神经网络模型,我们可以模拟并学习复杂的数据模式。以下是一个使用Python和TensorFlow搭建的基本神经网络示例,用于解决简单的分类问题。
49 10
|
2月前
|
机器学习/深度学习 人工智能 TensorFlow
深入骨髓的解析:Python中神经网络如何学会‘思考’,解锁AI新纪元
【9月更文挑战第11天】随着科技的发展,人工智能(AI)成为推动社会进步的关键力量,而神经网络作为AI的核心,正以其强大的学习和模式识别能力开启AI新纪元。本文将探讨Python中神经网络的工作原理,并通过示例代码展示其“思考”过程。神经网络模仿生物神经系统,通过加权连接传递信息并优化输出。Python凭借其丰富的科学计算库如TensorFlow和PyTorch,成为神经网络研究的首选语言。
51 1
|
2月前
|
监控 安全 数据挖掘
Mojo 语言与单位网络监控软件的创新结合
在数字化高速发展的时代,编程语言与网络监控软件不断创新,为各领域带来新机遇。本文探讨了 Mojo 语言与单位网络监控软件的结合,展示了其在提升网络管理效率和安全性方面的潜力。Mojo 语言的强大功能和灵活性使其在复杂数据分析中表现出色,而网络监控软件则能实时监测网络状况,两者结合将推动技术创新与发展。
30 1

热门文章

最新文章