tensorflow 中遇到的一些坑以及程式中的error
1 tensorboard 無法顯示的問題
events.xxx檔案字尾名是亂碼
原因是主機計算機名為中文,所以出現亂碼。右擊我的電腦 - 屬性 更改為英文名稱即可
2 Couldn’t open CUDA library cupti64_90.dll
把C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\CUPTI\libx64 下的檔案複製到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin
3 Cannot parse tensor from proto: dtype: DT_FLOAT
原因是記憶體不足
4 FutureWarning: Conversion of the second argument of issubdtype from float
to np.floating
is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type
.
from ._conv import register_converters as _register_converters
轉自 這裡
pip install h5py==2.8.0rc1
5 解決tensorflow的Session Exception問題
Exception ignored in: <bound method BaseSession.__del__ of <tensorflow.python.client.session.Session object at 0x7fd3edd13e10>>
Traceback (most recent call last):
File "venv/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 712, in __del__
TypeError: 'NoneType' object is not callable
解決方法:
from keras import backend as K
K.clear_session()
6 Couldn’t open CUDA library cupti64_90.dll 如何解決?
先檢視CUDA資料夾下有沒有cupti64_90.dll,一般是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\CUPTI\libx64,你看,發現一隻你要的東西!
然後檢視環境變數,發現那個檔案所在的資料夾沒有在環境變數中,但是CUDA9.0/bin卻在這裡。
把cupit64_90.dll複製到CUDA9.0/bin就好了!
摘自這裡