本章内容是使用现成网络,对新的数据集进行训练,对部分层进行微调。用到了tensorflow slim工具。
由于书中是py2.7 我用的py3,所以出现了很多问题
1、image to tfrecord:
解决办法:https://blog.csdn.net/u013099449/article/details/80891364
2、出现错误
ERROR:tensorflow:==================================
Object was never used (type <class 'tensorflow.python.framework.ops.Tensor'>):
<tf.Tensor 'init_ops/report_uninitialized_variables/boolean_mask/GatherV2:0' shape=(?,) dtype=string>
If you want to mark it as used call its "mark_used()" method.
It was originally created here:
File "train_image_classifier.py", line 574, in <module>
tf.app.run() File "C:\Users\BUPT\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\platform\app.py", line 125, in run
_sys.exit(main(argv)) File "train_image_classifier.py", line 570, in main
sync_optimizer=optimizer if FLAGS.sync_replicas else None) File "C:\Users\BUPT\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\contrib\slim\python\slim\learning.py", line 791, in train
should_retry = True File "C:\Users\BUPT\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\util\tf_should_use.py", line 189, in wrapped
return _add_should_use_warning(fn(*args, **kwargs))
==================================
解决方法:
因为本人使用的是CPU版本的tensorflow,所以这里需要更改。 膜拜github大神。
3、出现错误
ValueError: invalid literal for int() with base 10: '=32'
因为在命令行里输入参数时,多敲了一个空格。
解决办法: --batch_size =32 —> --batch_size=32
4、TF slim使用说明 转载侵删
https://blog.csdn.net/u014061630/article/details/80632736#8_Authors_a_classheaderlink_hrefml_titlePermalink_to_this_headlinea_673
5、有用的引入
语句
from __future__ import print_function
是为了在 python2 、 python3 中可以使用互相兼容的 print 函数