Determinantal point process 入门
什么是“行列式点过程”在机器学习(ML)中,子集选择问题的目标是从 ground set 中选择具有高质量但多样化的 items 的子集。这种高质量和多样性的平衡在 ML 问题中经常通过使用行列式点过程(determinantal point process,DPP)来保持,其中 DPP 赋予子集上的分布能够使得选择两个相似项的概率是(反)相关的。虽然 DPPs 在随机几何(Stochasti..
Determinantal point process 入门
1. 什么是“行列式点过程”
在机器学习(ML)中,子集选择问题的目标是从 ground set 中选择具有高质量但多样化的 items 的子集。这种高质量和多样性的平衡在 ML 问题中经常通过使用行列式点过程(determinantal point process,DPP)来保持,其中 DPP 赋予子集上的分布能够使得选择两个相似项的概率是(反)相关的。
虽然 DPPs 在随机几何(Stochastic Geometry,SG)中已被广泛地用于建模点间斥力(inter-point repulsion)问题,但它们对 ML 应用尤其有益,因为它们的分布参数可以从训练集中有效地学习到。
DPP 包括两个概念
- 行列式过程
- 点过程
行列式点过程 P \mathcal P P 是在一个离散的有限基本点集 Y = { 1 , 2 , ⋯   , N } \mathcal Y=\{1,2,\cdots, N\} Y={1,2,⋯,N} 的幂集 2 Y 2^{\mathcal Y} 2Y(所有子集, 包括空集和全集,构成的集合)上定义的概率分布。
幂集(Power Set):就是原集合中所有的子集(包括全集和空集)构成的集族。 设 X \mathcal X X 是一个有限集, ∣ X ∣ = k |\mathcal X| = k ∣X∣=k,则 X \mathcal X X 的幂集的势为 2 k 2^k 2k。
设 A ⊆ Y A \subseteq \mathcal Y A⊆Y 是一个固定的子集, Y Y Y 是根据 DPP 从 Y \mathcal Y Y 中随机生成的一些点构成的一个子集( Y ∼ P Y \sim \mathcal P Y∼P),则
P ( A ⊆ Y ) = det ( K A ) P(A \subseteq Y) =\det(K_A) P(A⊆Y)=det(KA)
其中 ∣ Y ∣ = N \vert \mathcal Y \vert=N ∣Y∣=N, K K K 是 similarity matrix,是 N × N N \times N N×N 的实对称半正定方阵。 K A K_A KA 是 K K K 的与 A A A 中元素在 Y \mathcal Y Y 中的标号相对应的元素构成子方阵。
一般来说, K K K 不一定需要是对称的。然而,为了简单起见,我们继续使用这个假设,而且这不是一个有影响的限制。
对于任意 A ⊆ Y A \subseteq \mathcal Y A⊆Y, P ( A ⊆ Y ) = det ( K A ) ∈ [ 0 , 1 ] P(A \subseteq Y) =\det(K_A) \in [0,1] P(A⊆Y)=det(KA)∈[0,1],因此 K K K 的所有特征值与主子式都满足处于 [ 0 , 1 ] [0,1] [0,1],由此可知 K K K 半正定( 0 ⪯ K ⪯ I \mathbf 0 \preceq K \preceq \mathbf I 0⪯K⪯I)。
主子式:任选 i i i 行 i i i 列的子方阵。注意区别于顺序主子式。

从上图也可以看出抽象的表示, K K K 也被称为边缘核,因它确定了 DPP 的边缘分布:
P ( A ⊆ Y ) = ∑ Y ′ : Y ′ ⊇ A P ( Y = Y ′ ) P(A \subseteq Y) =\sum_{Y':Y' \supseteq A} P(Y=Y') P(A⊆Y)=Y′:Y′⊇A∑P(Y=Y′)
当 A = { i } A=\{i\} A={i},有 P ( i ∈ Y ) = K i , i P(i \in Y)=K_{i,i} P(i∈Y)=Ki,i。也就是说, K K K 的对角线给出了单个元素包含于 Y Y Y( Y Y Y 中包含有单个元素的子集)的边缘概率。
且我们定义 det ( K ∅ ) = 1 \det(K_{\varnothing}) =1 det(K∅)=1,即任意一个 DPP 生成的随机过程选中的点构成的集合都包含空集。
如果 A = { i , j } A=\{i,j\} A={i,j},那么有
P ( A ⊆ Y ) = ∣ K i , i K i , j K j , i K j , j ∣ = K i , i K j , j − K i , j K j , i = P ( i ∈ Y ) P ( j ∈ Y ) − K i , j 2 \begin{aligned} P(A \subseteq Y)& = \begin{vmatrix} K_{i,i} & K_{i,j} \\ K_{j,i} & K_{j,j} \end{vmatrix} = K_{i,i} K_{j,j} - K_{i,j} K_{j,i} \\ &=P(i \in Y)P(j \in Y)-K_{i,j}^2 \end{aligned} P(A⊆Y)=∣∣∣∣Ki,iKj,iKi,jKj,j∣∣∣∣=Ki,iKj,j−Ki,jKj,i=P(i∈Y)P(j∈Y)−Ki,j2
因此,非对角元素(对称导致了 K j , i = K i , j K_{j,i} = K_{i,j} Kj,i=Ki,j)表示成对元素之间的(反)相关度量: K i , j K_{i,j} Ki,j 值越大,表示 i i i 和 j j j 越不可能同时出现。如果我们把边缘核的项看作是 Y Y Y 中成对元素之间相似性的度量,那么高度相似的元素不太可能同时出现。
相似性度量如下:
注意 K i , j K_{i,j} Ki,j 的值与点 i i i 和 j j j 之间的距离成反比。这就意味着距离越近的点越不容易成对出现。所以 DPP 采样的点比独立采样覆盖的范围更好。
例如:
例如当 K i , j = K i , i K j , j K_{i,j} = \sqrt{K_{i,i} K_{j,j}} Ki,j=Ki,iKj,j,则有 P ( { i , j } ⊆ Y ) = 0 P(\{i,j\} \subseteq Y)=0 P({i,j}⊆Y)=0 表示 { i , j } \{i,j\} {i,j} 几乎肯定不会同时出现。相反,对角元素表示没有与其他元素的相关性,因此元素独立出现。
以上就是一些大致的 DPP 概念。结合上面的图,可以理解论文中反复强调的一句话:Correlations are always negative in DPPs!
1.1 conditioning
条件概率的推导需要用到矩阵的 Schur Complement(舒尔补)参考链接;参考链接;参考链接:
若矩阵 Σ \Sigma Σ 分块如下
Σ = [ Σ 11 Σ 12 Σ 21 Σ 22 ] \Sigma = \left[ \begin{array}{cc} \Sigma_{11} & \Sigma_{12} \\ \Sigma_{21} & \Sigma_{22} \end{array} \right] Σ=[Σ11Σ21Σ12Σ22]
则存在以下关系
∣ Σ ∣ = ∣ Σ 11 − Σ 12 Σ 22 − 1 Σ 21 ∣ ∣ Σ 22 ∣ ∣ Σ ∣ = ∣ Σ 22 − Σ 21 Σ 11 − 1 Σ 12 ∣ ∣ Σ 11 ∣ \begin{aligned} \begin{vmatrix} \Sigma \end{vmatrix} &=\begin{vmatrix}\Sigma_{11}-\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}\end{vmatrix} \begin{vmatrix}\Sigma_{22}\end{vmatrix} \\ \begin{vmatrix} \Sigma \end{vmatrix} &=\begin{vmatrix}\Sigma_{22}-\Sigma_{21}\Sigma_{11}^{-1}\Sigma_{12}\end{vmatrix} \begin{vmatrix}\Sigma_{11}\end{vmatrix} \end{aligned} ∣∣Σ∣∣∣∣Σ∣∣=∣∣Σ11−Σ12Σ22−1Σ21∣∣∣∣Σ22∣∣=∣∣Σ22−Σ21Σ11−1Σ12∣∣∣∣Σ11∣∣
这里我们命名
∣ Σ / Σ 22 ∣ = ∣ Σ 11 − Σ 12 Σ 22 − 1 Σ 21 ∣ ∣ Σ / Σ 11 ∣ = ∣ Σ 22 − Σ 21 Σ 11 − 1 Σ 12 ∣ S 22 = Σ 11 − Σ 12 Σ 22 − 1 Σ 21 S 11 = Σ 22 − Σ 21 Σ 11 − 1 Σ 12 \begin{aligned} \begin{vmatrix} \Sigma/\Sigma_{22} \end{vmatrix} &=\begin{vmatrix}\Sigma_{11}-\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}\end{vmatrix} \\ \begin{vmatrix} \Sigma/\Sigma_{11} \end{vmatrix} &=\begin{vmatrix}\Sigma_{22}-\Sigma_{21}\Sigma_{11}^{-1}\Sigma_{12}\end{vmatrix} \\ S_{22} &= \Sigma_{11}-\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}\\ S_{11}&=\Sigma_{22}-\Sigma_{21}\Sigma_{11}^{-1}\Sigma_{12} \end{aligned} ∣∣Σ/Σ22∣∣∣∣Σ/Σ11∣∣S22S11=∣∣Σ11−Σ12Σ22−1Σ21∣∣=∣∣Σ22−Σ21Σ11−1Σ12∣∣=Σ11−Σ12Σ22−1Σ21=Σ22−Σ21Σ11−1Σ12
这样,我们就称作 S 11 S_{11} S11 为矩阵 Σ \Sigma Σ 关于 Σ 11 \Sigma_{11} Σ11 的舒尔补。

