tensorflow系列:如何使用inception resnet v2網路
阿新 • • 發佈:2019-02-17
一、前言
最近在用inception v3和inception resnet v2這兩個網路,這兩個網路架構我想不用我多說了,谷歌出品。
通過將不同尺度的feature map進行融合,通過1xn卷積核nx1卷積來替代nxn卷積,從而有效地降低計算量,通過使用多個3x3卷積來代替5x5卷積和7x7卷積來降低計算量。另外在inception resnet v2中將resnet與inception 的網路結構來進行融合,從而進一步提升在 imagenet上的accuracy。
廢話了這麼多,既然要實際使用這兩個網路我們當然是想使用谷歌公開的程式碼直接來進行finetune,這樣不僅能夠節省時間,還能夠得到不錯的效果,這裡就需要使用最新的slim庫中實現的inception resnet v2網路。
當然了,最新的tensorflow(1.2.0)中並沒有這個網路的結構,其自帶的只有inception v3這個網路結構。
二、如何使用最新的slim庫
Reference:
(1)下載程式碼(請自備代理伺服器,使用代理伺服器下載會快很多)
cd ~/projects
(2)編譯獨立的slim包,並安裝之
cd models/slim
python setup.py build
sudo python setup.py install
(3)如何使用
比如使用inception_resnet_v2這網路可以這麼匯入
from nets import inception_resesnet_v2
當然具體用法可以可以參考reference
最好自己翻一下slim庫的程式碼。更容易懂
這裡有一個例子可以參考
https://github.com/kwotsin/transfer_learning_tutorial