Deep Streaming Label Learning

Wang Z, Liu L, Tao D. Deep Streaming Label Learning[J]. ICML2020 paper.

1. Introduction

    本文基于的问题是,标签会因为环境的变化而种类增加或者改变。例如,当一张照片被发布在Facebook或Twitter上时,浏览的用户会不断地对照片进行不同的标签,分类系统需要根据新的标签进行准确的更新。Deep Streaming Label Learning(DSLL) 可以从过去的标签和历史模型中探索和吸收知识,以理解和发展新的标签。并且基于理论证明了error bound。

2. Related work

    多标签(muti-label learning)的传统方法是1.探究多个label之间的相关性。 2.利用embedding的方法把高维标签映射到低维标签。问题在于他们获取的标签都是一次性给出的,个人认为作者的重点就是要解决动态添加标签的问题。
    传统模型遇到新label的困难是:1重新训练所有的label一起训练的时间太长了。 2单独训练新的label会导致不能很好的利用历史信息。 (相当于就是增量学习在不同的数据分布下学习的困境吧)

3. Deep Streaming Label Learning

Deep Streaming Label Learning 论文阅读
这个是文章的结构图。主要是三个框架。
1.Streaming label mapping: 主要是尽量得到之前label和新加入label最接近的mapping。在前人论文中证明了探索和开发标签之间的关系已被证明对提高MLL性能是有利的和至关重要的(Zhang & Zhou, 2014; Yeh et al., 2017; Menon et al., 2019)。 其中训练的时候会加入Hard label(也就是GT的label),但是测试的时候只有soft label(训练得到的标签),所以要进行联合训练。会有一个参数 α\alpha 来调节。 (注意所有的label都是0或者1的,一些loss的细节可以具体看文章,只要用到了correlation-aware loss)

2.Streaming Feature Distillation: 用蒸馏网络来缩小模型,用之前的模型作为Teacher,来训练较小的Student模型。 由于所选择的提示层可能比引导层有更多的输出(神经元),我们添加一个参数化的自适应矩阵WAdaptW_{Adapt} 来指导匹配输出的维度。所以我们可以得到对应的loss function
LH(RGuided,WAdapt)=RHintWAdaptRGuided22 L_H(R_{Guided}, W_{Adapt}) = ||R_{Hint} - W_{Adapt} R_{Guided}||^2_2

3.Senior student network: 他的设计是为了整合从过去的标签和历史分类器学到的知识。Senior student network 接收流标签映射和学生网络的输出作为输入,并生成对新标签的预测。 特别地,我们在流标签映射后添加了一个隐藏层作为非线性转换StS_t,它可以将流标签的输出映射到更高的空间。

4. Theoretical Analysis

    定理证明了从过去标签中学习到的知识有助于在不影响模型精度的情况下提高对新标签建模的普适性。(证明详见原文和补充材料附录A)

5. Experiment

肯定就是比其他模型好好好,先不放了,如果要研究这个方向再说。

一些自己的思考

1.是否可以参照RL的方式?因为RL能够训练量越大,训练的越好。
Answer: 不行。因为客观来说RL目的是找到一个好的分布,然后用policy去做action,每次迭代都是对于policy采样得到数据分布,然后再训练一个更好的policy,迭代的过程。所以个人认为RL并不需要拟合所有的空间分布,只要找到利好的就行。
但是有监督学习不行,我们是要拟合所有的分布,所以可能RL不能给我们以太大的帮助。

2.这个问题能够跳出增量学习的范式么?还是就只能套用增量学习的方法来水呢?

3.这也不是真正的online-learning,如果再有新的数据标签扩充,依旧不能解决,我们是否能有真正的online-learning呢?

相关文章: