论文阅读 (四):Multi-Instance Learning by Treating Instances As Non-I.I.D. Samples (MIGraph miGraph2009)

本文主要是介绍论文阅读 (四):Multi-Instance Learning by Treating Instances As Non-I.I.D. Samples (MIGraph miGraph2009),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 引入
  • 1 算法提出
    • 1.1 算法示例
    • 1.2 MIGraph
      • 1.2.1 图核定义
      • 1.2.2 边界定义
    • 1.3 miGraph
      • 1.3.1 关联矩阵
      • 1.3.2 图核定义
  • 2 实验

引入

  论文地址:https://cs.nju.edu.cn/zhouzh/zhouzh.files/publication/icml09miGraph.pdf
  论文出发点:包中的实例非独立同分布 (non-I.I.D.)
  设计的两种方法:
  1)MIGraph:明确将每个包映射为无向图 (undirected graph),并设计一种graph kernel来区分正包和负包;
  2)miGraph:通过affinity matrix来隐式地构建图,并设计一种相应的graph kernel。

1 算法提出

  本文的符号表如下:

符号含义
X \mathcal{X} X实例空间
S = { ( X 1 , Y 1 ) , ⋯ , ( X i , Y i ) , ⋯ , ( X N , Y N ) } \mathcal{S} = \{ (X_1, Y_1), \cdots, (X_i, Y_i), \cdots, (X_N, Y_N) \} S={(X1,Y1),,(Xi,Yi),,(XN,YN)}给定训练集
X i = { x i 1 , ⋯ , x i j , ⋯ , x i , n i } ⊆ X X_i = \{ \mathbf{x}_{i1}, \cdots, \mathbf{x}_{ij}, \cdots, \mathbf{x}_{i, n_i} \} \subseteq \mathcal{X} Xi={xi1,,xij,,xi,ni}X
Y i ∈ Y = { − 1 , + 1 } Y_i \in \mathcal{Y} = \{ -1, +1 \} YiY={1,+1}包标签
x i j = [ x i j 1 , ⋯ , x i j l , ⋯ , x i j d ] ′ \mathbf{x}_{ij} = [x_{ij1}, \cdots, x_{ijl}, \cdots, x_{ijd}]' xij=[xij1,,xijl,,xijd] | x i j ∈ X \mathbf{x}_{ij} \in \mathcal{X} xijX实例
y i j y_{ij} yij实例标签
x i j l x_{ijl} xijl属性值
N N N训练集大小
n i n_i ni包大小
d d d属性值个数

  包的标签确定如下:
Y i = { + 1 , ∃ g ∈ { 1 , ⋯ , n i } , st.  y i g = + 1 ; − 1 , otherwise. (1*) Y_i = \begin{cases} +1, \exist \ g \in \{1, \cdots, n_i \}, \textrm{ st. } y_{ig} = +1;\\ -1, \textrm{otherwise.} \end{cases} \tag{1*} Yi={+1, g{1,,ni}, st. yig=+1;1,otherwise.(1*)

1.1 算法示例

  1)如下图所示 (图片来自原论文并简单处理),假设每张图对应一个包,每个用矩形框出的部分 (patch)对应一个实例,且同一颜色的patch是相似的。
在这里插入图片描述
  2)如果每个patch看作是独立的样本,则上图可以抽象为下图 (图片来自原论文)。这种情况下,这三个包是相似的,因为他们拥有同样数量且相似的实例。
在这里插入图片描述
  3)如果考虑每个patch的关系,那么前两个包则更为相似:
在这里插入图片描述

1.2 MIGraph

  步骤如下:
  1)为每个包构建 ϵ \epsilon ϵ-graph1
   I)对于每一个包 X i X_i Xi,其中的实例看作是一个节点 (node);
   II)计算每两个node之间的的距离 (暂时记作d);
   III)如果某两个node之间的距离小于预设的阈值 ϵ \epsilon ϵ,则两者之间建立边界 (edge);
   IV)edge的权重表示两个node之间的亲密度 (affinity),实验中初始化为非零距离的归一化倒数;

  2)涉及已分类的 (categorical)属性时,使用VDM (value differene metric)2作为补充:
   I)假设属性的前 j j j个是categorical,余下的 ( d − j ) (d - j) (dj)个是归一化为 [ 0 , 1 ] [0, 1] [0,1]的连续值;
   II)使用以下距离来计算两个实例 x 1 \mathbf{x}_1 x1 x 2 \mathbf{x}_2 x2的距离:
