我正在尝试使用Tensorflow1 model ZOO中预先训练的模型来训练自定义对象检测模型。
我使用的是型号ssd_mobilenet_v2_coco_2018_03_29
我根据本教程创建了合适的培训环境:https://tensorflow-object-detection-api-tutorial.readthedocs.io/en/tensorflow-1.14/training.html
问题是,当我试图使用tensorflow gpu==1.14.0训练模型时,我总是得到一个错误,说Model diverged with loss = NaN.
然后我尝试卸载tensorflow-gpu==1.14.0
并安装tensorflow==1.14.0
(所以它没有使用我的GPU(,突然它开始工作了
我不知道这怎么可能。。。
我正在使用的命令-
python model_main.py --alsologtostderr --model_dir=modelsssd_mobilenet_v2_coco_2018_03_29export --pipeline_config_path=modelsssd_mobilenet_v2_coco_2018_03_29pipeline.config --num_train_steps=2000
Python版本为3.7
操作系统是Windows 10
我的显卡是Nvidia GeForce RTX3050,我使用了CUDA v10.0和cuDNN v7.4.1
有什么想法吗?
这是因为RTX30不支持cuda 10。如果你需要tf v1(1.15(,你可以安装nvidia的tensorflow(1.15(可以在cuda 11上运行。
pip install nvidia-pyindex
pip install nvidia-tensorflow[horovod]
注意:仅支持Python 3.6或3.8〔不支持3.7〕
https://developer.nvidia.com/blog/accelerating-tensorflow-on-a100-gpus/