[论文阅读]:Semi-supervised Multi-instance Learning with Density Peaks Clustering

[论文阅读]:Semi-supervised Multi-instance Learning with Density Peaks Clustering

时间:2022/5/31

1.题目

Semi-supervised Multi-instance Learning with Density Peaks Clustering

密度峰值聚类的半监督多示例学习

2.摘要

文章提出了密度峰值聚类的半监督多示例学习(Semi-supervised Multi-instance Learning with Density Peaks Clustering,SMDP)算法,包含三个步骤:

(1)结合高斯核和五种距离度量,使用基于密度峰值聚类的方法寻找代表包;

(2)基于包之间的距离将每一个包转换为单实例,其第i个属性为它与第i个代表包的距离;

(3)使用转换后的数据训练分类器。

SMDP在文本和图像数据集上的处理效果优异。

3.主要贡献

  1. 将密度峰值算法应用MIL中的代表包选择过程中,提高了代表包的选取效率。

  2. 对文本数据集和图像数据集分别利用虚拟Hausdorff距离和最小偏差距离。它们具有更高的适用性和更低的时间复杂度。

  3. 与现有的算法相比,SMDP在大部分MIL数据集上具有更好的性能。

4.符号系统

符号含义
X实例空间
S数据集
N数据集大小
c类标号个数
S k , k ∈ [ 1... c ] S_k,k\in [1...c] Sk,k[1...c]第k个类的包
S i , i ∈ [ 1... l ] S_i,i\in[1...l] Si,i[1...l]带标签的包
S u , i ∈ [ l + 1 , . . . , N ] S_u,i\in[l+1,...,N] Su,i[l+1,...,N]不带标签的包
B i B_i Bi第i个包
y i , i ∈ [ 1 , . . . , l ] y_i,i\in[1,...,l] yi,i[1,...,l]第i个包的标签
l l l数据集 S i S_i Si的大小
x i j x_{ij} xij第i个包的第j个实例
d i j d_{ij} dij B i 与 B j 的 距 离 B_i与B_j的距离 BiBj
d c d_c dccutoff距离
r r r d c 的 比 率 d_c的比率 dc
ρ i \rho_i ρi第i个包的密度
δ i \delta_i δi到包 B i 的 m a s t e r 的 距 离 B_i的master的距离 Bimaster
n c n_c nc簇中心的个数
p p p簇中心个数与实例个数的比例
y i ‘ , i ∈ [ l + 1... N ] y_i^`,i\in [l+1...N] yi,i[l+1...N]预测标签

5.密度峰值聚类

大师兄的文章对该算法进行了详细描述,[机器学习之Density Peaks_因吉的博客-CSDN博客_density peaks)

5.1.三种距离

同一标准下,用于计算密度的半径距离。首先是diameter dc距离,其定义为:

d c d i a m e t e r = m a x ( ∑ i = 0 i < n − 1 ∑ j = i + 1 n d i s t a n c e ( x i , x j ) ) ∗ d c r a t i o (1) dc_{diameter}=max(\sum_{i=0}^{i<n-1}\sum_{j=i+1}^n{distance(x_i,x_j)})*dc_{ratio}\tag{1} dcdiameter=max(i=0i<n1j=i+1ndistance(xi,xj))dcratio(1)

第二个距离为average dc距离,定义为:

d c a v e r a g e = a v e r a g e ( ∑ i = 0 i < n − 1 ∑ j = i + 1 n d i s t a n c e ( x i , x j ) ) ∗ d c r a t i o (1) dc_{average}=average(\sum_{i=0}^{i<n-1}\sum_{j=i+1}^n{distance(x_i,x_j)})*dc_{ratio}\tag{1} dcaverage=average(i=0i<n1j=i+1ndistance(xi,xj))dcratio(1)

第三个距离为min dc,定义为:

d c m i n = m i n ( ∑ i = 0 i < n − 1 ∑ j = i + 1 n d i s t a n c e ( x i , x j ) ) ∗ d c r a t i o (2) dc_{min}=min(\sum_{i=0}^{i<n-1}\sum_{j=i+1}^n{distance(x_i,x_j)})*dc_{ratio}\tag{2} dcmin=min(i=0i<n1j=i+1ndistance(xi,xj))dcratio(2)

5.2.局部密度

这里也有两种方式计算。首先是使用cutoff核。

k e r n e l c u t o f f : ρ i = ∑ j = 0 n f ( d i s t a n c e ( x i , x j ) − d c ) (3) kernel_{cutoff}:ρ_i=\sum_{j=0}^nf(distance(x_i,x_j)−dc)\tag{3} kernelcutoff:ρi=j=0nf(distance(xi,xj)dc)(3)

其中

f ( x ) = { 0 , x > 0 1 , x ≤ 0 (4) f(x)= \begin{cases} 0,& \text{x > 0}\\ 1,& \text{x$\le$0} \end{cases}\tag{4} f(x)={0,1,x > 0x0(4)

在一定的dc范围内,有多少个实例,便密度 ρ i \rho_i ρi就是多少。但会出现具有相同密度的实例。解决方法是:

  1. 使用自然优先级,将实例按密度从大到小排列,必然会有先后顺序出现。

  2. 使用高斯核。如下:

k e r n e l g a u s s i a n : ρ i = ∑ j = 0 n e − ( d i s t a n c e ( x i , x j ) d c ) 2 (5) kernel_{gaussian}:ρ_i=\sum_{j=0}^ne^{-({distance(x_i,x_j)\over dc})^2}\tag{5} kernelgaussian:ρi=j=0ne(dcdistance(xi,xj))2(5)

其中distance均为欧式距离。高斯核可以极大程度的避免出现相同密度的实例的情况,且能保证随着单个实例范围的其他实例数量增加时,也会相应的增大。

5.3.计算实例与其master的距离

δ i = { m a x ( d i s t a n c e ( x i , x j ) ) , ρ i = max ⁡ j ∈ [ l . . . N ] ( ρ j )  > 0 min ⁡ j ∈ [ l . . N ] ∣ ρ j > ρ i , otherwise (6) \delta_i= \begin{cases} max(distance(x_i,x_j)),& \text{$\rho_i={\max_{j\in[l...N]}}(\rho_j)$ > 0}\\ \text{$\min_{j\in[l..N]|\rho_j > \rho_i}$},& \text{otherwise} \end{cases}\tag{6} δi={max(distance(xi,xj)),minj[l..N]ρj>ρi,ρi=maxj[l...N](ρj) > 0otherwise(6)

最终的距离定义为:

λ i = ρ i ∗ δ i (7) \lambda_i=\rho_i*\delta_i\tag{7} λi=ρiδi(7)

使得实例中具有最高密度和最远距离的作为聚类中心。

6.算法

在这里插入图片描述

7.SMDP中的密度峰值聚类

在算法中,主要是使用DP算法进行代表包的选择,使用相关距离度量进行计算包与包之间的距离。而最终的包的代表性也是由基于这个距离进行计算的。每个包的master均是距离其最近且密度最大的包。

8.两种新的距离度量

对于文本数据集,可以使用包的中心实例代表整个包,则中心实例代表的计算如下:

x ‾ = ∑ j = 1 n i x i j n i (8) \overline x={\sum_{j=1}^{n_i}x_{ij}\over n_i}\tag{8} x=nij=1nixij(8)

这里有个新的虚拟距离virtual Hausdorff distanced( d v i r d^{vir} dvir),使用上式来计算包与包之间的距离,而不是使用包来计算,其定义为:

d v i r = d ( x i ‾ , x j ‾ ) (9) d^{vir}=d(\overline {x_i},\overline {x_j})\tag{9} dvir=d(xi,xj)(9)

对于图像数据集,使用min-bias distance( d b i a d^{bia} dbia),其定义为:

d i j b i a = min ⁡ i = 1 n i d ( x i a , b i a s ) (10) d_{ij}^{bia}=\min_{i=1}^{n_i}d(x_{ia},b_{ias})\tag{10} dijbia=i=1minnid(xia,bias)(10)

其中

b i a s = ∑ x i a n i x i a + ∑ x j b n j x j b n i + n j (11) b_{ias}={{\sum_{x_{ia}}^{n_i}x_{ia}+\sum_{x_{jb}}^{n_j}x_{jb}}\over{n_i+n_j}}\tag{11} bias=ni+njxianixia+xjbnjxjb(11)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值