在单个GPU上训练多个模型 - Keras

时间:2018-05-18 18:14:04

标签: python parallel-processing neural-network keras deep-learning

我有多种不同的模型架构,我想在相同的数据上训练所有。例如

model1 = Sequential()
model1.add(LSTM(150, input_shape=(input_length, input_dim)))
model1.add(Dense(20))

model2 = Sequential()
model2.add(LSTM(50, input_shape=(input_length, input_dim)))
model2.add(Dense(10))

我想在我的机器上使用单个GPU同时训练它们。有没有最好的方法呢?

有人在Keras问题跟踪器上询问过,但没有明确答案:https://github.com/keras-team/keras/issues/3287

供参考,Keras issue tracker建议如下。我不确定该方法的相对优点。

in_1 = Input()
lstm_1 = LSTM(...)(in_1)
out_1 = Dense(...)(lstm_1)

in_2 = Input()
lstm_2 = LSTM(...)(in_2)
out_2 = Dense(...)(lstm_2)

model_1 = Model(input=in_1, output=out_1)
model_2 = Model(input=in_2, output=out_2)

model = Model(input = [in_1, in_2], output = [out_1, out_2])
model.compile(...)
model.fit(...)

model_1.predict(...)
model_2.predict(...)

0 个答案:

没有答案