tensorflow安裝使用過程錯誤及解決方法

大漠風清揚 發表於 2021-01-15

tensorflow2.x 使用過程中常見錯誤(持續更新)

安裝配置,使用tensorflow訓練模型,轉換為tflite模型,並部署與移動端過程中,雖然不難,但是也常出現一些莫名其妙的問題,下面簡單記錄下解決方法。

一、安裝中問題

1. ImportError: Could not find 'cudart64_110.dll'

安裝配置完tensorflow2.4.0發現引入包時,發生這樣的錯誤,還有類似缺少cudart64_100.dll等問題。
產生這樣的問題,多半是版本不對應,可以看一下自己顯示卡驅動,然後選擇正確的cuda版本,在選擇對應的tensorflow版本
安裝tensorflow各個版本時,一定要參考官網上的表,最好是參考英文網站,中文網有時更新不夠及時。
tensorflow版本,和cuDNN,CUDA對應表
同樣安裝tflite,也要查到對應的版本要求。
tflite,下載對應版本
如果tensorflow升級到2.4.0,而CUDA還是10.1版本,就會出現標題中的錯誤,,而如果安裝的是CUDA10.2版本,那麼裝哪個版本的tensorflow都會報錯。
如果確實就是缺少這一個檔案,可以單獨下載cudart64_110.dll進行修復。

下載tensorflow可以在清華源下載, pip install tensorflow==2.4.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
比官網下載要快得多
在安裝新版本時,先刪除舊的版本
pip uninstall tensorflow
可以多次執行,因為可能有好幾個版本裝在電腦上。

二、在模型轉換中的問題。

1. tf.keras轉換tflite出錯ConverterError: See console for info. b“‘toco_from_protos‘ \xb2\xbb\xca\xc7\。

類似這樣的問題。ConverterError。同樣的程式碼可能在本地報錯,在Kaggle,卻能順利執行,參考這個部落格

可能與tensorflow版本, python版本的搭配,,以及安裝tensorflow時環境變數的設定有關,同樣可以通過重灌其他版本的tensorflow進行解決。
也有小夥伴說,這個模型轉換在,mac系統中不容易出現問題,在windows,和linux中常出現問題。給出的解決方法是,可以將模型上傳的google線上編輯器,生成模型在進行下載。

。。。。(出現其他問題再更新)。。。。。