神经网络结构搜索算法之一
网络结构
降低神经网络结构参数
如下图,彩色框框为生成单个神经的参数,使用循环神经网络去生成卷积神经网络
左边RNN可以生成LSTM的序列表达,然后把序列解析成网络表达结构,得到网络结构的表达,然后计算得到accuracy,然后反馈给RNN,然后再重新生成LSTM的序列表达。
ex:单层网络结构参数
卷积的高、宽、步长的高和宽,最后一个是channel的个数(概率),每一个的loss分别是反馈R与概率相乘
对于上述的这个模型,是一个无监督的学习模型,所以需要每个生成的模型都需要训练,耗时,故采用分布式训练,tensorflow Serving
下图神经网络搜索中的一个框架,有多个参数存储server点(不同参数可以通过哈希算法储存),工作结点再分下一层,下一层再并行计算
下图为上图的分布式训练流程
tensorflow Serving核心思想:参数定义在服务器上面,模型训练放在工作节点上,中间传播相应的梯度,左边为伪代码。
同步和异步传播
第一种算法的缺点:
神经网络结构搜索算法之二
单层的复杂结构:下左图的InceptionNet的子结构,下右图的ResNet的子结构,分子使他们的公共点
第二种算法实现复制的单层结构
如下图,依然是使用循环神经网络来生成卷积(使用单层的循环神经),右边中的循环神经循环B次之后就有可能到达复制的单层结构,右边简化后就是左边的图。再下一次循环的时候,就可以从A,B和new中选择两个。
上述的伪代码:
上述的操作集合如下:
合并操作只有两种。
在合并之前需要下面的先验知识
Normal Cell结构
Reduction Cell
现有的网络结构
第二种算法的缺点:
神经网络结构搜索算法之三
横向对比
总结
课程总结
课程目录
提升: