《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 終結(jié)谷歌每小時(shí)20美元的AutoML!開(kāi)源的AutoKeras了解下

終結(jié)谷歌每小時(shí)20美元的AutoML,!開(kāi)源的AutoKeras了解下

2018-08-03

谷歌AutoML 每小時(shí)收費(fèi) 20 美元,,是不是很肉疼?GitHub 上的一個(gè)開(kāi)源項(xiàng)目為廣大從業(yè)者帶來(lái)了福音,。這種名為 AutoKeras 的開(kāi)源 Python 包為昂貴的 AutoML 提供了免費(fèi)替代品。AutoKeras 使用高效神經(jīng)網(wǎng)絡(luò)自動(dòng)架構(gòu)搜索 ENAS,具有安裝快速,、運(yùn)行簡(jiǎn)單、案例豐富,、易于修改等優(yōu)點(diǎn),,而且所有代碼都是開(kāi)源的!想要嘗鮮的小伙伴可以了解一下,。

微信圖片_20180803155612.jpg


每小時(shí) 20 美刀的 AutoML


Google AI 終于發(fā)布了 AutoML 的 beta 版,,有人說(shuō)這項(xiàng)服務(wù)將徹底改變深度學(xué)習(xí)的方式。


beta 版鏈接:https://cloud.google.com/automl/


谷歌的 AutoML 是機(jī)器學(xué)習(xí)工具中新的云軟件集,。它基于谷歌最先進(jìn)的圖像識(shí)別研究——神經(jīng)網(wǎng)絡(luò)自動(dòng)架構(gòu)搜索(Neural Architecture Search,,NAS)。NAS 是一種在給定特定數(shù)據(jù)集中的算法,,用于搜索在該數(shù)據(jù)集上完成特定任務(wù)的最優(yōu)神經(jīng)網(wǎng)絡(luò),。AutoML 是一套機(jī)器學(xué)習(xí)的工具,可以讓用戶(hù)輕松地訓(xùn)練高性能的深度網(wǎng)絡(luò),,而無(wú)需用戶(hù)具備任何深度學(xué)習(xí)或人工智能方面的知識(shí),;你所需要的只是標(biāo)簽數(shù)據(jù)!谷歌將使用 NAS 為特定的數(shù)據(jù)集和任務(wù)找到最優(yōu)網(wǎng)絡(luò),。他們已經(jīng)展示了該模型如何取得遠(yuǎn)優(yōu)于手工設(shè)計(jì)網(wǎng)絡(luò)的性能,。


AutoML 完全改變了整個(gè)機(jī)器學(xué)習(xí)圈,因?yàn)閷?duì)于許多應(yīng)用程序來(lái)說(shuō),,有了它就不再需要專(zhuān)業(yè)技能和專(zhuān)業(yè)知識(shí)了,。許多公司只需要深度網(wǎng)絡(luò)完成簡(jiǎn)單的任務(wù),如圖像分類(lèi),。在這一點(diǎn)上,,他們不需要招五個(gè)機(jī)器學(xué)習(xí)博士,只需要一個(gè)能處理數(shù)據(jù)遷移和數(shù)據(jù)組織的人即可,。


那么 AutoML 會(huì)是讓所有公司或者個(gè)人輕松做人工智能的「萬(wàn)能鑰匙」嗎,?


沒(méi)那么快,!


在計(jì)算機(jī)視覺(jué)中使用谷歌的 AutoML,每小時(shí)將花費(fèi) 20 刀,。簡(jiǎn)直瘋了,!除非花錢(qián)去試,不然你都無(wú)法確定 AutoML 是否真的比你自己手工設(shè)計(jì)的網(wǎng)絡(luò)更準(zhǔn)確,。有趣的是,,在谷歌以此盈利之前,無(wú)論在谷歌還是 AI 社區(qū),,人們都更傾向于開(kāi)源,,將知識(shí)分享給每一個(gè)人。


