導(dǎo)讀
ICLR2017退腥,論文的主題是如何用一個(gè)RNN通過(guò)強(qiáng)化學(xué)習(xí)生成一個(gè)效果不錯(cuò)的CNN結(jié)構(gòu)或者一個(gè)新的Recurrent Cell。文章的效果不算特別明顯再榄,但是思路可以借鑒狡刘。
https://arxiv.org/abs/1611.01578
1.總體思想
如圖一,左邊遞歸網(wǎng)絡(luò)(控制器)給出一個(gè)網(wǎng)絡(luò)結(jié)構(gòu)困鸥,該網(wǎng)絡(luò)結(jié)構(gòu)的概率為P嗅蔬。右側(cè),對(duì)這個(gè)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行訓(xùn)練疾就,并在驗(yàn)證集上進(jìn)行測(cè)試澜术,得到精度為R。這時(shí)虐译,將R反饋給左側(cè)控制器瘪板,通過(guò)強(qiáng)化學(xué)習(xí)更新控制器的參數(shù)吴趴,使得控制器對(duì)R大的網(wǎng)絡(luò)結(jié)構(gòu)給出更大的概率漆诽。
2.相關(guān)工作
文中提到,當(dāng)前有些方法也進(jìn)行相應(yīng)的研究锣枝,但是他們只能在固定長(zhǎng)度的空間中搜索厢拭。而用貝葉斯的方法,可以搜索可變長(zhǎng)度的空間撇叁,但是泛化能力和靈活性沒(méi)有本文的好供鸠。
3.方法
3.1 控制器
對(duì)于某一層,控制器可以預(yù)測(cè)該層的filter width陨闹,filter height楞捂,stride height薄坏,stride width,filter的個(gè)數(shù)寨闹,每一個(gè)預(yù)測(cè)都是通過(guò)softmax分類胶坠,并作為下一個(gè)預(yù)測(cè)的輸入。實(shí)驗(yàn)中的停止條件是繁堡,層的個(gè)數(shù)超過(guò)了某個(gè)指定的數(shù)值沈善。當(dāng)然這個(gè)數(shù)值在訓(xùn)練的過(guò)程中也可以變化。
3.2用增強(qiáng)學(xué)習(xí)進(jìn)行訓(xùn)練
優(yōu)化的方向是椭蹄,讓我們的控制器得到最好的獎(jiǎng)勵(lì)闻牡。也就是說(shuō),控制器給出的網(wǎng)絡(luò)結(jié)構(gòu)越好绳矩,那么反饋的R越大罩润,這相當(dāng)于給的獎(jiǎng)勵(lì)越好。目標(biāo)函數(shù)是
但是這個(gè)目標(biāo)函數(shù)的R是不可微的翼馆,需要使用policy gradient method取進(jìn)行優(yōu)化哨啃。他的近似解為:
為了減少方差,作者對(duì)上面的無(wú)偏估計(jì)做了寫改變写妥。
這個(gè)解仍然是無(wú)偏估計(jì)拳球。
作者還介紹了多個(gè)GPU分布式訓(xùn)練的一些操作,此處省去珍特,我們關(guān)注思想祝峻。
3.3增加結(jié)構(gòu)的靈活性
上面提到的控制器的搜索空間其實(shí)不包括skip connections,或者類似于GoogleNet和ResNet的旁支扎筒。所以莱找,作者增加了這些連接方式去擴(kuò)大控制器的搜索空間。
使用attention機(jī)制嗜桌。等式表示第i層輸入到j(luò)層的概率奥溺。
改進(jìn)后的控制器如下:
當(dāng)然,有了skip connections之后會(huì)有寫問(wèn)題骨宠。比如浮定,輸入的大小不一,或者某些層根本沒(méi)有輸入或者輸出层亿。作者提出了他的處理方法:
- 1.如果一個(gè)層沒(méi)有輸入桦卒,那么就把圖片作為輸入
- 2.最后一層,把所有沒(méi)有被鏈接的層的輸出concat起來(lái)匿又。然后輸入分類器方灾。
- 3.如果兩個(gè)concat的層的大小不一致,則小的補(bǔ)0.
當(dāng)然還可以加入其他更加高級(jí)的操作碌更。
3.4生成遞歸單元(recurrent cell)
這一章中裕偿,作者對(duì)上面的控制器進(jìn)行了修改洞慎,用來(lái)生成遞歸單元,其實(shí)就是RNN的單元嘿棘。只不過(guò)拢蛋,這個(gè)和經(jīng)典的不太一樣。經(jīng)典的遞歸單元是:
作者把遞歸單元看做成一棵樹蔫巩,xt和ht-1是輸入谆棱,ht是輸出≡沧校控制器需要預(yù)測(cè)樹的每個(gè)節(jié)點(diǎn)用什么鏈接方式:addition, elementwise multiplication,etc或者激活函數(shù):tanh, sigmoid, etc垃瞧。下面是個(gè)例子。
然后下面對(duì)應(yīng)的是生成步驟坪郭,我直接貼圖了个从。我們對(duì)照公式和上圖看下,很清晰歪沃。
4.實(shí)驗(yàn)
驗(yàn)證生成CNN數(shù)據(jù)集:CIFAR-10
驗(yàn)證生成RNN的遞歸單元:Penn Treebank
數(shù)據(jù)預(yù)處理:作者對(duì)圖片做了白化嗦锐,還有放大隨機(jī)crop,還有翻轉(zhuǎn)沪曙。
搜索空間:對(duì)于CNN層:filter height [1,3,5,7], filter width [1,3,5,7] ,濾波器個(gè)數(shù)[24,36,48,64]奕污,步長(zhǎng)方面作者進(jìn)行了兩組實(shí)驗(yàn),固定為1液走,和可預(yù)測(cè)為[1,2,3]碳默。
訓(xùn)練過(guò)程:控制器是兩層的LSTM,每層有35個(gè)隱藏單元缘眶。作者說(shuō)嘱根,他們用了800個(gè)GPU,同時(shí)訓(xùn)練800個(gè)網(wǎng)絡(luò)巷懈。(驚嘆该抒,google就是牛。)
實(shí)驗(yàn)結(jié)果:
實(shí)驗(yàn)結(jié)果我就不在啰嗦了顶燕,有一點(diǎn)點(diǎn)提升吧凑保。這個(gè)作者后來(lái)又出了一篇新文章,還沒(méi)看割岛,這邊文章的結(jié)果已經(jīng)沒(méi)啥參考價(jià)值了愉适。所以我說(shuō)說(shuō)一點(diǎn)有意思的地方:
對(duì)于CNN的生成,論文附錄貼了一個(gè)這樣的圖癣漆,下圖中的網(wǎng)絡(luò)在精度和深度之間達(dá)到不錯(cuò)的平衡。有意思的是剂买,網(wǎng)絡(luò)有不少濾波器是矩形的惠爽,而不是我們常用的正方形癌蓖。而,更有意思的是婚肆,層越深租副,網(wǎng)絡(luò)偏向于用更大的卷積核。
還有生成的RNN遞歸單元:
好了较性,今晚的Paper Reading就分享到這里用僧。雖然你五分鐘看完了,卻花了我一個(gè)小時(shí)編寫赞咙。有什么錯(cuò)誤或者理解錯(cuò)的地方责循,一定要告訴我哇,攀操,院仿,反正我也不會(huì)改的。哈哈哈速和。歹垫。。下期颠放,我將會(huì)繼續(xù)分享排惨,該作者的另外一篇關(guān)于用網(wǎng)絡(luò)生成網(wǎng)絡(luò)的論文 1707.07012-Learning Transferable Architectures for Scalable Image Recognition。敬請(qǐng)期待碰凶。Good Night若贮。
2017.11.26 在深圳
轉(zhuǎn)載注明下出處唄。http://www.reibang.com/p/3192f157d067