深度學(xué)習(xí)與TensorFlow:VGG論文復(fù)現(xiàn)

上一篇文章我們介紹了下VGG這一個經(jīng)典的深度學(xué)習(xí)模型,今天便讓我們通過使用VGG開源的VGG16模型去復(fù)現(xiàn)一下該論文.

話不多說,直接上代碼:

一:了解結(jié)構(gòu)

上述文件便是我們復(fù)現(xiàn)VGG時候的所有文件,其中cat和pic是我們的測試圖像,在這一次的代碼里,因為考慮到不同人的不同設(shè)備之間的訓(xùn)練速度有所差異,我們一次只讀取一張圖片進(jìn)行識別.其中,VGG16.py是我們的主要文件,在這個文件中我們復(fù)現(xiàn)了VGG16的網(wǎng)絡(luò)架構(gòu),untils.py為我們輸入圖片預(yù)處理的程序,Nclasses.py則是我們給定的每個圖像的標(biāo)簽,以及對應(yīng)的索引值,最后的app.py則是我們的調(diào)用文件,最終我們只需要調(diào)用它即可.

二:詳述代碼

1:VGG16.py

代碼如下:

這一部分我們是導(dǎo)入了常用的一些模塊,這些模塊不必多說,主要是VGG_MEAN這句話需要解釋下,

https://gist.github.com/ksimonyan/211839e770f7b538e2d8#file-readme-md?中他們介紹到我們輸入的圖像應(yīng)該以平均的像素去求解,也就是最后我們需要用BGR去求解,因此我們要減去這一些像素值即可

在這里我們后續(xù)的代碼都將寫入到VGG16這個類當(dāng)中,當(dāng)前部分的操作,我們引入VGG16.npy這個二進(jìn)制文件,并且遍歷data_dict中的每個鍵,并且打印輸入.

這一個部分我們是創(chuàng)建在前向傳播中要調(diào)用的卷積核,偏置,池化層以及全連接層,大家觀察代碼會發(fā)現(xiàn),這里的創(chuàng)建的結(jié)果其實和我們之前在學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)的時候類似,并且讀起代碼來也比較容易,這里需要說一下的是全連接層的建立,這里我們創(chuàng)建全連接層首先需要讀取到該層的維度信息列表,然后我們要改變特征圖的形狀,在第六層將得到的多維特征進(jìn)行拉伸操作,使其符合全連接層的輸入即可,這里的shape中有元素[-1],表示將該維度打平到一維,實現(xiàn)降維的目的.

這一部分代碼是實現(xiàn)前向傳播的關(guān)鍵代碼,這一部分代碼實現(xiàn)了VGG16的所有結(jié)構(gòu),還記得我們剛開始所說的VGG_MEAN中要將圖像處理為BGR,現(xiàn)在我們GBR當(dāng)中的每個元素相減VGG_MEAN當(dāng)中的元素,這樣圖片就由GBR改為BGR

VGG16的各層參數(shù)可以參考下圖所示

2:untils.py

這一部分主要是實現(xiàn)了輸入的圖像處理,并且展現(xiàn)出來,主要的思路是將圖像歸一化后進(jìn)行處理,實現(xiàn)結(jié)果如下圖所示:

3:app.py

在這一部分,我們要做的是調(diào)用VGG16的網(wǎng)絡(luò)結(jié)構(gòu),然后計算概率,輸出概率最大的五種可能性,并且和標(biāo)簽一一對應(yīng),最后用柱狀圖畫下來,表達(dá)出結(jié)果.

接著上圖的測試,畫出柱狀圖來,如下:

三:測試

1:第一組

2:第二組

3:第三組(這個翻車了…..)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末氮墨,一起剝皮案震驚了整個濱河市耀里,隨后出現(xiàn)的幾起案子沛励,更是在濱河造成了極大的恐慌糟秘,老刑警劉巖吧雹,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件育叁,死亡現(xiàn)場離奇詭異诱贿,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)罐栈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進(jìn)店門幕袱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人悠瞬,你說我怎么就攤上這事们豌。” “怎么了浅妆?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵望迎,是天一觀的道長。 經(jīng)常有香客問我凌外,道長辩尊,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任康辑,我火速辦了婚禮摄欲,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘疮薇。我一直安慰自己胸墙,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布按咒。 她就那樣靜靜地躺著迟隅,像睡著了一般。 火紅的嫁衣襯著肌膚如雪励七。 梳的紋絲不亂的頭發(fā)上智袭,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機(jī)與錄音掠抬,去河邊找鬼吼野。 笑死,一個胖子當(dāng)著我的面吹牛两波,可吹牛的內(nèi)容都是我干的瞳步。 我是一名探鬼主播闷哆,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼谚攒!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起氛堕,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤馏臭,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后讼稚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體括儒,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年锐想,在試婚紗的時候發(fā)現(xiàn)自己被綠了帮寻。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡赠摇,死狀恐怖固逗,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情藕帜,我是刑警寧澤烫罩,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站洽故,受9級特大地震影響贝攒,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜时甚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一隘弊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧荒适,春花似錦梨熙、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至舅列,卻和暖如春肌割,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背帐要。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工把敞, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人榨惠。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓奋早,卻偏偏與公主長得像盛霎,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子耽装,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容