【模式识别】MPL,MIL和MCL

时间:2023-03-10 05:19:49
【模式识别】MPL,MIL和MCL

Multi-Instance Learning (MIL) 和Multi-Pose Learning (MPL)是CV的大牛Boris Babenko at UC San Diego提出来的。其思想能够用以下一幅图概况。MIL是指一个对象的学习实例可能有非常多种情况,学习的时候不是用一个精确的标注对象来学习。而是用一个对象的多个实例组成的“包”来学习;而MPL是指一个对象会有多个姿态(Pose),学习的时候用一个分类器经常难以达到非常好的效果,所以能够训练多个分类器来分别学习不同的Pose。其描写叙述的都是对一个对象多种情况的同一时候学习和对齐的策略。也就是MIL是“adjusting training samples so they lie in correspondence”。而MPL是“separating the data into coherent groups and training separate classifiers for each”。

【模式识别】MPL,MIL和MCL

上图中右边为MIL的学习情况,每一行为一个对象的学习数据。左边为MPL的学习情况。每行为一个对象的不同pose学习数据。而每种颜色的框为训练的一个class。MIL被提出以后应用非常广。而貌似MPL仅仅有为数不多的引用,一篇《Multi-Cue Onboard Pedestrian Detection》应用的MPL但也没有详细的公式。MPL与传统的Boost方法的不同就是使用例如以下组合的y取代传统的y,当中k表示多个class,也就是有一个class识别为1,则推断结果为1。

【模式识别】MPL,MIL和MCL

其迭代训练的步骤也是大致同样,除了复杂度上多一个层每一个yk的训练,另外对应的更新公式也不同:

【模式识别】MPL,MIL和MCL

之后剑桥提出Multi-Class Learning (MCL),也是训练多个class,除了不是用的max(yk)而是用的诸如以下:

【模式识别】MPL,MIL和MCL

Noisy-OR的概率模型,总体思想感觉和MPL是一样的。但MCL的迭代更新方法写的要明朗很多。其权重wki(k表示每一个class,i表示样本)更新使用例如以下方法:

【模式识别】MPL,MIL和MCL

注意P二类模型中经常使用的-1~1,而是0~1,所以当某个class推断为一定不是此类的时候,此样本在下一次的训练中就会被去掉。而对应的推断为是的class中权重加大。

而在详细的某一类k的class中,推断错误的样本权重会对应加大,这点又契合了传统的Boost训练方法。MCL的文章是用在数据分类上边:

【模式识别】MPL,MIL和MCL

效果看上去非常美味~

參考文献:

[1] Boris Babenko, Piotr Doll´ar, Zhuowen Tu, Serge Belongie. Simultaneous Learning and Alignment: Multi-Instance and Multi-Pose Learning. 

[2] Christian Wojek, Stefan Walk, Bernt Schiele. Multi-Cue Onboard Pedestrian Detection

[3] Tae-Kyun Kim, Roberto Cipolla. MCBoost: Multiple Classifier Boosting for Perceptual Co-clustering of Images and Visual Features

(转载请注明作者和出处:http://blog.csdn.net/xiaowei_cqu 未经同意请勿用于商业用途)