マルチGPUトレーニングをkeras

あなたはmulti_gpu_modelを使用することができます

輸入TFとしてtensorflow
 から keras.applicationsがインポートXceptionを
 から keras.utils インポートmulti_gpu_model
 輸入NPとしてnumpyのを

num_samples = 1000 
、高さ = 224  = 224 
num_classes = 1000

インスタンス化ベースモデルの(ここでは、我々はオプションであるCPU、でそれを行います)。
tf.deviceと(' / CPU:0 ' ):
    モデル = Xception(ウェイト= なし、
                     input_shape =(高さ、幅、3 )、
                     クラス = num_classes)

8のGPUのモデルを複製します。これはあなたのマシンが8利用可能なGPUを持っていることを前提としています。
parallel_model = multi_gpu_model(モデルのGPU = 8 
parallel_model.compile(損失 = ' categorical_crossentropy ' 
                       オプティマイザ = ' rmsprop ' 

ダミーデータを生成します。
X = np.random.random((num_samples、高さ、幅、3 ))
Y = np.random.random((num_samples、num_classes))

この`fit`コールは8つのGPU上で配布されます。バッチサイズは256であるので、各GPUは、32個のサンプルを処理します。
parallel_model.fit(X、Y、エポック= 20、BATCH_SIZE = 256)

 https://www.jianshu.com/p/d57595dac5a9

https://keras.io/utils/#multi_gpu_model

おすすめ

転載: www.cnblogs.com/573177885qq/p/11987534.html