P ( B ⊆ Y ∣ A ⊆ Y ) = P ( A ∪ B ⊆ Y ) P ( A ⊆ Y ) = det ( K A ∪ B ) det ( K A ) = ∣ K B − K B A K A − 1 K A B ∣ ∣ K A ∣ ∣ K A ∣ = det ( K B − K B A K A − 1 K A B ) \begin{aligned} P(B \subseteq Y \vert A \subseteq Y ) &= \frac{P(A\cup B \subseteq Y )}{P( A \subseteq Y )} \\ &=\frac{\det(K_{A \cup B})}{\det(K_A)}= \frac{\begin{vmatrix} K_{B}-K_{BA} K_{A}^{-1} K_{AB}\end{vmatrix} \begin{vmatrix} K_{A}\end{vmatrix} }{\begin{vmatrix} K_{A}\end{vmatrix} } \\ &=\det(K_{B}-K_{BA} K_{A}^{-1} K_{AB}) \end{aligned} P(B⊆Y∣A⊆Y)=P(A⊆Y)P(A∪B⊆Y)=det(KA)det(KA∪B)=∣∣KA∣∣∣∣KB−KBAKA−1KAB∣∣∣∣KA∣∣=det(KB−KBAKA−1KAB)
2. L-ensembles
然而为了对真实数据建模,DPPs 的构造不通过边缘核函数 K K K,而通过 L-ensembles 来定义。L-ensembles 通过一个正的、半定矩阵 L L L 来定义 DPP(说白了,其实就是把 L L L 替换掉 K K K)。
P L ( Y ) ∝ det ( L Y ) P_L(Y) \propto \det(L_Y) PL(Y)∝det(LY)

然而上面的公式只能表示一种比例关系,需要进一步归一化才能表征概率。那么怎么归一化?
首先计算
∑ Y ⊆ Y det ( L Y ) \sum_{Y \subseteq \mathcal Y} \det (L_Y) Y⊆Y∑det(LY)
在这里,借助行列式加法性质
∣ a 11 + 1 a 12 a 21 a 22 ∣ = ∣ a 11 a 12 a 21 a 22 ∣ + ∣ 1 a 12 0 a 22 ∣ \begin{aligned} \begin{vmatrix} a_{11}+1 & a_{12} \\ a_{21} & a_{22} \end{vmatrix} = \begin{vmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{vmatrix} + \begin{vmatrix} 1 & a_{12} \\ 0 & a_{22} \end{vmatrix} \end{aligned} ∣∣∣∣a11+1a21a12a22∣∣∣∣=∣∣∣∣a11a21a12a22∣∣∣∣+∣∣∣∣10a12a22∣∣∣∣
找到一种推理规律
det ( L + I ) = ∣ L 11 + 1 L 12 L 21 L 22 + 1 ∣ = ∣ L 11 L 12 L 21 L 22 + 1 ∣ + ∣ 1 0 L 21 L 22 + 1 ∣ = ∣ L 11 L 12 L 21 L 22 ∣ + ∣ L 11 L 12 0 1 ∣ + ∣ 1 0 L 21 L 22 ∣ + ∣ 1 0 0 1 ∣ = det ( { 1 , 2 } ) + det ( { 1 } ) + det ( { 2 } ) + det ( ∅ ) \begin{aligned} \det(L+\mathbf I) &= \begin{vmatrix} L_{11}+1 & L_{12} \\ L_{21} & L_{22}+1 \end{vmatrix} = \begin{vmatrix} L_{11} & L_{12} \\ L_{21} & L_{22}+1 \end{vmatrix} + \begin{vmatrix} 1 & 0\\ L_{21} & L_{22}+1 \end{vmatrix} \\ &=\begin{vmatrix} L_{11} & L_{12} \\ L_{21} & L_{22} \end{vmatrix} + \begin{vmatrix} L_{11} & L_{12} \\ 0 & 1 \end{vmatrix}+ \begin{vmatrix} 1 & 0\\ L_{21} & L_{22} \end{vmatrix} + \begin{vmatrix} 1 & 0 \\ 0 & 1 \end{vmatrix}\\ &= \det(\{1,2\})+ \det(\{1\})+ \det(\{2\})+ \det(\varnothing) \end{aligned} det(L+I)=∣∣∣∣L11+1L21L12L22+1∣∣∣∣=∣∣∣∣L11L21L12L22+1∣∣∣∣+∣∣∣∣1L210L22+1∣∣∣∣=∣∣∣∣L11L21L12L22∣∣∣∣+∣∣∣∣L110L121∣∣∣∣+∣∣∣∣1L210L22∣∣∣∣+∣∣∣∣1001∣∣∣∣=det({1,2})+det({1})+det({2})+det(∅)
上面两个元素可以推广到任意 N N N 个元素的情形。所以,得到
∑ Y ⊆ Y det ( L Y ) = det ( L + I ) \sum_{Y \subseteq \mathcal Y} \det (L_Y) = \det(L+\mathbf I) Y⊆Y∑det(LY)=det(L+I)
最终可以得到归一化的概率形式:
P L ( Y = Y ) = det ( L Y ) ∑ Y ⊆ Y det ( L Y ) = det ( L Y ) det ( L + I ) P_L(\mathbf Y=Y) = \frac{\det(L_Y)}{\sum_{Y \subseteq \mathcal Y} \det (L_Y) }= \frac{\det(L_Y)}{ \det(L+\mathbf I) } PL(Y=Y)=∑Y⊆Ydet(LY)det(LY)=det(L+I)det(LY)
回顾边缘核确定的 DPP 的边缘分布:
P ( A ⊆ Y ) = ∑ Y ′ ⊇ A P ( Y = Y ′ ) = det ( K A ) = ∑ Y ′ ⊇ A det ( L Y ′ ) det ( L + I ) = 1 det ( L + I ) ∑ Y ′ ⊇ A det ( L Y ′ ) \begin{aligned} P(A \subseteq \mathbf Y) &=\sum_{Y' \supseteq A} P(\mathbf Y=Y')=\det(K_A) \\ &= \sum_{Y' \supseteq A} \frac{\det(L_{Y'})}{ \det(L+\mathbf I) } = \frac{1}{ \det(L+\mathbf I) } \sum_{Y' \supseteq A} \det(L_{Y'}) \end{aligned} P(A⊆Y)=Y′⊇A∑P(Y=Y′)=det(KA)=Y′⊇A∑det(L+I)det(LY′)=det(L+I)1Y′⊇A∑det(LY′)
从上面的行列式拆分规律可知
∑ Y ′ ⊇ A det ( L Y ′ ) = det ( L + I A ˉ ) \begin{aligned} \sum_{Y' \supseteq A} \det(L_{Y'}) = \det(L+\mathbf I_{\bar A}) \end{aligned} Y′⊇A∑det(LY′)=det(L+IAˉ)
其中 I A ˉ \mathbf I_{\bar A} IAˉ 指的是:如果集合 A A A 包含索引 i i i,则 [ I A ˉ ] i i = 0 [\mathbf I_{\bar A}]_{ii}=0 [IAˉ]ii=0,而对于 i ∈ A ˉ i \in \bar A i∈Aˉ,有 [ I A ˉ ] i i = 1 [\mathbf I_{\bar A}]_{ii}=1 [IAˉ]ii=1。所以这里的 I A ˉ \mathbf I_{\bar A} IAˉ 不是单位阵。举例说明:
det ( L + I ) = ∣ L 11 L 12 L 21 L 22 ∣ + ∣ L 11 L 12 0 1 ∣ + ∣ 1 0 L 21 L 22 ∣ + ∣ 1 0 0 1 ∣ = det ( { 1 , 2 } ) + det ( { 1 } ) + det ( { 2 } ) + det ( ∅ ) i f A = { 1 } ∑ Y ′ ⊇ A det ( L Y ′ ) = det ( { 1 , 2 } ) + det ( { 1 } ) = ∣ L 11 L 12 L 21 L 22 ∣ + ∣ L 11 L 12 0 1 ∣ = ∣ L 11 L 12 L 21 L 22 + 1 ∣ = det ( [ L 11 L 12 L 21 L 22 ] + [ 0 0 0 1 ] ) \begin{aligned} \det(L+\mathbf I) &=\begin{vmatrix} L_{11} & L_{12} \\ L_{21} & L_{22} \end{vmatrix} + \begin{vmatrix} L_{11} & L_{12} \\ 0 & 1 \end{vmatrix}+ \begin{vmatrix} 1 & 0\\ L_{21} & L_{22} \end{vmatrix} + \begin{vmatrix} 1 & 0 \\ 0 & 1 \end{vmatrix}\\ &= \det(\{1,2\})+ \det(\{1\})+ \det(\{2\})+ \det(\varnothing) \\ if \quad A&=\{1\} \\ \sum_{Y' \supseteq A} \det(L_{Y'}) &= \det(\{1,2\})+ \det(\{1\}) \\ &=\begin{vmatrix} L_{11} & L_{12} \\ L_{21} & L_{22} \end{vmatrix} + \begin{vmatrix} L_{11} & L_{12} \\ 0 & 1 \end{vmatrix} =\begin{vmatrix} L_{11} & L_{12} \\ L_{21} & L_{22}+1 \end{vmatrix} \\ &=\det \left( \begin{bmatrix} L_{11} & L_{12} \\ L_{21} & L_{22} \end{bmatrix} + \begin{bmatrix} 0 & 0\\ 0 & 1 \end{bmatrix} \right) \end{aligned} det(L+I)ifAY′⊇A∑det(LY′)=∣∣∣∣L11L21L12L22∣∣∣∣+∣∣∣∣L110L121∣∣∣∣+∣∣∣∣1L210L22∣∣∣∣+∣∣∣∣1001∣∣∣∣=det({1,2})+det({1})+det({2})+det(∅)={1}=det({1,2})+det({1})=∣∣∣∣L11L21L12L22∣∣∣∣+∣∣∣∣L110L121∣∣∣∣=∣∣∣∣L11L21L12L22+1∣∣∣∣=det([L11L21L12L22]+[0001])
所以推导得到:
P ( A ⊆ Y ) = ∑ Y ′ ⊇ A P ( Y = Y ′ ) = det ( K A ) = ∑ Y ′ ⊇ A det ( L Y ′ ) det ( L + I ) = 1 det ( L + I ) ∑ Y ′ ⊇ A det ( L Y ′ ) = det ( L + I A ˉ ) det ( L + I ) = det { ( L + I A ˉ ) ( L + I ) − 1 } \begin{aligned} P(A \subseteq \mathbf Y) &=\sum_{Y' \supseteq A} P(\mathbf Y=Y')=\det(K_A) \\ &= \sum_{Y' \supseteq A} \frac{\det(L_{Y'})}{ \det(L+\mathbf I) } = \frac{1}{ \det(L+\mathbf I) } \sum_{Y' \supseteq A} \det(L_{Y'}) \\ &=\frac{\det(L+\mathbf I_{\bar A})}{ \det(L+\mathbf I) } =\det \bigg\{ (L+\mathbf I_{\bar A}) (L+\mathbf I)^{-1} \bigg\} \end{aligned} P(A⊆Y)=Y′⊇A∑P(Y=Y′)=det(KA)=Y′⊇A∑det(L+I)det(LY′)=det(L+I)1Y′⊇A∑det(LY′)=det(L+I)det(L+IAˉ)=det{(L+IAˉ)(L+I)−1}
当 A A A 等价于 Y \mathcal Y Y 的全集 { 1 , 2 , ⋯   , N } \{1,2,\cdots, N\} {1,2,⋯,N} 时,则有
det ( K ) = det { ( L + 0 ) ( L + I ) − 1 } \det(K)=\det \bigg\{ (L+\mathbf 0) (L+\mathbf I)^{-1} \bigg\} det(K)=det{(L+0)(L+I)−1}
因此得到以下推导:
K = L ( L + I ) − 1 = ( L + I − I ) ( L + I ) − 1 = I − ( L + I ) − 1 I − K = ( L + I ) − 1 ( L + I ) ( I − K ) = I L ( I − K ) + ( I − K ) = I L ( I − K ) = K L = K ( I − K ) − 1 \begin{aligned} K&=L(L+\mathbf I)^{-1} \\ &=(L+\mathbf I -\mathbf I)(L+\mathbf I)^{-1} \\ &=\mathbf I - (L+\mathbf I)^{-1} \\ \mathbf I -K &= (L+\mathbf I)^{-1} \\ (L+\mathbf I) (\mathbf I -K) &= \mathbf I \\ L(\mathbf I -K) +(\mathbf I -K) &=\mathbf I \\ L(\mathbf I -K) &= K \\ L&=K(\mathbf I -K) ^{-1} \end{aligned} KI−K(L+I)(I−K)L(I−K)+(I−K)L(I−K)L=L(L+I)−1=(L+I−I)(L+I)−1=I−(L+I)−1=(L+I)−1=I=I=K=K(I−K)−1
整理得
K = L ( L + I ) − 1 = I − ( L + I ) − 1 L = K ( I − K ) − 1 \boxed{ \begin{aligned} K&=L(L+\mathbf I)^{-1}=\mathbf I - (L+\mathbf I)^{-1} \\ L&=K(\mathbf I -K) ^{-1} \end{aligned} } KL=L(L+I)−1=I−(L+I)−1=K(I−K)−1
在这个基础上,如果存在特征值分解
L = ∑ n λ n v n v n T L=\sum_n \lambda_n \mathbf v_n \mathbf v_n^{T} L=n∑λnvnvnT
则可得到
K = ∑ n λ n λ n + 1 v n v n T K=\sum_n \frac{\lambda_n}{\lambda_n+1} \mathbf v_n \mathbf v_n^{T} K=n∑λn+1λnvnvnT
里面用到了考研常考的知识点:
如果 A A A 是对称阵,则必存在正交阵 P P P 使得
P − 1 A P = P T A P = Λ P^{-1} A P = P^{T} A P = \Lambda P−1AP=PTAP=Λ
因此可知
L = V Λ V − 1 K = L ( L + I ) − 1 = V Λ V − 1 ( V Λ V − 1 + V V − 1 ) − 1 = V Λ V − 1 V ( Λ + I ) − 1 V − 1 = V { Λ ( Λ + I ) − 1 } V − 1 \begin{aligned} L &= V\Lambda V^{-1} \\ K & =L(L+\mathbf I)^{-1} \\ &=V\Lambda V^{-1}(V\Lambda V^{-1}+V V^{-1})^{-1} \\ &=V\Lambda V^{-1} V(\Lambda+\mathbf I)^{-1} V^{-1} \\ &=V \{\Lambda (\Lambda+\mathbf I)^{-1} \} V^{-1} \end{aligned} LK=VΛV−1=L(L+I)−1=VΛV−1(VΛV−1+VV−1)−1=VΛV−1V(Λ+I)−1V−1=V{Λ(Λ+I)−1}V−1
3. Elementary DPPs
定义:如果 K K K 的每个特征值 λ \lambda λ 都在 { 0 , 1 } \{0,1\} {0,1} 中,那么 DPPs 就是 elementary 的。
定义 { v n } n ∈ V \{\mathbf v_n\}_{n \in V} {vn}n∈V 是一组标准正交向量基。具有以下特征值分解的 K K K(有些特征值为 1,有些特征值为 0):
K V = ∑ n ∈ V v n v n T K^V=\sum_{ n \in V} \mathbf v_n \mathbf v_n^{T} KV=n∈V∑vnvnT
我们将具备以上 K V K^V KV 的 DPP 记为 P V \mathcal P^V PV。一般 elementary DPPs 不是 L-ensembles。如果 Y Y Y 是服从 elementary DPPs P V \mathcal P^V PV,那么集合的 cardinality 记作 ∣ Y ∣ \vert Y \vert ∣Y∣。接下来,我们证明 elementary DPPs 具有固定的 cardinality。
首先有以下关系:
E ( ∣ Y ∣ ) = ∑ n I ( i ∈ Y ) = ∑ n K n n V = t r ( K V ) = ∑ n ∈ V ∥ v n ∥ 2 = ∣ V ∣ \begin{aligned} \mathbb E(\vert Y \vert) &=\sum_n \mathbb I(i\in Y)= \sum_n K^V_{nn} \\ &=\mathrm{tr}(K^V) =\sum_{ n \in V} \Vert \mathbf v_n \Vert^2 =\vert V \vert \end{aligned} E(∣Y∣)=n∑I(i∈Y)=n∑KnnV=tr(KV)=n∈V∑∥vn∥2=∣V∣
结合 rank ( K V ) = ∣ V ∣ ⟹ P ( ∣ Y ∣ > ∣ V ∣ ) = 0 \text{rank}(K^V)=\vert V \vert \Longrightarrow P(\vert Y \vert>\vert V \vert)=0 rank(KV)=∣V∣⟹P(∣Y∣>∣V∣)=0,因此可知 P ( ∣ Y ∣ = ∣ V ∣ ) = 1 P(\vert Y \vert=\vert V \vert)=1 P(∣Y∣=∣V∣)=1。
3.1 Sampling lemma
If P L P_L PL is a DPP with eigendecomposition of L L L given by L = ∑ n λ n v n v n T L=\sum_n \lambda_n \mathbf v_n \mathbf v_n^{T} L=∑nλnvnvnT. Then P L P_L PL is a mixture of elementary DPPs:

