一种针对完形填空式阅读理解的模型。综合来看,大概是双向考虑了文档->提问和提问->文档的关系。思想和实现都是非常简单的,从实验结果来看效果不错。而且也容易扩展到其他模型上。
整个模型如上图所示。大概分为三个部分:
和传统模型类似,先把Document和Query都embedding出来(用的是GRU)。
根据向量表示计算出一个矩阵表示,记为Pair-wise Matching Score. 表示查询的词语和文档词语之间的相关度。
M(i,j)=hdoc(i)T∗hquery(j) M ( i , j ) = h d o c ( i ) T ∗ h q u e r y ( j )
计算出两个attention值出来,大概就是分别对矩阵的每一列和每一行做softmax。分别计算出query-to-document attention 和 document-to-query attention。
α(t)=softmax(M(1,t),..,M(n,t)) α ( t ) = s o f t m a x ( M ( 1 , t ) , . . , M ( n , t ) )
β(t)=softmax(M(t,1),..,M(t,m)) β ( t ) = s o f t m a x ( M ( t , 1 ) , . . , M ( t , m ) )
在对每一行softmax之后,还需要对每一列得到的值取一个平均值。由此得到query-level attention。
β=1n∑nt=1β(t) β = 1 n ∑ t = 1 n β ( t )
用每个 query-to-document attention 和刚刚得到的 query-level attention 做点乘,得到 document 中每个词的 score。
s=αT∗β s = α T ∗ β
最后合并相同的词语。并计算出每个词语的score
P(w|D,Q)=∑si P ( w | D , Q ) = ∑ s i