丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能 正文
發(fā)私信給AI研習(xí)社-譯站
發(fā)送

0

手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第二部分)

本文作者: AI研習(xí)社-譯站 2019-04-01 10:53
導(dǎo)語(yǔ):在本篇文章中,我們將學(xué)習(xí)如何訓(xùn)練自己的分類器。

手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第二部分)

本文為 AI 研習(xí)社編譯的技術(shù)博客,原標(biāo)題 :

Implementing an Image Classifier with PyTorch: Part 2

作者 | Jose Nieto

翻譯 | Jeffery26         

校對(duì) | 醬番梨        審核 | 醬番梨       整理 | 立魚王

原文鏈接:

https://medium.com/udacity/implementing-an-image-classifier-with-pytorch-part-2-ae4dd7b2f48

查看第一部分,請(qǐng)戳>>手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第一部分)

手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第二部分)

回想一下,在本系列文章的第一篇中,我們學(xué)習(xí)了為什么需要載入預(yù)訓(xùn)練網(wǎng)絡(luò)以及如何載入預(yù)訓(xùn)練網(wǎng)絡(luò),同時(shí)我們演示了如何將預(yù)訓(xùn)練網(wǎng)絡(luò)的分類器替換為我們自己的分類器。在本篇推文中,我們將學(xué)習(xí)如何訓(xùn)練自己的分類器。


   訓(xùn)練分類器

首先我們要做的是將訓(xùn)練用的圖片喂給我們的分類器,我們可以使用PyTorch中的ImageFolder接口載入圖片。預(yù)訓(xùn)練網(wǎng)絡(luò)要求我們輸入的都是某種特定格式的圖片,因此,在將圖片喂給神經(jīng)網(wǎng)絡(luò)前,我們需要對(duì)圖片進(jìn)行某些變換以達(dá)到對(duì)圖片的裁剪和歸一化。

具體來(lái)說(shuō),我們會(huì)將輸入圖片裁剪至224x224尺寸并且使用[0.485, 0.456, 0.406]和[0.229, 0.224, 0.225]兩個(gè)參數(shù)作為均值和標(biāo)準(zhǔn)差進(jìn)行歸一化。歸一化使得圖片顏色通道數(shù)值中心化于0同時(shí)使得標(biāo)準(zhǔn)差為1。

接著我們可以使用PyTorch中的DataLoader接口將所有圖片分成不同的批次。因?yàn)槲覀冃枰N圖片數(shù)據(jù)集——訓(xùn)練集,驗(yàn)證集和測(cè)試集,所以我們需要為每個(gè)數(shù)據(jù)集分別創(chuàng)建一個(gè)讀取器。好了,萬(wàn)事俱備,我們可以開(kāi)始訓(xùn)練我們的分類器了。

進(jìn)行到此處我們將碰到最重要的挑戰(zhàn):模型準(zhǔn)確度

讓我們的模型去識(shí)別一張我們事先已經(jīng)標(biāo)注好類別的圖片并不難,然而我們需要我們的模型擁有泛化能力,即讓模型可以識(shí)別我們從未標(biāo)注過(guò)的花卉圖片中的花卉種類。我們可以通過(guò)防止模型的過(guò)擬合達(dá)到模型泛化的目的。過(guò)擬合的意思為:我們的模型參數(shù)太過(guò)于滿足我們自己的訓(xùn)練圖片的準(zhǔn)確度,從而可能導(dǎo)致無(wú)法對(duì)除了訓(xùn)練集之外的其他圖片進(jìn)行準(zhǔn)確識(shí)別。即模型在訓(xùn)練集上表現(xiàn)優(yōu)越,但是在測(cè)試集和驗(yàn)證集上誤差很大。

手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第二部分)

Fitting types

不同的參數(shù)可以幫助模型達(dá)到最佳擬合 

-隱藏層

我們總是很容易陷入更多或更大的隱藏層能夠提高分類器準(zhǔn)確性這樣的思維誤區(qū),然而這個(gè)說(shuō)法不總是對(duì)的。

增加隱藏層的數(shù)量和尺寸會(huì)使得我們的分類器考慮更多除了那些至關(guān)重要的參數(shù)以外的參數(shù)。例如,將噪音也視為花卉的一部分。這將導(dǎo)致過(guò)擬合以及模型準(zhǔn)確度的下降。不僅如此,增加隱藏層的數(shù)量和尺寸也將花費(fèi)我們更多時(shí)間去訓(xùn)練分類器和利用分類器去預(yù)測(cè)結(jié)果。

正因如此,我們建議開(kāi)始訓(xùn)練網(wǎng)絡(luò)時(shí)采用較少數(shù)量和較小尺寸的隱藏層,同時(shí)隱藏層的數(shù)量和尺寸根據(jù)訓(xùn)練進(jìn)展按需增加,而不是一開(kāi)始便在網(wǎng)絡(luò)中加入大量和大尺寸的隱藏層。

在Udacity的利用python進(jìn)行AI編程納米學(xué)位項(xiàng)目中的花卉分類器項(xiàng)目中(我在本系列文章的第一篇推文中介紹了該項(xiàng)目),利用訓(xùn)練集進(jìn)行第一次全訓(xùn)練輪次時(shí),我僅僅利用包含一層小規(guī)模隱藏層的網(wǎng)絡(luò)便獲得了超過(guò)70%的準(zhǔn)確度

-數(shù)據(jù)增強(qiáng)

我們有一批圖片用來(lái)訓(xùn)練我們的模型,這是極好的事情,但是如果我們有更多的圖片,這將會(huì)變得更好。此時(shí)數(shù)據(jù)增強(qiáng)便派上了用場(chǎng)。在訓(xùn)練模型的每一回合中,每張圖片會(huì)被喂入網(wǎng)絡(luò)一次。但是在每次喂給網(wǎng)絡(luò)之前,我們可以對(duì)圖片進(jìn)行任意的變換,例如旋轉(zhuǎn),平移,縮放。通過(guò)這種方式,在不同的訓(xùn)練回合中,同一張圖片將會(huì)以不同的形式喂給神經(jīng)網(wǎng)絡(luò)。增加訓(xùn)練數(shù)據(jù)的多樣性可以減少過(guò)擬合的出現(xiàn)概率,相應(yīng)地也提高了模型的泛化能力,從而提高了模型總體的準(zhǔn)確性。

-打亂數(shù)據(jù)集

當(dāng)訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí),為了防止模型出現(xiàn)任何偏向性,我們需要以任意順序?qū)D片喂給神經(jīng)網(wǎng)絡(luò)。

例如,一開(kāi)始如果我們只將矮牽?;▓D片喂給分類器,那么該分類器的張量很容易傾向于矮牽?;?。事實(shí)上,此時(shí)此刻,我們的分類器將會(huì)只知道矮牽?;ㄟ@一種花。即使接下來(lái)我們使用其他種類花卉圖片來(lái)繼續(xù)訓(xùn)練模型,這種最初的對(duì)于某種花卉的傾向性將會(huì)隨著時(shí)間繼續(xù)存在。雷鋒網(wǎng)

為了防止這種現(xiàn)象的發(fā)生,我們需要在數(shù)據(jù)載入器中打亂圖片順序,只需要簡(jiǎn)單的一步——在創(chuàng)建載入器時(shí)添加shuffle=True語(yǔ)句即可。

-隨機(jī)失活   

有時(shí),分類器內(nèi)的神經(jīng)網(wǎng)絡(luò)節(jié)點(diǎn)會(huì)產(chǎn)生過(guò)多的影響,從而使得其他節(jié)點(diǎn)不能進(jìn)行正常的訓(xùn)練。同時(shí),節(jié)點(diǎn)之間會(huì)產(chǎn)生相互依存關(guān)系從而導(dǎo)致過(guò)擬合。

