An ensemble approach to multi-view multi-instance learning
一种多视图多实例学习的集成方法
2017-KBS
多视图学习结合了来自多个异构来源的数据,并利用它们的互补信息来构建更准确的模型。多实例学习将示例表示为包含实例集的标记包。由于基数和特征空间不同,不同多实例视图的数据融合不能简单地串联成一组特征。
本文提出了一种集成方法,该方法结合了视图学习器并在加权类预测之间寻求共识,以利用来自多个视图的互补信息。重要的是,集成必须处理来自每个视图的不同特征空间,而包的数据可能在视图中部分表示。
实验研究在一组 15 个多实例数据集上评估并比较了提议的性能与 20 种传统的、基于集成的和多视图算法。实验结果表明集成方法的性能优于单分类器,尤其是多视图多实例方法的最佳结果。结果通过多个非参数统计分析进行验证。
多视图学习:利用多个不同特征集表示(视图)他们从不同的数据源获得
其遵循基于数据的共识与互补原则:共识原则最大化不同视图的一致性;互补原则考虑不同视图之间的信息分布
视图的融合提供了关于袋子的更完整的信息,这将导致更好的准确性
包含在多个视图中的bags共享包标识符,包中的实例使用不同的特征向量(不同视图提供的属性不同)
在传统的单实例分类中,通过简单地连接不同视图中共同示例的特征集。然而,这个过程不能在多实例学习中直接执行,因为特定实例之间没有匹配,而是通过它们的包标识符在bags之间进行匹配。
当前的多视图多实例方法将数据问题转换为多个单元实例视图。但是这种扁平化转换破坏了数据的多实例表示,并拒绝解决问题的真正多视图多实例性质。
贡献:
1)提出集成学习将来自多视图多实例数据关系的信息与异构特征集融合,而不进行任何多实例问题转换。
2)为每个视图确定性能最佳的基分类器。在每个视图上使用不同的基分类器簇,选择对每个视图表现最好的模型
3)对基分类器进行加权。并非所有视图都为分类器提供有用的高质量信息
分类:
1)协同训练:交替地从不同的视图中学习,以最大化数据的两个不同视图之间的相互一致性
2)多核学习:执行视图的线性或非线性组合
3)子空间学习:重点在视图共享的子空间
相关方法:
A multi-view two-level classification method for generalized multi-instance problems 2014:将多视图多实例数据集转换为多视图单元实例数据(a multi-view single meta-instance dataset)
Exploring features for com-plicated objects: cross-view feature selection for multi-instance learning 2014:提出了跨视图特征选择,识别多实例的视图中最具代表性的特征
| 符号 | 表示 |
|---|---|
| X v mathcal{X}^v Xv | 视图 v v v的特征空间 |
| b = { b 1 , … , b V } b={{b}^1,dots,{b}^V} b={b1,…,bV} | 具有多个特征向量视图的示例(examples ) |
| C C C | 标签 |
| b v = { x ‾ 1 v , x ‾ 2 v , … , x ‾ k v v } {b}^v={overline{x}_1^v,overline{x}_2^v,dots,overline{x}_{k_v}^v} bv={x1v,x2v,…,xkvv} | 视图 v v v包的表示 |
| x ‾ v = [ x 1 , x 2 , … , x f v ] overline{x}^v=[x_1,x_2,dots,x_{f_v}] xv=[x1,x2,…,xfv] | 视图 v v v特征空间上的实例 |
| k v k_v kv | 包中实例的数量 |
| V V V | 视图的数量 |
这样的表示很灵活,多个视图中可用信息量存在显着不平衡的数据,这也发生在现实世界的系统中,其中某些信息源提供的数据特征量比其他信息多得多。
包不一定存在所有视图中,即视图不包含特定包标识符;包包含每个视图不同数量的实例
在多视图分类中,基分类器用于从每个视图中学习。共识原则主张在从不同的特征集进行预测时最大化一致性,以便与单视图的预测相比提高准确性。补充原则支持从视图中分布的相关信息中学习。
f
v
(
x
‾
v
)
f^v(overline{x}^v)
fv(xv):对应于
v
v
v的多示例基分类器
g
(
x
)
=
f
u
s
e
(
f
1
(
x
‾
1
,
…
,
f
V
(
x
‾
V
)
)
)
g(x)=fuse(f^1(overline{x}^1,dots,f^V(overline{x}^V)))
g(x)=fuse(f1(x1,…,fV(xV))):由
V
V
V个多实例分类器组成的多视图多示例集成
预测:集成的预测来自于来自所有视图的基分类器的局部预测的融合,其中预测是使用聚合函数(例如majority或者weighted voting)组合
基分类器:
集成成功的关键是不同分类器的一致性
不知道哪种分类器更适合每一个视图,并且不知道每一个视图包含多少相关的信息
因此,首先评估一组来自不同families的候选多示例分类器,再确定对于每个视图完成最高accuracy的分类器,具体来说考虑三个高性能多示例分类器,包括:SimpleMI、MISMO、TLC。最终,选择获得该视图最佳局部accuracy的基学习器构成集成
Weighted voting:
通过每个基学习器的对该视图的局部accuracy来确定基分类器在集成中的重要性
使用每个训练折叠内的内部10倍交叉验证来选择基本分类器,以确定哪个候选学习器对于每个视图表现最佳
请注意,基分类器的预测可能是肯定的、否定的或无效的,这意味着基学习器不会给出预测,因为给定的测试包不包含与特定视图相关的任何信息。
算法流程:
MVMI ensemble algorithm
TR = train data,TS=test data,CC=candidate base classifiers
1.选择初始基分类器并构建集成
for 每个视图 v v v in V V V
for 每个候选分类器 C c C_c Cc in C C CC CC
在视图 v v v的训练数据集 T R v TR^ v TRv上使用 C c C_c Cc
C c C_c Cc在 T R v TR^ v TRv上的accuracy为 a c c c acc_c accc
end for
a c c k = m a x ( a c c ) , b a s e v ← C k acc_k=max(acc), base_v leftarrow C_k acck=max(acc),basev←Ck
w e i g h t v ← a c c k weight_v leftarrow acc_k weightv←acck
end for
2.对测试数据进行分类
for 每个包 in TS
for 每个视图 v v v in V V V
if 包包含视图 v v v的数据 then
b a s e C l a s s P r e d i c t i o n ← c l a s s i f y ( b a s e v , b a g v ) baseClassPrediction leftarrow classify(base_v,bag^v) baseClassPrediction←classify(basev,bagv)
v o t e s [ b a s e C l a s s P r e d i c t i o n ] + = w e i g h t v votes[baseClassPrediction]+=weight_v votes[baseClassPrediction]+=weightv
end if
end for
e n s e m b l e C l a s s P r e d i c t i o n ← argmax ( v o t e s ) ensembleClassPrediction leftarrow text{argmax}(votes) ensembleClassPrediction←argmax(votes)
end forr



