【記】tensorflow模型與keras模型混用所踩的坑

我的項目中,keras的h5爲分類模型,tensorflow的ckpt爲特徵點檢測模型,兩個模型串聯到一起,沒有如其他博客中所述的報錯情況,只是分類模型得到的分類結果與預期大相徑庭。而這個模型單獨跑是完全正常的。

原因:session混用,ckpt應該單獨創建session。

比如:

with tf.Session().as_default() as sess: 
    sess.run(global_init)
    latest_ck_file = tf.train.latest_checkpoint(checkpoint_dir)

爲tensorflow的模型單獨創建會話,注意使用tf.Session().as_default(),這樣就算with中的代碼結束,會話也不會關閉。

在需要使用tf模型時,再使用 with sess.as_default():  調用會話。程序運行結束手動關閉會話,sess.close()

參考blog:https://blog.csdn.net/googler_offer/article/details/91416521

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章