隨機(jī)失活是在每一次訓(xùn)練中通過(guò)使一些節(jié)點(diǎn)隨機(jī)失活來(lái)防止上述現(xiàn)象發(fā)生的一種訓(xùn)練技巧。因而,每一次訓(xùn)練中分別訓(xùn)練了所有節(jié)點(diǎn)中的不同子集,從而減少了過(guò)擬合現(xiàn)象的發(fā)生。

手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第二部分)

Dropout diagram (Source)

暫且先不談?wù)撨^(guò)擬合,我們需要時(shí)刻記住的是學(xué)習(xí)率可能是最重要的超參數(shù)。如果學(xué)習(xí)率太大,我們可能永遠(yuǎn)得不到誤差的最小值,如果學(xué)習(xí)率太小,分類器的訓(xùn)練過(guò)程會(huì)變得非常漫長(zhǎng)。典型的學(xué)習(xí)率數(shù)值分別是:0.01,0.001,0.0001等等。

最后但也仍然非常重要的是,對(duì)位于分類器最后一層的激活函數(shù)的正確選擇也會(huì)大幅改善模型準(zhǔn)確度。例如,如果在神經(jīng)網(wǎng)絡(luò)中我們使用了負(fù)對(duì)數(shù)似然損失函數(shù),按照文檔所述,那么建議在最后一層使用LogSoftmax激活函數(shù)。雷鋒網(wǎng)


   總結(jié)

為了訓(xùn)練一個(gè)擁有泛化能力,同時(shí)在預(yù)測(cè)新圖片中的花卉種類有著高準(zhǔn)確度的模型,理解模型訓(xùn)練過(guò)程是非常有用的。

在文章中我們討論了過(guò)擬合是如何影響模型的泛化能力以及如何防止過(guò)擬合的發(fā)生。同時(shí)我們也提及了學(xué)習(xí)率的重要性以及常用的學(xué)習(xí)率。最后,我們可以看出在最后一層中選擇正確的激活函數(shù)也是至關(guān)重要的。

既然我們知道了如何訓(xùn)練模型,我們便可以使用模型去識(shí)別模型從未見(jiàn)過(guò)的圖片中的花卉種類。那將是我們?cè)谠撓盗械谌妥詈笠黄莆闹袑⒁榻B的內(nèi)容。

我希望此篇文章對(duì)你有所幫助同時(shí)你能對(duì)我們說(shuō)出你對(duì)此篇文章的想法。

想要繼續(xù)查看該篇文章相關(guān)鏈接和參考文獻(xiàn)?

點(diǎn)擊手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第二部分)即可訪問(wèn):雷鋒網(wǎng)

https://ai.yanxishe.com/page/TextTranslation/1587

AI入門、大數(shù)據(jù)、機(jī)器學(xué)習(xí)免費(fèi)教程

35本世界頂級(jí)原本教程限時(shí)開(kāi)放,這類書單由知名數(shù)據(jù)科學(xué)網(wǎng)站 KDnuggets 的副主編,同時(shí)也是資深的數(shù)據(jù)科學(xué)家、深度學(xué)習(xí)技術(shù)愛(ài)好者的Matthew Mayo推薦,他在機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)領(lǐng)域具有豐富的科研和從業(yè)經(jīng)驗(yàn)。

點(diǎn)擊鏈接即可獲?。?/span>https://ai.yanxishe.com/page/resourceDetail/417


雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。

手把手教你用PyTorch實(shí)現(xiàn)圖像分類器(第二部分)

分享:
相關(guān)文章

知情人士

AI研習(xí)社(yanxishe.com)譯站頻道,傳播前沿人工智能知識(shí),讓語(yǔ)言不再成為學(xué)習(xí)知識(shí)的門檻。(原雷鋒字幕組)
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)