当前位置: 首页 > news >正文

如何建网站教程百度采购网

如何建网站教程,百度采购网,wordpress style标签,网站建设销售工资摘要 大规模预训练语言模型在自然语言处理#xff08;NLP#xff09;任务上取得了最新的最优结果#xff08;SOTA#xff09;。然而#xff0c;这些模型容易受到对抗攻击的影响#xff0c;尤其是对于表意文字语言#xff08;如中文#xff09;。 在本研究中#xff0…摘要 大规模预训练语言模型在自然语言处理NLP任务上取得了最新的最优结果SOTA。然而这些模型容易受到对抗攻击的影响尤其是对于表意文字语言如中文。 在本研究中我们提出了 ROCBERT——一种对抗各种形式对抗攻击如单词扰动、同义词替换、拼写错误等具有鲁棒性的中文预训练 BERT 模型。 该模型采用对比学习目标contrastive learning objective进行预训练以最大化不同合成对抗样本下的标签一致性。此外模型输入包含多模态信息包括 语义semantic音韵phonetic视觉visual 我们发现这些特征对于提升模型的鲁棒性至关重要因为对抗攻击可能发生在这三种信息模态中。 在 5 个中文自然语言理解NLU任务上ROCBERT 在三种黑盒对抗攻击算法下均优于强基线模型同时不损失干净测试集clean testset上的性能。此外在有害内容检测任务中该模型在人工构造的攻击下表现最佳。 1 引言 大规模预训练模型在微调finetuning 充足的标注数据后已经能够接近甚至超越人类水平Peters et al., 2018; Radford et al.; Devlin et al., 2019; Liu et al., 2019; Brown et al., 2020。 然而即便这些模型在海量文本上进行了预训练它们仍然容易受到对抗攻击adversarial attacks的影响例如 同义词替换synonyms substitution单词删除/交换word deletion/swapping拼写错误misspelling 这些对抗样本adversarial examples 在真实世界场景中频繁出现它们可能是 自然产生的例如拼写错误恶意制造的例如规避有害内容的自动检测 缺乏鲁棒性的问题 在噪声较大的真实环境中进行测试时这些预训练模型的鲁棒性不足可能会导致严重的性能下降。这一问题在表意文字语言如中文中尤为突出因为对抗攻击可以发生在 字形Glyph Character拼音Pinyin即罗马化音标表示或二者结合的方式 Wang et al., 2020; Li et al., 2020d; Zhang et al., 2020; Nuo et al., 2020。 表 1 展示了一些攻击示例。例如单词“科比 (Kobe)” 可以被替换为 同义词语义攻击发音相似的词语音攻击视觉上相似的字视觉攻击 攻击者甚至可以先将汉字转换为拼音然后在字母层面继续攻击如表中的 “keb1”。 由于汉字的语义与语音信息相互独立且汉字的字形字符丰富使得攻击形式远比英语等字母语言更加多样化。 当前对抗防御方法的局限性 目前研究人员主要采用两种方法来防御对抗攻击 拼写检查Spell Checking 在文本输入预测模型之前先进行拼写检查以修正书写错误相关研究Pruthi et al., 2019; Li et al., 2020b; Mozes et al., 2021问题中文拼写检查本身就是一个极具挑战的任务模型需要准确恢复原始文本而拼写检查中的微小错误都可能导致模型无法预测或产生错误行为 对抗训练Adversarial Training 在训练数据中加入对抗样本让模型适应对抗攻击相关研究Zang et al., 2020; Li et al., 2020a; Liu et al., 2020问题在微调阶段模型难以适应所有对抗变体尤其是在训练数据稀缺的情况下Meng et al., 2021 ROCBERT 方案构建鲁棒的中文 BERT 为了解决上述挑战我们提出ROCBERT这是一种鲁棒的中文 BERT 预训练模型其核心方法包括 对抗对比学习目标Contrastive Learning Objective 最大化不同对抗样本下的标签一致性提高模型鲁棒性 自动生成对抗样本 采用专门的算法涵盖常见的攻击类型 组合攻击Combinatorial Attacks 多个攻击类型可叠加这在以往研究中从未被考虑 多模态信息融合 在编码器中融合语义、音韵和视觉信息以全面抵御不同形式的攻击其中语音和视觉特征被插入到自注意力层Self-Attention Layer中然后在后续层进行动态融合 在5 个标准 NLU 任务和1 个有害内容检测任务上我们的预训练模型在各种对抗攻击下达到了最新 SOTA 结果。 贡献总结 提出了一种新的鲁棒中文 BERT 预训练方法结合对抗对比学习使模型在干净测试集和对抗攻击数据集上都能表现良好。采用合成对抗样本涵盖语义、音韵和视觉三种攻击类型并融合多模态特征来防御所有级别的攻击。在 5 个 NLU 任务和 1 个有害内容检测任务上在各种对抗攻击下均超越强基线模型。进行广泛的消融实验探讨不同预训练选项的影响并与主流对抗防御方法进行了深入比较以促进未来研究。 2 相关工作 对抗攻击Adversarial Attack 大量研究表明NLP 模型在对抗样本下极易受到攻击即使这些样本对人类来说可理解但会导致模型预测错误Li et al., 2020c; Garg Ramakrishnan, 2020; Zang et al., 2020。 通常对抗攻击可分为两类 语义等价替换Semantic Equivalent Replacement 通过词向量相似性替换单词Jin et al., 2020; Wang et al., 2020通过WordNet 同义词替换Zang et al., 2020通过预训练模型的掩码预测Masked PredictionLi et al., 2020c; Garg Ramakrishnan, 2020; Li et al., 2020d 噪声注入Noise Injection 添加/删除/交换单词Li et al., 2019a; Gil et al., 2019; Sun et al., 2020a替换为发音或视觉相似的单词Eger et al., 2019; Eger Benz, 2020 对于中文而言由于汉字的字形和拼音特性噪声可以同时作用在字形和拼音上Zhang et al., 2020; Nuo et al., 2020。 3 对抗样本生成Adversarial Example Synthesis 3.1 中文字符攻击Attacking Chinese Characters 由于汉字的复杂性我们专门设计了5 种中文特定的攻击方法 语音攻击Phonetic Attack 用同音字替换汉字忽略声调对于多音字选取最常见的 2 个拼音 视觉攻击Visual Attack 用视觉上相似的汉字进行替换使用汉字相似度数据库 字符拆分攻击Character Split Attack 拆分汉字为两个子部分且每部分仍是有效汉字或视觉相似汉字参考中文拆分字典共17,803 种拆分方式 同义词替换攻击Synonym Attack 分词后用同义词替换部分单词使用Jieba 分词器同义词判定标准相似度 0.75仅替换名词和形容词因为其他词的替换往往会改变语义 字符转拼音攻击Character-to-Pinyin Attack 用拼音表示汉字忽略声调 3.2 其他字符的攻击方式 除了中文字符中文语料库中还包含拼音、数字、标点符号和外文单词。我们设计了以下 4 种攻击方法适用于所有字符类型 Unicode 攻击Unicode Attack 随机选取一个视觉相似的 Unicode 字符进行替换 随机插入Random Insertion 从词汇表中随机抽取一个字符随机插入到目标字符的左侧或右侧 交换字符Swap 交换目标字符与其相邻字符的位置 删除字符Deletion 直接删除目标字符 表 1 展示了所有攻击类型的示例。 3.3 对抗样本的生成过程Synthesis Process 对抗样本的生成流程如下 给定一个句子我们首先选择多个字符作为攻击目标。针对每个被选中的字符我们结合上述字符级攻击算法生成被攻击后的字符形式。 攻击比例Attack Ratio 攻击比例 γ γ γ决定了一个句子中有多少字符会被攻击。 设句子中的总字符数为 n c n_c nc​我们定义 γ γ γ 为 γ min ⁡ ( max ⁡ ( int ⁡ ( ϵ ) , 1 ) , n c ) ( 1 ) ϵ ∼ N ( max ⁡ ( 1 , 0.15 n c ) , 1 ) \begin{aligned} \gamma\operatorname*{min}(\operatorname*{max}(\operatorname{int}(\epsilon),1),n_{c}) \\ \mathrm{(1)} \\ \epsilon\sim\mathcal{N}(\max(1,0.15n_{c}),1) \end{aligned} ​γmin(max(int(ϵ),1),nc​)ϵ∼N(max(1,0.15nc​),1)​(1)​ 其中int 函数将四舍五入为最接近的整数。这样做的直观原因是我们希望平均攻击 15% 的字符。如果句子较短我们将确保至少攻击一个字符。我们在平均比例的基础上添加了正态高斯噪声以增加一定的随机性。 字符选择许多研究表明攻击信息量大的词比随机选择词更有效Li et al., 2019a; Sun et al., 2020a。因此我们根据字符在句子中的信息量来决定其被选中的概率。设 w ( c i ) w(c_i) w(ci​) 表示字符 c i c_i ci​ 所属的词 c i c_i ci​ 的信息量得分通过删除 w ( c i ) w(c_i) w(ci​) 后语言模型损失的变化来计算记为 L ( ▽ w ( c i ) ) \mathcal{L}(\triangledown w(c_{i})) L(▽w(ci​))参考 Li et al., 2016。字符 c i c_i ci​ 被选中攻击的概率为 p ( c i ) e L ( ∇ w ( c i ) ) ∣ w ( c i ) ∣ ∑ j 1 n w e L ( ∇ w j ) ( 2 ) p(c_i)\frac{e^{\mathcal{L}(\nabla w(c_i))}}{|w(c_i)|\sum_{j1}^{n_w}e^{\mathcal{L}(\nabla w_j)}}\qquad{(2)} p(ci​)∣w(ci​)∣∑j1nw​​eL(∇wj​)eL(∇w(ci​))​(2) 其中 n w n_{w} nw​ 是句子中的词数。 ∣ w ( c i ) ∣ |w(c_i)| ∣w(ci​)∣ 表示 w ( c i ) w(c_i) w(ci​) 中的字符数因此同一词中的字符被选中的概率相等。 攻击组合一个字符可能会受到多种攻击的组合。例如我们可以将一个中文字符转换为其拼音然后继续在字母级别对其进行攻击如表1中的“to pinyin unicode”。我们将其定义为一个顺序过程每一步都可以在之前的基础上添加新的攻击。具体来说所有攻击组合应用于字符 c c c 后得到的新字符 c ~ \tilde{c} c~ 为 c ~ A S ( c ) ∘ ⋯ ∘ A 2 ∘ A 1 ( c ) ( 3 ) \tilde{c}A_{S(c)}\circ\cdots\circ A_2\circ A_1(c) \qquad{(3)} c~AS(c)​∘⋯∘A2​∘A1​(c)(3) p ( S ( c ) k ) q ( 1 − q ) k − 1 p(S(c)k)q(1-q)^{k-1} p(S(c)k)q(1−q)k−1 其中“o” 表示将新的攻击算法 A A A 应用于上一步的输出。在每一步 i i i攻击算法 A i A_i Ai​ 都是从所有适用于上一步输出的算法中随机选择的。 S ( c ) S(c) S(c) 表示应用于字符 c c c 的攻击步骤数它服从指数衰减函数。我们在实验中将超参数设定为 q 0.7 q0.7 q0.7。对抗样本生成的完整流程如图 1 所示。 4. 多模态对比学习预训练Multimodal Contrastive Pretraining 借助上述对抗样本生成算法我们可以通过多模态对比学习目标来预训练模型。 4.1 多模态特征Multimodal Features 我们采用标准 BERT 结构Devlin et al., 2019作为基础并在此基础上**将语音Phonetic和视觉Visual特征融合到输入文本中。 特征表示Feature Representation 对于词汇表中的每个字符 c c c除了标准的语义嵌入Semantic Embedding S e ( c ) Se(c) Se(c)我们还包括两个额外的向量 P h ( c ) Ph(c) Ph(c) —— 编码字符的语音拼音信息 V i ( c ) Vi(c) Vi(c) —— 编码字符的视觉信息 如果 c c c 不是一个汉字它会有自己的语音向量。否则其语音向量 P h ( c ) Ph(c) Ph(c) 定义如下 P h ( c ) ∑ k ∈ p i n y i n ( c ) P h ( k ) Ph(c)∑k∈pinyin(c)Ph(k) Ph(c)∑k∈pinyin(c)Ph(k) 其中 p i n y i n ( c ) pinyin(c) pinyin(c) 是字符 c c c 的拼音序列。字符的视觉向量 V i ( c ) Vi(c) Vi(c) 是从其 32×32 图像 I ( c ) I(c) I(c) 中提取的。对于汉字该图像采用宋体Simsun对于其他字符则采用Arial字体这些是大多数在线文本的默认字体。 V i ( c ) Vi(c) Vi(c) 的计算方式如下 V i ( c ) L a y e r N o r m ( M T R e s N e t 18 ( I ( c ) ) ) ( 4 ) Vi(c)LayerNorm(M^TResNet18(I(c)))\qquad{(4)} Vi(c)LayerNorm(MTResNet18(I(c)))(4) M M M 是一个可学习矩阵我们利用 ResNet18 (He et al., 2016)将 字符图像 I ( c ) I(c) I(c) 映射为一维向量该映射在训练过程中被冻结即不会更新。 视觉表征预训练Visual Representation Pretrain 为了获得合理的初始化我们增加了一个仅针对视觉表征的预训练阶段。 语音表征Phonetic representations在训练开始时随机初始化。视觉表征的变换矩阵 M M M公式 4 中使用与公式 5 相同的对比损失进行预训练。 在该阶段字符 c c c 的正样本positive sample是其视觉对抗形式 c ~ \tilde{c} c~定义如下 c ~ A ( c ) \tilde{c}\mathcal{A}(c) c~A(c) 其中 A ∼ U ( visual, character split, unicode ) \mathcal{A} \sim \mathbb{U}(\text{visual, character split, unicode}) A∼U(visual, character split, unicode)表示从 §3 提到的三种视觉攻击方法****视觉替换、字符拆分、Unicode 替换中均匀采样。 如果 c c c 被拆分为两个字符 c 1 c_1 c1​ 和 c 2 c_2 c2​则其视觉表征计算方式如下 V i ( c ~ ) V i ( c 1 ) V i ( c 2 ) Vi(\tilde{c})Vi(c_1)Vi(c_2) Vi(c~)Vi(c1​)Vi(c2​) 负样本negative samples 是同一批次batch中的所有其他字符。 经过该训练后视觉相似的字符将在表征空间中彼此靠近。 特征融合Feature Integration 一个直接的多模态特征融合方法是在送入编码器encoder之前进行融合Sun et al., 2021; Liu et al., 2021。 然而这种方法会对三种特征语义、语音、视觉赋予相等的权重**使模型无法动态关注最有用的特征。 另一种方法是两步编码two-step encoding先确定各特征的权重然后用选择性注意力进行编码Xu et al., 2021。 但这种方法会显著降低系统的运行速度。 我们提出了一种轻量级融合方法——“层插入”layer-insert) ,即仅在编码器的一个层中插入多模态特征。令 H k ( i ) H_k(i) Hk​(i) 表示第 k k k 层中第 i i i 个词的表征我们的插入方式如下 W 1 K 1 T H k ( i ) H k ( i ) V 1 W 2 K 2 T H k ( i ) P h ( i ) V 2 W 3 K 3 T H k ( i ) V i ( i ) V 3 H k ( i ) W 1 H k ( i ) W 2 P h ( i ) W 3 V i ( i ) W 1 W 2 W 3 \begin{aligned} W_{1} K_{1}^{T}H^{k}(i)H^{k}(i)V_{1} \\ W_{2} K_{2}^{T}H^{k}(i)Ph(i)V_{2} \\ W_{3} K_3^TH^k(i)Vi(i)V_3 \\ H^{k}(i) \frac{W_{1}H^{k}(i)W_{2}Ph(i)W_{3}Vi(i)}{W_{1}W_{2}W_{3}} \end{aligned} W1​W2​W3​Hk(i)​K1T​Hk(i)Hk(i)V1​K2T​Hk(i)Ph(i)V2​K3T​Hk(i)Vi(i)V3​W1​W2​W3​W1​Hk(i)W2​Ph(i)W3​Vi(i)​​ 其中 P h ( i ) Ph(i) Ph(i)和 V i ( i ) Vi(i) Vi(i)分别是语音和视觉表示 K j / V j K_j / V_j Kj​/Vj​是可学习的矩阵。直观上我们可以使用第 0 层到第 ( k-1 ) 层来决定三种多模态表示的权重并使用其余层进行句子表示学习。这使得模型能够根据句子上下文动态融合多模态信息同时仅增加少量复杂性。 4.2 模型损失 模型损失由两部分组成对比学习损失和标准的掩码语言模型MLM损失。 对比学习对比学习Chen et al., 2020; Kim et al., 2021的核心思想是表示空间应使相似正样本更接近而使不相似负样本更远离。对于每个句子我们将其对抗形式通过第 3 节中的算法获得视为正样本并将同一批次中的所有其他句子视为负样本。给定一个包含 ( N ) 个句子的批次第 ( i ) 个句子 ( s i s_i si​ ) 的损失为 L c ( i ) − log ⁡ e s i m ( s i , s ~ i ) / τ ∑ j 1 N e s i m ( s i , s j ) / τ , ( 5 ) \mathcal{L}_{c}(i)-\log\frac{e^{sim(s_{i},\tilde{s}_{i})/\tau}}{\sum_{j1}^{N}e^{sim(s_{i},s_{j})/\tau}},\qquad{(5)} Lc​(i)−log∑j1N​esim(si​,sj​)/τesim(si​,s~i​)/τ​,(5) 其中 τ \tau τ 是温度超参数temperature hyperparameter s i s_i^{~} si ​ 是从 s i s_i si​ 生成的对抗样本。我们在初步实验的基础上设定 τ 0.01 \tau 0.01 τ0.01并定义相似度计算公式如下 sim ( s i , s ~ i ) h i ⃗ T h i ⃗ ∥ h i ⃗ ∥ ⋅ ∥ h i ⃗ ∥ \text{sim}(s_i, \tilde{s}_i) \frac{\vec{h_i}^T\vec{h_i}}{\|\vec{h_i}\| \cdot \|\vec{h_i}\|} sim(si​,s~i​)∥hi​ ​∥⋅∥hi​ ​∥hi​ ​Thi​ ​​ 即在表示空间 h i h_i hi​ 和 h i ~ \tilde{h_i} hi​~​ 中的余弦相似度cosine similarity。 混合 MLM 训练Mix with MLM 我们将**对比学习损失contrastive learning loss与标准的掩码语言模型MLM损失Devlin et al., 2019混合以实现句子级和词级的表示学习。 我们采用基于字符character-based的分词器原因如下 中文字符本身可作为独立的语义单元Li et al., 2019b。基于字符的模型在嘈杂noisy或对抗性adversarial场景下更具鲁棒性**El Boukkouri et al., 2020。 对于中文字符我们采用两种掩码策略 整词掩码Whole Word Masking, WM字符掩码Char Masking, CM 因为大量中文词汇由多个字符组成Cui et al., 2019; Sun et al., 2021。 最终对比学习损失和 MLM 损失具有相同的权重**equally weighted。 5 实验Experiments 5.1 实验设置Experiment Setup 模型细节Model Details 我们使用16224个词汇vocabulary size其中14642个是中文字符。我们提供两种版本的 ROCBERT Base 版本12 层/头隐藏神经元数为 768。训练 600k 步batch size 为 4k学习率 1e-4warmup 25k 步。Large 版本48 层24 个注意力头attention heads隐藏神经元数为 1024。训练 500k 步学习率 3e-4warmup 70k 步batch size 8k。 预训练细节Pretraining Details 按照通用做法我们在 2TB 文本数据上进行预训练该数据来源于 THUCTC 12、中文维基百科Chinese Wikipedia和 Common Crawl。 训练设备64 块 NVIDIA V100 (32GB) GPU使用 FP16 和 ZERO-stage-1 优化Rasley et al., 2020。内存优化 采用 PatricStarFang et al., 2021以动态内存调度结合基于块chunk-based的内存管理。该方法会将除当前计算部分外的所有内容卸载到 CPU从而在相同硬件条件下训练更大的模型。基于块的内存管理利用了Transformer 结构的线性特性可以提前预加载即将计算的层到 GPU提高计算效率。 基线模型Baseline Models 我们将 ROCBERT 与以下 最先进SOTA的中文预训练模型进行对比 MBert-ChineseDevlin et al., 2019Bert-wwmCui et al., 2019在 MBert-Chinese 基础上继续预训练并采用 Whole Word MaskingWWM策略。MacBERTCui et al., 2020采用 MLM-As-CorrelationMAC 预训练策略并加入句子顺序预测Sentence-Order Prediction, SOP任务。ERNIE-gramSun et al., 2019, 2020b采用多种掩码策略token 级、短语级、实体级在大规模异构数据上进行预训练。ChineseBERTSun et al., 2021在预训练过程中加入了字形glyph和音韵phonetic特征。 评测任务Tasks 我们在 5 个标准中文自然语言理解NLU任务和 1 个有害内容检测toxic detection任务上测试模型 ChnSentiCorp2k 训练数据中文情感分类任务Xu et al., 2020。TNEWS50k 训练数据新闻标题分类任务。AFQMC34k 训练数据问题匹配question matching任务。CSL20k 训练数据从论文摘要中识别关键词keyword recognition。CMNLI390k 训练数据中文多领域自然语言推理Chinese Multi-Genre NLIConneau et al., 2018。有害内容检测Toxic Detection 该任务用于对抗人类制造的攻击human-made attacks与合成攻击synthesized attacks形成对比。数据来源于用户在某在线对话平台上的输入其中用户会刻意使用各种攻击手段来规避系统的自动过滤如垃圾广告、色情、辱骂等。我们手动标注了50k 条用户输入其中2k 条为有害内容positive且 90% 具有对抗性特征。负例negative随机采样2k 条非有害文本最终数据集按 8:1:1 划分为 训练/验证/测试集。 攻击方法Attacker 我们在 三种不同的攻击方法下测试模型表现均为无目标攻击即不对目标类别施加限制 ADV我们的自定义攻击算法TextFoolerJin et al., 2020 黑盒black-box攻击算法通过用语义相似的词替换关键字来欺骗模型。原生为英文算法我们重新实现reimplement了对应的中文版本。 ArgotZhang et al., 2020 黑盒攻击算法专门针对中文特征进行攻击。 所有三种攻击方法的最大攻击比率attack ratio均设为 20%。 5.2 实验结果Experiment Results 中文 NLU 任务结果Chinese NLU Results 我们在 5 个中文 NLU 任务上的结果见表 2 至表 6。对于每个任务我们报告模型在干净测试集clean test set和三种对抗测试集adversarial test sets即 ADV、TextFooler 和 Argot 生成的对抗数据集上的准确率accuracy。 为了公平比较我们报告了所有 base 版本模型的性能。然后我们选择表现最好的 base 版本模型测试其 large 版本性能并将其与 ROCBERT 进行比较。 从实验结果可以看出 TNEWS、AFQMC 和 CSL 受 ADV 攻击的影响较小因为这些任务更依赖全局句子结构而非个别单词。在情感分类sentiment classification和自然语言推理NLI等任务中单个词汇对模型决策的影响较大因此攻击会导致显著的性能下降。Argot 和 TextFooler 导致的性能下降比 ADV 更大因为 TextFooler 和 Argot 专门选择最能影响模型决策的单词进行攻击而 ADV 仅基于语言模型分数选择攻击单词。Argot 比 TextFooler 更有效因为它在替换字符时考虑了中文的特定特征Chinese-specific features。 总体而言ROCBERT 在所有攻击算法和所有 5 个任务上都优于其他模型。即使在干净数据集clean dataset上它在 5 个任务中 4 个任务表现最佳。ChineseBERT 在各种攻击下排名第二因为它在预训练时也考虑了多模态特征multimodal features这进一步证明了多模态特征在中文语言预训练中的重要性。 有害内容检测结果Toxic Content Detection Results 我们在有害内容检测任务toxic content detection task上训练所有模型结果见表 7。 ROCBERT 在 4 个评测指标上都优于所有其他模型这验证了其能够捕捉真实语义而不受对抗攻击形式的影响。 不同模型之间的性能差异较小因为它们都在该任务上进行了微调finetuning。 所有模型在训练过程中都能适应不同形式的攻击而表 2 至表 6 则测试了它们对未知攻击unknown attacks的零样本泛化能力zeroshot generalization。 防御方法比较Defending Method Comparison 我们进一步将 ROCBERT 与 两种流行的对抗攻击防御方法进行比较 拼写检查Spell Checker在输入模型之前运行拼写检查器。对抗训练Adversarial Training, AdvTrain通过添加对抗样本来增强训练数据。 我们在不同任务中将这两种防御方法添加到在干净测试集上表现最好的 base 版本模型之上进行对比 TNEWS 任务使用 ChineseBert 作为基线模型。AFQMC、CSL 和 CMNLI 任务使用 Ernie-gram 作为基线模型。ChnSentiCorp 任务使用 MacBert 作为基线模型。 我们采用 Cheng et al. (2020) 提出的拼写检查器。结果如图 2 所示。 从实验结果可以看出 拼写检查Spell Checking对模型性能的提升非常有限甚至在某些情况下反而降低性能例如在 ChnSentiCorp 任务下使用 ADV 攻击时拼写检查的效果最差。 这可能是因为 拼写检查器对领域外out-of-domain的对抗样本效果较差错误的拼写修正会导致错误传播从而降低整体性能。 对抗训练AdvTrain能显著提升模型的鲁棒性robustness但它的缺点是它“窥探”peeps了测试集中的对抗攻击算法即它在训练时已经知道测试中使用的攻击类型。 ROCBERT 在不知晓测试集攻击算法的情况下依然能与 AdvTrain 相媲美甚至在某些情况下超越 AdvTrain说明它在 面对未知攻击时具有更强的泛化能力。 ROCBERT 和 AdvTrain 结合使用时模型的鲁棒性可以进一步提升。 5.3 消融实验Ablation Study 我们进行了一系列 消融实验Ablation Study以理解ROCBERT不同组件的选择对模型性能的影响。 在本节中所有模型均采用相同的 base 结构和超参数并在100 万个采样训练文本上预训练1轮epoch然后在TNEWS 任务上进行测试。实验结果如表 8 所示。 损失函数Loss 为了研究 预训练阶段损失函数的影响我们尝试了两种不同的设置 仅对比学习Contrastive Only模型仅使用 公式 5 中的 对比学习损失 进行预训练。仅 MLMMLM-Only模型仅使用 MLM掩码语言模型目标 进行预训练即标准 Bert 预训练方式。 实验结果表明这两种单一的损失函数都会降低模型的性能。 结合两种损失函数 可以提高模型的 对抗攻击鲁棒性同时不会影响模型在 干净数据Clean Data 上的表现。 分词方法Tokenization 字符级分词char-based tokenization 在中文处理任务中已被广泛证明是最优选择Li et al., 2019b。 但对于拼音pinyin和非中文词汇最佳的分词方法尚不明确。因此我们尝试了以下几种不同的分词方法 BPEByte Pair Encoding 设定词汇表大小为 20K在 训练数据 上进行训练所有 中文字符 先转换为 拼音。 Char-CNNZhang et al., 2015 逐个字符处理并使用 Char-CNN 获取拼音嵌入embedding。 Char-SumROCBERT 最终采用的方法 逐个字符处理并将拼音嵌入表示为 其字符嵌入的总和sum。 实验结果表明 BPE 分词方法会降低模型的性能可能是因为 BPE 分词仅在 干净数据Clean Data 上进行训练。 对于 对抗样本Adversarial Examples拼音中的字母更容易受到干扰从而破坏其词汇表结构。 字符级Char-Based分词方法在对抗攻击下更具鲁棒性。Char-CNN 方法没有带来明显提升可能是因为 拼音字符组合数量有限约 400 种每个拼音通常可以通过 字符袋Bag of Characters 唯一确定无需考虑顺序信息。 ** 多模态特征Multimodal Feature** 我们尝试移除 视觉特征Visual Feature 预训练并观察模型性能的变化 移除视觉特征预训练-vis-pretrain 结果表明模型性能下降 甚至比完全移除视觉特征-vis更糟糕这说明 视觉特征预训练是必要的否则模型难以学习到有意义的视觉特征。 移除视觉特征-vis 结果表明视觉特征比拼音特征更为重要。 移除拼音特征-pho 结果表明拼音特征也能带来一定的性能提升但不如视觉特征重要。 添加拼音特征预训练pho-pretrain 结果表明拼音特征预训练的提升幅度很小可能是因为拼音特征本身 基于字符嵌入Character Embedding这使得 模型可以在训练过程中自动学习拼音特征无需额外的预训练。 多模态融合Multimodal Integration 我们将 ROCBERT 提出的层插入Layer-Insert 方法与 三种主流的多模态特征融合方法 进行了比较 加和Sum, Liu et al., 2021 直接对不同模态的嵌入进行加和。 拼接Concatenation, Sun et al., 2021 先 拼接 多模态嵌入然后使用 MLP 层进行融合。 两步融合Two-Step, Xu et al., 2021 先计算不同模态嵌入的权重然后再融合到 编码器Encoder 中。 实验结果表明 ROCBERT 采用的层插入Layer-Insert方法效果最佳且计算开销 极小这是因为它仅通过 更新编码器的一层表征 来完成多模态信息的融合。 插入层Insert Layer 我们进一步分析了 插入层的位置 对模型性能的影响。 最佳插入层 基础模型Base Model 在 第 1 层插入 多模态特征大模型Large Model 在 第 3 层插入 多模态特征。 插入层位置对性能的影响见表 8 当插入层提升到更高层如第 4、7 和 10 层模型性能逐渐下降这表明 较早插入Early Insert 可以 更深入地融合多模态信息但如果 直接插入到第 0 层效果反而变差可能原因是模型在第 0 层只能从词袋Bag of Words层面学习模态特征的权重而无法进行深入表征学习。 攻击算法Attacking Algorithm 我们改变 攻击算法的设置并在 图 3 中展示了其影响。 攻击比例Attacking Ratio 不能 过小或过大15% 是对抗预训练的最佳比例Sweet Spot。 高斯噪声Gaussian Noise, 公式 1 持续带来 正面效果这表明 不应在预训练阶段使用固定的攻击比例而应动态调整。 字符选择Character Selection 该机制至关重要去掉字符选择后模型性能大幅下降。 攻击算法的复杂性 为了验证是否有必要采用复杂的攻击算法我们 用 SimCSEGao et al., 2021进行对比SimCSE 采用 Dropout 作为噪声而非对抗样本。实验结果表明SimCSE 在不同攻击方式下几乎没有帮助这说明 制定基于规则的攻击算法 以更好地模拟 真实世界攻击 是必要的。通用的 Dropout 正则化 无法有效适应 复杂的真实世界攻击。 6 结论Conclusion 我们提出了 ROCBERT 第一个鲁棒的中文预训练语言模型能够抵御多种形式的对抗攻击。 关键特性 基于多模态对比学习目标Multimodal Contrastive Learning Objective进行预训练在 5 项中文 NLU 任务上取得最佳表现能在 3 种不同的攻击算法下保持强大的鲁棒性且不会影响干净测试集的性能在有害内容检测任务Toxic Content Detection上显著超越其他模型提供了大量消融实验Ablation Studies为未来研究提供参考。
http://www.dnsts.com.cn/news/195911.html

