1 要点
1.1 概述
-
背景:不确切监督学习包括多示例学习 (MIL) 和偏标签学习 (PLL)。在不确切监督情形中,确切的实例与标签之间的对应关系未知,例如图1(a)中,MIL未区分正包中的正实例;如图1(b)所示,PLL中存在伪正标签,这些都是不确切监督信息的来源。
- 问题:在很多应用场景中,不确切监督信息同时存在于实例空间和标签空间,即对偶不确切监督信息,如图2所示。在此场景下,MIL和PLL均只能得到次优解。
- 方法:本文提出基于高斯过程的多示例偏标签学习 (MIPLGP):
- 提出标签增广策略,为每个MIPL实例的候选标签集增加一个负类别标签,以保证候选标签集中包含真实标签;
- 提出Dirichlet消歧策略,使得模型可以从候选标签集中推断出真实标签,以及满足多输出高斯过程回归模型的求解条件;
- 设计MIPLGP算法解决MIPL问题。
1.2 代码及数据集
代码:http://palm.seu.edu.cn/zhangml/files/MIPLGP.rar
数据集:http://palm.seu.edu.cn/zhangml/Resources.htm#MIPL_data
1.3 引用
@article{Tang:2023:128,
author = {Wei Tang and Wei Jia Zhang and Min-Ling Zhang},
title = {Multi-Instance Partial-Label Learning: Towards Exploiting Dual Inexact Supervision},
journal = {Science China Information Science},
pages = {1--28},
year = {2023},
url = {https://arxiv.org/pdf/2212.08997}
}
2 方法
MIPLGP为第一个处理MIPL问题的算法,首先介绍其符号系统。
令 X = R d \mathcal{X}=\mathbb{R}^d X=Rd表示实例空间, Y = { l 1 , l 2 , … , l q } \mathcal{Y}=\{ l_1,l_2,\dots,l_q \} Y={l1,l2,…,lq}表示标签空间,其中 q q q是类别数量。MIPL的目标是基于训练数据集 { ( X i , y i ) ∣ 1 ≤ i ≤ m } \{ (\boldsymbol{X}_i,\boldsymbol{y}_i) | 1\leq i\leq m \} {(Xi,yi)∣1≤i≤m}和相应的候选标签集习得一个分类器 h h h: 2 X → Y 2^\mathcal{X}\to\mathcal{Y} 2X→Y,其中 m m m表示包的数量。特别地,MIPL的单个样本表示为 ( X i , y i ) (\boldsymbol{X}_i,\boldsymbol{y}_i) (Xi,yi),其中 X i = [ x i 1 , x i 2 , … , x i z i ] \boldsymbol{X}_i=[\boldsymbol{x}_i^1,\boldsymbol{x}_i^2,\dots,\boldsymbol{x}_i^{z_i}] Xi=[xi1,xi2,…,xizi]是包含 z i z_i zi个实例的包、 x i j ∈ X \boldsymbol{x}_i^j\in\mathcal{X} xij∈X,以及 y i = [ y i 1 , y i 2 , … , y i q ] ∈ { 0 , 1 } q \boldsymbol{y}_i=[y_i^1,y_i^2,\dots,y_i^q]\in\{ 0,1 \}^q yi=[yi1,yi2,…,yiq]∈{0,1}q是候选标签集,其中 y i c = 1 y_i^c=1 yic=1表示第 c c c个标签是候选标签之一。
2.1 标签增广
在MIL中,仅有包标签可用,而实例标签未知。为了处理这个问题,一个简单的方法就是将包的标签简单的视作实例的虚拟标签。显然这样会给正包中的负实例分配错位的标签。相应地,在MIPL中,如果包级别候选标签集直接应用在包内实例上,大部分实例的真实标签将不存在于候选标签集中,这将违背PLL设置。
为了处理以上问题,我们引入增广标签空间 Y ~ = { l 1 , l 2 , … , l q , l n e g } \tilde{\mathcal{Y}}=\{ l_1,l_2,\dots,l_q,l_{neg} \} Y~={l1,l2,…,lq,lneg},其中类别数为 q ~ = q + 1 \tilde{q}=q+1 q~=q+1,即将不属于标签空间 Y \mathcal{Y} Y的实例分配给增强负类 l n e g l_{neg} lneg。例如,给定一个MIL包 X i \boldsymbol{X}_i Xi,其候选标签集为 y i = [ y i 1 , y i 2 , … , y i q ] ⊤ \boldsymbol{y}_i=[y_i^1,y_i^2,\dots,y_i^q]^\top yi=[yi1,yi2,…,yiq]⊤,每个实例的增广候选标签集为 y ~ i = [ y i 1 , y i 2 , … , y i q , y i n e g ] ⊤ \tilde{\boldsymbol{y}}_i=[y_i^1,y_i^2,\dots,y_i^q,y_i^{neg}]^\top y~i=[yi1,yi2,…,yiq,yineg]⊤,其中 y i n e g = 1 y_i^{neg}=1 yineg=1。
令 X = [ x 1 1 , x 1 2 , … , x 1 z 1 , x 2 1 , x 2 2 , … , x m 1 , … , x m z m ] ⊤ ∈ R n × d \mathbf{X}=[\boldsymbol{x}_1^1,\boldsymbol{x}_1^2,\dots,\boldsymbol{x}_1^{z_1},\boldsymbol{x}_2^1,\boldsymbol{x}_2^2,\dots,\boldsymbol{x}_m^1,\dots,\boldsymbol{x}_m^{zm}]^\top\in\mathbb{R}^{n\times d} X=[x11,x12,…,x1z1,x21,x22,…,xm1,…,xmzm]⊤∈Rn×d表示包含包中所有实例的特征句子,其中 Y ~ = [ y ~ 1 1 , y ~ 1 2 , … , y ~ 1 z 1 , y ~ 2 1 , y ~ 2 2 , y ~ m 1 , y ~ m z m ] ⊤ T ∈ R n × q ~ \tilde{\mathbf{Y}}=[\tilde{\boldsymbol{y}}_1^1,\tilde{\boldsymbol{y}}_1^2,\dots,\tilde{\boldsymbol{y}}_1^{z_1},\tilde{\boldsymbol{y}}_2^1,\tilde{\boldsymbol{y}}_2^2,\tilde{\boldsymbol{y}}_m^1,\tilde{\boldsymbol{y}}_m^{z_m}]^\top{T}\in\mathbb{R}^{n\times \tilde{q}} Y~=[y~11,y~12,…,y~1z1,y~21,y~22,y~m1,y~mzm]⊤T∈Rn×q~,以及 n = ∑ i = 1 m z i n=\sum_{i = 1}^m z_i n=∑i=1mzi是实例总数。
2.2 Dirichlet消歧
受PLL中消歧策略的启发,本文构建了一个用于MIPL的Dirichlet消歧策略。
给定增强MIPL训练数据集
(
X
,
Y
~
)
(\mathbf{X},\tilde{\mathbf{Y}})
(X,Y~),单个实例及其候选标签集科研表示为
(
x
i
j
,
y
~
i
j
)
(\boldsymbol{x}_i^j,\tilde{\boldsymbol{y}}_i^j)
(xij,y~ij)。当上下文清晰时,为了简介,我们省略了实例的索引,即有
(
x
i
,
y
~
i
)
(\boldsymbol{x}_i,\tilde{\boldsymbol{y}}_i)
(xi,y~i)。直观上,可以使用类别分布
Cat
(
θ
i
)
\text{Cat}(\boldsymbol{\theta}_i)
Cat(θi)来推断实例的真实标签,其中类别概率
θ
i
=
[
θ
i
1
,
θ
i
2
,
…
,
θ
i
q
,
θ
i
n
e
g
]
\boldsymbol{\theta}_i=[\theta_i^1,\theta_i^2,\dots,\theta_i^q,\theta_i^{neg}]
θi=[θi1,θi2,…,θiq,θineg]是一个多值连续随机变量、
∑
c
=
1
q
~
θ
i
c
=
1
\sum_{c=1}^{\tilde{q}}\theta_i^c=1
∑c=1q~θic=1,以及
θ
i
c
≤
0
\theta_i^c\leq0
θic≤0。为了建立类别分布的类别概率,本文使用Dirichlet分布,其是一个到类别分布的先验共轭,可以降低计算困难。具体地,使用一个带有注意力参数
α
i
=
[
α
i
1
,
α
i
2
,
…
,
α
i
q
,
α
i
n
e
g
]
\boldsymbol{\alpha}_i=[\alpha_i^1,\alpha_i^2,\dots,\alpha_i^q,\alpha_i^{neg}]
αi=[αi1,αi2,…,αiq,αineg]的Dirichlet分布
Dir
(
α
i
)
\text{Dir}(\boldsymbol{\alpha}_i)
Dir(αi)来度量
θ
i
\boldsymbol{\theta}_i
θi。综上,似然模型给定为:
p
(
y
~
i
∣
α
i
)
=
Cat
(
θ
i
)
,
θ
i
∼
Dir
(
α
i
)
.
(1)
\tag{1} p(\tilde{\boldsymbol{y}}_i|\boldsymbol{\alpha}_i)=\text{Cat}(\boldsymbol{\theta}_i),\boldsymbol{\theta}_i\sim\text{Dir}(\boldsymbol{\alpha}_i).
p(y~i∣αi)=Cat(θi),θi∼Dir(αi).(1)为了从Dirichlet分布中获取系数
θ
i
\boldsymbol{\theta}_i
θi,
α
i
\boldsymbol{\alpha}_i
αi的准确值变得至关重要。再监督学习中,每个实例都对应一个真实标签,因此一个厂里权重可以被直接附加给真实标签所对应的索引。例如,给定一个观察
y
i
=
[
y
i
1
,
y
i
2
,
…
,
y
i
q
]
⊤
\boldsymbol{y}_i=[y_i^1,y_i^2,\dots,y_i^q]^\top
yi=[yi1,yi2,…,yiq]⊤,其满足
y
i
c
=
1
y_i^c=1
yic=1且
y
i
j
=
0
(
∀
j
≠
c
)
y_i^j=0(\forall j\neq c)
yij=0(∀j=c),我们有
α
i
c
=
ω
+
α
ϵ
\alpha_i^c=\omega+\alpha_\epsilon
αic=ω+αϵ和
α
i
j
=
α
ϵ
\alpha_i^j=\alpha_\epsilon
αij=αϵ,其中
0
<
α
ϵ
≪
1
0<\alpha_\epsilon\ll1
0<αϵ≪1是Dirichlet先验。然而,在MIPL中直接添加一个常量权重是不合适的,因为候选标签集被虚假正标签污染了。为了克服这个问题,本文将Dirichlet分布与迭代消歧策略协同作用,以从受污染的候选标签集中识别真实标签。为了实现消歧策略,
α
i
c
,
c
∈
{
1
,
2
,
…
,
q
,
n
e
g
}
\alpha_i^c,c\in\{1,2,\dots,q,neg\}
αic,c∈{1,2,…,q,neg}被初始化为均匀权重:
α
i
c
=
{
1
∣
y
~
i
∣
+
α
ϵ
if
y
i
c
=
1
,
α
ϵ
otherwise
,
(2)
\tag{2} \alpha_i^c=\left\{\begin{aligned} &\frac{1}{|\tilde{\boldsymbol{y}}_i|}+\alpha_\epsilon&\text{if}y_i^c=1,\\ &\alpha_\epsilon&\text{otherwise}, \end{aligned}\right.
αic=⎩
⎨
⎧∣y~i∣1+αϵαϵifyic=1,otherwise,(2)其中
0
<
α
ϵ
≪
1
0<\alpha_\epsilon\ll1
0<αϵ≪1,以及
∣
y
~
i
∣
|\tilde{\boldsymbol{y}}_i|
∣y~i∣是增强候选标签集
y
~
i
\tilde{\boldsymbol{y}}_i
y~i中非零元素的数量。分类器输出的softmax值
h
~
i
=
h
~
(
x
i
)
=
[
h
i
1
,
h
i
2
,
…
,
h
i
q
,
h
i
n
e
g
]
\tilde{\boldsymbol{h}}_i=\tilde{\boldsymbol{h}}(\boldsymbol{x}_i)=[h_i^1,h_i^2,\dots,h_i^q,h_i^{neg}]
h~i=h~(xi)=[hi1,hi2,…,hiq,hineg]表示每个候选标签属于真实标签的概率。因此,在每次迭代中,我们利用softmax值来逐步消除虚假正标签和鉴定真实标签:
α
i
c
=
{
exp
(
h
i
c
)
∑
y
i
t
=
1
exp
(
h
i
t
)
+
α
ϵ
if
y
i
c
=
1
,
α
ϵ
otherwise
.
(3)
\tag{3} \alpha_i^c=\left\{\begin{aligned} &\frac{\text{exp}(h_i^c)}{\sum_{y_i^t=1}\text{exp}(h_i^t)}+\alpha_\epsilon&\text{if}y_i^c=1,\\ &\alpha_\epsilon&\text{otherwise}. \end{aligned}\right.
αic=⎩
⎨
⎧∑yit=1exp(hit)exp(hic)+αϵαϵifyic=1,otherwise.(3)接下来的问题变成如何从Dirichlet分布中采样。考虑到生成的质量与代价,设计了一个两阶段过程来从
q
~
\tilde{\boldsymbol{q}}
q~个独立Gamma分布随机变量中生成Dirichlet采样:
- 从Gamma分布 Gamma ( α i c , 1 ) \text{Gamma}(\alpha_i^c,1) Gamma(αic,1)中生成 q ~ \tilde{\boldsymbol{q}} q~个Gamma分布随机变量 { γ i 1 , γ i 2 , … , γ i q , γ i n e g } \{\gamma_i^1,\gamma_i^2,\dots,\gamma_i^q,\gamma_i^{neg}\} {γi1,γi2,…,γiq,γineg};
- 标准化Gamma分布随机变量:
θ i c = γ i c ∑ j = 1 q ~ γ i j , γ i c ∼ Gamma ( α i c , 1 ) . (4) \tag{4} \theta_i^c=\frac{\gamma_i^c}{\sum_{j=1}^{\tilde{q}}\gamma_i^j},\qquad\gamma_i^c\sim\text{Gamma}(\alpha_i^c,1). θic=∑j=1q~γijγic,γic∼Gamma(αic,1).(4)
Gamma ( α i c , 1 ) \text{Gamma}(\alpha_i^c,1) Gamma(αic,1)的概率密度函数为 γ α i c − 1 exp ( − γ ) Γ ( α i c ) \frac{\gamma^{\alpha_i^c-1}\text{exp}(-\gamma)}{\Gamma(\alpha_i^c)} Γ(αic)γαic−1exp(−γ),其中 α i c > 0 \alpha_i^c>0 αic>0被称为形状参数,以及 Γ ( ⋅ ) \Gamma(\cdot) Γ(⋅)是Gamma函数。
为了使用确切的高斯过程模型来准确推测
α
i
c
\alpha_i^c
αic,使用来自对数正态分布
LogNormal
(
y
˙
i
c
,
σ
˙
i
c
)
\text{LogNormal}(\dot{y}_i^c,\dot{\sigma}_i^c)
LogNormal(y˙ic,σ˙ic)的随机变量
x
˙
i
c
\dot{x}_i^c
x˙ic,通过矩匹配来近似
γ
i
c
\gamma_i^c
γic,即均值匹配
E
[
γ
i
c
]
=
E
[
x
˙
i
c
]
\mathbb{E}[\gamma_i^c]=\mathbb{E}[\dot{x}_i^c]
E[γic]=E[x˙ic]和方差匹配
V
[
γ
i
c
]
=
V
[
x
˙
i
c
]
\mathbb{V}[\gamma_i^c]=\mathbb{V}[\dot{x}_i^c]
V[γic]=V[x˙ic]:
α
i
c
=
exp
(
y
˙
i
c
+
σ
i
c
˙
2
)
,
α
i
c
=
(
exp
(
σ
˙
i
c
)
−
1
)
exp
(
2
y
˙
i
c
+
σ
˙
i
c
)
(5)
\tag{5} \alpha_i^c=\text{exp}(\dot{y}_i^c+\frac{\dot{\sigma_i^c}}{2}),\\ \alpha_i^c=(\exp(\dot{\sigma}_i^c)-1)\exp(2\dot{y}_i^c+\dot{\sigma}_i^c)
αic=exp(y˙ic+2σic˙),αic=(exp(σ˙ic)−1)exp(2y˙ic+σ˙ic)(5)基于Milios的工作,以上近似是合理的。
LogNormal
(
y
˙
i
c
,
σ
˙
i
c
)
\operatorname{LogNormal}\left(\dot{y}_i^c, \dot{\sigma}_i^c\right)
LogNormal(y˙ic,σ˙ic)的参数可以通过求解公式5推到:
σ
˙
i
c
=
log
(
1
α
i
c
+
1
)
,
y
˙
i
c
=
log
α
i
c
−
σ
˙
i
c
2
=
3
2
log
α
i
c
−
1
2
log
(
α
i
c
+
1
)
,
(6)
\tag{6} \begin{gathered} \dot{\sigma}_i^c=\log \left(\frac{1}{\alpha_i^c}+1\right), \\ \dot{y}_i^c=\log \alpha_i^c-\frac{\dot{\sigma}_i^c}{2}=\frac{3}{2} \log \alpha_i^c-\frac{1}{2} \log \left(\alpha_i^c+1\right), \end{gathered}
σ˙ic=log(αic1+1),y˙ic=logαic−2σ˙ic=23logαic−21log(αic+1),(6)其中
y
˙
i
c
\dot{y}_i^c
y˙ic是对数空间中的连续标签,以及
σ
˙
i
c
\dot{\sigma}_i^c
σ˙ic是与
y
˙
i
c
\dot{y}_i^c
y˙ic相关的变量。基于以上Dirichlet消歧策略,原始样本
(
x
i
,
y
~
i
)
(\boldsymbol{x}_i,\tilde{\boldsymbol{y}}_i)
(xi,y~i)被转换为
(
x
i
,
y
˙
i
)
(\boldsymbol{x}_i,\dot{\boldsymbol{y}}_i)
(xi,y˙i),其中
y
˙
i
\dot{\boldsymbol{y}}_i
y˙i是具有连续标签的候选标签集。此外,一个高斯似然在对数空间中构建。给定一个MIPL训练集
(
X
,
Y
~
(\mathbf{X},\tilde{\mathbf{Y}}
(X,Y~,我们将候选标签集重塑为按行拼接
Y
˙
=
[
y
˙
1
1
;
y
˙
1
2
;
⋯
;
y
˙
1
z
1
;
y
˙
2
1
;
y
˙
2
2
;
⋯
;
y
˙
m
1
,
⋯
;
y
˙
m
z
m
]
∈
R
q
~
n
\dot{\mathbf{Y}}=\left[\dot{\boldsymbol{y}}_1^1 ; \dot{\boldsymbol{y}}_1^2 ; \cdots ; \dot{\boldsymbol{y}}_1^{z_1} ; \dot{\boldsymbol{y}}_2^1 ; \dot{\boldsymbol{y}}_2^2 ; \cdots ; \dot{\boldsymbol{y}}_m^1, \cdots ; \dot{\boldsymbol{y}}_m^{z_m}\right] \in \mathbb{R}^{\tilde{q} n}
Y˙=[y˙11;y˙12;⋯;y˙1z1;y˙21;y˙22;⋯;y˙m1,⋯;y˙mzm]∈Rq~n。
2.3 高斯过程回归模型
基于连续候选标记集矩阵 Y ˙ \dot{\mathbf{Y}} Y˙,可以将MIPL从一个多分类问题转换为有 q ~ \tilde{q} q~个输出的高斯过程回归过程。为了准确地评估 α i \boldsymbol{\alpha}_i αi,我们基于对数空间中的高斯似然开发了一个用于MIPL的多输出高斯过程回归模型。
对于多输出高斯过程回归模型,首先引入关于
n
n
n个训练实例的
q
~
\tilde{\boldsymbol{q}}
q~个潜在函数
{
f
1
(
⋅
)
,
f
2
(
⋅
)
,
⋯
,
f
q
(
⋅
)
,
f
neg
(
⋅
)
}
\left\{f^1(\cdot), f^2(\cdot), \cdots, f^q(\cdot), f^{\text {neg }}(\cdot)\right\}
{f1(⋅),f2(⋅),⋯,fq(⋅),fneg (⋅)}的向量:
F
=
\mathbf{F}=
F=
[
f
1
,
f
2
,
⋯
,
f
neg
]
⊤
=
[
f
1
1
,
⋯
,
f
n
1
,
f
1
2
,
⋯
,
f
n
2
,
⋯
,
f
1
neg
,
⋯
,
f
n
neg
]
⊤
\left[f^1, f^2, \cdots, f^{\text {neg }}\right]^{\top}=\left[f_1^1, \cdots, f_n^1, f_1^2, \cdots, f_n^2, \cdots, f_1^{\text {neg }}, \cdots, f_n^{\text {neg }}\right]^{\top}
[f1,f2,⋯,fneg ]⊤=[f11,⋯,fn1,f12,⋯,fn2,⋯,f1neg ,⋯,fnneg ]⊤,其中潜在变量
F
\mathbf{F}
F的长度为
q
~
n
\tilde{q} n
q~n。
F
\mathbf{F}
F的分布通过一个先验均值函数
μ
=
0
\mu=0
μ=0和一个协方差函数,即一个先验核
k
(
⋅
,
⋅
)
:
R
d
×
R
d
→
R
k(\cdot, \cdot): \mathbb{R}^d \times \mathbb{R}^d \rightarrow \mathbb{R}
k(⋅,⋅):Rd×Rd→R定义,其被选择为Mat
e
′
\stackrel{\prime}{e}
e′rn核。
∀
c
,
c
′
∈
{
1
,
2
,
⋯
,
q
\forall c, c^{\prime} \in\{1,2, \cdots, q
∀c,c′∈{1,2,⋯,q, neg
}
\}
},任意实例对
x
x
x and
x
′
x^{\prime}
x′输出的相关性可以表示为:
Cov
[
f
c
(
x
)
,
f
c
′
(
x
′
)
]
=
k
c
(
x
,
x
′
)
=
{
2
1
−
ν
Γ
(
ν
)
(
2
ν
d
ℓ
)
ν
K
ν
(
2
ν
d
ℓ
)
if
c
=
c
′
0
otherwise.
(7)
\tag{7} \operatorname{Cov}\left[f^c(x), f^{c^{\prime}}\left(x^{\prime}\right)\right]=k^c\left(x, x^{\prime}\right)=\left\{\begin{array}{cc} \frac{2^{1-\nu}}{\Gamma(\nu)}\left(\frac{\sqrt{2 \nu} d}{\ell}\right)^\nu K_\nu\left(\frac{\sqrt{2 \nu} d}{\ell}\right) & \text { if } c=c^{\prime} \\ 0 & \text {otherwise.} \end{array}\right.
Cov[fc(x),fc′(x′)]=kc(x,x′)={Γ(ν)21−ν(ℓ2νd)νKν(ℓ2νd)0 if c=c′otherwise.(7)一般而言,
ν
\nu
ν是一个平滑参数,可以取值为
{
0.5
,
1.5
,
2.5
}
\{0.5,1.5,2.5\}
{0.5,1.5,2.5}。
ℓ
\ell
ℓ是一个正参数、
d
d
d是两个实例
x
x
x和
x
′
\boldsymbol{x}^{\prime}
x′之间的欧式距离,以及
K
ν
K_\nu
Kν是修改后的Bessel函数。最终,协方差矩阵
K
∈
R
q
~
n
×
q
~
n
\mathbf{K} \in \mathbb{R}^{\tilde{q} n \times \tilde{q} n}
K∈Rq~n×q~n是由形状为
n
×
n
n\times n
n×n的矩阵
K
1
,
K
2
,
⋯
,
K
q
~
\mathbf{K}^1, \mathbf{K}^2, \cdots, \mathbf{K}^{\tilde{q}}
K1,K2,⋯,Kq~构成的块对角矩阵。高斯过程将高斯先验置于潜在变量
F
∼
G
P
(
0
,
K
)
\mathbf{F} \sim \mathcal{G} \mathcal{P}(\mathbf{0}, \mathbf{K})
F∼GP(0,K),即
P
(
F
∣
X
)
=
N
(
0
,
K
)
P(\mathbf{F} \mid \mathbf{X})=\mathcal{N}(\mathbf{0}, \mathbf{K})
P(F∣X)=N(0,K)之上,以及对数空间中的高斯似然是
P
(
Y
˙
∣
F
)
=
N
(
F
,
Σ
)
P(\dot{\mathbf{Y}} \mid \mathbf{F})=\mathcal{N}(\mathbf{F}, \Sigma)
P(Y˙∣F)=N(F,Σ),其中
Σ
\Sigma
Σ是
log
Normal
(
y
˙
i
c
,
σ
˙
i
c
)
\log \operatorname{Normal}\left(\dot{y}_i^c, \dot{\sigma}_i^c\right)
logNormal(y˙ic,σ˙ic)中
σ
˙
i
c
\dot{\sigma}_i^c
σ˙ic的矩阵形式。基于Bayes规则,后验分布
P
(
F
∣
P(\mathbf{F} \mid
P(F∣
X
,
Y
˙
)
∝
P
(
F
∣
X
)
P
(
Y
˙
∣
F
)
\mathbf{X}, \dot{\mathbf{Y}}) \propto P(\mathbf{F} \mid \mathbf{X}) P(\dot{\mathbf{Y}} \mid \mathbf{F})
X,Y˙)∝P(F∣X)P(Y˙∣F)以及边缘似然
P
(
Y
˙
∣
X
)
=
∫
F
P
(
F
∣
X
)
P
(
Y
˙
∣
F
)
P(\dot{\mathbf{Y}} \mid \mathbf{X})=\int_F P(\mathbf{F} \mid \mathbf{X}) P(\dot{\mathbf{Y}} \mid \mathbf{F})
P(Y˙∣X)=∫FP(F∣X)P(Y˙∣F)都是高斯分布。
以上似然均基于实例级特征和标签。然而,在MIL中,不可避免的一个问题是如何汇聚实例标签为包标签。这个问题在MIPL中同样存在,且由于多分类设置,其将更困难。一个可行的方式是将包标签设置为所有实例类别标签概率的最大值。令
Θ
~
i
=
[
θ
i
1
,
θ
i
2
,
⋯
,
θ
i
z
i
]
⊤
∈
R
z
i
×
q
ˉ
(
θ
i
j
=
[
θ
i
1
,
θ
i
2
,
⋯
,
θ
i
q
,
θ
i
neg
]
⊤
\widetilde{\boldsymbol{\Theta}}_i=\left[\boldsymbol{\theta}_i^1, \boldsymbol{\theta}_i^2, \cdots, \boldsymbol{\theta}_i^{z_i}\right]^{\top} \in \mathbb{R}^{z_i \times \bar{q}}\left(\boldsymbol{\theta}_i^j=\left[\theta_i^1, \theta_i^2, \cdots, \theta_i^q, \theta_i^{\text {neg }}\right]^{\top}\right.
Θ
i=[θi1,θi2,⋯,θizi]⊤∈Rzi×qˉ(θij=[θi1,θi2,⋯,θiq,θineg ]⊤ for
j
=
1
,
2
,
⋯
,
z
i
)
\left.j=1,2, \cdots, z_i\right)
j=1,2,⋯,zi)表示实例的类别概率,我们将
Θ
~
i
\widetilde{\boldsymbol{\Theta}}_i
Θ
i裁剪为
Θ
i
=
[
θ
^
i
1
,
θ
^
i
2
,
⋯
,
θ
^
i
z
i
]
⊤
∈
R
z
i
×
q
\Theta_i=\left[\hat{\boldsymbol{\theta}}_i^1, \hat{\boldsymbol{\theta}}_i^2, \cdots, \hat{\boldsymbol{\theta}}_i^{z_i}\right]^{\top} \in \mathbb{R}^{z_i \times q}
Θi=[θ^i1,θ^i2,⋯,θ^izi]⊤∈Rzi×q,其中
θ
^
i
j
=
[
θ
i
1
,
θ
i
2
,
⋯
,
θ
i
q
]
⊤
\hat{\boldsymbol{\theta}}_i^j=\left[\theta_i^1, \theta_i^2, \cdots, \theta_i^q\right]^{\top}
θ^ij=[θi1,θi2,⋯,θiq]⊤。最终,汇聚的包标签为:
Y
i
=
ψ
(
Θ
i
)
,
(8)
\tag{8} Y_i=\psi\left(\Theta_i\right),
Yi=ψ(Θi),(8)其中
ψ
(
Θ
i
)
\psi\left(\boldsymbol{\Theta}_i\right)
ψ(Θi)用于查询
Θ
i
\Theta_i
Θi列索引的最大值。MIPLGP的板块图如图3所示,其中灰色圈表示观测变量,即特征和包标签,白色圈表示潜在变量。
在训练阶段,模型参数
Φ
\Phi
Φ通过最小化负对数边缘似然习得:
L
=
−
log
P
(
Y
˙
∣
X
,
Φ
)
∝
log
∣
K
∣
+
Y
˙
⊤
K
−
1
Y
˙
,
(9)
\tag{9} \mathcal{L}=-\log P(\dot{\mathbf{Y}} \mid \mathbf{X}, \Phi) \propto \log |\mathbf{K}|+\dot{\mathbf{Y}}^{\top} \mathbf{K}^{-1} \dot{\mathbf{Y}},
L=−logP(Y˙∣X,Φ)∝log∣K∣+Y˙⊤K−1Y˙,(9)其导数为:
∂
L
∂
Φ
∝
Tr
(
K
−
1
∂
K
∂
Φ
)
−
Y
˙
⊤
K
∂
K
−
1
∂
Φ
K
Y
˙
(10)
\tag{10} \frac{\partial \mathcal{L}}{\partial \Phi} \propto \operatorname{Tr}\left(\mathbf{K}^{-1} \frac{\partial \mathbf{K}}{\partial \Phi}\right)-\dot{\mathbf{Y}}^{\top} \mathbf{K} \frac{\partial \mathbf{K}^{-1}}{\partial \Phi} \mathbf{K} \dot{\mathbf{Y}}
∂Φ∂L∝Tr(K−1∂Φ∂K)−Y˙⊤K∂Φ∂K−1KY˙(10)其中
Tr
(
⋅
)
\operatorname{Tr}(\cdot)
Tr(⋅)是矩阵的迹操作。对于高斯过程,
K
−
1
\mathbf{K}^{-1}
K−1的Gholesky过程通常需要消耗
O
(
q
~
n
3
)
\mathcal{O}\left(\tilde{q} n^3\right)
O(q~n3)。而在GPU加速下,时间复杂度可以降为
O
(
q
~
n
2
)
\mathcal{O}\left(\tilde{q} n^2\right)
O(q~n2)。此外,一个预处理器被用于进一步加速计算。
给定一个无表情包
X
∗
=
[
x
1
,
x
2
,
⋯
,
x
z
∗
]
\boldsymbol{X}_*=\left[x^1, x^2, \cdots, x^{z_*}\right]
X∗=[x1,x2,⋯,xz∗],GP模型首先生成预测分布
P
(
F
∗
∣
X
,
Y
˙
,
x
i
∗
)
(
i
∗
=
1
,
2
,
⋯
,
z
∗
)
P\left(\mathbf{F}^* \mid \mathbf{X}, \dot{\mathbf{Y}}, x^{i_*}\right)\left(i_*=1,2, \cdots, z_*\right)
P(F∗∣X,Y˙,xi∗)(i∗=1,2,⋯,z∗),其中
F
∗
=
[
f
∗
1
,
f
∗
2
,
⋯
,
f
∗
q
~
]
⊤
\mathbf{F}^*=\left[f^{* 1}, f^{* 2}, \cdots, f^{* \tilde{q}}\right]^{\top}
F∗=[f∗1,f∗2,⋯,f∗q~]⊤是相应的潜在变量。类别标签的Dirichlet厚颜通过预测分布获取,因此类别概率的期望为:
E
[
θ
i
∗
c
∣
X
,
Y
˙
,
x
i
∗
]
=
∫
F
∗
exp
(
f
∗
c
(
x
i
∗
)
)
∑
j
=
1
q
~
exp
(
f
∗
j
(
x
i
∗
)
)
P
(
f
∗
c
(
x
i
∗
)
∣
X
,
Y
˙
,
x
i
∗
)
,
(11)
\tag{11} \mathbb{E}\left[\theta_{i_*}^c \mid \mathbf{X}, \dot{\mathbf{Y}}, x^{i_*}\right]=\int_{\mathbf{F}^*} \frac{\exp \left(f^{* c}\left(x^{i_*}\right)\right)}{\sum_{j=1}^{\tilde{q}} \exp \left(f^{* j}\left(x^{i *}\right)\right)} P\left(f^{* c}\left(x^{i_*}\right) \mid \mathbf{X}, \dot{\mathbf{Y}}, x^{i *}\right),
E[θi∗c∣X,Y˙,xi∗]=∫F∗∑j=1q~exp(f∗j(xi∗))exp(f∗c(xi∗))P(f∗c(xi∗)∣X,Y˙,xi∗),(11)其中
P
(
f
∗
c
(
x
i
∗
)
∣
X
,
Y
˙
,
x
i
∗
)
P\left(f^{* c}\left(x^{i_*}\right) \mid \mathbf{X}, \dot{\mathbf{Y}}, x^{i_*}\right)
P(f∗c(xi∗)∣X,Y˙,xi∗)是用于
f
∗
c
(
⋅
,
⋅
)
f^{* c}(\cdot, \cdot)
f∗c(⋅,⋅)的预测分布。令实例
x
i
∗
\boldsymbol{x}^{i_*}
xi∗的类别概率为
θ
∗
i
∗
=
[
θ
i
∗
1
,
θ
i
∗
2
,
⋯
,
θ
i
∗
q
,
θ
i
∗
neg
]
\boldsymbol{\theta}_*^{i_*}=\left[\theta_{i_*}^1, \theta_{i_*}^2, \cdots, \theta_{i_*}^q, \theta_{i_*}^{\text {neg }}\right]
θ∗i∗=[θi∗1,θi∗2,⋯,θi∗q,θi∗neg ],且令
Θ
~
∗
=
[
θ
∗
1
,
θ
∗
2
,
⋯
,
θ
∗
z
∗
]
⊤
∈
R
z
∗
×
q
~
\widetilde{\Theta}_*=\left[\boldsymbol{\theta}_*^1, \boldsymbol{\theta}_*^2, \cdots, \boldsymbol{\theta}_*^{z_*}\right]^{\top} \in \mathbb{R}^{z_* \times \tilde{q}}
Θ
∗=[θ∗1,θ∗2,⋯,θ∗z∗]⊤∈Rz∗×q~表示测试包
X
∗
\boldsymbol{X}_*
X∗中所有实例的类别概率。然后,去除类别
l
neg
l_{\text {neg }}
lneg ,得到
Θ
∗
∈
R
z
∗
×
q
\Theta_* \in \mathbb{R}^{z * \times q}
Θ∗∈Rz∗×q。最终包的预测概率为:
Y
∗
=
ψ
(
Θ
∗
)
(12)
\tag{12} Y_*=\psi\left(\Theta_*\right)
Y∗=ψ(Θ∗)(12)算法1总结了MIPLGP的完整过程。
3 实验
3.1 实验设置
3.1.1 数据集
目前并没有严格意义上的MIPL数据集,对此,我们合成了五个MIPL数据集,包括MNIST-MIPL、FMNIST-MIPL、Newsgroups-MIPL、Birdsong-MIPL,以及SIVAL-MIPL。
表1总结了这些数据集的特点,其中表头从第二列开始依次表示包的数量、实例的数量、最大包的大小、最小包的大小、实例的维度、对应数据集的目标类别数量、MIPL中目标类标签的数量、保留类标签的数量,以及每个数据集中正实例的百分比。
为了合成带有候选标签集的MIL包,我们从目标类别中选择正实例,负实例则从保留类中选择。此外,在没有替换的情况下从目标类中采样虚假正标签。为了更全面的性能评估,虚假正标签的数量依赖于控制参数
r
(
∣
y
i
∣
=
r
+
1
)
r(|\boldsymbol{y}_i|=r+1)
r(∣yi∣=r+1)。
以MNIST-MIPL为例,首先从MNIST数据集中,选取目标类 { 0 , 2 , 4 , 6 , 8 } \{ 0,2,4,6,8 \} {0,2,4,6,8},余下则作为保留类。然后,将目标类中的任意 r r r个虚假正标签添加到候选标签集中。