這篇博客會不按期整理我在 tensorflow 中出現的問題和坑。python
1. CUDA_ERROR_OUT_OF_MEMORY:併發
tensorflow 在執行過程當中會默認使用所有的 GPU 內存,給系統保留 200 M,可是在個人系統上會在分配內存時被拒絕致使報錯,所以咱們可使用以下語句指定 GPU 內存的分配比例:spa
# 配置每一個 GPU 上佔用的內存的比例 gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.95) sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
能夠看看這裏的解釋:stackoverflow code
還有多是這個問題:stackoverflowblog
2. 設置提示信息的等級內存
# 在 import tensorflow 以前加入 import os os.environ['TF_CPP_MIN_LOG_LEVEL']='1' # 這是默認的顯示等級,顯示全部信息 # 2級 import os os.environ['TF_CPP_MIN_LOG_LEVEL']='2' # 只顯示 warning 和 Error # 3級 import os os.environ['TF_CPP_MIN_LOG_LEVEL']='3' # 只顯示 Error
3. tensorflow 不能直接併發運行同時訓練多個模型get
即使是同步運算,若是不重置計算圖,也會致使下標溢出的問題:同步
在每次執行新模型的訓練以前,必定要重置計算圖:博客
tf.reset_default_graph()