这篇是发表在CVPR2018的论文《Interpret Neural Networks by Identifying Critical Data Routing Paths》,作者是清华大学的Hu xiaolin组,第一作者是Wang Yulong。
作者提出了一种利用知识蒸馏来生成神经网络的预测路由路径的方法。通过预测路由路径可以分析神经网络对不同的类别路由差异,以及相同类别的路由差异。同时也分析了对抗样本对路由路径的影响,并提出了一种利用路由路径检测对抗样本攻击的方法。
方法
蒸馏引导的路由路径 Distillation guided routing
- 每个channel的output乘以一个gate$\lambda$
- 通过知识蒸馏的方法来学习gate
- $$\min_{\Lambda}L(f(x),f(x,\Lambda)+\gamma |\Lambda|_1) s.t. \lambda \ge 0$$
- $\Lambda$代表所有层的所有$\lambda$连接起来的vector
- 最小化蒸馏后的网络对同一张图片的输出与原始输出的loss,同时减少lambda的L1Norm
- 通过gradient descent来学习最佳的$\Lambda$,训练30iteration
- 找出训练的iterations里面最小的loss对应的$\Lambda$作为CDRP
实验
- 剪枝量化研究
- Pruning的方法来剪枝
- 比Adaptive Weight Routing和Adaptive Activation Routing效果要好,Sparsity高
- CDRP能代表很强的分类信息,分的清重要channel和不重要channel
- 类别间的差异
- t-SNE发现,前面的层差异小,后面加大
- 类别内的差异
- 可以通过agglomerative clustering来对组内的图片进行距离判别
- 对抗样本
- 对抗到不同的类别,能区分开来
- 对抗到不确定类型,不能区分开来,因为这个时候被误解的类别和原始图片很想
总结
这篇论文总结了怎么用CDRP的方法来分析神经网络的性质。实验设置可以做到很好。