d = ( ∑ h = 1 j V D M ( x 1 , h , x 2 , h ) + ∑ h = j + 1 d ∣ x 1 , h , x 2 , h ∣ 2 ) 1 2 . (2*) d = (\sum^j_{h = 1} {VDM} (\mathbf{x}_{1, h}, \mathbf{x}_{2, h}) + \sum^d_{h = j + 1} {| \mathbf{x}_{1, h}, \mathbf{x}_{2, h} |}^2)^{\frac{1}{2}}. \tag{2*} d=(h=1jVDM(x1,h,x2,h)+h=j+1dx1,h,x2,h2)21.(2*)
   III)数值 z 1 z_1 z1 z 2 z_2 z2的VDM距离表示如下:
V D M ( z 1 , z 2 ) = ∑ c = 1 C ∣ N Z , z 1 , c N Z , z 1 − N Z , z 2 , c N Z , z 2 ∣ 2 , (1) {VDM} (z_1, z_2) = \sum^C_{c = 1} \bigg| \frac{N_{Z, z_1, c}}{N_{Z, z_1}} - \frac{N_{Z, z_2, c}}{N_{Z, z_2}} \bigg |^2, \tag{1} VDM(z1,z2)=c=1CNZ,z1NZ,z1,cNZ,z2NZ,z2,c2,(1)     其中 N Z , z N_{Z,z} NZ,z表示持有 z z z Z Z Z的长度, N Z , z , c N_{Z, z, c} NZ,z,c表示持有 z z z Z Z Z中数值属于第 c c c类的数量, C C C表示类别数。

  理解:这里的 Z Z Z代表实例 x x x的前j个值组成的向量 (暂时记作 x ∗ x^* x), N Z , z = j N_{Z, z} = j NZ,z=j
  疑问:这里的类别指的是什么?
  一种猜测是按照某种方式将 x ∗ x^* x中的值分为 C C C类,则 N Z , z , c N_{Z, z, c} NZ,z,c表示当前数值所属类别的数值数。

  3)将训练包映射为图的集合,并以此构建分类器。
   I)例1:使用kNN、图形距离 (graph edit distance) 3来构建分类器;
   2)例2:设置一种图核、带核的分类器如SVM。

  4)MIGraph使用3)中例二的方法,其图核的思想如下图 (图片来自原论文),即通过节点核和边界核来计算两个包之间的相似性:
在这里插入图片描述

1.2.1 图核定义

  给定两个包 X i X_i Xi X j X_j Xj,并将其看作为图: G h ( { x h u } u = 1 n h , { e h v } v = 1 m h ) G_h (\{ \mathbf{x}_{hu}\}^{n_h}_{u = 1}, \{ \mathbf{e}_{hv}\}^{m_h}_{v = 1}) Gh({xhu}u=1nh,{ehv}v=1mh),其中 n h n_h nh m h m_h mh分别是 G h G_h Gh中节点和边界的个数,则图核定义如下:
k G ( x i , x j ) = ∑ a = 1 n i ∑ b = 1 n j k n o d e ( x i a , x j b ) + ∑ a = 1 m i ∑ b = 1 m j k e d g e ( e i a , e j b ) , (2) k_G (\mathbf{x}_i, \mathbf{x}_j) = \sum^{n_i}_{a = 1} \sum^{n_j}_{b = 1} k_{node} ( \mathbf{x}_{ia}, \mathbf{x}_{jb}) + \sum^{m_i}_{a = 1} \sum^{m_j}_{b = 1} k_{edge} ( \mathbf{e}_{ia}, \mathbf{e}_{jb}), \tag{2} kG(xi,xj)=a=1nib=1njknode(xia,xjb)+a=1mib=1mjkedge(eia,ejb),(2)其中 k n o d e k_{node} knode k e d g e k_{edge} kedge是正半定核 (positive semidefinite kernels)。
  为了避免数值问题, k G k_G kG标准化如下:
k G ( x i , x j ) = k G ( x i , x j ) k G ( x i , x i ) k G ( x j , x j ) . (3) k_G (\mathbf{x}_i, \mathbf{x}_j) = \frac{k_G (\mathbf{x}_i, \mathbf{x}_j)}{\sqrt{k_G (\mathbf{x}_i, \mathbf{x}_i)}\sqrt{k_G (\mathbf{x}_j, \mathbf{x}_j)}}. \tag{3} kG(xi,xj)=kG(xi,xi) kG(xj,xj) kG(xi,xj).(3)
   k n o d e k_{node} knode k e d g e k_{edge} kedge的定义方式多样,以下用Gaussian RBF核4 k n o d e k_{node} knode进行定义:
k n o d e ( x i a , x j b ) = exp ⁡ ( − γ ∥ x i a − x j b ∥ 2 ) . (4) k_{node} (\mathbf{x}_{ia}, \mathbf{x}_{jb}) = \exp (- \gamma \parallel \mathbf{x}_{ia} - \mathbf{x}_{jb} \parallel^2). \tag{4} knode(xia,xjb)=exp(γxiaxjb2).(4) k e d g e k_{edge} kedge的定义与式 (4)类似,只是将 x i j \mathbf{x}_{ij} xij替换为 e i j \mathbf{e}_{ij} eij

1.2.2 边界定义

  目前的关键问题是如何定义特征向量来描述边界:
 边界用于连接包 X i X_i Xi中的两个节点 x i u \mathbf{x}_{iu} xiu x i v \mathbf{x}_{iv} xiv,将其定义为 [ d u , p u , d v , p v ] ′ [d_u, p_u, d_v, p_v]' [du,pu,dv,pv],其中 d u d_u du表示 x i u \mathbf{x}_{iu} xiu与其他节点相连接的边界数量,需要注意的是已通过将其除以 X i X_i Xi中的边界总数来进行归一化; d v d_v dv的定义与 d u d_u du类似; p u p_u pu定义如下:
p u = w u v / ∑ w u , ∗ . (3*) p_u = w_{uv} / \sum w_{u, *}. \tag{3*} pu=wuv/wu,.(3*)其中 w u v w_{uv} wuv表示连接 x i u \mathbf{x}_{iu} xiu x i v \mathbf{x}_{iv} xiv的权重; w u , ∗ w_{u, *} wu,表示 x i u \mathbf{x}_{iu} xiu与其他相连接节点的权重之和; p v p_v pv的定义与 p u p_u pu类似。

1.3 miGraph

  如公式 (2), k G k_G kG是一个正定核 (positive definite kerne),显然, k G k_G kG满足图核定义所需考虑的四个主要性质5
且可以用于任意的图,不足之处在于时间复杂度为 O ( n i n j + m i m j ) O (n_in_j + m_im_j) O(ninj+mimj)。对此,“我们”提出了一种更为简单高效的核,即miGraph。

1.3.1 关联矩阵

  对于包 X i X_i Xi中的两个实例之间的距离,“我们“可以通过构建关联矩阵 W i W^i Wi (affinity matrix)来计算。例如,如果两个实例 x i a \mathbf{x}_{ia} xia x i u \mathbf{x}_{iu} xiu之间的距离小于给定阈值 δ \delta δ W i W^i Wi的第 a a a行第 u u u列元素 w a u i w^i_{au} waui将设置为1,反之为0。

1.3.2 图核定义

  本文中,距离的度量使用Gaussian距离, δ \delta δ设置为包中的平均距离:
  给定两个包 X i X_i Xi X j X_j Xj,分别包含 n i n_i ni n j n_j nj个实例实例,则图核的定义如下:
