【论文阅读笔记】多实例学习方法 Diverse Density(DD):在特征空间中寻找正概念的坐标

本文介绍1998年由Maron和Lozano-Pérez提出的多实例学习通用框架------Diverse Density。该框架解决一个特殊学习场景:训练数据以"包"(bag)为单位标记,正包包含至少一个正实例(但不知道具体是哪一个),负包仅含负实例。Diverse Density通过最大化"正包交集与负包并集之差"的概率密度来定位目标概念。

Maron, Oded, and Tomás Lozano-Pérez. "A framework for multiple-instance learning." Advances in neural information processing systems 10 (1997).

文章目录

    • 一、多实例学习
      • [1.1 从监督学习到多实例学习](#1.1 从监督学习到多实例学习)
      • [1.2 问题的挑战性](#1.2 问题的挑战性)
    • [二、Diverse Density](#二、Diverse Density)
      • [2.1 从几何直觉到概率建模](#2.1 从几何直觉到概率建模)
      • [2.2 概率模型构建](#2.2 概率模型构建)
    • 三、算法实现
      • [3.1 优化策略](#3.1 优化策略)
      • [3.2 特征权重学习](#3.2 特征权重学习)
      • [3.3 扩展到复杂概念](#3.3 扩展到复杂概念)
    • 四、实验
      • [4.1 合成数据集](#4.1 合成数据集)
      • [4.2 Musk药物活性数据集](#4.2 Musk药物活性数据集)
      • [4.3 人物图像识别](#4.3 人物图像识别)
      • [4.4 股票基本面分析](#4.4 股票基本面分析)
    • 五、总结

一、多实例学习

1.1 从监督学习到多实例学习

传统监督学习中,每个训练样本都有明确标签。然而许多现实场景无法提供如此精确的标签。考虑药物分子活性预测问题:

  • 一个药物分子可采取多种三维形状(构象)
  • 只要至少一种形状能与目标蛋白结合,该分子就是"有效"的(正例)
  • 若分子所有可能形状都无法结合,则标记为负例
  • 但我们不知道具体是哪一种形状导致了结合

这引出多实例学习(Multiple-Instance Learning, MIL)框架:

  • 包(Bag):一个分子对应一个包,包含其所有可能形状(实例)
  • 标签:包级标签(正/负),而非实例级标签
  • 目标 :学习一个能正确判别单个实例(形状)的分类器

形式化定义

  • 给定训练集 { B i , y i } i = 1 N \{B_i, y_i\}{i=1}^N {Bi,yi}i=1N,其中 B i = { x i 1 , x i 2 , . . . , x i , n i } B_i = \{\mathbf{x}{i1}, \mathbf{x}{i2}, ..., \mathbf{x}{i,n_i}\} Bi={xi1,xi2,...,xi,ni} 是第 i i i 个包
  • y i ∈ { 0 , 1 } y_i \in \{0,1\} yi∈{0,1} 是包标签:
    • y i = 1 y_i = 1 yi=1(正包): ∃ x i j ∈ B i \exists \mathbf{x}_{ij} \in B_i ∃xij∈Bi 是正实例
    • y i = 0 y_i = 0 yi=0(负包): ∀ x i j ∈ B i \forall \mathbf{x}_{ij} \in B_i ∀xij∈Bi 都是负实例
  • 目标:学习概念 c : X → { 0 , 1 } c: \mathcal{X} \to \{0,1\} c:X→{0,1},使其对实例分类的误差最小

1.2 问题的挑战性

这个问题比有噪声监督学习更困难,因为:

  • 噪声比例无界:正包中可能99%的实例都是负的,仅含一个正实例
  • 标签歧义:无法直接获知哪个实例是正例
  • 分布未知:通常只知道有限采样,无法获知包内实例的完整分布

二、Diverse Density

2.1 从几何直觉到概率建模

关键观察 :若目标概念是特征空间中的单个点 t \mathbf{t} t,则:

  • 每个正包 B + B^+ B+ 应至少包含一个靠近 t \mathbf{t} t 的实例
  • 所有负包 B − B^- B− 应不包含任何靠近 t \mathbf{t} t 的实例

如图1(a)所示,若分子形状轨迹在 t \mathbf{t} t 处相交,则该点即为目标概念。但实际只能获得离散采样点(图1(b)),因此问题转化为:寻找被多个正包覆盖且远离负实例的高密度区域

区别于普通密度 :图1(b)中区域B虽有高密度,但可能来自同一正包的多个实例;我们关注的是来自不同正包的多样性覆盖 ,故称 Diverse Density

2.2 概率模型构建

假设目标概念为单点 t \mathbf{t} t,Diverse Density定义为在该点观察到训练数据的似然:

DD ( t ) = Pr ⁡ ( ⋀ i B i + ∧ ⋀ j B j − ∣ t ) \text{DD}(\mathbf{t}) = \Pr\left(\bigwedge_i B_i^+ \wedge \bigwedge_j B_j^- \mid \mathbf{t}\right) DD(t)=Pr(i⋀Bi+∧j⋀Bj−∣t)

其中 B i + B_i^+ Bi+ 表示第 i i i 个正包, B j − B_j^- Bj− 表示第 j j j 个负包。

推导过程

  1. 贝叶斯视角:在无信息先验下,最大化后验概率等价于最大化似然:

t ∗ = arg ⁡ max ⁡ t Pr ⁡ ( { B i } ∣ t ) \mathbf{t}^* = \arg\max_{\mathbf{t}} \Pr\left(\{B_i\} \mid \mathbf{t}\right) t∗=argtmaxPr({Bi}∣t)

  1. 条件独立性假设 :给定 t \mathbf{t} t,各包标签条件独立:

Pr ⁡ ( { B i } ∣ t ) = ∏ i : y i = 1 Pr ⁡ ( B i + ∣ t ) ⋅ ∏ j : y j = 0 Pr ⁡ ( B j − ∣ t ) \Pr\left(\{B_i\} \mid \mathbf{t}\right) = \prod_{i:y_i=1} \Pr(B_i^+ \mid \mathbf{t}) \cdot \prod_{j:y_j=0} \Pr(B_j^- \mid \mathbf{t}) Pr({Bi}∣t)=i:yi=1∏Pr(Bi+∣t)⋅j:yj=0∏Pr(Bj−∣t)

  1. Noisy-OR模型:对正包,"包为正"的概率等于"至少一个实例触发概念"的概率。采用Noisy-OR建模:

Pr ⁡ ( B i + ∣ t ) = 1 − ∏ x ∈ B i + ( 1 − Pr ⁡ ( t ∣ x ) ) \Pr(B_i^+ \mid \mathbf{t}) = 1 - \prod_{\mathbf{x} \in B_i^+} \left(1 - \Pr(\mathbf{t} \mid \mathbf{x})\right) Pr(Bi+∣t)=1−x∈Bi+∏(1−Pr(t∣x))

类似地,负包要求所有实例都不触发概念

Pr ⁡ ( B j − ∣ t ) = ∏ x ∈ B j − ( 1 − Pr ⁡ ( t ∣ x ) ) \Pr(B_j^- \mid \mathbf{t}) = \prod_{\mathbf{x} \in B_j^-} \left(1 - \Pr(\mathbf{t} \mid \mathbf{x})\right) Pr(Bj−∣t)=x∈Bj−∏(1−Pr(t∣x))

  1. 实例-概念相似度 :定义单个实例 x \mathbf{x} x 触发概念 t \mathbf{t} t 的概率为距离衰减函数:

Pr ⁡ ( t ∣ x ) = exp ⁡ ( − ∥ x − t ∥ 2 ) \Pr(\mathbf{t} \mid \mathbf{x}) = \exp\left(-\|\mathbf{x} - \mathbf{t}\|^2\right) Pr(t∣x)=exp(−∥x−t∥2)

实际使用加权距离:

Pr ⁡ ( t ∣ x ) = exp ⁡ ( − ∑ k = 1 d w k ( x k − t k ) 2 ) \Pr(\mathbf{t} \mid \mathbf{x}) = \exp\left(-\sum_{k=1}^d w_k (x_k - t_k)^2\right) Pr(t∣x)=exp(−k=1∑dwk(xk−tk)2)

其中 w = [ w 1 , . . . , w d ] \mathbf{w} = [w_1, ..., w_d] w=[w1,...,wd] 是特征权重向量。

最终Diverse Density公式

DD ( t , w ) = ∏ i : y i = 1 [ 1 − ∏ x ∈ B i + ( 1 − e − ∑ k w k ( x k − t k ) 2 ) ] ⋅ ∏ j : y j = 0 [ ∏ x ∈ B j − ( 1 − e − ∑ k w k ( x k − t k ) 2 ) ] \text{DD}(\mathbf{t}, \mathbf{w}) = \prod_{i:y_i=1} \left[1 - \prod_{\mathbf{x} \in B_i^+} \left(1 - e^{-\sum_k w_k (x_k - t_k)^2}\right)\right] \cdot \prod_{j:y_j=0} \left[\prod_{\mathbf{x} \in B_j^-} \left(1 - e^{-\sum_k w_k (x_k - t_k)^2}\right)\right] DD(t,w)=i:yi=1∏ 1−x∈Bi+∏(1−e−∑kwk(xk−tk)2) ⋅j:yj=0∏ x∈Bj−∏(1−e−∑kwk(xk−tk)2)

公式解释

  • 正包项: 1 − ∏ ( 1 − p ) 1 - \prod(1 - p) 1−∏(1−p) 表示"至少一个实例接近 t \mathbf{t} t"
  • 负包项: ∏ ( 1 − p ) \prod(1 - p) ∏(1−p) 表示"所有实例都远离 t \mathbf{t} t"
  • 指数项:距离越近,贡献越大;距离为0时概率为1
  • 特征权重 w k w_k wk:自动学习各维度重要性

三、算法实现

3.1 优化策略

目标是最大化 DD ( t , w ) \text{DD}(\mathbf{t}, \mathbf{w}) DD(t,w),面临挑战:

  • 非凸函数,存在多个局部极大值
  • 搜索空间随维度指数增长

实用启发式方法

  1. 初始化 :从每个正实例 启动梯度上升。直观理解:真实概念 t ∗ \mathbf{t}^* t∗ 附近的正实例会强烈贡献于DD峰值,从这些点出发易收敛到全局最优。
  2. 梯度计算 :对 log ⁡ DD \log \text{DD} logDD 求导,数值稳定性更好
  3. 特征权重优化 :交替优化 t \mathbf{t} t 和 w \mathbf{w} w,或联合优化

3.2 特征权重学习

原始公式中 ∥ x − t ∥ 2 \|\mathbf{x} - \mathbf{t}\|^2 ∥x−t∥2 假设各特征同等重要。实际中需学习权重:

Pr ⁡ ( t ∣ x ) = exp ⁡ ( − ( x − t ) T diag ( w ) ( x − t ) ) = exp ⁡ ( − ∑ k = 1 d w k ( x k − t k ) 2 ) \Pr(\mathbf{t} \mid \mathbf{x}) = \exp\left(-(\mathbf{x} - \mathbf{t})^T \text{diag}(\mathbf{w}) (\mathbf{x} - \mathbf{t})\right) = \exp\left(-\sum_{k=1}^d w_k (x_k - t_k)^2\right) Pr(t∣x)=exp(−(x−t)Tdiag(w)(x−t))=exp(−k=1∑dwk(xk−tk)2)

优化后通常少于一半特征获得非零权重,实现自动特征选择。权重越大,该维度上距离惩罚越严格。

3.3 扩展到复杂概念

单点假设过强。Diverse Density可自然扩展到析取概念(disjunctive concept):

DD ( t 1 , t 2 , w ) = ∏ i : y i = 1 max ⁡ { Pr ⁡ ( B i + ∣ t 1 ) , Pr ⁡ ( B i + ∣ t 2 ) } ⋅ ∏ j : y j = 0 [ Pr ⁡ ( B j − ∣ t 1 ) ⋅ Pr ⁡ ( B j − ∣ t 2 ) ] \text{DD}(\mathbf{t}_1, \mathbf{t}2, \mathbf{w}) = \prod{i:y_i=1} \max\left\{\Pr(B_i^+ \mid \mathbf{t}_1), \Pr(B_i^+ \mid \mathbf{t}2)\right\} \cdot \prod{j:y_j=0} \left[\Pr(B_j^- \mid \mathbf{t}_1) \cdot \Pr(B_j^- \mid \mathbf{t}_2)\right] DD(t1,t2,w)=i:yi=1∏max{Pr(Bi+∣t1),Pr(Bi+∣t2)}⋅j:yj=0∏[Pr(Bj−∣t1)⋅Pr(Bj−∣t2)]

即正包可被任一概念点解释,负包必须同时远离所有概念点。

四、实验

4.1 合成数据集

实验设计

  • 5个正包 + 5个负包,每包50个实例
  • 实例从 [ 0 , 100 ] × [ 0 , 100 ] [0,100] \times [0,100] [0,100]×[0,100] 均匀随机采样
  • 真实概念:中心5×5正方形区域
  • 标记规则:若包中至少一个实例落入正方形则标记为正

结果对比

  • 普通密度(图3a):正负实例叠加后密度分布平滑,峰值不明显,难以定位
  • Diverse Density(图3b):在目标区域出现尖锐全局峰值,显著优于普通密度

关键发现 :正负包来自相同底层分布 ,仅在高Diverse Density区域有差异,验证了方法对分布重叠问题的有效性。

4.2 Musk药物活性数据集

数据集特性

  • Musk-1:较小,分子数和每分子实例数较少
  • Musk-2:较大,更多构象采样
  • 每个实例:166维特征向量(描述分子表面形状)
  • 任务:预测分子是否具有"麝香"气味

实验协议

  1. 随机保留1/10作为测试集
  2. 训练集上从每个正实例启动梯度上升
  3. 通过留一法确定最优距离阈值
  4. 测试时:若包中存在实例与 t ∗ \mathbf{t}^* t∗ 的加权距离小于阈值,则判为正

性能对比(20次运行平均):

Musk-1数据集 准确率 Musk-2数据集 准确率
iterated-discrim APR* 92.4% iterated-discrim APR* 89.2%
GFS elim-kde APR 91.3% MULTINST 84.0%
Diverse Density 88.9% Diverse Density 82.5%
MULTINST 76.7% GFS elim-kde APR 80.4%

*注:iterated-discrim APR参数调优使用了测试集信息,属于性能上界

分析 :Diverse Density无需参数调优即可达到与先进方法相当的效果,且自动将约50%特征权重置零,实现隐式特征选择。

4.3 人物图像识别

问题设定:从标记"包含目标人物"的图像中学习人物描述。

多实例转化

  • 每幅图像视为一个包
  • 对图像采样54个子图像(不同位置/尺度)作为实例
  • 正包:至少一个子图像包含目标人物
  • 负包:所有子图像都不包含目标人物

实例表示:将子图像分三层(头、躯干、腿),每层提取主导颜色,形成紧凑颜色特征。

结果:即使训练图像中始终包含两人(目标人物+干扰者),算法仍能学习到目标人物的稳定描述(图4)。该方法后续扩展至自然场景分类与图像检索。

4.4 股票基本面分析

业务洞察:月度高收益股票中,仅少数因基本面优良,多数为随机波动。

多实例建模

  • 正包:每月收益率最高的100只股票(假设至少一只基本面驱动)
  • 负包:每月收益率最低的5只股票(全部非基本面驱动)
  • 实例:17维特征向量(动量、市盈率、市净率等)

实验设计

  • 数据:1978-1997年600只美股,GMO公司提供
  • 协议:5次运行,每次用10年数据训练,下1年数据测试

结果 (按与 t ∗ \mathbf{t}^* t∗距离分十组):

  • 第一组(最近):平均收益显著为正,超越GMO基准预测器
  • 第十组(最远):平均收益显著为负,低于基准
  • 单调性:收益随距离单调递减,验证概念有效性

五、总结

本文首次将多实例学习形式化为概率密度最大化问题,提出Diverse Density度量;并基于Noisy-OR和梯度上升的实用优化方法,支持自动特征权重学习;这一方法对包内高噪声率、特征冗余、分布重叠等问题表现稳健,在药物发现领域,计算机视觉、金融分析等场景都实验验证了有效性。

相关推荐
沫儿笙2 小时前
安川YASKAWA焊接机器人电池拖盘焊接节气
人工智能·机器人
RPA机器人就选八爪鱼2 小时前
RPA财务机器人:驱动财务数字化转型的核心引擎
大数据·运维·人工智能·机器人·rpa
tianyuanwo2 小时前
从机器人到软件管理:“具身”思维如何重塑我们的世界
人工智能·管理·具身
长不大的蜡笔小新2 小时前
手写数字识别:从零搭建神经网络
人工智能·python·tensorflow
inputA2 小时前
【LwIP源码学习8】netbuf源码分析
android·c语言·笔记·嵌入式硬件·学习
JM丫2 小时前
内网理论知识总结
笔记·网络安全
d111111111d3 小时前
STM32外设学习-I2C(细节)--学习笔记
笔记·stm32·单片机·嵌入式硬件·学习
z***y8623 小时前
机器学习重点
人工智能·机器学习
( ˶˙⚇˙˶ )୨⚑︎3 小时前
【学习笔记】DiffFNO: Diffusion Fourier Neural Operator
笔记·神经网络·学习