当前位置: 代码网 > it编程>前端脚本>Python > 【解决方法】Python报错AttributeError: module ‘tensorflow‘ has no attribute

【解决方法】Python报错AttributeError: module ‘tensorflow‘ has no attribute

2024年07月28日 Python 我要评论
Python报错AttributeError: module ‘tensorflow’ has no attribute,不降低版本解决问题

问题描述:

从网上找了一个大佬的图像处理项目,在运行时出现了几个报错都是module ‘tensorflow’ has no attribute,问题产生的原因是当前python使用的tensorflow库为2.0最新版本,而源代码使用的是1.0版本,如何在不降低版本的情况下运行代码呢?


解决方法:

找到报错的地方,在报错的attribute前面加上compat.v1.
代码示例:
源代码:

self.keep_prob = tf.placeholder(tf.float32)  # dropout值

改动后:

self.keep_prob = tf.compat.v1.placeholder(tf.float32)  # dropout值

再次运行就不会出错了,该方法适用于大多数情况,特殊情况以下给出。


contrib特殊处理

当报错为attributeerror: module ‘tensorflow‘ has no attribute ‘contrib‘
找到报错的代码,一般为:

initializer = tf.contrib.layers.xavier_initializer()

此时不能用上面的方法修改代码,因为tensorflow2.0版本把contrib库取消了,因此我们使用tf.initializers.glorotuniform() 进行初始化,代码改为:

initializer=tf.initializers.glorotuniform())

成功运行啦!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com