拆解XLNet模型设计,回顾语言表征学习的思想演进( 三 )

如何更精细地建模语境,得到其对应的表征向量 h?对这个问题的解答贯穿了语言表征学习的发展历程。我们希望能够做到:

语境要包含所有区分目标词的信息。只有这样才不会有歧义的出现,比如给定语境 ["我" "今天" "很"],目标词 (下一个词) 既可以是 "开心",也可以是"伤心",所以模型学不到 "开心" 和 "伤心" 的区别。语境要足够大,如对于一篇文章中的一个目标词,理想的语境是文章中除了目标词的所有词。

建模语境中词的相互依赖关系。除了词本身的性质外 (这决定了词的依赖关系,比如形容词可以修饰名词短语,猫一般不会用巍峨来修饰),在大部分语言 (如中文,英文) 中,词的相对位置也决定了词间的依赖关系。

下文开始我们会围绕这个句子展开讨论:

["我1", "今天2", "很3", “开心4”, “5”, “因为6”, “我7”, “中8”, “了9”, “彩票10”]

数字代表词在句子中的位置编号。「我 1」和「我 7」虽然是同一个词,但因为出现在句子的不同位置,所以他们表达的意思可能不同。假设我们的目标词是「开心 4」,语境中便不应该含有「开心 4」,因为这会造成标签泄露 -- 我们在提出问题的同时也直白地给出了答案 -- 此时模型很难学出有用的语言知识。所以理想的语境建模应基于["我1", "今天2", "很3", “5”, “因为6”, “我7”, “中8”, “了9”, “彩票10”]以及位置"4"。

推荐阅读