tensorflow跑程序错误总结

记录一下跑程序遇到的问题,也算是自己的总结

问题1:
AttributeError: module ‘tensorflow’ has no attribute ‘variable’
解决办法:
方法一:官网搜索全局变量函数
https://www.tensorflow.org/api_docs/python
方法二:直接修改
将tf.placeholder改成tf.compat.v1.placeholder
将tf.truncated_normal改成tf.compat.v1.truncated_normal

问题2: 加了.compat.V1之后会出现版本问题,要使用V2版本而不是V1版本。

x = tf.placeholder(tf.float32, [None, size, size, 3])
tf.placeholder() is not compatible with eager execution.

解决办法:
查阅资料发现,原因是2.0与1.0版本不兼容,在程序开始部分添加以下代码:`

tf.compat.v1.disable_eager_execution()

`
这个函数的作用:此函数只能在创建任何图、运算或张量之前调用。它可以用于从TensorFlow 1.x到2.x的复杂迁移项目的程序开头。

问题3: 这个问题跑手写识别体会遇到,数据调用不了

ModuleNotFoundError: No module named 'tensorflow.examples.tutorials'

(进官网:https://github.com/tensorflow/tensorflow)下载当前目录文件并将tutorials 文件夹复制到python的libs路径中。文件路径
C:\Program Files\Anaconda3\envs\tensorflow-gpu\Lib\site-packages\tensorflow_core\examples

问题4: 因为版本问题导致的全局变量(API)函数不能用最全总结:
https://www.jianshu.com/p/27fff61cf28c

问题5: 导入数据集错误

NameError: name 'minist' is not defined

解决办法:
在导入的包之后加入语句:

from tensorflow.examples.tutorials.mnist import input_data

问题6: GPU内存问题:
出现错误方式一:

UnknownError: 2 root error(s) found.
  (0) Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
	 [[{{node conv1d_2_2/convolution}}]]
	 [[activation_64_2/truediv/_2361]]
  (1) Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
	 [[{{node conv1d_2_2/convolution}}]]
0 successful operations.
0 derived errors ignored.

错误方式二:在这里插入图片描述
解决办法:在最开始加入代码:

from tensorflow.compat.v1 import ConfigProto
from tensorflow.compat.v1 import InteractiveSession
config = ConfigProto()
config.gpu_options.allow_growth = True
session = InteractiveSession(config=config)

办法二:直接关闭电脑或者关闭jupyter重新打开运行,要是还不行就先加入代码然后再进行刚刚的操作。

问题7:内存分配问题

ResourceExhaustedError: OOM when allocating tensor with shape[715,4,26] and type double on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc [Op:ConcatV2] name: concat

解决办法采用CPU运行程序

import os
os.environ["CUDA_VISIBLE_DEVICES"] = "-1"
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值