Active DPP:基于行列式点过程的批量主动学习.

本文作者提出了基于行列式点过程(DPP)的批量主动学习方法。行列式点过程是一类排斥点过程,可以用于生成不同批次的样本。具体地,作者使用了两个DPP:不确定性DPP根据学习模型提供的不确定性得分选择数据样本,探索DPP旨在寻找新的决策边界。通过该方法选择的样本既具有足够的信息量,由具有多样性。样本选择后由人类专家进行标记,并进一步训练模型。

1. 行列式点过程

行列式点过程是在集合XX的有限子集XX上定义的概率测度。L-ensemble通过一个实对称半正定N×NN×N核矩阵LL定义DPP,则对子集X=AXX=AX进行采样的概率为:

P(X=A)det(LA)P(X=A)det(LA)

在本工作中每个批次选择kk个样本,因此采用k-DPP方法,即限制|A|=k|A|=k。对矩阵LL进行分解L=DTDL=DTD,则有:

P(X=A)det(LA)=Vol2({Di}iA)P(X=A)det(LA)=Vol2({Di}iA)

由上式可知概率与相关体积的平方成正比。对于通用的k-DPP方法,可以近似实现:

P(X=A)Vol2α({Di}iA)P(X=A)Vol2α({Di}iA)

k-DPP中采样的目标是寻找同时满足信息丰富和多样性的分配模式:

A=argmaxAP(X=A)A=argmaxAP(X=A)

然而上述问题是NP-hard问题,因此需要采用近似算法。

⚪ 贪心算法 Greedy Algorithm

贪心算法是指逐个向批量中增加样本:

A(m+1)=A(m){argmaxjVol2α({Di}iA(m){j})}A(m+1)=A(m){argmaxjVol2α({Di}iA(m){j})}

贪心算法是寻找分配模式的kO(k)kO(k)阶近似算法。

⚪ 凸松弛算法 Convex Relaxation Algorithm

凸松弛算法是寻找分配模式的ekek阶近似算法。考虑与k-DPP相关的生成多项式:

g(v1,.,vN)=A:|A|=kdet(LA)iAvig(v1,.,vN)=A:|A|=kdet(LA)iAvi

则寻找分配模式等价于在满足约束v1++vN=kv1++vN=k的非负整数v1,vNv1,vN上最大化g(v1,.,vN)g(v1,.,vN)。用非负实数替换整数,并将gg调整为凹函数log(g)log(g),则可得到原问题的一个松弛问题:

max{logg(v1,.,vN)|v1++vN=k}max{logg(v1,.,vN)|v1++vN=k}

⚪ 最大坐标舍入算法 Maximum Coordinate Rounding

本文作者提出了一种最大坐标舍入算法,可以在线性时间内完成搜索,避免了凸松弛算法的超线性多项式时间。算法流程如下:

  1. 在满足约束v1++vN=kv1++vN=k的非负整数v1,vNv1,vN上寻找logg(v1,.,vN)logg(v1,.,vN)的极大值
  2. 记上述过程寻找的非负整数中的最大值为vivi,把样本ii加入AA中,使用条件DPP递归地寻找k1k1个样本加入AA

可以证明上述过程也是寻找分配模式的ekek阶近似算法。

2. Active DPP

本文提出的基于DPP的主动学习方法希望能够采样到同时具有丰富的信息量与多样性的样本,因此在DPP分布的基础上进行一些修改。

对矩阵LL进行分解L=DTDL=DTD,则有:

L=BTB,Bi=qiϕiLi,j=qiϕTiϕjqj=qiSi,jqj

其中qiR+用于衡量样本i的信息量;ϕiRD衡量样本的多样性;两个样本之间的相似性计算为Si,j=ϕTiϕj,使用高斯核实现:

Si,j=exp(h(Xi,Xj)22σ2)

对于不确定性,将样本的信息量得分qi设置为不确定性得分,并引入超参数γ表示对不确定性的关注程度:

Li,j=qγ/αiSi,jqγ/αj

3. 实验分析

作为对比,作者设置了几种不同的采样策略:

作者展示了不同方法的实际采样结果,其中黑色线代表决策边界:

作者汇报了在六个分类数据集上的模型表现,Active DPP在其中的四个任务上获得最佳表现: