1. 概述
导读:NAS演化到使用可微网络结构DARTS的时候,已经将网络搜索的时间与显存消耗大大降低。但是随着训练epoch的增加DARTS的性能实际是collapse的,并不是持续提升。训练完成之后,发现最后搜索出来的网络结构趋向于较多的skip connection,而不是常规的卷积/池化等操作,这就导致了网络表达能力的病态。文章经过仔细分析DARTS优化的流程步骤,发现其中具体优化两部分参数:结构参数 α \alpha α和网络参数 w w w,这两个参数的优化过程其实是交替进行的,实际上这两个过程是不仅包含合作还包含了竞争关系的。之前的一些工作(PDARTS)中引入了一些正则化的方式来防止“过拟合”现象的发生,除了正则化的约束,其实还可以通过early stop的方式缓解这个问题。那么这篇文章的核心便是怎么去设置这个早停的判别机制了。文章的方法在CIFAR-10上test错误率为2.32%,CIFAR-100数据集上为14.87%,ImageNet数据集上为23.7%。
将文章提到的训练早停与训练到收敛这两种方式最后的到的网络结构进行比较,其结果见下图a所示:
可以看到当训练到收敛的时候网络会存在较多skip connection,这就导致了网络表达能力不足。
2. DARTS中colapse分析
2.1 DARTS算法流程
DARTS算法中实质的任务是优化结构参数 α \alpha α和网络参数 w w w,这两个部分是交替进行优化的,其优化过程可以描述为:
min α L v a l ( w ∗ ( α ) , α ) \min_{\alpha}L_{val}(w^{*}(\alpha),\alpha) αminLval(w