k g ( X i , X j ) = ∑ a = 1 n i ∑ b = 1 n j W i a W j b k ( x i a , x j b ) ∑ a = 1 n i W i a ∑ b = 1 n j W j b , (5) k_g (X_i, X_j) = \frac{\sum \limits^{n_i}_{a = 1}\sum \limits^{n_j}_{b = 1} W_{ia} W_{jb} k (\mathbf{x}_{ia}, \mathbf{x}_{jb})}{\sum \limits^{n_i}_{a = 1} W_{ia} \sum \limits^{n_j}_{b = 1} W_{jb}}, \tag{5} kg(Xi,Xj)=a=1niWiab=1njWjba=1nib=1njWiaWjbk(xia,xjb),(5)其中 W i a = 1 / ∑ u = 1 n i w a u i W_{ia} = 1 / \sum^{n_i}_{u = 1} w^i_{au} Wia=1/u=1niwaui W j b = 1 / ∑ v = 1 n j w b v j W_{jb} = 1 / \sum^{n_j}_{v = 1} w^j_{bv} Wjb=1/v=1njwbvj k ( x i a , x j b ) k (\mathbf{x}_{ia}, \mathbf{x}_{jb}) k(xia,xjb)的定义类似于式 (4)。

   k g k_g kg应满足以下原则:
W i a = { 1 , W i = I ; 1 / n i , W i = E ; 1 / n i a , W i = C , (4*) W_{ia} = \begin{cases} 1, W^i = \boldsymbol{I};\\ 1 / n_i, W^i = \boldsymbol{E};\\ 1 / n_{ia}, W^i = \boldsymbol{C},\\ \end{cases} \tag{4*} Wia=1,Wi=I;1/ni,Wi=E;1/nia,Wi=C,(4*)其中 I \boldsymbol{I} I为单位矩阵; E \boldsymbol{E} E为全为1的矩阵; C \boldsymbol{C} C为分块矩阵,即包中的实例被聚类为几块, n i a n_{ia} nia x i a \mathbf{x}_{ia} xia所属块的大小。此外, w a b i w^i_{ab} wabi的值增加或减少时, W i a W_{ia} Wia W i b W_{ib} Wib应当相应增加或减少,其他情况则不受影响。
  显然 k g k_g kg的时间复杂度为 O ( n i n j ) O (n_in_j) O(ninj)

2 实验

数据集类型实验类型实验结果展示
benchmark数据集10次10CV分类精度 + 标准差
image categorization5次随机划分(数据集的每一个类别随机二划分,实验类型为one-against-one)95%置信区间
text categorization10次10CV分类精度 + 标准差
regression (artificial)LOO平方损失

  1. Tenenbaum, J. B., de Silva, V., & Langford, J. C. (2000). A global geometric framework for nonlinear dimensionality reduction. Science, 290, 2319–2323. ↩︎

  2. Stanfill, C., & Waltz, D. (1986). Toward memory-based reasoning. Comm. ACM, 29, 1213–1228. ↩︎

  3. Neuhaus, M., & Bunke, H. (2007). A quadratic programming approach to the graph edit distance problem. Proc. 6th IAPR Workshop on Graph-based Represent. in Patt. Recogn. (pp. 92–102). ↩︎

  4. Gärtner, T. (2003). A survey of kernels for structured data. SIGKDD Explorations, 5, 49–58. ↩︎

  5. Borgwardt, K. M., & Kriegel, H.-P. (2005). Shortest-path kernels on graphs. Proc. 5th IEEE Intl. Conf. Data Min. (pp. 74–81). ↩︎

这篇关于论文阅读 (四):Multi-Instance Learning by Treating Instances As Non-I.I.D. Samples (MIGraph miGraph2009)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/222705

相关文章

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super

软件架构模式:5 分钟阅读

原文: https://orkhanscience.medium.com/software-architecture-patterns-5-mins-read-e9e3c8eb47d2 软件架构模式:5 分钟阅读 当有人潜入软件工程世界时,有一天他需要学习软件架构模式的基础知识。当我刚接触编码时,我不知道从哪里获得简要介绍现有架构模式的资源,这样它就不会太详细和混乱,而是非常抽象和易