论文阅读 (一):Isolation set-kernel and its application to multi-instance learning (2019)

前言

  最近开始研读周老师《Isolation set-kernel and its application to multi-instance learning》这篇文章,之前只是大致浏览,如今细细品味一番。
  论文地址:https://cs.nju.edu.cn/zhouzh/zhouzh.files/publication/kdd19iskernel.pdf

摘要

  集合级别 (set-level)问题与实例级别问题 (instance-level)同等重要,其解决核心是如何度量两个集合之间的相似性 (similarity)。在周老师这篇文章中,研究了由数据直接衍生的数据相关核 (data-dependent kernel),要点如下:

  1. Isolation set-kernel:完全依赖于数据分布,且不需要类别信息 (class information)和外显示学习 (explicit learning)。
  2. 出发点:已有set-similarities大都不依赖于数据分布。
  3. Set-kernel特征图 (feature map)有限:证明了这一特点能显著加速set-kernel的计算。
  4. Set-kernel与SVM共同运用于多示例问题。

1 引入

  要点如下:

  1. 多示例类型:如果包中的实例至少有一个具有某类标签,则该包归属该类;对于二分类,如果该包包含至少一个正实例,则包为正包反之为负。
  2. 方法类型:将多示例问题转化为单实例问题。
  3. 基于核的方法 (kernel-based):基于已有的例如Gaussian kernel设计新的核;使用已有的核例如Fisher kernel调整后使用。
  4. 本文方法与Gaussian set-kernel的不同之处:
名称 Isolation set-kernel Gaussian set-kernel
数据相关性 基于数据相关核:Isolation kernel 基于数据不相关核:Gaussian kernel
特征图特点 固定长度;稀疏表示 长度不固定
  1. 本文方法与Fisher set-kernel的不同之处:
名称 Isolation set-kernel Fisher set-kernel
似然估计 (likelihood estimation)或其他外显示学习 ×
稀疏表示 ×
  1. 主要贡献:
    7.1) 设计了一种新的数据相关核,即Isolation set-kernel,其能适应给定数据集的相关结构;
    7.2) 对所提出核的特性进行理论分析;
    7.3) Isolation set-kernel的特征图是将任意大小的集合转换为固定长度的实例,这种特性将显著降低算法运行时间;
    7.4) 运用加权类型的set-kernel来处理多示例问题。

2 Isolation kernel

  Isolation kernel最开始用于度量两个实例之间的相似性,周老师将其扩展为用于度量两个集合之间的相似性,首先给出相关符号表:

符号 意义
D D 给定的数据集
D \mathcal{D} , where D D \mathcal{D} \subset D 随机子集
ψ = \psi = | D \mathcal{D} | 随机子集的大小
H ( D ) \mathcal{H} (D) D D 下可容许的所有分区 (partition) H H 的集合
H H , where H H ψ ( D ) H \in \mathcal{H}_{\psi} (D) 分区
θ \theta , where θ H \theta \in H Isolation 分区,其作用为:在给定的一个 D \mathcal{D} 中将一个实例 x x 与其余实例隔开
S i = { x 1 , , x w i } S_i = \{ x_1, \dots, x_{w_i} \} , where x k R d x_k \in \mathbb{R}^d 一个采样于未知概率密度函数 F F 的数据集 ( S i F S_i \sim F )

  定义2.1. 对于给定的两个实例 x , y R d x, y \in \mathbb{R}^d ,其之间关于 D D 的Isolation kernel被定义为在所有的 H H 上, x x y y 同属于一个 θ \theta 密度分布期望 (probability distribution expectation)
K ( x , y D ) = E H ψ ( D ) [ I ( x , y θ θ H ) ] (1) K (x, y | D) = \mathbb{E}_{\mathcal{H}_{\psi} (D)} [ \mathbb{I} (x, y \in \theta | \theta \in H)] \tag{1} 其中 I ( B ) \mathbb{I} (B) 是指示函数, B B 为真则输出1;反之为0。
  实际上,Isolation kernel可以通过有限数量的 H i H ψ ( D ) H_i \in \mathcal{H}_{\psi} (D) i 1 , , t i \in 1, \dots, t 来估算:
K ( x , y D ) = 1 t i = 1 t θ H i I ( x θ ) I ( y θ ) (2) K (x, y | D) = \frac{1}{t} \sum_{i=1}^{t} \sum_{ \theta \in H_i} \mathbb{I} (x \in \theta) \mathbb{I} (y \in \theta) \tag{2} 因此, K ( x , y ) [ 0 , 1 ] K (x, y) \in [0, 1]

3 Isolation set-kernel

3.1 ISK的定义

  定义3.1. ISK (Isolation set-kernel). 对于任意给定的两个集合 T T S S ,其之间关于 D D 的ISK定义为在所有的 H H 上, x T x \in T y S y \in S 同属于一个 θ \theta 密度分布期望
