自动文摘(Automatic document summarization)方法综述的第一篇文章(一)总结了基于中心的(Centroid-based)方法和基于图的(graph-based)方法,第二篇文章(二)总结了基于最优化的(optimization-based)的方法。这篇博客将依旧整理基于最优化方法选取文本单元的方法,更确切的说,这篇博客将聚焦在次模函数(submodular function)最大化。
Submodularity
次模函数(submodular function)又称“子模函数”或“亚模函数”,次模函数具有次模性(submodularity),它是经济学上边际效益递减(property of diminishing returns)现象的形式化描述。给定一个集合函数
f
:
2
V
→
R
f:2^V\rightarrow \R
f:2V→R,其将有限集
V
V
V的一个子集
S
⊆
V
S\subseteq V
S⊆V映射为一个实数。如果对于任意
S
S
S,满足:
(1)
f
(
S
∪
T
)
+
f
(
S
∩
T
)
≤
f
(
S
)
+
f
(
T
)
f(S\cup T)+f(S\cap T)\leq f(S)+f(T) \tag 1
f(S∪T)+f(S∩T)≤f(S)+f(T)(1)
则称
f
(
⋅
)
f(\cdot)
f(⋅)是次模函数。从边际效益递减的角度考虑,次模函数还有一种等价定义:对任意的
R
⊆
S
⊆
V
R\subseteq S \subseteq V
R⊆S⊆V,并且
s
∈
V
∖
S
s\in V\setminus S
s∈V∖S,
(2)
f
(
S
∪
{
s
}
)
−
f
(
S
)
≤
f
(
R
∪
{
s
}
)
−
f
(
R
)
f(S\cup \{s\})-f(S)\leq f(R\cup \{s\})-f(R) \tag 2
f(S∪{s})−f(S)≤f(R∪{s})−f(R)(2)
公式(2)指出,当集合越来越大,
s
s
s的“价值”将越来越小,正是边际效益递减的特性。这个现象在自然界普遍存在,例如:香农熵函数就是随机变量集合上的次模函数。当
S
⊆
T
S\subseteq T
S⊆T时有
f
(
S
)
≤
f
(
T
)
f(S)\leq f(T)
f(S)≤f(T),则称该次模函数是单调的(monotone)。
更进一步,次模性是convexity(凸性)的离散模拟。由于convexity使得连续函数更容易最优化,因而次模性在组合优化中重要作用。当目标函数是次模函数时,许多组合优化问题能够在多项式时间内得到最优解或近似解。次模函数最大化被证明是一个NP-hard问题,幸运的是,存在高效并且解的质量有保证的近似算法。一个流行的结果是:最大化一个单调非负的带基数约束(cardinality constraint,即对子集
S
S
S大小的约束)的次模函数,贪心算法至少能够达到
(
1
−
1
/
e
)
f
(
S
o
p
t
)
(1-1/e)f(S_{opt})
(1−1/e)f(Sopt)的结果,其中
f
(
S
o
p
t
)
f(S_{opt})
f(Sopt)表示问题的最优解,
1
−
1
/
e
1-1/e
1−1/e大约是0.63。
f
(
S
a
p
p
)
≥
(
1
−
1
e
)
f
(
S
o
p
t
)
f(S_{app})\geq (1-\frac{1}{e})f(S_{opt})
f(Sapp)≥(1−e1)f(Sopt)
Lin and Bilmes(2010)
Lin and Bilmes是最早将次模函数引入自动文摘的学者之一,也是对自动文摘次模性研究最深度的学者。在Multi-document summarization via budgeted maximization of submodular functions文章中,作者将自动文摘定义为预算约束(budget constraint,指每个文本单元都有一个budget)下次模函数最大化问题,形式描述如下:
max
S
⊆
V
{
f
(
S
)
:
∑
i
∈
S
c
i
≤
B
}
\max_{S\subseteq V}\Big\{f(S):\sum_{i\in S}c_i\leq \mathcal{B}\Big\}
S⊆Vmax{f(S):i∈S∑ci≤B}
其中,
V
V
V是文档中所有文本单元(如:句子)的集合,
S
⊆
V
S\subseteq V
S⊆V是抽取的摘要,
c
i
c_i
ci是非负实数,表示选择文本单元
i
i
i的代价,
B
\mathcal{B}
B是预算,次模函数
f
(
⋅
)
f(\cdot)
f(⋅)对摘要的质量进行打分。预算约束(budget constraint)在自动文摘中天然存在,因为文摘通常有长度限制,例如:单词数目,句子数目,摘要bytes大小等。
在定义摘要质量打分函数时,作者首先将整个文档表示成一个带权图
(
V
,
E
)
(V,E)
(V,E),每条边
e
i
,
j
∈
E
e_{i,j}\in E
ei,j∈E都关联一个非负权重
w
i
,
j
w_{i,j}
wi,j。一个著名的基于图的用来度量
S
S
S与剩余
V
∖
S
V\setminus S
V∖S相似度的次模函数是graph-cut函数:
f
c
u
t
(
S
)
=
∑
i
∈
V
∖
S
∑
j
∈
S
w
i
,
j
f_{cut}(S)=\sum_{i\in V\setminus S}\sum_{j\in S}w_{i,j}
fcut(S)=i∈V∖S∑j∈S∑wi,j
在多文档摘要中,冗余是一个不能忽略的问题,一份高质量不仅需要信息丰富,而且需要紧凑。作者在这借用了MMR的思想(最大化信息覆盖度同时最小化冗余度),定义了如下目标函数:
f
MMR
(
S
)
=
∑
i
∈
V
∖
S
∑
j
∈
S
w
i
,
j
−
λ
∑
i
,
j
∈
S
:
i
≠
j
w
i
,
j
,
λ
≥
0
f_{\textbf{MMR}}(S)=\sum_{i\in V\setminus S}\sum_{j\in S}w_{i,j}-\lambda\sum_{i,j\in S:i\neq j}w_{i,j},\lambda\geq0
fMMR(S)=i∈V∖S∑j∈S∑wi,j−λi,j∈S:i̸=j∑wi,j,λ≥0
上式中,无论是graph-cut函数还是冗余项都是次模的,所以整个目标函数仍然是次模的,但是不是单调的。接着作者定义了如下改进版贪婪算法:
算法存在两处改进:1)第8、9行,候选摘要 G G G和具有最高得分的单文本单元 v ∗ v^* v∗进行比较,然后才确定最终摘要 G f G_f Gf,这一步保证了当 r = 1 r=1 r=1时能够达到常数近似因子(constant approximation factor,0.63);2)作者引入了比例因子(scaling factor) r r r用于调整代价的比率。接着作者分析了算法的性能保证( 1 − 1 e 1-\frac{1} {\sqrt e} 1−e1),证明部分感兴趣的朋友可以自行查看。
Lin and Bilmes(2011)
在Lin and Bilmes 2011年的文章A Class of Submodular Functions for Document Summarization中,作者设计了一类次模函数用于自动文摘任务。这些函数都由两部分组成,一部分用于鼓励摘要包含更多的信息,另一部分用于鼓励内容的多样性,即低冗余。更为关键的是,这些函数是单调不减的,这意味一个高效可伸缩的贪婪最优化方案具有常数因子最优性保证。
Submodularity in summarization
作者首先分析了自动文摘任务天然存在次模性,摘要可以从两个角度思考:
- 在knapsack constraint下,最大化目标函数。
S ∗ ∈ a r g m a x S ⊆ V F ( S ) s u b j e c t t o : ∑ i ∈ S c i ≤ b . S^*\in argmax_{S\subseteq V}\mathcal{F}(S)\quad subject\ to:\sum_{i\in S}c_i\leq b. S∗∈argmaxS⊆VF(S)subject to:i∈S∑ci≤b.knapsack constraint是基数约束( c i = 1 c_i=1 ci=1)的一般化,由上面次模函数的性质可知,如果 F \mathcal{F} F是单调次模函数,采用改进的贪婪算法能够达到 ( 1 − 1 / e ) f ( S o p t ) (1-1/e)f(S_{opt}) (1−1/e)f(Sopt)的结果。 - 在摘要必须覆盖文档所有或足够数量信息的约束下,寻找能使代价最低的子集。
S ∗ ∈ a r g m i n S ⊆ V ∑ i ∈ S c i s u b j e c t t o : F ( S ) ≥ α . S^*\in argmin_{S\subseteq V}\sum_{i\in S}c_i\quad subject\ to:\mathcal{F}(S)\geq\alpha. S∗∈argminS⊆Vi∈S∑cisubject to:F(S)≥α.其中, c i c_i ci是文本单元对应的代价, F ( S ) \mathcal{F}(S) F(S)用于度量 S S S的信息覆盖度。当 F \mathcal{F} F是次模的,约束 F ( S ) ≥ α \mathcal{F}(S)\geq\alpha F(S)≥α称作次模覆盖约束。
R O U G E − N ROUGE-N ROUGE−N是单调次模的
ROUGE-N是候选摘要和一组参考摘要之间的n-gram召回率。令
S
S
S是候选摘要,
c
e
:
2
V
→
Z
+
c_e:2^V\rightarrow \Z_+
ce:2V→Z+计算n-gram
e
e
e在
S
S
S中的出现次数,
R
i
R_i
Ri是参考摘要
i
i
i中n-grams的集合(假设有
K
K
K各参考摘要,i.e.,
i
=
1
,
⋯
 
,
K
i=1,\cdots,K
i=1,⋯,K),那么ROUGE-N公式可以写成如下集合函数:
F
ROUGE-N
(
S
)
≜
∑
i
=
1
K
∑
e
∈
R
i
min
(
c
e
(
S
)
,
r
e
,
i
)
∑
i
=
1
K
∑
e
∈
R
i
r
e
,
i
\mathcal{F}_{\textbf{ROUGE-N}}(S)\triangleq\frac{\sum_{i=1}^K\sum_{e\in R_i}\min(c_e(S),r_{e,i})}{\sum_{i=1}^K\sum_{e\in R_i}r_{e,i}}
FROUGE-N(S)≜∑i=1K∑e∈Rire,i∑i=1K∑e∈Rimin(ce(S),re,i)
其中, r e , i r_{e,i} re,i是n-gram e e e在参考摘要 i i i中出现次数。因为 c e ( S ) c_e(S) ce(S)是单调次模的, min ( x , a ) \min(x,a) min(x,a)是关于 x x x的非减凹函数,有 min ( c e ( S ) , r e , i ) \min(c_e(S),r_{e,i}) min(ce(S),re,i)是单调次模的(这是次模函数的一个性质)。因为加法操作不改变次模性,并且分母是一个常数,因此 F ROUGE-N \mathcal{F}_{\textbf{ROUGE-N}} FROUGE-N是单调次模的。
单调次模目标函数设计
好的摘要具有两个特性:高相关性和低冗余性。抽取式摘要的目标函数通常分别度量这两个指标,然后将两者合并在一起,权衡对相关性的鼓励和对冗余性的惩罚。惩罚冗余通常违背了目标函数的单调性,因此作者提出采用正地多样性奖励来取代负地冗余惩罚。具体地,摘要质量建模如下:
F
(
S
)
=
L
(
S
)
+
λ
R
(
S
)
\mathcal{F}(S)=\mathcal{L}(S)+\lambda\mathcal{R}(S)
F(S)=L(S)+λR(S)
其中, L ( S ) \mathcal{L}(S) L(S)用于度量覆盖率, R ( S ) \mathcal{R}(S) R(S)用于奖励多样性, λ ≥ 0 \lambda\geq 0 λ≥0是调衡系数。
覆盖率函数
L
(
S
)
\mathcal{L}(S)
L(S)可以是一个集合函数,度量
S
S
S与原始文档的相似度,
L
(
S
)
\mathcal{L}(S)
L(S)也可以是一个表示
V
V
V被
S
S
S覆盖率的函数。显然,
L
(
S
)
\mathcal{L}(S)
L(S)是单调的,
L
(
S
)
\mathcal{L}(S)
L(S)也需要是次模的:考虑向两个集合(一个是另一个的子集)中添加一个新的句子,直观地,向较小的集合中添加新句子的增幅要比向较大集合中添加新句子的增幅大,因为新句子携带的信息可能已经被较大的集合包含,但是没有包含在较小的集合中。
定义
L
(
S
)
\mathcal{L}(S)
L(S)的方法多种多样,例如:
L
(
S
)
=
∑
i
∈
V
,
j
∈
S
w
i
,
j
\mathcal{L}(S)=\sum_{i\in V,j\in S}w_{i,j}
L(S)=∑i∈V,j∈Swi,j,
w
i
,
j
w_{i,j}
wi,j表示
i
i
i和
j
j
j之间的相似度;
L
(
S
)
=
∑
i
∈
V
max
j
∈
S
w
i
,
j
\mathcal{L}(S)=\sum_{i\in V}\max_{j\in S}w_{i,j}
L(S)=∑i∈Vmaxj∈Swi,j;或者
L
(
S
)
=
∑
i
∈
Γ
(
S
)
c
i
\mathcal{L}(S)=\sum_{i\in \Gamma(S)}c_i
L(S)=∑i∈Γ(S)ci用于基于概念的摘要等。在这篇论文中,作者将
L
(
S
)
\mathcal{L}(S)
L(S)定义如下:
L
(
S
)
=
∑
i
∈
V
min
{
C
i
(
S
)
,
α
C
i
(
V
)
}
C
i
(
S
)
=
∑
j
∈
S
w
i
,
j
\begin{aligned} \mathcal{L}(S)=& \sum_{i\in V}\min\{\mathcal{C}_i(S),\alpha\mathcal{C}_i(V)\}\\ \mathcal{C}_i(S)=& \sum_{j\in S}w_{i,j} \end{aligned}
L(S)=Ci(S)=i∈V∑min{Ci(S),αCi(V)}j∈S∑wi,j
其中, w i , j ≥ 0 w_{i,j}\geq0 wi,j≥0表示 i i i和 j j j之间的相似度。 C i ( S ) \mathcal{C}_i(S) Ci(S)表示摘要 S S S与文本单元 i i i之间的相似度。因此 C i ( V ) \mathcal{C}_i(V) Ci(V)是 C i ( S ) \mathcal{C}_i(S) Ci(S)能够达到的最大值。当 min { C i ( S ) , α C i ( V ) } = α C i ( V ) \min\{\mathcal{C}_i(S),\alpha\mathcal{C}_i(V)\}=\alpha\mathcal{C}_i(V) min{Ci(S),αCi(V)}=αCi(V)时,我们称 i i i已经被 S S S饱和(saturated)。
当 i i i已经饱和,即使 j j j与 i i i非常相似,也不能提高 i i i的覆盖率,这将给予其他还没有饱和的句子更多机会去被覆盖,因此最终摘要将更好的覆盖整个文档。
多样性函数
论文中,多样性函数定义如下:
R
(
S
)
=
∑
i
=
1
K
∑
j
∈
P
i
∩
S
r
j
r
i
=
1
N
∑
j
w
i
,
j
\begin{aligned} \mathcal{R}(S)&= \sum_{i=1}^K\sqrt{\sum_{j\in P_i\cap S}r_j}\\ r_i&= \frac{1}{N}\sum_jw_{i,j} \end{aligned}
R(S)ri=i=1∑Kj∈Pi∩S∑rj=N1j∑wi,j
P i , i = 1 , ⋯   , K P_i,i=1,\cdots,K Pi,i=1,⋯,K是 V V V的一个分区,如下图所示:
r i r_i ri表示对 i i i的奖励, r i r_i ri评估了 i i i对于摘要的重要性。函数 R ( S ) \mathcal{R}(S) R(S)奖励了多样性,因为从一个尚未选择任何元素的类簇中选择一个句子通常收益更多。归功于平方根函数,一旦从类簇中选择了一个元素,来自同一类簇的其他元素的增益就开始递减。
总结
这篇博客主要介绍了基于次模函数最大化的自动文摘方法,自动文摘中许多完善的(well-established)方法都具有次模性,只是没有被显式地提及。构建具有次模性的打分函数,能够提高最优化算法的效率,并且有较高的性能保证,因此现在依旧有学者在研究更加新颖的打分函数,如Monotone Submodularity in Opinion Summaries(2015)。
参考文献
【1】知乎—怎么理解次模函数 submodular function?
【2】Lin H, Bilmes J. Multi-document summarization via budgeted maximization of submodular functions[C]// Human Language Technologies: the 2010 Conference of the North American Chapter of the Association for Computational Linguistics. Association for Computational Linguistics, 2010:912-920.
【3】Lin H, Bilmes J. A Class of Submodular Functions for Document Summarization.[C]// The, Meeting of the Association for Computational Linguistics: Human Language Technologies, Proceedings of the Conference, 19-24 June, 2011, Portland, Oregon, Usa. DBLP, 2011:510-520.
【4】Jayanth J, Sundararaj J, Bhattacharyya P. Monotone Submodularity in Opinion Summaries[C]// Conference on Empirical Methods in Natural Language Processing. 2015:169-178.