如何使用Keras快速構(gòu)建集成卷積網(wǎng)絡(luò)模型?在統(tǒng)計(jì)學(xué)和機(jī)器學(xué)習(xí)領(lǐng)域,集成方法(ensemble method)使用多種學(xué)習(xí)算法以獲得更好的預(yù)測(cè)性能(相比單獨(dú)使用其中任何一種算法) 。和統(tǒng)計(jì)力學(xué)中的統(tǒng)計(jì)集成(通常是無窮集合)不同,一個(gè)機(jī)器學(xué)習(xí)集成僅由一個(gè)離散的可選模型的離散集合組成,但通常擁有更加靈活的結(jié)構(gòu) [1] 。GitHub 地址:https://github.com/LawnboyMax/keras_ensemblng使用集成的主要?jiǎng)訖C(jī)是在發(fā)現(xiàn)新的假設(shè),該假設(shè)不一定存在于構(gòu)成模型的假設(shè)空間中 。從經(jīng)驗(yàn)的角度看,當(dāng)模型具有顯著的多樣性時(shí),集成方法傾向于得到更好的結(jié)果 [2] 。動(dòng)機(jī)在一個(gè)大型機(jī)器學(xué)習(xí)競(jìng)賽的比賽結(jié)果中,最好的結(jié)果通常是由模型的集成而不是由單個(gè)模型得到的 。例如,ILSVRC2015 的得分最高的單個(gè)模型架構(gòu)得到了第 13 名的成績(jī) 。而第 1 到 12 名都使用了不同類型的模型集成 。我目前并沒有發(fā)現(xiàn)有任何的教程或文檔教人們?nèi)绾卧谝粋€(gè)集成中使用多種模型,因此我決定自己做一個(gè)這方面的使用向?qū)?。我將使用 Keras,具體來說是它的功能性 API,以從相對(duì)知名的論文中重建三種小型 CNN(相較于 ResNet50、Inception 等而言) 。我將在 CIFAR-10 數(shù)據(jù)集上獨(dú)立地訓(xùn)練每個(gè)模型 [3] 。然后使用測(cè)試集評(píng)估每個(gè)模型 。之后,我會(huì)將所有三個(gè)模型組成一個(gè)集合,并進(jìn)行評(píng)估 。通常按照預(yù)期,這個(gè)集成相比單獨(dú)使用其中任何一個(gè)模型,在測(cè)試集上能獲得更好的性能 。有很多種不同類型的集成:其中一種是堆疊(stacking) 。這種類型更加通用并且在理論上可以表征任何其它的集成技術(shù) 。堆疊涉及訓(xùn)練一個(gè)學(xué)習(xí)算法結(jié)合多種其它學(xué)習(xí)算法的預(yù)測(cè) [1] 。對(duì)于這個(gè)示例,我將使用堆疊的最簡(jiǎn)單的一種形式,其中涉及對(duì)集成的模型輸出取平均值 。由于取平均過程不包含任何參數(shù),這種集成不需要訓(xùn)練(只需要訓(xùn)練模型) 。本文介紹的集成的簡(jiǎn)要結(jié)構(gòu)準(zhǔn)備數(shù)據(jù)首先,導(dǎo)入類和函數(shù):from keras.models im
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助:- 兔子怎么看公母
- 如何解讀夢(mèng)見姥姥的象征意義?
- 希圖
- 世界語言使用人數(shù)排名
- 零基礎(chǔ)如何快速學(xué)英語
- 事無不可對(duì)人言
- word檢查錯(cuò)別字
- 如何煎蛋
- 農(nóng)歷陰歷陽歷怎么區(qū)分
- 的得地