K ψ ( S , T D ) = E H ψ ( D ) [ I ( x , y θ θ H ; x T , y S ) ] (3) \mathcal{K}_{\psi} (S, T | D) = \mathbb{E}_{\mathcal{H}_{\psi} (D)} [ \mathbb{I} (x, y \in \theta | \theta \in H; x \in T, y \in S)] \tag{3}
  实际上, K ψ \mathcal{K}_{\psi} 可以通过有限数量的 H i H ψ ( D ) H_i \in \mathcal{H}_{\psi} (D) i 1 , , t i \in 1, \dots, t 来估算:
K ψ ( x , S D ) = 1 t S y S i = 1 t I ( x , y θ θ H i ) = 1 S y S K ( x , y D ) (4) \mathcal{K}_{\psi} (x, S | D) = \frac{1}{t |S|} \sum_{y \in S} \sum_{i=1}^{t} \mathbb{I} (x, y \in \theta | \theta \in H_i) = \frac{1}{|S|} \sum_{y \in S} K (x, y | D) \tag{4}
K ψ ( S , T D ) = 1 T x T K ψ ( x , S D ) (5) \mathcal{K}_{\psi} (S, T | D) = \frac{1}{|T|} \sum_{x \in T} \mathcal{K}_{\psi} (x, S | D) \tag{5}   简单说来就是给定的两个集合之间的每一对实例均需要计算一次 K ( x , y D ) K (x, y | D) ,要注意的是什么时候取平均。
  目前要解决的问题是:如何确定分区 H i H_i 以及Isolation分区 θ \theta

3.2 ISK特征图

  ISK特征图具有如下特点:
  1)用户可定义数量的特征的稀疏表示;
  2)数据相关性。

  具体描述如下:
  令 v ( S H ) \mathbf{v} (S | H) 为长度为 ψ \psi 的向量,表示 S S 中实例所占比例下降的所有分区 θ j H , j = 1 , , ψ \theta_j \in H, j = 1, \dots, \psi 。此向量的第 j j 个部分定义如下:
v j ( S H ) = 1 S y S I ( y θ j θ j H ) (6) v_j (S | H) = \frac{1}{| S |} \sum_{y \in S} \mathbb{I} (y \in \theta_j | \theta_j \in H) \tag{6}
  定义3.2. Feature map of ISK. 对于任意的集合 S R d S \subset \mathbb{R}^d ,其特征映射 Φ \Phi 为: K ψ \mathcal{K}_{\psi} S R t × ψ S \rightarrow \mathbb{R}^{t \times \psi} 是一个向量,表示 x S x \in S 所占比例下降的所有分区 H i H ψ ( D ) , i = 1 , , t H_i \in \mathcal{H}_{\psi} (D), i = 1, \dots, t
Φ ( S ) = [ v ( S H 1 ) , v ( S H 2 ) , , v ( S H t ) ] (7) \Phi (S) = [\mathbf{v} (S | H_1), \mathbf{v} (S | H_2), \dots, \mathbf{v} (S | H_t)] \tag{7}
   Φ ( S ) \Phi (S) 是一个固定长度的向量,通过级联 Φ i ( S ) , i = 1 , , t \Phi_i (S), i = 1, \dots, t 得到。运用特征图,可以将任意大小的集合 S R d S \subset \mathbb{R}^d 映射为 R t × ψ \mathbb{R}^{t \times \psi} 实例。注意此特征图是数据相关且稀疏的表示。

  引理3.3. K ψ \mathcal{K}_{\psi} 是一个合理的核,即 K ψ ( S , T ) < Φ ( S ) , Φ ( T ) > \mathcal{K}_{\psi} (S, T) \equiv <\Phi (S), \Phi(T)> ,证明如下:
  公式(5)可以重新表示为:
K ψ ( S , T ) = 1 T x T [ 1 t S y S i = 1 t θ H i I ( x θ ) I ( y θ ) ] = 1 t T S i = 1 t [ x T y S θ H i I ( x θ ) I ( y θ ) ] = 1 t T S i = 1 t Φ i ( S ) T Φ i ( T ) = 1 t Φ ( S ) T Φ ( T ) = c o n s t × < Φ ( S ) , Φ ( T ) > (8) \begin{matrix} \mathcal{K}_{\psi} (S, T) = \frac{1}{| T|} \sum \limits_{x \in T} \bigg[ \frac{1}{t | S |} \sum \limits_{y \in S} \sum \limits_{i = 1}^{t} \sum \limits_{\theta \in H_i} \mathbb{I} (x \in \theta) \mathbb{I} (y \in \theta) \bigg]\\ = \frac{1}{t | T | | S |} \sum \limits_{i = 1}^{t} \bigg[ \sum \limits_{x \in T} \sum \limits_{y \in S} \sum \limits_{\theta \in H_i} \mathbb{I} (x \in \theta) \mathbb{I} (y \in \theta) \bigg]\\ = \frac{1}{t | T | | S |} \sum \limits_{i = 1}^{t} \Phi_i (S)^{\mathbf{T}} \Phi_i (T) = \frac{1}{t} \Phi (S)^{\mathbf{T}} \Phi (T)\\ = const \times <\Phi (S), \Phi(T)> \\ \end{matrix} \tag{8}
  这个证明_(¦3」∠)_。。。先记住结论丷,总之它有如下特征和优势:
  1)是固定长度的表示,能够将不同大小的单个集合转换为具有相同大小的单个映射实例;
  2)适应了给定数据集的密度结构,不像已有的类似Gaussian kernel这样的数据不相关核;
  3)是一种稀疏表示,能够提高核的计算效率。

  到这里之前的问题依然没有解决。。。先不方。。。

