SSD MobileNet网络在训练过程中遇到的问题总结

1、执行 python train.py时报错:

AttributeError: 'module' object has no attribute 'get_or_create_global_step'

SSD MobileNet网络在训练过程中遇到的问题总结_第1张图片
解决方案:
将models/research/object_detection/builders/optimizer_builder.py的 line 90:
global_step = tf.train.get_or_create_global_step()
改为global_step = tf.contrib.framework.get_or_create_global_step()

2、执行 python xml_to_txt.py时报错:

Missing parentheses in call to ‘print’

在这里插入图片描述
解决方案:python2与python3的语法稍有区别,python3在输出时需添加括号()
改为print (xmlFile)

3、执行 python run_image.py时报错:

Module ‘yaml’ has no attribute ‘FullLoader’

SSD MobileNet网络在训练过程中遇到的问题总结_第2张图片
解决方案:
依旧保留load的用法,将run_image.py的line 59:
cfg = yaml.load(ymlfile,Loader=yaml.FullLoader)
改为cfg = yaml.load(ymlfile)

4、NewRandomAccessFile failed to Create/Open解决方案
一般是因为报错处指定的文件夹不存在,或文件夹中的数据不存在。训练过程中如果遇到该问题可以先检查一下自己的训练、测试数据是否创建正确。

5、执行tensorflow/models的代码显示No module named ‘object_detection’:

Traceback (most recent call last):
File "object_detection/builders/model_builder_test.py", line 21, in 
from object_detection.builders import model_builder
ModuleNotFoundError: No module named 'object_detection'

解决方案:
1、object_detection没有添加路径,如果是linux下,直接执行:

export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim

如果是win下,在python(包括Anaconda,Anaconda本身只是一个包管理器而已)的Lib\site-packages目录下,新建一个xx.pth的文件,比如我新建的是tensorflow_model.pth文件,添加models的3个路径,比如:
E:\models-master\research
E:\models-master\research\slim
E:\models-master\research\object_detection
SSD MobileNet网络在训练过程中遇到的问题总结_第3张图片
2、在系统环境变量下新建一个PYTHONPATH,里面放这3个路径,然后需要重启电脑让环境变量生效。
SSD MobileNet网络在训练过程中遇到的问题总结_第4张图片

你可能感兴趣的:(深度学习,SSD,Mobile,Net,TensorFlow)