Learning to Reweight Examples for Robust Deep Learning
Abstract
面对样本不平衡问题和标签噪声等问题,之前是通过regularizers或者reweight算法,但是需要不断调整超参取得较好的效果。本文提出了meta-learning的算法,基于梯度方向调整权重。具体做法是需要保证获得一个足够干净的小样本数据集,每经过一轮batch大小的训练就基于当前更新的权重,执行meta gradient descent step来最小化在这个干净无偏差的验证集上的loss。这个方法避免了额外的超参调整,在样本不平衡和标签噪声等问题上可以有很好的效果,所需要的仅仅是一个很小数量的干净的验证集。
Related Work
在解决样本问题上的工作:
-
训练集样本权重分配:
AdaBoost:寻找难例来训练分类器。
难例挖掘: 下采样多数样本,挖掘最难的样本
Focal Loss:不同样本添加不同权重,困难样本权重更大 -
outliers和noise processes:
有些方法是先学习简单样本在学习困难样本
部分工作是去研究如何更好地初始化网络参数 -
直接对样本数据集下手,re-sample之类的
在最近的meta-learning中,很多都在探索使用validation loss作为meta-objective,本文算法的区别是没有额外的超参,并且避免了成本较高的离线训练。
Learning to Reweight Examples
本文的模型看做online approximation而不是meta-learning objective,这样就可以处理任何常规的监督学习。
文章给出了具体实现并且有理论保证,收敛率为 O ( 1 / ϵ 2 ) O\left(1 / \epsilon^{2}\right) O(1/ϵ2)
3.1 From a meta-learning objective to online approximation
( x , y ) (x,y) (x,y)为输入-标签对, { ( x i , y i ) , 1 ≤ i ≤ N } \left\{\left(x_{i}, y_{i}\right), 1 \leq i \leq N\right\} { (xi,yi),1≤i≤N}为训练集,假设 { ( x i v , y i v ) , 1 ≤ i ≤ M } \left\{\left(x_{i}^{v}, y_{i}^{v}\right), 1 \leq i \leq M\right\} { (xiv,yiv),1≤i≤M}为一个很小的干净无偏差的验证集,其中 M ≪ N M \ll N M≪N. v v v表示验证集, i i i表示第 i t h i^{th} ith个数据;同时假设训练集是包含验证集的,如果不包含,就把验证集加入到训练集中,从而使得训练过程中能够利用更多信息。
用 Φ ( x , θ ) \Phi(x, \theta) Φ(x,θ)表示网络模型, θ \theta θ为模型参数,定义 C ( y ^ , y ) C(\hat{y}, y) C(y^,y)为loss函数,其中 y ^ = Φ ( x , θ ) \hat{y}=\Phi(x, \theta) y^=Φ(x,θ)。
在一般的训练中,我们希望最小化训练集上的期望loss,也就是 1 N ∑ i = 1 N C ( y ^ i , y i ) = 1 N ∑ i = 1 N f i ( θ ) \frac{1}{N} \sum_{i=1}^{N} C\left(\hat{y}_{i}, y_{i}\right)=\frac{1}{N} \sum_{i=1}^{N} f_{i}(\theta) N1∑i=1NC(y^i,yi)=N1∑i=1Nf<