Kerasのmodel.fitにvalidation_dataを入れると学習が異常に遅くなります.
model=Sequential()
model.add(Dense(14, activation="tanh", input_dim=6, kernel_regularizer = regularizers.l2(0.03)))
model.add(Dense(1, activation="linear", input_dim=14))
model.compile(loss="mean_squared_error", optimizer=tf.optimizers.Adam(learning_rate=0.02), metrics=[tf.keras.metrics.RootMeanSquaredError()])
num_epoch=300
batch_size=8
history = model.fit(X_train_std, Y_train_std, epochs=num_epoch, batch_size=batch_size, validation_data=(X_val_std, Y_val_std))
これで実行すると約2分ほど学習に時間がかかります.(X_train_stdは(24,6)で,X_val_stdは(5,6)の配列です)
model.fitの部分でvalidation_data=(X_val_std, Y_val_std)を除いた
history = model.fit(X_train_std, Y_train_std, epochs=num_epoch, batch_size=batch_size)
で実行すると学習は6秒程度で終わります.
なぜvalidation_dataを入れるとこんなに時間がかかるのでしょうか.何か対処法はありますでしょうか.
python=3.8
tensorflow-cpu=2.9.1
keras=2.9.0
tensorflowとkerasはバージョンを変えても同じ現象が起こりました.gpuを使用しても同様でした.
回答1件
あなたの回答
tips
プレビュー