使用时克拉斯特遣部队,我们是否需要分别检查“tensorflow”和“keras”,它们是否在GPU上运行?

2024-04-24 13:32:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用

Tensorflow 2.0

在遵循了从TensorFlow1.14到TensorFlow2.0的迁移指南之后,我从tensorflow.keras导入了所有模块,而不仅仅是keras。但以下命令给出了属性错误-

from tensorflow.keras import backend as K
K.tensorflow_backend._get_available_gpus()
Output: AttributeError: module 'tensorflow_core.keras.backend' has no attribute 'tensorflow_backend'

但是仅仅从keras导入后端就可以了

from keras import backend as K
K.tensorflow_backend._get_available_gpus()
Output:['/job:localhost/replica:0/task:0/device:GPU:0']

我想知道keras是否使用GPU,我不理解keras和GPU的交互作用克拉斯特遣部队'. 我的整个神经网络是建立在从tensorflow.keras导入的层上的

编辑: 我正在使用一个定制的ImageDataGenerator函数,这就是我导入它的方式-

from keras.preprocessing.image import ImageDataGenerator

而不是from tensorflow.keras.preprocessing.image import ImageDataGenerator。这就是为什么我想检查Keras是否也在GPU上运行。我需要确保这一点吗?如果是,怎么做?你知道吗


Tags: fromimageimportbackendoutputgetgputensorflow
1条回答
网友
1楼 · 发布于 2024-04-24 13:32:19

来自Keras回购:

Keras是一个高级的神经网络API,用Python编写,能够在TensorFlow、CNTK或西亚诺。之前安装Keras时,请安装其后端引擎之一:TensorFlow、Theano或CNTK。(我们建议使用TensorFlow后端)。所以Keras是一个皮肤(API)。TensorFlow决定将这个皮肤作为克拉斯特遣部队. 你知道吗

相关问题 更多 >