TensorFlow V2 报错:AttributeError:module ‘tensorflow.compact.v1’ has no attribute ‘contrib’
报错截图
问题复现
跑论文中的代码,论文要求的配置在requirement.txt文章中,要求如下:cuda9.0,tensorflow=1.8.0,可能在Linux环境下的anaconda虚拟环境中直接run就可以配置好了吧?
但是我是window11,配置是cuda11、TensorFlow=2.10.0
懒得重新下载cuda,好几个G啊,挺慢的。硬着头皮把tf1的改为tf2的呗…
解决办法
归根到底是tf版本问题,这次tf2中带的v1模块也没contrib了,要弄清contrib在tf2中被合并到了哪里,在github上有公告说明每个模块搬家到了哪里,链接可以去看看: git官方合并说明文档
也可以直接看看我找到的contrib.image模块移到哪里去了:
官网说tensorflow.contrib.image部分移到了tensorflow-addons中,
我们直接cmd中安装这个addons
pip install tensorflow-addons
代码中使用引用为tfa,
原来的 tf.contrib.image 改为 tfa.image
import tensorflow_addons as tfa
output = tfa.img.transform(imageX, vectorY, "BILINEAR")