我在Pytorch工作。 我可以导入tensorflow(版本1.13.1),并且需要ConfigProto:
import tensorflow as tf
config = tf.ConfigProto(intra_op_parallelism_threads=8,
inter_op_parallelism_threads=8,
allow_soft_placement=True,device_count = {'CPU' : 1, 'GPU' : 1})
我得到标题错误。这与所使用的Keras的版本问题/版本有关(我在这里也拥有最新版本)吗? 致以诚挚的问候和谢意。
答案 0 :(得分:2)
升级到Python 3.7和Tensorflow 2.0.0(来自Tensorflow 1.2.0)时,我遇到了类似的问题
这是一个简单且有效的方法!
如果您不想触摸代码,只需在带有Tensorflow代码的main.py文件中添加以下两行:
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
就是这样!
现在,所有内容都应无缝运行:)
答案 1 :(得分:0)
信息:
RTX 2080
ubuntu 16.04
cuda 10.0
cuDNN v7.4.1.5
Python V 3.5
点列表:
tensorflow (1.13.1)
tensorflow-gpu (1.13.1)
tf-nightly-gpu (1.14.1.dev20190509)
代码:
import tensorflow as tf
from tensorflow import keras
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
sess = tf.Session(config=config)
输出:
创建的TensorFlow设备 (/ job:本地主机/副本:0 /任务:0 /设备:GPU:0具有7439 MB内存)-> 物理GPU(设备:0,名称:GeForce RTX 2080,pci总线ID: 0000:02:00.0,计算能力:7.5)
对我有用!
答案 2 :(得分:0)
我也遇到类似的错误,但是我有tensorflow 1.14,ubuntu 18.04和GTX 1050ti。因此,正确安装了conda(最新版本-5.1) 即使错误仍然存在,所以将tensorflow / tensorflow-gpu升级到-version tensorflow == 2.0.0-beta0并为我工作。
答案 3 :(得分:0)
ConfigProto在tf 2.0中消失了,所以一个优雅的解决方案是替换:
tf.ConfigProto
由tf.compat.v1.ConfigProto
实际上,2.0中内置的兼容性可以获取tf 1:tf.compat.v1
确实很有帮助。
答案 4 :(得分:0)
只是为Tensorflow v2寻求答案的其他人
正如其他人所提到的,您可以使用v1的向后兼容性。但是Tensorflow v2实际上确实带有它自己的实现。这只是一个隐藏的实验功能。
这是在Tensorflow v2中如何允许GPU在内存中增长的方法:
# Allow memory growth for the GPU
physical_devices = tf.config.experimental.list_physical_devices('GPU')
tf.config.experimental.set_memory_growth(physical_devices[0], True)
找到更多信息@Tensorflow
答案 5 :(得分:0)
如果使用 tensorflow 版本 > 2.0:
config = tf.compat.v1.ConfigProto()
config.gpu_options.allow_growth=True
sess = tf.compat.v1.Session(config=config)