Page 326 - 《软件学报》2025年第10期
P. 326
张云婷 等: 中文对抗攻击下的 ChatGPT 鲁棒性评估 4723
4.1.3.1 排序阶段
为了控制变量, 本文在排序阶段中采用的方法均选择文献 [10] 中提出的改进的 DS 方法. 该方法的具体介绍
详见第 3.1.1.1 节, 在此不再赘述.
4.1.3.2 扰动阶段
本文分别采用第 3.1.1.2 节中提到的 9 种中文扰动方法对原始文本中的重要词语进行扰动, 关于各扰动方法
的实现细节及适用条件详见第 3.1.1.2 节. 将改进的 DS 方法与这 9 种方法结合, 即可组合为 9 种不同的对抗文本
生成方法. 这些方法的具体介绍如下.
(1) CWordAttacker_Tradition (C_T) [19] : 将改进的 DS 方法与 Tradition 扰动结合;
(2) GreedyAttack_Rewrite (G_R) [20] : 将改进的 DS 方法与 Rewrite 扰动结合;
(3) Argot_SC (A_SC) [17] : 将改进的 DS 方法与 SC 扰动结合;
(4) Argot_Glyph (A_G) [17] : 将改进的 DS 方法与 Glyph 扰动结合;
(5) Argot_Shuffle (A_Sh) [17] : 将改进的 DS 方法与 Shuffle 扰动结合;
(6) Argot_Pinyin (A_P) [17] : 将改进的 DS 方法与 Pinyin 扰动结合;
(7) Argot_Synonyms (A_Sy) [17] : 将改进的 DS 方法与 Synonyms 扰动结合;
(8) TextFooler (TF) [10] : 将改进的 DS 方法与 Word Embedding 扰动结合;
(9) Chinese BERT Tricker (CBT) [21] : 将改进的 DS 方法与 BERT-MLM 扰动结合.
4.1.4 文本相似度评估指标
本文采用余弦相似度、词移距离 [33] 、编辑距离以及杰卡德系数对对抗文本和原始文本的相似度进行全面的
评估. 下面对这 4 种方法进行简要介绍.
(1) 余弦相似度: 余弦相似度是一种衡量文本相似度的常见方式. 向量空间中的两个词向量或者句向量的余弦
相似度越接近 1, 则说明这两个词语或句子越相似. 给定一个词向量 a = (a 1 ,a 2 ,...,a n ) 和一个词向量 b = (b 1 ,b 2 ,...,b n ),
则 a 和 b 之间的余弦相似度 cos(a,b) 可用如下公式计算:
∑
n
a i ×b i
i=1 (21)
cos(a,b) = √∑ √∑
n n
2 2
(a i ) × (b i )
i=1 i=1
(2) 词移距离 [33] : 词移距离利用 Word2Vec [34] 词向量模型对词语进行向量化表示, 并通过计算两个词向量之间
的欧氏距离计算它们的相似度. 该方法的具体细节可参考文献 [33]. 词移距离越短, 则文本相似度越高.
(3) 编辑距离: 编辑距离是指一个字符串变为另一个字符串的过程中最小编辑次数. 本文使用最具代表性的莱
文斯坦距离来计算两文本之间的编辑距离. 莱文斯坦距离允许的操作包括字符级的增加、删除和替换, 且每次仅
能操作一个字符. 编辑距离越短, 则文本相似度越高.
(4) 杰卡德系数: 杰卡德系数通过两个文本中词语集合的交集与并集之比来衡量两篇文本之间的相似度. 杰卡
德系数越接近 1, 则文本相似度越高. 给定两文本, 它们中包含的词语集合分别用词集 A 和词集 B 表示, 则杰卡德
系数 J (A,B) 可用如下公式计算:
|A∩B| |A∩B|
J(A, B) = = (22)
|A∪B| |A|+|B|−|A∩B|
4.2 实验结果
本文分别从新闻分类和情感倾向分类的测试集中各随机抽取 1 000 条数据进行实验. 本节及第 4.3 节的图表
中提到的扰动比例为添加扰动的词语数量与原始文本中词语总数的比值. 实验结果如下.
4.2.1 目标模型鲁棒性评估结果
4.2.1.1 面向硬标签的鲁棒性评估结果
本节分别以 ChatGPT 和中文 BERT 为例, 在新闻分类和情感倾向分类这两个数据集上, 使用第 3.1.3.1 节中所