而谷歌的 AutoML 就將敗在「開(kāi)源」上,。


幫你省錢(qián)的開(kāi)源 AutoKeras


AutoKeras 是一個(gè)由易用深度學(xué)習(xí)庫(kù) Keras 編寫(xiě)的開(kāi)源 python 包,。AutoKeras 使用 ENAS——神經(jīng)網(wǎng)絡(luò)自動(dòng)架構(gòu)搜索的高效新版本。AutoKeras 包可通過(guò) pip install autokeras 快速安裝,,然后你就可以免費(fèi)在準(zhǔn)備好在的數(shù)據(jù)集上做你自己專(zhuān)屬的架構(gòu)搜索,。


因?yàn)樗械拇a都是開(kāi)源的,所以如果你想實(shí)現(xiàn)真正的自定義,,你甚至可以利用其中的參數(shù),。所有都來(lái)自 Keras,所以代碼都很深入淺出,,能幫助開(kāi)發(fā)人員快速準(zhǔn)確地創(chuàng)建模型,,并允許研究人員深入研究架構(gòu)搜索。


AutoKeras 具備一個(gè)好的開(kāi)源項(xiàng)目該有的一切:安裝快速,,運(yùn)行簡(jiǎn)單,,案例豐富,易于修改,,甚至可以看到最后 NAS 找到的網(wǎng)絡(luò)模型,!偏愛(ài) TensorFlow 或 Pytorch 的用戶(hù)可點(diǎn)擊以下鏈接:


https://github.com/melodyguan/enas

https://github.com/carpedm20/ENAS-pytorch


用戶(hù)可以嘗試?yán)?AutoKeras 或其他任何實(shí)現(xiàn)方式替代 AutoML,它們的價(jià)格便宜得離譜,?;蛟S谷歌正暗中改進(jìn) AutoML,與各種開(kāi)源方法拉開(kāi)差距,,但 NAS 模型的表現(xiàn)與手工設(shè)計(jì)的模型差距很小,,付出這么高的代價(jià)真的值得嗎?


知識(shí)應(yīng)該是開(kāi)源的


總體來(lái)看,,深度學(xué)習(xí)和 AI 是一種非常強(qiáng)大的技術(shù),,我們不應(yīng)該為其設(shè)置如此之高的成本壁壘。沒(méi)錯(cuò),,谷歌,、亞馬遜,、蘋(píng)果、Facebook 及微軟都需要賺錢(qián)才能在競(jìng)爭(zhēng)中存活下來(lái),。但現(xiàn)在,,研究論文是公開(kāi)的,我們的深度學(xué)習(xí)庫(kù)可以快速?gòu)?fù)制這些方法,,在公開(kāi)內(nèi)容唾手可得的情況下,為用戶(hù)設(shè)置使用障礙是沒(méi)有意義的,。


這里有一個(gè)更嚴(yán)重的潛在問(wèn)題:知識(shí)本身正在被隱藏,。AI 領(lǐng)域最新趨勢(shì)中非常可圈可點(diǎn)的一點(diǎn)就是:許多研究社區(qū)都決定在 arXiv 等網(wǎng)站上快速,、公開(kāi)地發(fā)表自己的研究成果,,以與其他社區(qū)分享并獲得反饋。此外還有一個(gè)趨勢(shì)變得越來(lái)越明顯,,即在 Github 上發(fā)布研究代碼以供復(fù)制以及在研究和實(shí)際應(yīng)用中實(shí)現(xiàn)算法的進(jìn)一步應(yīng)用,。然而,我們?nèi)匀荒芸吹竭@種研究受困于高高的成本壁壘,。


分享有助于每個(gè)人知識(shí)的增長(zhǎng)和科學(xué)的進(jìn)步,。知識(shí)應(yīng)該是開(kāi)源的,這一點(diǎn)毋庸置疑,,而且造福人人,。


項(xiàng)目鏈接:https://github.com/jhfjhfj1/autokeras


AutoKeras 技術(shù)解析


相比于 AutoML,AutoKeras 采用的架構(gòu)搜索方法是一種結(jié)合了貝葉斯優(yōu)化的神經(jīng)架構(gòu)搜索,。它主要關(guān)注于降低架構(gòu)搜索所需要的計(jì)算力,,并提高搜索結(jié)果在各種任務(wù)上的性能。以下我們將從神經(jīng)架構(gòu)搜索到貝葉斯優(yōu)化介紹 AutoKeras 背后的技術(shù),,并期望讀者們能?chē)L試使用這樣的開(kāi)源技術(shù)完成各種優(yōu)秀的應(yīng)用,。


神經(jīng)架構(gòu)搜索(NAS)是自動(dòng)機(jī)器學(xué)習(xí)中一種有效的計(jì)算工具,旨在為給定的學(xué)習(xí)任務(wù)搜索最佳的神經(jīng)網(wǎng)絡(luò)架構(gòu),。然而,,現(xiàn)有的 NAS 算法通常計(jì)算成本很高。另一方面,,網(wǎng)絡(luò)態(tài)射(network morphism)已經(jīng)成功地應(yīng)用于神經(jīng)架構(gòu)搜索,。網(wǎng)絡(luò)態(tài)射是一種改變神經(jīng)網(wǎng)絡(luò)架構(gòu)但保留其功能的技術(shù)。因此,,我們可以利用網(wǎng)絡(luò)態(tài)射操作將訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)改成新的體系架構(gòu),,如,插入一層或添加一個(gè)殘差連接,。然后,,只需再加幾個(gè) epoch 就可以進(jìn)一步訓(xùn)練新架構(gòu)以獲得更好的性能,。


基于網(wǎng)絡(luò)態(tài)射的 NAS 方法要解決的最重要問(wèn)題是運(yùn)算的選擇,即從網(wǎng)絡(luò)態(tài)射運(yùn)算集里進(jìn)行選擇,,將現(xiàn)有的架構(gòu)改變?yōu)橐环N新的架構(gòu),。基于最新網(wǎng)絡(luò)態(tài)射的方法使用深度強(qiáng)化學(xué)習(xí)控制器,,這需要大量的訓(xùn)練樣例,。另一個(gè)簡(jiǎn)單的方法是使用隨機(jī)算法和爬山法,這種方法每次只能探索搜索區(qū)域的鄰域,,并且有可能陷入局部最優(yōu)值,。


貝葉斯優(yōu)化已被廣泛用于基于觀察有限數(shù)據(jù)的尋找函數(shù)最優(yōu)值過(guò)程。它經(jīng)常被用于尋找黑箱函數(shù)的最優(yōu)點(diǎn),,其中函數(shù)的觀察值很難獲取,。貝葉斯優(yōu)化的獨(dú)特性質(zhì)啟發(fā)了研究者探索它在指導(dǎo)網(wǎng)絡(luò)態(tài)射減少已訓(xùn)練神經(jīng)網(wǎng)絡(luò)數(shù)量的能力,從而使搜索更加高效,。


為基于網(wǎng)絡(luò)態(tài)射的神經(jīng)架構(gòu)搜索設(shè)計(jì)貝葉斯優(yōu)化方法是很困難的,,因?yàn)榇嬖谌缦绿魬?zhàn):首先,其潛在的高斯過(guò)程(GP)在傳統(tǒng)上是用于歐氏空間的,,為了用觀察數(shù)據(jù)更新貝葉斯優(yōu)化,,潛在高斯過(guò)程將使用搜索到的架構(gòu)和它們的性能來(lái)訓(xùn)練。然而,,神經(jīng)網(wǎng)絡(luò)架構(gòu)并不位于歐氏空間,,并且很難參數(shù)化為固定長(zhǎng)度的向量。


