Multi-Objective Reinforced Evolution in Mobile Neural Architecture Search
論文原文下載地址:https://arxiv.org/abs/1901.01074
PS:其實我自己也有很多地方沒有看懂,但是因爲寫了這個就想着發出來保存一下,不至於丟失。僅供參考。
摘要
1.利用了EA與RL的多目標算法MoreMNAS
2.在cell level 中進行了交叉,變異。(Search Space由各種cell構成)
3.強化控制器結合了自然變異,用以平衡搜索與利用
1.introduction
- 層由block與cell組成:層由塊或單元組成,每個模塊內的操作描述了搜索空間,例如:改變過濾器的大小和屬性,改變層的類型,添加跳接等。
- 本文所做工作:
- 繼承了NSGA-II和RL的優點;
- 構建基於cell結構的搜索空間,以便進行遺傳的交叉、變異;結合自然突變的強化突變擁有分層機制,以便加快選擇的速度;
- 第一次在超清分辨率圖片領域使用了多目標NAS
- 只在模型設計早起包括了極少的人類專家知識,增加了一些實際約束以便獲得可行解。
2.related works
單目標NAS:
- 基於RL的方法:Q-Learning(採用CNN,epsilon貪婪法)和策略梯度(RNN或者LSTM,正確性爲Reward)
- 基於進化的方法:通過適應度去挑選個體
- 強化進化方法強化變異:強化變異代替隨機變異(爲了避免退化)
多目標NAS
3.Multi-Objective Reinforced Evolution
1)轉化爲多目標問題
2)結構
MoreMNAS包含了3個基本結構:
- 基於cell的搜索空間
- 模型生成控制器(從搜索空間中採樣模型
- 評估器
本文使用NSGA-II的變體,採用分層進化過程來平衡利用和探索。
3)搜索空間
- 固定的頭尾:特徵提取,重建
- 靈活的主體部分——搜索空間的設計,cell包含的基本操作
- basic convolutions: 2D convolution, inverted bottleneck convolution with an expansion rate of 2, grouped convolution with groups in {2,4}
- the number of repeated blocks in {1, 2, 4}
- whether or not to use skip connections
- filter numbers in {16, 32, 48, 64}
- kernel sizes in {1, 3}
4)基於NSGA-II的cell層次的交叉,分層變異
- 初始化每個個體,隨機選擇操作
- 非支配排序(用新的擁擠度計算公式):
- 基於cell的交叉(x,y是individual,是model)
- 分層變異
- 交叉----“利用”
- 變異----“探索”
- 如果只有強化變異,對超參數調試和獎勵的設計就需要很細緻小心;
- 如果純粹用基於NAS的進化算法:不能充分利用“訓練生成模型”得到的知識(經驗)
基於以上兩點,提出了分層變異(hierarchical mutation)
目標值可分爲2類:可預測(輪盤賭方法)與不可預測(使用M個強化控制器)。
假設有K個目標,不可預測的目標爲M,則可預測的爲K-M,在本文中,K=3,M=1(PSNR),K-M=2(參數,muti-add)
意義:使用RL最小化不可預測的目標值
the mean squared error
在RL中使用策略梯度法,