导入 keras 时出现 ValueError «您正在尝试使用旧的 GPU 后端»

Posted

技术标签:

【中文标题】导入 keras 时出现 ValueError «您正在尝试使用旧的 GPU 后端»【英文标题】:ValueError «You are trying to use the old GPU back-end» when importing keras 【发布时间】:2017-11-29 15:03:45 【问题描述】:

我在 Ubuntu 16.04 上使用 Keras 和 Theano 后端。我的设置一直没有问题,但是,当我导入 Keras (import keras) 时突然出现以下错误:

ValueError:您正在尝试使用旧的 GPU 后端。它已从 Theano 中删除。现在使用 device=cuda*。请参阅https://github.com/Theano/Theano/wiki/Converting-to-the-new-gpu-back-end%28gpuarray%29 了解更多信息。

我该如何解决这个问题?

【问题讨论】:

可能是环境变量THEANO_FLAGS。如果您将变量设置为包含device=cuda 而不是device=gpu,它将被修复。 嗨@WilmarvanOmmeren,我现在刚刚尝试过,它奏效了。如果您将评论作为答案,我会将其标记为正确答案。谢谢。 【参考方案1】:

您应该更改(或添加)名为THEANO_FLAGS 的环境变量。如果将变量设置为包含device=cuda 而不是device=gpu,则错误将消失。

在 GPU 上工作时,还将浮点精度设置为 float32,因为这通常更快 (THEANO_FLAGS='device=cuda,floatX=float32')。

关于这个变量的更多信息可以在here和here找到。

【讨论】:

导出 THEANO_FLAGS=mode=FAST_RUN,device=cuda,floatX=float32【参考方案2】:

对我来说没有 gpu,使用 cpu,工作:

export THEANO_FLAGS='mode=FAST_RUN,device=cpu,floatX=float32'

【讨论】:

您能否详细说明一下这究竟是什么意思以及它如何回答这个问题?

以上是关于导入 keras 时出现 ValueError «您正在尝试使用旧的 GPU 后端»的主要内容,如果未能解决你的问题,请参考以下文章

在 Python 中运行 keras 模型时出现 ValueError

Keras ConvLSTM2D:保存模型时出现ValueError

在 Tensorflow 中加载文本分类模型时出现 ValueError

解决在django中应用keras模型时出现的ValueError("Tensor %s is not an element of this graph." % obj)问题(代码

上传图像以使用 keras 进行预测时出现错误消息

Python包的相对导入时出现问题解决