其次,,采集函數(shù)需要進(jìn)行優(yōu)化以生成下一個(gè)架構(gòu)用于貝葉斯優(yōu)化,。然而,這個(gè)過(guò)程不是最大化歐氏空間里的一個(gè)函數(shù)來(lái)態(tài)射神經(jīng)架構(gòu),,而是選擇一個(gè)節(jié)點(diǎn)在一個(gè)樹(shù)架構(gòu)搜索空間中擴(kuò)展,,其中每個(gè)節(jié)點(diǎn)表示一個(gè)架構(gòu),且每條邊表示一個(gè)態(tài)射運(yùn)算,。傳統(tǒng)的類(lèi)牛頓或基于梯度的方法不能簡(jiǎn)單地進(jìn)行應(yīng)用,。第三,網(wǎng)絡(luò)態(tài)射運(yùn)算改變神經(jīng)架構(gòu)的的一個(gè)層可能會(huì)導(dǎo)致其它層的很多變化,,以保持輸入和輸出的一致性,,這在以前的研究中并沒(méi)有定義。網(wǎng)絡(luò)態(tài)射運(yùn)算在結(jié)合了跳過(guò)連接的神經(jīng)架構(gòu)搜索空間中是很復(fù)雜的,。


在 AutoKeras 作者提交的論文中,,研究人員們提出了一種帶有網(wǎng)絡(luò)態(tài)射的高效神經(jīng)架構(gòu)搜索,它利用貝葉斯優(yōu)化通過(guò)每次選擇最佳運(yùn)算來(lái)引導(dǎo)搜索空間,。為應(yīng)對(duì)上述挑戰(zhàn),,研究者創(chuàng)建了一種基于編輯距離(edit-distance)的神經(jīng)網(wǎng)絡(luò)核函數(shù),。與網(wǎng)絡(luò)態(tài)射的關(guān)鍵思路一致,它給出了將一個(gè)神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)化為另一個(gè)神經(jīng)網(wǎng)絡(luò)需要多少運(yùn)算,。此外,,研究者為樹(shù)形架構(gòu)搜索空間專(zhuān)門(mén)設(shè)計(jì)了一種新的采集函數(shù)優(yōu)化器,使貝葉斯優(yōu)化能夠從運(yùn)算中進(jìn)行選擇,。優(yōu)化方法可以在優(yōu)化過(guò)程中平衡探索和利用,。此外,作者還定義了一個(gè)網(wǎng)絡(luò)級(jí)態(tài)射,,以解決基于前一層網(wǎng)絡(luò)態(tài)射的神經(jīng)架構(gòu)中的復(fù)雜變化,。該方法被封裝成一個(gè)開(kāi)源軟件,即 AutoKeras,,在基準(zhǔn)數(shù)據(jù)集上進(jìn)行評(píng)估,并與最先進(jìn)的基線方法進(jìn)行比較,。


該論文的主要貢獻(xiàn)總結(jié)如下:


結(jié)合網(wǎng)絡(luò)態(tài)射提出了一種高效的神經(jīng)架構(gòu)搜索算法,;

提出了利用神經(jīng)網(wǎng)絡(luò)內(nèi)核的 NAS 貝葉斯優(yōu)化、樹(shù)結(jié)構(gòu)采集函數(shù)的優(yōu)化以及網(wǎng)絡(luò)級(jí)的態(tài)射,;

開(kāi)發(fā)了一個(gè)開(kāi)源軟件 AutoKeras,,基于本文提出的神經(jīng)架構(gòu)搜索方法;

在基準(zhǔn)數(shù)據(jù)集上運(yùn)行了大量試驗(yàn)來(lái)評(píng)估該方法,。


論文:Efficient Neural Architecture Search with Network Morphism

微信圖片_20180803155643.jpg


論文地址:https://arxiv.org/abs/1806.10282


