论文阅读:Editable Neural Networks

论文阅读:Editable Neural Networks_第1张图片

ICLR2020,居然是俄罗斯的经济学学校。
文章关注的问题是,如何有效地纠正模型在特定错误上的表现,而不至于影响模型总体性能。本文称其为Editable Training,相当于是一个新问题。(感觉有点类似小样本增量学习?)


1.Introduction

大部分模型,对单个输入的预测要依赖所有的模型参数,做特定纠正很难不影响模型在其它输入上的性能表现。

现有方法是:1.重训练  2.人工缓存(lookup table之类的)
本文提出一种Editable Training的方法。


2.Related work

解释下Editable Neural Networks的idea和以下几个领域的关联:

  • meta-learning:ENN同属于此,“learn to allow effective patching”
  • 灾难性遗忘:与CL不同,排除了序列任务假设
  • 对抗训练:ENN可通过直接学习网络的脆弱样本解决这个问题

3.Editing Neural Networks

定义一下问题:

原模型 f(x,θ),参数θ由目标函数L_{base}(\theta)学习得到

编辑函数:\hat{\theta} = Edit(\theta,l_e),调整θ以使得l_e(\hat{\theta})\leq 0

其中     (理解不能,直觉地看是使yref输出最大?)

 l_e(\hat{\theta})\leq 0 is satisfied iff argmax_y_i log p(y_i|x,\widehat{\theta}) = y_{pref}

Edit()应满足:

  • Reliability:l_e(\hat{\theta})\leq 0
  • Locality:最小化在f上的影响
  • Efficiency:时间存储效率高

3.1 Gradient Descent Editor

一个实现就是普通的梯度下降,可以用上述定义形式化一下。

作者找到了一些方法使得权重更新更健壮,且改善Locality,如:Resilient Backpropagation——RProp,SignSGD和RMSProp。

3.2 Editable Training

论文阅读:Editable Neural Networks_第2张图片

目标函数:

其中

超参数cedit,cloc充分小,可以使得base不受影响,同时改善locality。这可能是因为神经网络overparameterized,可以提供容量优化上述目标函数。

学习步α是一个可学习参数,通过梯度下降更新。(来自meta learning的思路?表现在上图为,穿过Edit()的反向传播)。


4.Experiments

4.1 Toy Experiment:CIFAR-10

10分类任务,在baseline上做1000个edit,每个edit包含一个来自测试集的图片,均匀分配一个0-9随机标签。(也就是说,训练集有1000个图片是错标了的)

定几个评价指标:

  • Drawdown:一个edit前后,平均分类错误之差,越小locality越好
  • Success Rate:10更新步内,edits成功率
  • Num steps:单个edit所需的平均更新步数

1.对比editor functions: 这里没有用editable training方法

论文阅读:Editable Neural Networks_第3张图片

可见梯度下降算法的选择对locality影响很大,Adam和Momentum差可能是因为梯度大了。

 

2.Editable training:

在每个训练batch,使用限制l_e(\theta),x从训练集选出,yref随机0-9。训练目标函数如上,10个editor steps,更新所有参数。

三个baseline:EWC,Deep KNN,CNP

论文阅读:Editable Neural Networks_第4张图片

结论:

  • cloc = 0.01比较利于降低drawdown,同时test error较低
  • 只edit resnet的Chain 3部分和edit 整个模型几乎效果相同
  • Editable + CNP易于实现,且同基于gradient的方法一样有效

 

4.2 Analyzing Edited Models

  • 研究一个样本的edit发生时,哪类受最多影响( edits of baseline model cause most drawdown on samples that belong to the same class as the edited input (prior to edit).)
    论文阅读:Editable Neural Networks_第5张图片
  • t-SNE可视化10000维的model descriptor,分析edit space(with Editable Training neural networks learn representations where edits affect objects of the same original class to a smaller extent.)
    论文阅读:Editable Neural Networks_第6张图片
  • 截断SVD分解(Editable Training learns representations that exploit the neural network capacity to a greater extent.)
    论文阅读:Editable Neural Networks_第7张图片

4.3 Editable Fine-tuning for Large Scale Image Classfication

  1. REALISTIC EDIT TASKS WITH NATURAL ADVERSARIAL EXAMPLES

4.4 Editable Training for Machine Translation


5.Conclusion

模型校正问题,可编辑训练方法,老实说没搞懂这个实验

你可能感兴趣的:(增量学习)