1. ホーム
  2. python

[解決済み] GpuでKerasのモデルを動かすことはできますか?

2022-03-05 01:08:56

質問

Kerasのモデルを36時間以内に提出するように設定していますが、CPUでモデルを学習させると約50時間かかりますが、GPUでKerasを動かす方法はありますか?

私はTensorflowバックエンドを使用しており、anacondaをインストールせずにJupyterノートブック上でそれを実行しています。

どのように解決するのですか?

はい、GPU上でkerasモデルを実行することができます。最初に確認しなければならないことがいくつかあります。

  1. GPUを搭載していること(Nvidia、AMDはまだ動作しないため)
  2. GPU版tensorflowをインストールしました。
  3. CUDAをインストールしました。 インストール方法
  4. GPUでtensorflowが動作していることを確認する。 GPUが動作しているか確認する

sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

for TF > v2.0

sess = tf.compat.v1.Session(config=tf.compat.v1.ConfigProto(log_device_placement=True))

(コメントでご指摘いただいた@nbroさん、@Ferroさん、ありがとうございました)。

または

from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

の出力はこのようなものになります。

[
  name: "/cpu:0"device_type: "CPU",
  name: "/gpu:0"device_type: "GPU"
]

これがすべて完了すると、モデルはGPU上で動作するようになります。

keras(>=2.1.1)がGPUを使用しているかどうかを確認する。

from keras import backend as K
K.tensorflow_backend._get_available_gpus()

すべて最高です。