雖然目前深度神經(jīng)網(wǎng)絡(luò)自動(dòng)調(diào)參領(lǐng)域非常關(guān)注神經(jīng)架構(gòu)搜索(NAS),,但現(xiàn)存的搜索算法通常面臨計(jì)算成本高昂的困境。網(wǎng)絡(luò)態(tài)射(Network morphism)在改變神經(jīng)網(wǎng)絡(luò)架構(gòu)的同時(shí)保留它的功能,,因此能在搜索過(guò)程中實(shí)現(xiàn)更有效的訓(xùn)練來(lái)幫助 NAS,。然而,基于 NAS 的網(wǎng)絡(luò)態(tài)射仍然在計(jì)算上比較昂貴,,這主要因?yàn)閷?duì)現(xiàn)有的架構(gòu)選擇合適的變形操作效率比較低,。


眾所周知,貝葉斯優(yōu)化已經(jīng)廣泛應(yīng)用于優(yōu)化基于有限觀察值的目標(biāo)函數(shù),,這激勵(lì)我們探索利用貝葉斯優(yōu)化加速變形運(yùn)算選擇過(guò)程,。本論文中提出了一種新穎的框架,它引入了神經(jīng)網(wǎng)絡(luò)核函數(shù)和樹(shù)架構(gòu)的采集函數(shù)最優(yōu)化方法,,并允許使用貝葉斯優(yōu)化為高效的神經(jīng)架構(gòu)搜索引導(dǎo)網(wǎng)絡(luò)態(tài)射,。通過(guò)使用貝葉斯優(yōu)化選擇網(wǎng)絡(luò)態(tài)射操作,搜索空間的探索會(huì)更加高效,。此外,,將這一方法精心包裝成一個(gè)開(kāi)源軟件,即 AutoKeras,,沒(méi)有豐富機(jī)器學(xué)習(xí)背景的開(kāi)發(fā)者也可以便捷地使用它,。研究者已經(jīng)對(duì)真實(shí)數(shù)據(jù)集做了密集的實(shí)驗(yàn),,并證明了開(kāi)發(fā)的框架對(duì)于當(dāng)前最優(yōu)的基線模型有更優(yōu)的性能。


研究過(guò)程中需要解決的第一個(gè)問(wèn)題是:NAS 空間不是歐氏空間,,它并不滿(mǎn)足傳統(tǒng)高斯過(guò)程的假設(shè),。由于架構(gòu)包含的層級(jí)數(shù)和參數(shù)數(shù)量并不確定,因此向量化所有神經(jīng)架構(gòu)是不切實(shí)際的,。此外,,因?yàn)楦咚惯^(guò)程是一種核方法,所以研究人員使用神經(jīng)網(wǎng)絡(luò)核函數(shù)以解決 NAS 搜索空間的問(wèn)題,,而不是直接向量化神經(jīng)架構(gòu),。核函數(shù)背后的原理可直觀理解為將一個(gè)神經(jīng)架構(gòu)變形為另一個(gè)所需的編輯距離。

微信圖片_20180803155726.jpg

圖 1:神經(jīng)網(wǎng)絡(luò)核函數(shù)


我們需要解決的第二個(gè)問(wèn)題是采集函數(shù)(acquisition function)最優(yōu)化,。在歐氏空間上定義了傳統(tǒng)采集函數(shù),,其優(yōu)化方法不適用于通過(guò)網(wǎng)絡(luò)態(tài)射進(jìn)行的樹(shù)架構(gòu)搜索。因此本文提出一種優(yōu)化樹(shù)架構(gòu)空間采集函數(shù)的新方法,。

微信圖片_20180803155751.jpg


評(píng)估該方法有效性的結(jié)果如表 1 所示,。我們的方法在所有數(shù)據(jù)集上的錯(cuò)誤率最低。

微信圖片_20180803155830.jpg

表 1:分類(lèi)錯(cuò)誤率 


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話(huà)通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話(huà):010-82306118,;郵箱:[email protected],。