首頁(yè)人工智能技術(shù)資訊正文

微調(diào)模型完成圖像的分類任務(wù)【黑馬人工智能開發(fā)】

更新時(shí)間:2022-04-07 來源:黑馬程序員 瀏覽量:

如何在只有6萬(wàn)張圖像的MNIST訓(xùn)練數(shù)據(jù)集上訓(xùn)練模型?學(xué)術(shù)界當(dāng)下使用最廣泛的大規(guī)模圖像數(shù)據(jù)集ImageNet,它有超過1,000萬(wàn)的圖像和1,000類的物體。然而,我們平常接觸到數(shù)據(jù)集的規(guī)模通常在這兩者之間。假設(shè)我們想從圖像中識(shí)別出不同種類的椅子,然后將購(gòu)買鏈接推薦給用戶。一種可能的方法是先找出100種常見的椅子,為每種椅子拍攝1,000張不同角度的圖像,然后在收集到的圖像數(shù)據(jù)集上訓(xùn)練一個(gè)分類模型。另外一種解決辦法是應(yīng)用遷移學(xué)習(xí)(transfer learning),將從源數(shù)據(jù)集學(xué)到的知識(shí)遷移到目標(biāo)數(shù)據(jù)集上。例如,雖然ImageNet數(shù)據(jù)集的圖像大多跟椅子無(wú)關(guān),但在該數(shù)據(jù)集上訓(xùn)練的模型可以抽取較通用的圖像特征,從而能夠幫助識(shí)別邊緣、紋理、形狀和物體組成等。這些類似的特征對(duì)于識(shí)別椅子也可能同樣有效。

微調(diào)由以下4步構(gòu)成。

1.在源數(shù)據(jù)集(如ImageNet數(shù)據(jù)集)上預(yù)訓(xùn)練一個(gè)神經(jīng)網(wǎng)絡(luò)模型,即源模型。

2.創(chuàng)建一個(gè)新的神經(jīng)網(wǎng)絡(luò)模型,即目標(biāo)模型。它復(fù)制了源模型上除了輸出層外的所有模型設(shè)計(jì)及其參數(shù)。我們假設(shè)這些模型參數(shù)包含了源數(shù)據(jù)集上學(xué)習(xí)到的知識(shí),且這些知識(shí)同樣適用于目標(biāo)數(shù)據(jù)集。我們還假設(shè)源模型的輸出層跟源數(shù)據(jù)集的標(biāo)簽緊密相關(guān),因此在目標(biāo)模型中不予采用。

3.為目標(biāo)模型添加一個(gè)輸出大小為目標(biāo)數(shù)據(jù)集類別個(gè)數(shù)的輸出層,并隨機(jī)初始化該層的模型參數(shù)。

4.在目標(biāo)數(shù)據(jù)集(如椅子數(shù)據(jù)集)上訓(xùn)練目標(biāo)模型。我們將從頭訓(xùn)練輸出層,而其余層的參數(shù)都是基于源模型的參數(shù)微調(diào)得到的。

1649309670295_微調(diào)模型.png


當(dāng)目標(biāo)數(shù)據(jù)集遠(yuǎn)小于源數(shù)據(jù)集時(shí),微調(diào)有助于提升模型的泛化能力。






猜你喜歡:

tf.keras怎樣實(shí)現(xiàn)深度學(xué)習(xí)?

Numpy基礎(chǔ)操作:數(shù)組之間形狀相互轉(zhuǎn)換

SIFT算法原理:SIFT算法詳細(xì)介紹

為什么CNN對(duì)像素級(jí)別的分類很難?

黑馬程序員Ai人工智能開發(fā)培訓(xùn)

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!