10-3驗證碼識別+10.4測試

  1. 將下載下來的models-master\research\slim\nets放入到當前執行的文件夾中。

C:\Users\Josie\AppData\Local\Programs\Python\Python35\Scripts\TensorFlow\models-master\research\slim\netspython

  1. 對alexnet.py文件進行修改:主要是修改最後輸出層,爲了實現多路學習

 

  1. 調用nets_factory.py文件中的get_network_fn函數

注意:在查看模型中的py文件中的函數時,極可能不知道具體每一個參數的真實含義及應有的數值,此時有兩種方法:一是去TensorFlow的官網查找;二是將該函數代碼塊copy到jupyter notebook當中,利用「shift+tab」查看函數具體信息;三是找源代碼。函數

例如:要查找slim包中nets文件夾中alexnet.py文件中某個函數conv2:學習

 

 

(1)先到這個路徑找tensorflow-master\tensorflow\contrib\slim\  發現這個文件夾中並無對於卷積的相關文件。測試

(2)此時發現,實質是在tensorflow-master\tensorflow\contrib\layers\python\layers \layers.py文件中,搜索conv2d的定義:conv2d = convolution2d;繼續查找convolution2d = convolution,再查convolution函數的定義,對照參數列表,並結合本py文件中的註釋信息幫助理解。blog

這裏能夠對比看出,上一張圖中的conv2的參數列表並無傳入所有的參數,其他沒有賦值的參數將採用默認值ip

 

 

同理,也能查到池化層max_pool2d的定義。get

補充:看字典/列表中元素的維度:sess.run(tf.shape( ))io

 

運行10-3(實驗室沒有條件運行)代碼將在\captcha\models文件夾中獲得四個文件:ast

checkpointtensorflow

crack_captcha.model-6000.data-000…

crack_captcha.model-6000.index

crack_captcha.model-6000.meta

 

運行10-4程序來調用該生成的模型,進行測試。

相關文章
相關標籤/搜索