parameter是什么意思(功放parameter是什么意思)( 四 )
这是ENAS的重量分担原则 。首先,将定义固定数量的节点,然后通过一组参数控制每个节点连接的前端节点索引 。这组参数是我们最终要挑选出来的,因为它可以代表一个固定的神经网络结构 。只需使用上述优化算法,如贝叶斯优化和DQN优化和选择最佳的参数集 。
评价模型是否由多组参数组成,然后用新的网络结构训练模型得到AUC等指标?答案是否定的,如果是,那和常见的NAS算法没什么区别 。因为模型的训练后评估是一个非常高效的操作,这里的评估模型是指每组模型使用相同的一组权重,在未训练的验证集中产生影响,最终选择AUC或者精度最好的模型结构,实际上就是节点的连接方式或者表示连接方式的一组参数 。
总结一点,因为ENAS生成的所有模型中的节点数都是一样的,节点的输入输出也是一样的,所有模型中所有节点的权重都可以加载使用,所以我们只需要训练一次模型就可以得到权重,然后让每个模型验证集合来做一个估计,只要找到更好的模型 。其实这个过程会进行很多次,一段时间后这个组的共享权重会更新 。比如我找到了一个更好的模型结构,我就可以用这个接口来训练和更新权重,然后看看其他的模型结构在使用了这组权重之后,在验证机中是否能表现的更好 。
回到之前TensorFlow实现ENAS的问题,我们知道TensorFlow要求开发者先定义Graph,然后加载权重运行,但是定义Graph的过程和模型训练的过程是分开的,ENAS要求我们在模型训练的过程中不断调整Graph的结构,尝试更好的Graph模型结构 。其实这在声明式编程接口的TensorFlow上实现并不容易,在命令式编程接口的PyTorch上实现更好 。当然,TensorFlow在这里可以改名,因为《ENAS》的作者提供了基于TensorFlow的ENAS源代码的实现,开源地址是https://github.com/melodyguan/enas.我们也深入查看了代码 。作者使用了很多tf.case、tf .等接口,而实际上最终训练好的子模型的图是根据TensorFlow的图中的参数生成的,所以所有子模型的图集并不是Python代码定义的,也不需要每次都重新构建图来影响模型训练的性能 。
除了节点之间的连接,ENAS论文中可以训练的超参数还包括上图所示的激活函数,每个节点使用的激活函数由控制器模型输出的一组参数决定,这些激活函数不需要重新训练,只需要直接加载共享权值然后做一个推理就可以参与模型评估 。
很多人可能觉得目前共享权比较简单,只能实现矩阵乘加,也就是全连接层的功能 。但是,在图像中会使用更多的卷积网络,还会有滤波器大小和轮询内核大小等参数可供选择 。事实上,ENAS已经考虑到这一点 。这些节点拥有的权重和使用权重的方法称为单元 。目前已经提供了乘法和卷积两种细胞,并在PTB和Cifar10数据集上进行了验证 。当然,将来可以添加RNN等细胞,甚至可以将多个细胞混合在一起 。当然,这在实现中需要更复杂的判断和实现,比如前置节点的连接 。
对于ENAS控制器模型的参数整定,本文采用了强化学习中的策略梯度 。当然,如前所述,使用贝叶斯优化、DQN和进化算法是没有问题的 。然而,目前ENAS的控制器模型和共享权重的实现是放在一起的,因此很难扩展新的控制器优化算法 。未来,我们希望在Advisor中集成更多的优化算法(贝叶斯优化、随机搜索、网格搜索、规划支持策略梯度、DQN、进化算法、粒子群优化等)),以便ENAS和其他NAS算法也可以使用这些更容易实现的调整算法 。
总的来说,ENAS为我们提供了自动超参数整定和自动生成神经网络结构的新思路 。通过共享权重,所有生成的模型都不需要重新训练 。我们只需要做一次推理就可以得到很多的状态和奖励,为后面的优化算法提供了很多真实的训练样本和优化数据 。这是一种成本非常低的调优尝试 。虽然我们可能找不到更好的模型结构,但是我们可以在这么大的搜索空中快速验证新的模型结构和调优生成模型结构的算法,至少我们在验证过的PTB和CIFAR-10数据集上有了很大的突破 。
当然,我们也不能忽视ENAS本身的缺陷(这也是未来优化ENAS的方向) 。首先,为了分担权重,节点的数量必须一致,这将限制生成模型的多样性;目前只考虑记录前一个节点的索引,后期可以考虑连接多个节点,创建更大的搜索空空间和更复杂的模型结构 。第三,目前会用某个模型训练的权重来复用所有模型进行评价,对其他模型可能不公平,可能导致效果并不比当前训练的模型好 。最后,基于会议的当前评价中可以调优的参数,必须在会议的过程中有所体现,比如学习率、辍学率等超参数是无法调优和选择的 。
推荐阅读
- exif信息是什么(图片格式jpeg保存exif信息怎么弄)
- 贴水和升水是什么意思(深水与贴水的区别)
- thumbs是什么文件(pdf文件格式错误,无法打开怎么办)
- 道尔顿是什么单位(一个道尔顿是多少)
- 王祖蓝的超能力是什么(奔跑吧兄弟3王祖蓝的超能力是什么)
- 滞销商品是什么(如何确认滞销品)
- vsd是什么格式(如何打开vsd文件)
- 肉蒲团是什么意思(粤语蒲的意思)
- s45c是什么材料(s690相当于什么材质)
- 周公之礼是什么意思(古代周公之礼全程图片)