相关文章:

  • 上海营销型网站开发微商做百度推广发哪个网站收录高
  • 做网站维护有前途吗wordpress com login
  • 5151ppt网站建设游戏软件开发
  • 找婚庆公司去什么网站网站制作公司珠海
  • 教师廉政建设学校网站信息黄冈网站设计推广哪家好
  • 西安博网站建设网站建设捌金手指下拉四
  • 采集侠 wordpress西安官网优化哪家公司好
  • 宁波做亚马逊网站承德网站建设报价
  • 淘宝cms建站wordpress a
  • 营销企业网站建设应遵守的原则中国建设安全监理协会网站
  • 申办网站流程网站写好了怎么做后台管理
  • 北京住房与城乡建设厅网站自己电脑做电影网站吗
  • 企业做网站怎么做个人简历自我评价怎么写
  • 网站的电子画册怎么做枣庄做网站公司
  • 公司门户网站及oa系统建设的请示app推荐网站
  • 我有域名和服务器找人建设网站用代码做家乡网站
  • 全球排行前50网站开发语言做网站会提供源代码
  • 树状结构的网站使用wordpress做图站
  • 做网店好还是网站怎么做卖橘子的网站
  • 恶意刷网站嗨学网官网
  • 建网站空间都有什么平台wordpress主题等
  • 哪几个网站做acm题目温州网站优化指导
  • hao123网站模板深圳买房最新政策
  • 专门做电子书的网站有哪些最新消息新闻
  • 科技公司网站设建设电影网站广告哪里找
  • asp网站咋做国外代理网站
  • 一些可以做翻译的网站专做蓝领招聘网站有哪些
  • 大连企业网站模板建站中国域名注册局官网
  • 做设计不进设计公司网站安徽省住房城乡建设厅网站官网
  • 网站游戏下载九宫格导航网站