4 Voronoi图实现ISK

  Isolation kernel目前有两种成功的划分机制,包括Isolation Forest和Voronoi diagram。周老师这篇文章使用的是Voronoi图来实现ISK。
  关于voronoi图的介绍可以大致浏览百度百科或者(#^.^#)博客

  使用随机选择的大小为 ψ \psi 的样本 D \mathcal{D} 构造Voronoi图,其单元 (cell)中心 z D z \in \mathcal{D} 为:
θ [ z ] = { x R z = arg min z D d ( x , z ) } (9) \theta [z] = \{ x \in \mathbb{R} | z = \argmin \limits_{z \in \mathcal{D}} d (x, z)\} \tag{9} 其中 d ( x , z ) d (x, z) 是欧式距离。简单说来中心 z z 就是给定样本中离其他实例的距离之和最小的那个。
  定义 4.1. 给定任意两个集合 S , T R d S, T \subset \mathbb{R}^d ,关于 D D S S T T 之间的ISK Voronoi图定义为在所有的Voronoi图 H H ψ ( D ) H \in \mathcal{H}_{\psi} (D) 上, x S x \in S y T y \in T 同时属于一个Voronoi单元 θ H \theta \in H 的概率分布期望。很熟悉对吧~现在之前的问题有了些许眉目(\╹▽╹):
K ψ ( S , T D ) = E H ψ ( D ) [ I ( x , y θ [ z ] θ [ z ] H ; x S , y T ) ] = E D D [ I ( x , y θ [ z ] z H ; x S , y S ) ] = P ( x , y θ [ z ] z D D ; x S , y S ) (10) \begin{matrix} \mathcal{K}_{\psi} (S, T | D) = \mathbb{E}_{\mathcal{H}_{\psi} (D)} [ \mathbb{I} (x, y \in \theta [z] | \theta [z] \in H; x \in S, y \in T)] \\ = \mathbb{E}_{\mathcal{D} \in D} [ \mathbb{I} (x, y \in \theta [z] | z \in H; x \in S, y \in S)] \\ = P (x, y \in \theta [z] | z \in\mathcal{D} \in D; x \in S, y \in S)\\ \end{matrix} \tag{10} 其中 P P 代表概率。
  公式 (10)和公式 (3)很像。。把 θ \theta 换成了 θ [ z ] \theta [z] ,也就是说这里将 θ \theta 更加明确。这里需要注意的是 θ [ z ] \theta [z] z z 的区别:前者代表中心,是一个具体的实例,后者则是索引?因为 arg min \argmin 得到的就是索引;还是也是一个实例?毕竟 x R x \in \mathbb{R} ,又要计算 d ( x , z ) d (x, z) 。疑惑…

  对于Voronoi实现的ISK,给出以下示例:
  给定一个二维均匀分布的集合 S 0 : { ( 0 , 0.1 ) , ( 0 , 0.1 ) , ( 0.1 , 0 ) , ( 0.1 , 0 ) } S_0: \{ ( 0 , 0 . 1 ),( 0 ,− 0 . 1 ),( 0 . 1 , 0 ),(− 0 . 1 , 0 )\} ,以此为基准,度量其与另一个集合 S μ : { ( 0 + a , 0.1 + b ) , ( 0 + a , 0.1 + b ) , ( 0.1 + a , 0 + b ) , ( 0.1 + a , 0 + b ) } S_{\mu}: \{ ( 0 +a, 0 . 1 +b),( 0 +a,− 0 . 1 +b),( 0 . 1 +a, 0 +b),(− 0 . 1 +a, 0 +b) \} ,其中 a [ 1 , 1 ] , b [ 1 , 1 ] a \in [-1, 1], b \in [-1, 1] 。其分布如下图,有点跳跃啊。。直接上图了(ಥ﹏ಥ):
在这里插入图片描述
  图确实模糊,原论文上截图下来的,让窝缓缓他怎么画出来的。。

  先战术性撤退,等俺提升个段位再来挑战 (2020 0423 1344)。
在这里插入图片描述

原创文章 35 获赞 44 访问量 8623

猜你喜欢

转载自blog.csdn.net/weixin_44575152/article/details/105624719