今天要给大家推荐的论文是来自浙大网络空间安全学院和美国康涅狄格大学合作的文章,文章主要为语言模型,尤其是应用广泛的文本分类模型提供了通用的可验证鲁棒性。该工作已被IEEE S&P 2024接收。
随着自然语言处理(NLP)领域的迅速发展,大语言模型(例如ChatGPT和LLaMA)正变得日益受欢迎,以大语言模型为核心的应用层出不穷,这预示着它们将在未来的人工智能系统中扮演极为重要的角色。而文本分类作为基础的语言模型,具有关键地位。一方面,为了确保现有大语言模型的安全性,以防止其输出不良信息,业界通常需要大量的文本分类模型进行输入过滤,以判断输入的问题是否安全,如果无法通过安全审查,这些不安全的问题将被拒绝、从而无法得到回复。另一方面,文本分类作为大语言模型的基础功能,在诸多领域有着广泛的应用,包括内容审核、情感分析、欺诈检测和垃圾邮件过滤等。
然而,文本分类模型往往容易受到对抗样本的攻击,这种攻击通过轻微且难以察觉的方式修改输入文本,从而改变模型的输出结果。在用文本分类为大语言模型提供安全防护方面,目前的研究表明,这种防护容易受到攻击。根据卡内基梅隆大学、CyLab安全与隐私研究所和旧金山人工智能安全中心联合发布的最新研究成果:“对齐语言模型的通用和可转移对抗性攻击”[1],大语言模型可以被一种简单有效的攻击方式攻破,以极高概率生成令人反感或毒害性的内容。如图1所示,这种攻击通过在问题中添加对抗性后缀的方式,使得大语言模型更有可能响对那些本应被拒绝回答的问题做出积极响应。被攻击的模型包括开源或闭源的模型,包括Google Bard、Claud、Llama 2 Chat、Pythia、Falcon等。在利用大模型做内容审查的方面,恶意用户同样可以通过对原始文本进行轻微修改,绕过内容审查系统,如图2所示。这种恶意文本可能被用于传播错误信息、散播仇恨言论等。因此,提高文本分类模型的鲁棒性至关重要。
图1
图2
目前,面对文本对抗样本的威胁,业界通常采用经验性防御方案,即将对抗样本加入训练数据集,从而增强模型的鲁棒性。然而,这种方法往往容易受到新型升级对抗样本的攻破,从而使攻防陷入一种无休止的循环。因此,在面对对抗样本威胁时,现在的发展方向是朝着可验证的鲁棒性技术发展,这种技术可以根本性地确保模型的鲁棒性,在图像领域已经取得了显著成功。然而,由于NLP领域面临着不同的数据空间不同、多样的变换以及巨大的攻击距离等挑战,现有的可验证鲁棒性方案并不能直接应用于NLP。
为了为文本分类模型提供可验证的鲁棒性,文章提出了基于随机平滑(randomized smoothing)的首个通用NLP框架(Text-CRS),该框架能够有效应对四种基本的词语级别对抗操作,包括同义词替换、词语重排序、插入和删除,这些操作涵盖了大部分文本对抗样本。文章在多个语言模型和数据集上进行了广泛实验,首次为这四种词语级别操作的鲁棒性提供了基准。此外,文章还进行了创新的理论分析和全面的综合评估,为进一步优化语言模型的可验证鲁棒性方案提供了有益启示。
文本可验证鲁棒性的通用框架
框架概述
文章提出了一个全新的系统框架(如下图所示),用于解决语言模型在可验证鲁棒性方面面临的三大挑战:非结构化字符空间、多样的操作种类和广泛的攻击距离。该框架着眼于实现词语级别操作的可验证鲁棒性, 首先通过嵌入层将非结构化字符映射到词向量空间,并分析词语之间的数值关联。随后,文章将不同操作统一转化为置换和嵌入变换的组合,同时针对每种操作的特点,选择适当的噪声平滑分布用于训练分类模型,这样能够确保针对每种操作都能保持可验证鲁棒性。最后,文章为每种操作的置换和嵌入变换提供了创新性的理论证明,当这些变换都位于一定的扰动范围内时,模型的输出结果将保持一致,从而确保了模型在可验证的范围内是鲁棒的。
理论创新
-
基于阶梯随机化的同义词替换
为解决同义词替换的难题,文章引入了基于阶梯随机化的平滑方法,从而更准确地建模了同义词之间的相似性。相较于之前假设的均匀分布,文章的方法更贴近实际情况,因为不同同义词之间的相似性各不相同。例如,对于替换“好”的情况,文章更倾向于选择与其余词相似度更高的同义词,如“优秀”,而不是仅仅随机选择。这种基于相似性的阶梯随机化方法,使得替换概率更加符合实际情况。
-
基于均匀分布的词语重排
考虑到词语重排对于输出结果的重要性不可预测,文章假设每个位置的词语对预测同等重要,并采用均匀分布来模拟词语重排。通过将词向量分组并在组内随机重排位置,文章模拟了均匀分布的特性,使得每个位置对于预测结果的影响相等。
-
基于高斯分布的词语插
对于词语插入,文章面临置换和嵌入变换的双重挑战。鉴于置换矩阵的性质,文章依然采用基于均匀分布的重排。然而,嵌入矩阵的挑战在于词语插入的自由度和词向量空间的巨大性。为了应对这一挑战,文章采用基于高斯分布的平滑方法,有效抵御任意词语插入的潜在攻击。
-
基于伯努利分布的词语删除
与词语插入类似,词语删除同样涉及置换和嵌入变换。对于置换矩阵,文章仍然采用基于均匀分布的重排策略。在嵌入矩阵中,文章引入了基于伯努利分布的平滑方法,即每个词语被删除的概率为 ,被保留的概率为 。这一方法更准确地模拟了词语删除的实际情况。
通过对上述四种操作的理论研究,文章提出了相应的可验证鲁棒性理论,并推导出每种操作的可验证鲁棒性边界。值得注意的是,所有这四种操作实质上都是对嵌入向量的变换。因此,文章的词语插入可验证鲁棒性理论,适用于这四种词语级别操作。
提升性能的训练工具包
为了解决可验证鲁棒模型性能较低的问题,文章还开发了一个训练工具包(如下图所示),其中包含三种方法,可以显著提升模型性能。这些方法覆盖了语言模型训练的三个步骤,可以用于不同的模型和数据集,具有通用性。
文章首先介绍了一种名为 OGN(优化的高斯噪声)的方法。通过对所加噪声的优化,降低了噪声对训练过程的干扰,从而提升了模型准确率。以高斯噪声为例,合适的高斯噪声均值能够提高可验证准确率。文章发现,在高维度的词向量空间中,采用各向异性的高斯噪声(
其次,文章引入了 ESR(重构词向量空间)方法。该方法通过引入“编码器-解码器”结构,对词向量空间进行重建,降低噪声对词向量空间的影响,这一结构可以看作是对所加噪声的去噪操作。在较小的词向量空间下,该方法能够显著提高模型的准确率。以300维的GloVe词向量和LSTM分类模型为例,加入“编码器-解码器”结构后,三个数据集下的平均可验证准确率提高了10%。
最后,文章介绍了 PLM(预训练的大模型)方法。该方法通过在预训练模型上微调,引导模型找到正确的收敛方向,从而进一步提高模型的准确率。在需要对模型加入较大的高斯噪声训练时,文章先用较小的高斯噪声(如
文章总结
文章首次引入了一个通用框架 Text-CRS,用于认证文本分类模型对四种词语级对抗攻击的鲁棒性,涵盖了大多数词语级文本对抗样本攻击。文章提出了四种随机平滑方法,适应于四种基本词语操作,并给出了一个适用于所有词语操作的方法。此外,文章还提供了一个训练工具包,进一步提升了模型的可验证准确率。通过广泛的实验以及多种词语操作和对真实对抗样本攻击的考虑,结果显示,Text-CRS在同义词替换方面优于SOTA方法,并为其他三种词语操作建立了新的可验证准确率基准。鉴于该框架的通用性,以及其适用于各种模型结构,特别是目前广泛采用的大语言模型基础架构,作者相信 Text-CRS 可作为大语言模型鲁棒性训练的基础框架,不仅能为大语言模型提供可验证的鲁棒性,还能给出理论为可量化的可验证鲁棒性范围提供支持。
代码链接:https://github.com/Eyr3/TextCRS