MIL研究的问题是当标注信息是针对整体的,而我们知道这个整体的标签是由某些更小的标签(Instance-level)组合而成的。这时通过整体求组成个体标签的过程就成为MIL。其实MIL和解线性方程组挺像的,只不过我们不知道组合系数,并且允许取最大值等操作。
首先,我们把整体成为 bag,我们能获得的标签都是针对bag的,而bag里有若干个instance,我们需要通过bag的标签以及假设的bag和instance之间的关系来推理出instance的标签。从而完成下游任务。
只考虑正负两类,并且假设bag的标签为正当且仅当至少有一个instance标签为正,而bag标签为负当且仅当所有instance标签为负。这也是经典的MIL假设,可以通过最大值操作来建模。
至少存在一个正标签等价于标签最大值为正(设正标签大于负标签)。所以存在性问题很容易对应成取最大值。类似的,计数问题可以转化为1范数或2范数。
所以,其实MIL的通用解决方法很直接,假如bag为$B={s_1,s_2,\cdots,s_n}$,由n个instance组成,我们有一个可学习的网络$f$
上述模型认为一个bag的instance是相互独立的,但通常不是,所以需要考虑同一个bag中不同instance之间的关系,有多建模关系的方式,不过最近的工作通常直接用self-attention解决。 两种方式 $$\hat{Y}B = \max_i f(s_i;s{-i})$$
另一思路则是把问题拓展,不局限于存在性问题,比如一个 bag有A类instance至少3个,B类1个,标签才为正,或者bag有4-6个正类instance才为正。这类问题其实用途不是很多,因为很难指导如此具体的约束,大致的解法就是先把原问题转为多个存在性问题,再用MIL求解。对这类问题的研究相对较少。
https://www.aclweb.org/anthology/Q18-1002.pdf