Page 113 - 《软件学报》2020年第12期
P. 113
于东 等:中文文本蕴含类型及语块识别方法研究 3779
在推理组合层,我们重新使用 BiLSTM 编码,把局部推理层的组合表示为 C P ,C H .
在池化层,我们从时间维度上对 C P ,C H 进行平均池化和最大池化操作,将局部推理结果 C P ,C H 整合为全局推
理关系 C,用 C 表示模型对 P 和 H 推理关系的建模结果.
在 ESIM1 中,模型的输入中不包含蕴含位置 P_pos 和 H_pos,仅有蕴含句对的语义信息.我们将全局推理关
系 C 和未经遮盖操作的输入编码层输出 ,PH 以及局部推理层输出 C P ,C H 组合起来,得到不包含蕴含语块位置
信息的蕴含句对推理关系的最终表征 final_C,将其作为预测依据,对 7 个蕴含类型进行预测.公式如下:
,
⎧ ⎪ ⎡ CC H ⎤⎪ ⎫
final _C = Concat ⎨ , C ⎢ P ⎬ ⎥ (1)
⎪ ⎩ ⎣ , PH ⎪ ⎦⎭
在 ESIM2 中,我们加入了遮盖层(masking),即图 4 中(a)线路中的蕴含边界位置.已知正确的蕴含位置 P_pos,
H_pos 的情况下,使用遮盖操作来获取 P 和 H 中蕴含语块的语义信息.最后,遮盖操作作用于局部推理层的输出
C P ,C H 和输入编码层的输出 ,PH ,得到只保留具有蕴含关系的语义片段,并将之与池化层输出 C 组合起来,得到
同时包含蕴含语块语义信息和蕴含句对推理关系的最终表征 final_C′.在预测层,final_C′作为预测依据,对 7 个
蕴含类型做预测.公式如下:
⎧ ⎡ Mask (C P − ⎪ ),Mask (C ,H pos ⎪
) ⎫ ⎤
,
final _C′ = Concat ⎨ , C ⎢ P pos H − ⎬ ⎥ (2)
⎣ Mask (,P P −⎪ ⎩ pos ),Mask ( ,H H − pos ⎦ ) ⎪ ⎭
4.2 基于BERT的文本蕴含分类
Devlin J 等人提出了利用双向 Transformer [36] 的预训练语言模型 BERT,BERT 使用了 Transformer 的 Encoder
框架,有效利用了双向信息,在英文任务取得了很好的效果.同时,BERT 在大规模中文语料中进行了无监督预训
练,并发布了基于中文的预训练语言模型.我们将其迁移至蕴含识别任务上,并根据中文文本蕴含数据的特点进
行了适量微调.
如图 5 所示,BERT 在序列对文本分类任务中有独特的输入方式,输入的最开始添加起始标记[CLS],最末尾
添加结束标记[SEP].我们依此调整了数据输入,蕴含前件和蕴含后件之间同样通过[SEP]来区分.E 表示输入的
词向量,除此之外,每一个字都会添加一个表明当前句为蕴含前件或后件的向量,即 E P 或 E H .而为了引入当前字
的位置信息,第 i 字还会添加一个位置嵌入 E i .
Class
Label
C T 推 T 土 T 机 T [SEP] T 重 T 型 T 施 T 工 T 设 T 备 T [SEP]
BERT
Token
Embeddings E [CLS] E 推 E 土 E 机 E [SEP] E 重 E 型 E 施 E 工 E 设 E 备 E [SEP]
Segment
E P E P E P E P E P E H E H E H E H E H E H E H
Embeddings
Position
Embeddings E 0 E 1 E 2 E 3 E 4 E 5 E 6 E 7 E 8 E 9 E 10 E 11
Input [CLS] 推 土 机 [SEP] 重 型 施 工 设 备 [SEP]
Fig.5 Input and output represantation in BERT
图 5 BERT 对分类任务的输入和输出表示
在输出部分,经过对输入层的调整后序列进入 BERT 模型进行训练,T i 表示第 i 个字基于上下文的表示.而在