Flask + Keras = builtins.ValueError
tags: flask
keras
python
deep learning
builtins.ValueError
在翻譯完Building a simple Keras + deep learning REST API我就馬上拿著公司的案子來測試,一切似乎都順利,因為專案啟動之後沒有任何的錯誤訊息,當我call api之後就出現異常訊息,如下:
builtins.ValueError
ValueError: Tensor Tensor("dense_3/Softmax:0", shape=(?, 6), dtype=float32) is not an element of this graph.
我在初始化的時候載入模型,在另外的module引入該模型使用model.predict
,順著錯誤訊息去詢問谷狗大神得到不少解決問題的方式,但是沒有一個可以解決我的問題。我很納悶,為何我依著自己翻譯的文件執行是可以的但是實際專案卻失敗。
因此我試著不在另外的module使用該模型,而是初始化的時候就直接使用model.predict
,這種方式反而可以正常的執行,然後我忘了註解掉初始化的時候所執行的model.predict
又回頭去module測試model.predict
,正常了。
沒錯,正常了。
就這麼歪打正著,我發現只要在初始化的時候model.predict
一筆,後面就正常了,所以在load_model
之後我加入model.predict(np.ones((1, ???, ???, ?)))
,專案就順利執行了。(???,???,?
再請依著自己模型的dimension與channel調整即可。)
這個坑大概花了三個小時爬出來,也算值得了。