evoNAS
Repo for 3rd year research project: Evolutionary Neural Architecture Search
以下LEFT、MIDDLE、RIGHT表示上图对应的左中右三图
用NASNet的结构(上图)来做,LEFT和MIDDLE是选定的外部结构,我们要做的是选定Cell的结构(RIGHT),由于规定所有Cell的结构都是统一的,所以只对一个做演化就可以了
具体要做的就是对于RIGHT图中2-6这5个hidden layer,给他们选定他们的输入和对应的卷积核(各用两个参数表示).
“5个”hidden layer,这个个数是个超参
0,1是上层和隔层获得的输入(见MIDDLE),对于第一层就直接把原始数据复制两份分别输入
隐层7的输入来自与2-6中所有没有被用到的隐层
Representation
用一个list嵌套来表示Cell的结构: $$ [[a_2,b_2,e_2,f_2],...,...,...,[a_6,b_6,e_6,f_6]] $$ 每一个子list代表一个hidden layer的参数,这五个分别是2-6号hidden layer的参数
a,b代表输入的隐层,对于
e,f是其使用的卷积核, 用1~7的编号表示:
- identity
- 3x3 average pooling
- 3x3 max pooling
- 1x1 convolution
- 3x3 depthwise-separable conv
- 3x3 dilated convolution
- 3x3 convolution