获奖方案|2021 CCF BDCI 「千言-问题匹配鲁棒性评测」赛题三等奖

今日分享:百度「千言-问题匹配鲁棒性评测」赛题三等奖获奖方案

赛题链接:https://www.datafountain.cn/competitions/516

团队简介

获奖团队:富婆来相亲

本团队成员都是来自重庆邮电大学的一年级在读硕士生,均为重庆邮电大学数据工程与可视计算重点实验室成员。

团队成员目前主要从事自然语言处理方向的研究工作,其中重点关注文本分类、命名实体识别任务。

团队成员从比赛中成长,积累经验,丰富知识。对各类算法竞赛和自然处理任务有着浓厚的兴趣。

摘要

千言-问题匹配鲁棒性评测是一个问题匹配的文本分类任务,需要从多个维度分析两个句子对是否语义相同,将相同语义的文本对标记为1,将不相同语义的文本对标记为0。本文分为问题分析、方案介绍、鲁棒性优化三个部分。从数据处理、数据增强、模型选择、参数调整、网络微调等各个方面对本团队的best方案进行了完整的阐述。

关键词

自然语言处理 问题匹配 鲁棒性优化

赛题解读

千言-问题匹配鲁棒性评测是一个文本分类任务,赛题需要判断两个自然问句之间的语义是否等价。本赛题给出三个用于训练的数据集,分别是LCQMC(哈工大文本匹配数据集)、BQ(银行疑问句)和OPPO(小布对话短文本数据集),测试集中包含百度DuQM鲁棒性数据集和OPPO小布对话短文本数据集。数据分布如表1所示。

根据数据分析可知本赛题数据集文本属于短文本,训练数据覆盖领域丰富包含金融、日常对话等领域,但测试集相对更加日常。其次,数据集分布较为均匀。通过观察数据样本的长度发现,测试集与训练集相比长度更小,粒度更细。

表1: 数据分析

赛题评分以宏平均准确率进行评测,其中评测细粒度包含5种,分别有Lexical Semantics、Syntactic Structure、Misspelling、Speech Filler、Conversational Semantics,评测公式(1)。

本赛题要求增强模型的鲁棒性,即当测试集和训练集的领域相差较大或者分布差异较大时也能得到很好的预测效果,所以在构建模型和生成特征时应该分析句子深层关系,提取出句子的根本含义。

数据处理与数据增强

在数据处理方面,根据query1与query2等价和query1与query3等价可以推断出query1与query3等价,所以通过传递性可对数据进行数据增强。根据query1与query2等价可推断出query2与query1可对数据进行增强,如图1所示。

图1:数据传递/交换增强

通过文本分析可以发现数据中存在大量文本大致相同但是有同音同调、同音异调的情况出现,所以通过随机替换文本中的字为同音同调、同音异调的字,增加模型的泛化性。

通过训练文本和测试文本的数据观察与分析,发现存在替换近义词反义词的情况,所以也对文本进行了近义词替换操作,替换后文本的label不变。如图2所示。另外,获取文本词性信息、文本依存句法信息、拼音信息等特征,提高了文本的差异性。

图2:文本特征增强

模型选择

在预训练模型选择方面,团队通过对ERNIE-Gram[1]、NEZHA[2]、RoBERTA[3]等预训练模型进行对比后,选择ERNIE-Gram为方案预训练模型,各模型基线对比如表2所示。

表2:预训练模型对比

继2018年BERT预训练模型提出后,陆续有针对BERT模型的不足提出改进的变体模型出现。ERNIE-Gram通过一种显式gram掩蔽方法,其中n-gram用单个[MASK]符号掩码,并且直接使用显式的gram标识来屏蔽和预测的,以此增强粗粒度信息在预训练中的集成。ERNIE-Gram使用从生成器模型中采样的似然n-gram标识掩盖n-gram,然后用似然和原n-gram之间的成对关系将它们恢复到原来的n-gram,以实现综合的n-gram预测和关系建模。另外,ERNIE-Gram的训练预料包含贴吧、搜索等日常生活,语料领域丰富,所以ERNIE-Gram相比于其他两种预训练模型获得了更好的效果。

网络结构

ERNIE-Gram+Bilstm/mean+pool

在baseline中,提取的pooled_output向量进行分类,这样可能会造成一些语义特征的丢失,所以我们提取了sequence_output向量,并分别进入双向的LSTM网络,得到最后一个时间步的结果进行拼接再分类。双向LSTM的好处在于可以联系上下文,对上文的词汇向量有一定的记忆作用。另外还尝试将sequence_output向量mean之后直接和pooled_output进行拼接再分类。具体模型如图3图4所示。

图3: ERNIE-Gram+Bilstm

图4: ERNIE-Gram+mean+pool

ERNIE-Gram+LAC

为了更好的表达文本,将每条文本的词性加入训练,文本向量进入预训练模型,词性向量进入GRU[4]网络,最后将两部分向量拼接起来作为文本特征,分析两个文本词性向量之间的关系,最后进入分类器输出结果,具体模型如图5所示。

图5:ERNIE-Gram+LAC

Pattern-Exploiting Training

Pattern-Exploiting Training [5]是由prompt范式启发而来的,其主要思想是通过一个固定的模板范式,将文本的标签转为指令式文本,作为原来文本的前缀或后缀,指导模型进行相应任务。简而言之,就是预训练模型的NSP任务转为MLM任务。如本次比赛可以添加一个前缀pattern:“_相似句子对:”,其中“很相似句子对/不相似句子对”分别对应label 0 / 1,pattern的得分只需看第一个位置中“不”/“很”两个token的概率谁高即可。

图6:Pattern-Exploiting Training

Multi-Task-Learning

为了让模型更好的适应不同的任务,采用多任务学习的方式去微调预训练模型,也就是无论最后有多少个任务,底层参数统一共享,顶层参数各个模型各自独立[6]。由于对于大部分参数进行了共享,模型的过拟合概率会降低,共享的参数越多,过拟合几率越小,共享的参数越少,越趋近于单个任务学习分别学习。再通过微调后的模型放入全量数据进一步训练,从而得到最后的模型。

图7:Multi-Task-Learning

ERNIE-Gram+GRU+pool

为了获取文本更加全面和深层次的语义信息,选择了GRU作为预训练模型后的网络结构,GRU是LSTM网络结构的一种变体,它具有LSTM相同的效果,但是却比LSTM的参数小很多,相对而言性能更好。另外在GRU网络后接了平均池化和最大池化,可以从输入的向量中获取更加有用的特征,网络结构如图8所示。各个模型之间的结果对比如表3所示。

图8:ERNIE-Gram+GRU+pool

表4:结果对比

总的来说,本方案首先从数据入手,分析文本的词性和句子依存关系,按照传递,交换规则和同音异调、同音同调、同义词的文本替换完成数据增强,然后再尝试了多种预训练模型和多种网络结构后得到最优的结果。

致谢

感谢主办和平台,也感谢一直忙于筹备比赛的工作人员们。感谢指导老师王进教授对我们团队的指导和帮助,也感谢队友的默契配合,希望未来大家能继续看到我们队伍的身影,一起加油吧!

参考

  • [1] Xiao, D.:ERNIE-Gram: Pre-Training with Explicitly N-Gram Masked Language Modeling for Natural Language Understanding[J].arXiv preprint arXiv:1901.07291, 2019.

  • [2] Wei, J., “NEZHA: Neural Contextualized Representation for Chinese Language Understanding”[J] .arXiv preprint arXiv:2107.13586, 2019.

  • [3] Liu Y , Ott M , Goyal N , et al. RoBERTa: A Robustly Optimized BERT Pretraining Approach[J]. 2019.

  • [4] Cho K , Merrienboer B V , Gulcehre C , et al. Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation[J]. Computer Science, 2014.

  • [5] Liu, P., Yuan, W., Fu, J., Jiang, Z., Hayashi, H., and Neubig, G.:Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing [J] .arXiv preprint arXiv:2107.13586

  • [6] Caruana.R. Multitask Learning: A Knowledge based Source of InductiveBias[J]. Machine Learning proceedings,1993,10(1):41-48.

—End—

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值