报这个错误基本上就可以确定是gpu中的显存不够了,在这里我发现之前有一个占用gpu资源特别大的程序没有关闭,我将那个对应的程序关闭之后再次运行当前的这个程序,错误立刻就消失了。
网上的策略是实现gpu的显存自增长
# 设置gpu内存自增长
gpus = tf.config.experimental.list_physical_devices('GPU')
print(gpus)
for gpu in gpus:
tf.config.experimental.set_memory_growth(gpu, True)
能看出来这个问题本质上就是显存带来的问题,只要能够合理分配显存就能够及时地解决问题