4. 偏好性-相似性分解
在大多数实际情况下,我们希望 diversity 与 Y \mathcal Y Y 中对 different items 的一些基本偏好相平衡。因此对 DPP 进行分解。这里称为 quality-diversity decomposition(偏好性-相似性分解)。
在这里 DPP kernel L L L 可以写成 Gramian 矩阵(Gram 矩阵 ;参考)的形式:
L = B T B B i = q i ϕ i L=B^T B\\ B_i=q_i \phi_i L=BTBBi=qiϕi
- q i ∈ R + q_i \in \mathbb R^{+} qi∈R+ 表示 quality,用以作为衡量 item i i i 的 “goodness” 程度。
- ϕ i ∈ R D \phi_i \in \mathbb R^{D} ϕi∈RD 表示 diversity feature vector。且 ∥ ϕ i ∥ 2 = 1 \Vert \phi_i \Vert^2=1 ∥ϕi∥2=1。虽然 D = N D = N D=N 可以分解任意的 DPP,但由于在实际中我们可能希望使用高维特征向量,所以 D D D 是任意的。
- B ∈ R D × N B \in \mathbb R^{D \times N} B∈RD×N
- S ∈ R N × N S \in \mathbb R^{N \times N} S∈RN×N
L i , j = q i ϕ i T ϕ j q j = q i S i , j q j L_{i,j}=q_i \phi_i^T \phi_j q_j =q_i S_{i,j} q_j Li,j=qiϕiTϕjqj=qiSi,jqj
- ϕ i T ϕ i = S i , i = 1 \phi_i^T \phi_i = S_{i,i} =1 ϕiTϕi=Si,i=1
- L i , i = q i ϕ i T ϕ i q i = q i S i , i q i = q i 2 L_{i,i}=q_i \phi_i^T \phi_i q_i =q_i S_{i,i} q_i=q_i^2 Li,i=qiϕiTϕiqi=qiSi,iqi=qi2
S i , j = q i ϕ i T ϕ j q j q i q j = L i , j L i , i L j , j ∈ [ − 1 , 1 ] S_{i,j}=\frac{q_i \phi_i^T \phi_j q_j }{q_i q_j }= \frac{L_{i,j} }{\sqrt{L_{i,i} L_{j,j}} } \in[-1,1] Si,j=qiqjqiϕiTϕjqj=Li,iLj,jLi,j∈[−1,1]
由于 ∥ ϕ i ∥ 2 = 1 \Vert \phi_i \Vert^2=1 ∥ϕi∥2=1,因此内积 ϕ i T ϕ j \phi_i^T \phi_j ϕiTϕj 表示两个向量的夹角余弦。
可以直接推出
P L ( Y ) ∝ det ( S Y ) ⎵ d i v e r s i t y ∏ i ∈ Y q i 2 ⎵ q u a l i t y P_L(Y) \propto \underbrace{\det(S_Y)}_{\rm diversity } \underbrace{\prod_{i \in Y} q_i^2}_{\rm quality} PL(Y)∝diversity
det(SY)quality
i∈Y∏qi2
4.1 对偶表示
大多数 DPP 算法需要通过 inversion、eigendecomposition 等方法对 L L L ( N × N N \times N N×N 矩阵)进行处理。然而,当 N N N 很大时,计算效率很低。因此,我们可以通过以下对偶的表示:
C = B B T C=B B^T C=BBT
在这里 C C C 是 D × D D \times D D×D 矩阵。
- C C C 和 L L L 有相同的非零特征值。
- C C C 和 L L L 的特征向量线性相关。
命题:
C C C 存在以下特征值分解
C = ∑ n = 1 D λ n v ^ n v ^ n T C=\sum_{n=1}^{D} \lambda_n \hat\mathbf v_n \hat\mathbf v_n^{T} C=n=1∑Dλnv^nv^nT
当且仅当 L L L 存在以下特征值分解
L = B T B = B T ( ∑ n = 1 D v ^ n v ^ n T ) B = ∑ n = 1 D λ n [ 1 λ n B T v ^ n ] [ 1 λ n v ^ n T B ] = ∑ n = 1 D λ n [ 1 λ n B T v ^ n ] [ 1 λ n B T v ^ n ] T \begin{aligned} L&=B^TB=B^T\left(\sum_{n=1}^{D} \hat\mathbf v_n \hat\mathbf v_n^{T}\right)B \\ &= \sum_{n=1}^{D} \lambda_n \left[\frac{1}{\sqrt{ \lambda_n}} B^T\hat\mathbf v_n \right] \left[\frac{1}{\sqrt{ \lambda_n}} \hat\mathbf v_n^{T} B\right] \\ &= \sum_{n=1}^{D} \lambda_n \left[\frac{1}{\sqrt{ \lambda_n}} B^T\hat\mathbf v_n \right] \left[\frac{1}{\sqrt{ \lambda_n}} B^T\hat\mathbf v_n\right]^T \end{aligned} L=BTB=BT(n=1∑Dv^nv^nT)B=n=1∑Dλn[λn1BTv^n][λn1v^nTB]=n=1∑Dλn[λn1BTv^n][λn1BTv^n]T
当 D D D 也特别大时,采用投影到低维( d ≪ D d \ll D d≪D)空间:

Random projections are known to approximately preserve distances [Johnson and Lindenstrauss, 1984].
5. Conditional-DPP
在很多实际问题中,固定的 ground set Y \mathcal Y Y 是不够用的。例如在 document summarization problems 中。
解决方法是找到一种取决于输入变量 X X X 的 Y ( X ) \mathcal Y(X) Y(X)。因此可以得到定义:
一种 Conditional-DPP P ( Y = Y ∣ X ) \mathcal P(\mathbf Y=Y \vert X) P(Y=Y∣X) 是一种在每一种子集 Y ⊆ Y ( X ) Y \subseteq \mathcal Y(X) Y⊆Y(X) 上的分布
P ( Y = Y ∣ X ) ∝ det ( L Y ( X ) ) \mathcal P(\mathbf Y=Y \vert X) \propto \det\Big(L_Y(X)\Big) P(Y=Y∣X)∝det(LY(X))
其中 L ( X ) L(X) L(X) 是取决于 X X X的 半正定核。利用 quality-diversity decomposition:
L i , j ( X ) = q i ( X ) ϕ i T ( X ) ϕ j ( X ) q j ( X ) = q i ( X ) S i , j ( X ) q j ( X ) L_{i,j}(X)=q_i(X) \phi_i^T(X) \phi_j(X) q_j (X)=q_i (X)S_{i,j}(X) q_j(X) Li,j(X)=qi(X)ϕiT(X)ϕj(X)qj(X)=qi(X)Si,j(X)qj(X)
在这里 Supervised learning 可以用来确定联系 X X X 与 q i q_i qi 和 ϕ i \phi_i ϕi 的隐函数。
6. k-DPP
如果我们只需要 k k k 个 diverse items 呢?
- 一个最简单的思路就是将 DPP 调整到集合 cardinality k k k:
P L k ( Y ) = det ( L Y ) ∑ ∣ Y ′ ∣ = k det ( L Y ′ ) \mathcal P^k_L( Y ) = \frac{\det(L_Y)}{\sum_{\vert Y'\vert =k} \det (L_{Y'}) } PLk(Y)=∑∣Y′∣=kdet(LY′)det(LY)
引入 k k k-th elementary symmetric polynomial:
e k ( λ 1 , λ 2 , ⋯   , λ N ) = ∑ J ⊆ { 1 , ⋯   , N } ∣ J ∣ = k ∏ n ∈ J λ n e_k(\lambda_1, \lambda_2, \cdots, \lambda_N)=\sum_{ { J \subseteq \{1,\cdots,N \} \atop \vert J \vert =k } } \prod_{n\in J} \lambda_n ek(λ1,λ2,⋯,λN)=∣J∣=kJ⊆{1,⋯,N}∑n∈J∏λn
举例说明:
e 1 ( λ 1 , λ 2 , λ 3 ) = λ 1 + λ 2 + λ 3 e 2 ( λ 1 , λ 2 , λ 3 ) = λ 1 λ 2 + λ 1 λ 2 + λ 2 λ 3 e 2 ( λ 1 , λ 2 , λ 3 ) = λ 1 λ 2 λ 3 \begin{aligned} e_1(\lambda_1, \lambda_2, \lambda_3) &= \lambda_1+\lambda_2+\lambda_3 \\ e_2(\lambda_1, \lambda_2, \lambda_3) &= \lambda_1\lambda_2+\lambda_1 \lambda_2+ \lambda_2 \lambda_3 \\ e_2(\lambda_1, \lambda_2, \lambda_3) &= \lambda_1\lambda_2 \lambda_3 \end{aligned} e1(λ1,λ2,λ3)e2(λ1,λ2,λ3)e2(λ1,λ2,λ3)=λ1+λ2+λ3=λ1λ2+λ1λ2+λ2λ3=λ1λ2λ3
因此归一化的分母为
∑ ∣ Y ′ ∣ = k det ( L Y ′ ) = e k ( λ 1 , λ 2 , ⋯   , λ N ) \sum_{\vert Y'\vert =k} \det (L_{Y'}) =e_k(\lambda_1, \lambda_2, \cdots, \lambda_N) ∣Y′∣=k∑det(LY′)=ek(λ1,λ2,⋯,λN)
6.1 k-DPP inference - sampling
同样的,k-DPP 也可以视为 a mixture of elementary DPPs。
更多推荐





所有评论(0)