1.一种基于自监督的三阶段故事阅读理解训练方法,其特征在于,包括以下步骤:
1)使用语言模型在开放域语料库上进行预训练;
2)采用语言模型LM或者掩码语言模型MLM的自我监督学习目标继续在无监督、同领域的ROCStories日常故事语料上进行预训练;
3)对目标SCT任务上的结果模型进行训练。
2.根据权利要求1所述的一种基于自监督的三阶段故事阅读理解训练方法,其特征在于,所述的步骤2)中,具体方法为:
2.1)调整BERT和任务特定参数,在无监督的ROCStories上执行自监督任务:随机将ROCStories分成80%的训练集和20%开发集两部分,接着使用自我监督任务MLM和下一个句子预测NSP目标来预训练BERT;在MLM任务中,遵循BERT的程序,随机掩蔽
15%经过Wordpiece分词之后、每个序列中的所有词项,使用模型预测掩蔽词项;使用的每条训练样例是一条5句话的故事;
2.2)为了理解故事,重新设计了用于ROCStories的变体NSP任务:随机选择每个故事中的前句作为sent.A,当为每个训练前考试选择sent.B时,50%的时间B是A之后的实际下一个句子,50%的时间是故事中的随机句子;正样本与IsNext一起标记,负样本标记为NotNext;最终生成的模型在ROCStories开发集上的NSP任务中;
2.3)为了完成SCT任务,在BERT模型中,引入多项选择头作为模型的决策层:H
表示形式Ci∈R 作为BERT模型中编码器的输出,其中H是Transformer的隐藏层大小,i代表第i个选项;
H
引入了任务特定的参数——向量V∈R ,与每个选项i的[CLS]词表示做点积,得到的分数;分母是N个选项的点积和,分数比上分母就是概率分布值;
Ci=BERT(sent.A,sent.B)#(2)其中:N是SCT任务中选项的数量。
3.根据权利要求1所述的一种基于自监督的三阶段故事阅读理解训练方法,其特征在于,所述的步骤3)中,具体方法为:对于目标任务SCT,将四句故事视为句子A,将每个候选作为sent.B结尾,最终概率分布如下:
Pi=RM([sent.1,sent.2,...,sent.4],endi)#(3)其中:RM这个函数代表自监督学习任务预训练的BERT模型和多选头;每个候选结尾都标有SCT数据集中的″错误结尾″或″正确结尾″;由此将一般语义知识和同领域中的故事知识转移到SCT任务中;
训练模型的损失函数为交叉熵损失:
4.根据权利要求1所述的一种基于自监督的三阶段故事阅读理解训练方法,其特征在于,所述的步骤3)中,选择Adam优化器对目标领域监督训练模型进行训练。