最近发现tf升级2.0之后有些api更新了,所以代码就无法直接迁移,所以做一下记录。
目录
- 单脚本转换
- 文件夹批量转换
- 注意事项
单脚本转换
- 先进入到你要转换脚本(eg:yolov3.py)的目录,然后:
tf_upgrade_v2 --infile yolov3.py --outfile yolov3.py
文件夹批量转换
- 先进入你要转换的文件夹根目录(eg:yolov3/),然后可以转换文件下所有py文件:
tf_upgrade_v2 --intree yolov3/ --outtree yolov3/ --copyotherfiles False
注意事项
1.转换好之后可能会报类似于“tf.placeholder() is not compatible with eager execution”这样的错,只需要在正常import tensorflow后面加上这一句:
代码语言:javascript复制import tensorflow as tf
tf.compat.v1.disable_eager_execution()
2.tf2.0版本弃用了类似于tf.flags这样的库,可能要重新装absl.flags或切换至 tensorflow/addons 中的软件包来成功迁移代码。