问题描述
自己使用最开始的tensorflow2.1在运行一段定义了LSTM层的网络代码时不报错,但使用新pip install的tensorflow2.1则运行报错如题所示,往往需要修改源码,比如在model.save时报错不能编码,则需要找到报错的地方修改去掉encode的部分,但有的问题就不是那么直接了,比如报错如题所示
解决思路
同一个tensorflow版本,结果运行结果不同,只能说明源码不同有问题,所以使用不同的编译器同时debug模式执行同一段代码,对比执行过程的代码,找到不同之处进行覆盖修改
解决过程
1.网络模型代码 - 新python环境 debug一直到报错,记录报错处所在的代码文件路径
2.相同代码的拷贝 - pycharm中配置为旧python环境 debug到对应报错代码行(找到第一步的代码文件位置,设置断点)
3.对照代码文件的差异并尝试覆盖
解决结论
路径为:
问题总结
源码仍有一些bug或不符合使用习惯之处,需要自行打补丁修改源码。