在跑可变形卷积时,在tensorflow2.4出现许多错误

在跑可变形卷积时,在tensorflow2.4出现许多错误,记录一下。

1.错误
AttributeError: ‘module’ object has no attribute ‘ceil’
在这里插入图片描述解决方法:
参考链接
tensorflow2.3+keras2.4.3

2.错误
NotImplementedError: Cannot convert a symbolic Tensor (conv12_offset/meshgrid/Size:0) to a numpy array. This error may indicate that you’re trying to pass a Tensor to a NumPy call, which is not supported

解决方法:
参考链接
更换numpy版本为:numpy1.19.2

3.错误
仍然报错:
在这里插入图片描述

解决方法:
tensorflow1.15+keras2.3.1+numpy1.16.0
注意:安装完以后,检测tensorflow为2.0版本,所以重新卸载安装!!!
通过如下方式安装(但是下载速度很慢)

conda install tensorflow-gpu==1.15

在这里插入图片描述
在这里插入图片描述

仍然报错:

解决方法:
tensorflow1.15+keras2.3.1+numpy1.16.0

4.错误

显存不足,添加如下(参考链接:tensorflow.python.framework.errors_impl.InternalError: Blas GEMM launch failed问题解决思路之一

gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.333)
sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))

在这里插入图片描述
然后重启,但还是没用!!!!
还是一样的错误,在添加另外一种(参考链接:ubuntu18 下 tensoflow-gpu 2.0 卷积报错:Failed to get convolution algorithm.),如下

physical_devices = tf.config.experimental.list_physical_devices('GPU')
assert len(physical_devices) > 0, "Not enough GPU hardware devices available"
tf.config.experimental.set_memory_growth(physical_devices[0], True)

注意:不要认为到这里就结束了,这是一个漫长的等待过程,需要等10分钟左右!!!
在这里插入图片描述
等待之后,继续运行…
在这里插入图片描述又是等待的过程,大致15分钟左右!!!
在这里插入图片描述
还是报错
在这里插入图片描述
然后我把原先的bach-size=2改称bach-size=1(参考链接:data数据集上模型刚启动就报错【Successfully opened dynamic library lib cublas.so.11 Killed】),再次实验,可以往下运行

在这里插入图片描述接着,又有错误

AttributeError: 'bytes' object has no attribute 'encode'

在这里插入图片描述解决方法:

original_keras_version = f.attrs['keras_version'].encode('utf-8').decode('utf-8') 

改为

original_keras_version = f.attrs['keras_version'].decode('utf-8') 

在这里插入图片描述
再重新运行…
又报错,再修改
在这里插入图片描述再重新运行…没有报错
在这里插入图片描述
5.错误
bach-size=1再改为bach-size=2,则出现报错,
在这里插入图片描述

解决方法:
参考链接: TensorFlow:Blas GEMM启动失败
安装完python2.7的虚拟环境后,tensorflow-gpu==1.15.0安装失败;

所以,又换种方法,
第一种,将saving.py文件中报错的地方的decode('utf8')前加encode('utf8')

... ...
original_keras_version = f.attrs['keras_version'].decode('utf8')
... ...
original_backend = f.attrs['backend'].decode('utf8')
... ...

改成

... ...
original_keras_version = f.attrs['keras_version'].encode('utf8').decode('utf8')
... ...
original_backend = f.attrs['backend'].encode('utf8').decode('utf8')
... ...

但是实验失败,
第二种,将saving.py文件中报错的地方的decode('utf8')删除,

... ...
original_keras_version = f.attrs['keras_version'].decode('utf8')
... ...
original_backend = f.attrs['backend'].decode('utf8')
... ...

改成

... ...
original_keras_version = f.attrs['keras_version']
... ...
original_backend = f.attrs['backend']
... ...

实验成功,没有报错。
在这里插入图片描述
但是如果还是把batch-size=1换成batch-size=2,还是报错,所以暂时先用batch-size=1
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明德zhuang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值