關(guān)于自動(dòng)機(jī)器學(xué)習(xí)的概述(AutoML)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
機(jī)器學(xué)習(xí)是讓算法自動(dòng)的從數(shù)據(jù)中找出一組規(guī)則,從而提取數(shù)據(jù)中對(duì)分類/聚類/決策有幫助的特征,隨著機(jī)器學(xué)習(xí)的發(fā)展,其中人工需要干預(yù)的部分越來越多,而AutoML則是對(duì)機(jī)器學(xué)習(xí)模型從構(gòu)建到應(yīng)用的全過程自動(dòng)化,最終得出端對(duì)端的模型(end to end)。有了AutoML,機(jī)器學(xué)習(xí)就會(huì)從下圖的曲折變?yōu)樯蠄D的一馬平川。
從流程先后順序來分,最初是數(shù)據(jù)準(zhǔn)備,包括數(shù)據(jù)收集和清洗,之后是特征工程,其中包括特征選擇(決定哪些特征需要保留),特征提?。▽?duì)特征進(jìn)行降維,常用的方法例如PCA),特征組合(將多個(gè)特征合并/構(gòu)建為一個(gè)新的特征)。
在之后的模型構(gòu)建中,最關(guān)鍵的是模型選擇,之后超參數(shù)優(yōu)化,可以采取很多方式,最簡單的做法是網(wǎng)格搜索,常用的方法包括用強(qiáng)化學(xué)習(xí),進(jìn)化算法,貝葉斯優(yōu)化,以及梯度下降,來縮小搜索空間;最后,AutoML通過引入提前停止,降低模型的精度,參數(shù)共享來自動(dòng)化模型評(píng)價(jià)的過程。
數(shù)據(jù)收集這項(xiàng)任務(wù),不在是搜索與收集真實(shí)數(shù)據(jù),還包括產(chǎn)生模擬數(shù)據(jù),用來擴(kuò)展訓(xùn)練數(shù)據(jù)集,可以使用的新技術(shù)包括對(duì)抗神經(jīng)網(wǎng)絡(luò)(點(diǎn)擊查看對(duì)應(yīng)文章),還可以使用強(qiáng)化學(xué)習(xí)的框架,來優(yōu)化用于控制生成數(shù)據(jù)的參數(shù),從而使得生成的數(shù)據(jù)能更有效的助力模型的訓(xùn)練。而數(shù)據(jù)清洗則是自動(dòng)完成包括缺失值補(bǔ)全,離群點(diǎn)處理,特征歸一化,類別型特征的不同編碼等之前手動(dòng)完成的工作。
模型的自動(dòng)化選擇,傳統(tǒng)的方法是從傳統(tǒng)的模型,例如KNN,SVM,決策樹中選出一個(gè),或多個(gè)組合起來效果最好的模型,而當(dāng)前AutoML的研究熱點(diǎn)是N eural Architecture Search, 也就是不經(jīng)過人工干預(yù),模型自動(dòng)生成一個(gè)對(duì)當(dāng)前任務(wù)最有效的網(wǎng)絡(luò)結(jié)構(gòu),模型自動(dòng)在自我生產(chǎn)的不同結(jié)構(gòu)下搜索最好的操作組合序列。
搜索的結(jié)果如下圖所示:
其中應(yīng)用到強(qiáng)化學(xué)習(xí)的部分如下圖所示:
這里的行為是以一定的概率選擇某個(gè)網(wǎng)絡(luò)結(jié)構(gòu),行為是在該結(jié)構(gòu)下,訓(xùn)練子網(wǎng)絡(luò),使其在訓(xùn)練集上達(dá)到預(yù)設(shè)的準(zhǔn)確率,獎(jiǎng)勵(lì)是該子網(wǎng)絡(luò)在測(cè)試數(shù)據(jù)集上的準(zhǔn)確率與該網(wǎng)絡(luò)被選擇的概率的乘積,通過將子模型的泛化能力作為反饋,用于控制不同模型被選擇概率的RNN得以優(yōu)化其梯度,以選出泛化能力最強(qiáng)的模型,同時(shí)通過始終保持一定概率選擇其他模型,處理explore VS exploit的權(quán)衡。
NAS算法作為當(dāng)前AutoML最熱的研究領(lǐng)域,有很多變種,下圖展示了在CIFAR1000上,不同NAS方法的效果及訓(xùn)練用時(shí)。相比于強(qiáng)化學(xué)習(xí)和進(jìn)化算法,傳統(tǒng)方法的用時(shí)更少。為了找到合適的網(wǎng)絡(luò)架構(gòu),除了傳統(tǒng)的串行網(wǎng)絡(luò),還有基于cell來做層級(jí)化網(wǎng)絡(luò)架構(gòu)搜索的。下圖展示的是先從幾個(gè)最基本的操作,搜索得出一個(gè)一級(jí)的網(wǎng)絡(luò)組件,之后在自動(dòng)化的搜索如何用一級(jí)組件搭建網(wǎng)絡(luò)。
模型選定后的調(diào)參過程,最常用的是網(wǎng)格搜索,也就是按照固定的間距,在搜索空間上打點(diǎn),但下圖指出,網(wǎng)格搜索不一定好過隨機(jī)搜索,原因是對(duì)于重要參數(shù),網(wǎng)格搜索采樣地點(diǎn)會(huì)不足,從而導(dǎo)致無法取到對(duì)模型效果相對(duì)較好的點(diǎn),autoML會(huì)使用隨機(jī)抽樣,首先評(píng)價(jià)各個(gè)超參數(shù)的重要性,之后再對(duì)重要的參數(shù)進(jìn)行微調(diào)。