GSG做和Bert类似的处理,将mask信息的层级提高到句子(就是每次mask掉几个句子),为了更接近生成式摘要,对于masked的句子的选择应该选择对文档来说重要的句子
定义文档 D = { x i } n D=\{x_i\}_n D={xi}n,选择重要句子(Gap Sentence)的策略
1、random:随机选择m个句子作为Gap Sentence
2、lead:选择前m个句子作为Gap Sentence
3、Principal:根据重要性选择重要性前m的句子作为Gap Sentence
重要性的判别,作者提出以下方法:
1、独立判别(Ind):每个句子独立计算ROUGE1-F1分数作为重要性 s i = r o u g e ( x i , D / { x i } ) s_i=rouge(x_i,D/\{x_i\}) si=rouge(xi,D/{xi})
2、连续判断(Seq):通过贪婪最大化选定句子集与文档中剩余句子之间的ROUGE-F1分数,直到选出m个句子
在计算Rouge-F1的时候,作者还把n-grams分成两种
1、Uniq:n-grams的无重复集合2、Orig:和原文重复计算的n-grams集合ROUGE: A Package for Automatic Evaluation of Summaries
R o u g e − N = ∑ S ∈ { R e f e r e m c e S u m m a r i e s } ∑ g r a m n ∈ S C o u n t m a t c h ( g r a m n ) ∑ S ∈ { R e f e r e m c e S u m m a r i e s } ∑ g r a m n ∈ S C o u n t ( g r a m n ) Rouge-N=\frac{\sum_{S\in \{ReferemceSummaries\}}\sum_{gram_n\in S}Count_{match}(gram_n)}{\sum_{S\in \{ReferemceSummaries\}}\sum_{gram_n\in S}Count(gram_n)} Rouge−N=∑S∈{ReferemceSummaries}∑gramn∈SCount(gramn)∑S∈{ReferemceSummaries}∑gramn∈SCountmatch(gramn)
分母是n-gram的个数
分子式参考摘要和自动摘要(生成的摘要)共有的n-gram的个数
对于精确率更关心的是召回率例:
自动摘要:the cat was found under the bed
参考摘要:the cat was under the bed
#1-gramreference 1-gram2-gramreference 2-gram1thethethe catthe cat2catcatcat wascat was3waswaswas foundwas under4foundunderfound underunder the5undertheunder thethe bed6thebedthe bed7bedcount7665R o u g e − 1 = 6 6 = 1.0 Rouge-1 = \frac{6}{6}=1.0 Rouge−1=66=1.0
R o u g e − 2 = 4 5 = 0.8 Rouge-2=\frac{4}{5}=0.8 Rouge−2=54=0.8
R l c s = L C S ( X , Y ) m P l c s = L C S ( X , Y ) n F l c s = ( 1 + β 2 ) R l c s P l c s R l c s + β 2 P l c s R_{lcs}=\frac{LCS(X,Y)}{m}\\ P_{lcs}=\frac{LCS(X,Y)}{n}\\ F_{lcs}=\frac{(1+\beta^2)R_{lcs}P_{lcs}}{R_{lcs}+\beta^2 P_{lcs}} Rlcs=mLCS(X,Y)Plcs=nLCS(X,Y)Flcs=Rlcs+β2Plcs(1+β2)RlcsPlcs
m , n m,n m,n表示人工摘要和自动摘要的长度,LCS表示最长公共子序列的长度 LCS的优点就是不需要连续匹配,只反映了句子级词序的顺序匹配,自动包含了最长顺序用的n-gram,不需要预测n-gram;缺点:没考虑短序列的匹配 R l c s R_{lcs} Rlcs就是召回率, P l c s P_{lcs} Plcs就是准确率,然后 F l c s F_{lcs} Flcs就是加权的F1-score(这个就是 P l c s P_{lcs} Plcs和 R l c s R_{lcs} Rlcs的加权调和平均)我们使用二维的动态规划, O ( n 2 ) O(n^2) O(n2)来解决这个问题
c ( i , j ) c(i,j) c(i,j)表示X匹配到第i个,Y匹配到第j个的WLCS分数 w ( i , j ) w(i,j) w(i,j)表示 c ( i , j ) c(i,j) c(i,j)对应的WLCS的长度 f ( i ) f(i) f(i)表示长度为i的LCS所表示的分数R w l c s = f − 1 ( W L C S ( X , Y ) f ( m ) ) P w l c s = f − 1 ( W L C S ( X , Y ) f ( n ) ) F w l c s = ( 1 + β 2 ) R w l c s P w l c s R w l c s + β 2 P w l c s R_{wlcs}=f^{-1}(\frac{WLCS(X,Y)}{f(m)})\\ P_{wlcs}=f^{-1}(\frac{WLCS(X,Y)}{f(n)})\\ F_{wlcs}=\frac{(1+\beta^2)R_{wlcs}P_{wlcs}}{R_{wlcs}+\beta^2 P_{wlcs}} Rwlcs=f−1(f(m)WLCS(X,Y))Pwlcs=f−1(f(n)WLCS(X,Y))Fwlcs=Rwlcs+β2Pwlcs(1+β2)RwlcsPwlcs
消融实验:包括了预训练语料库、预训练目标、词表大小的三方面
消融实验展示了,预训练任务以及数据越接近下游任务则下游任务的表现越好
对比不同的GSG策略,发现Ind-Orig是最好的组合