TensorFlow低版本代码自动升级为1.0版本


Posted in Python onFebruary 20, 2021

Reference:
https://www.tensorflow.org/install/migration

tensorflow 更新到1.0之后,0.n版本不兼容,除了手动更改代码之外,tensorflow官方还提供了自动更新的脚本。

下载链接:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/compatibility

使用方法:

更新一个文件:

原本代码为foo.py, 使用tf_upgrade.py自动升级为1.0版本,新的文件名为foo-upgraded.py:

tf_upgrade.py --infile foo.py --outfile foo-upgraded.py

目录下的所有文件都更新:

tf_upgrade.py --intree InputDir --outtree OutputDir

目录下的所有文件都更新,并复制除了python文件之外的其他文件到新文件夹:

运行之后所有.py文件都会更新并放在OutputDir目录下,如果想要目录中的其他文件(.txt等)也复制到新的文件夹,可以设置

copyotherfiles为True:
tf_upgrade.py --intree InputDir --outtree OutputDir --copyotherfiles True

更新完毕后脚本会自动生成一个log文件,其中包含了更新的内容。

third_party/tensorflow/tools/compatibility/test_file_v0.11.py Line 125

Renamed keyword argument from `dim` to `axis`
Renamed keyword argument from `squeeze_dims` to `axis`

  Old:          [[1, 2, 3]], dim=1), squeeze_dims=[1]).eval(),
                    ~~~~  ~~~~~~~~~~~~~
  New:          [[1, 2, 3]], axis=1), axis=[1]).eval(),
                    ~~~~~  ~~~~~

拓展阅读

tf_upgrade.py 有一些局限性:

  • 它不能改变 tf.reverse() 的参数,因此必须手动修复。
  • 对于参数列表重新排序的方法,如 tf.split() 和 tf.reverse_split(),它会尝试引入关键字参数,但实际上并不能重新排列参数。

有些结构必须手动替换,例如:

tf.get.variable_scope().reuse_variables()

替换为:

with tf.variable_scope(tf.get.variable_scope(),reuse=True):

到此这篇关于TensorFlow低版本代码自动升级为1.0版本的文章就介绍到这了,更多相关TensorFlow低版本代码自动升级 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python的迭代器与生成器实例详解
Jul 16 Python
python实现斐波那契递归函数的方法
Sep 08 Python
Python Sleep休眠函数使用简单实例
Feb 02 Python
浅谈python字典多键值及重复键值的使用
Nov 04 Python
关于Python中空格字符串处理的技巧总结
Aug 10 Python
Django实现支付宝付款和微信支付的示例代码
Jul 25 Python
Django中在xadmin中集成DjangoUeditor过程详解
Jul 24 Python
利用pandas合并多个excel的方法示例
Oct 10 Python
Django继承自带user表并重写的例子
Nov 18 Python
无惧面试,带你搞懂python 装饰器
Aug 17 Python
基于Python正确读取资源文件
Sep 14 Python
Python如何加载模型并查看网络
Jul 15 Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
Feb 20 #Python
TensorFlow的环境配置与安装方法
Feb 20 #Python
python爬虫爬取某网站视频的示例代码
Feb 20 #Python
python爬虫线程池案例详解(梨视频短视频爬取)
Feb 20 #Python
python爬虫scrapy框架的梨视频案例解析
Feb 20 #Python
Keras保存模型并载入模型继续训练的实现
Feb 20 #Python
TensorFlow2.0使用keras训练模型的实现
Feb 20 #Python
You might like
PHP 写文本日志实现代码
2010/05/18 PHP
PHP中=赋值操作符对不同数据类型的不同行为
2011/01/02 PHP
Yii中CArrayDataProvider和CActiveDataProvider区别实例分析
2016/03/02 PHP
Laravel6.2中用于用户登录的新密码确认流程详解
2019/10/16 PHP
PHP上传图片到数据库并显示的实例代码
2019/12/20 PHP
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
2008/12/19 Javascript
js判断鼠标同时离开两个div的思路及代码
2013/05/31 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
2013/11/19 Javascript
Vuejs第十二篇之动态组件全面解析
2016/09/09 Javascript
AngularJs表单验证实例代码解析
2016/11/29 Javascript
jquery做个日期选择适用于手机端示例
2017/01/10 Javascript
深入理解Javascript中的观察者模式
2017/02/20 Javascript
react-native DatePicker日期选择组件的实现代码
2017/09/12 Javascript
Vue渲染函数详解
2017/09/15 Javascript
js时间戳与日期格式之间转换详解
2017/12/11 Javascript
Angularjs 根据一个select的值去设置另一个select的值方法
2018/08/13 Javascript
详解js获取video任意时间的画面截图
2019/04/17 Javascript
解决vue自定义指令导致的内存泄漏问题
2020/08/04 Javascript
vue $mount 和 el的区别说明
2020/09/11 Javascript
Vue实现todo应用的示例
2021/02/20 Vue.js
Python 的 with 语句详解
2014/06/13 Python
对Python中的条件判断、循环以及循环的终止方法详解
2019/02/08 Python
python制作简单五子棋游戏
2019/06/18 Python
python实现异常信息堆栈输出到日志文件
2019/12/26 Python
python3使用Pillow、tesseract-ocr与pytesseract模块的图片识别的方法
2020/02/26 Python
Python实现验证码识别
2020/06/15 Python
opencv python 对指针仪表读数识别的两种方式
2021/01/14 Python
50个强大璀璨的CSS3/JS技术运用实例
2010/02/27 HTML / CSS
html5视频自动横过来自适应页面且点击播放功能的实现
2020/06/03 HTML / CSS
美国婴童服装市场上的领先品牌:Carter’s
2018/02/08 全球购物
求职毕业生自荐书
2014/02/08 职场文书
北京奥运会主题口号
2014/06/13 职场文书
数学教研活动总结
2014/07/02 职场文书
2014各大专业毕业生自我评价
2014/09/17 职场文书
asyncio异步编程之Task对象详解
2022/03/13 Python
python运算符之与用户交互
2022/04/13 Python