訓練模型一直跑不出結果
2019/07/27 下午 09:49
機器學習共學討論版
cathyy
觀看數:195
回答數:4
收藏數:0
ml100-2-d83
ml100-2
我用下載的解答檔案去跑 但是訓練結果跑好幾次 一整天都沒有跑出來 不曉得是程式碼有錯還是真的要跑這麼久?
我的顯卡是 mx130
程式碼是解答複製上來的 這段
results = {}
for i, (use_preact, bz) in enumerate(itertools.product(PRE_ACTIVATE, BATCH_SIZE)):
print("Numbers of exp: %i, use_preact: %s, batch_size: %i" % (i, use_preact, bz))
model = build_mlp(input_shape=x_train.shape[1:], pre_activate=use_preact)
model.summary()
optimizer = keras.optimizers.Adam(lr=LEARNING_RATE)
model.compile(loss="categorical_crossentropy", metrics=["accuracy"], optimizer=optimizer)
model.fit(x_train, y_train,
epochs=EPOCHS,
batch_size=bz,
validation_data=(x_test, y_test),
verbose=0,
shuffle=True)
# Collect results
exp_name_tag = ("exp-%s" % (i))
results[exp_name_tag] = {'train-loss': model.history.history["loss"],
'valid-loss': model.history.history["val_loss"],
'train-acc': model.history.history["acc"],
'valid-acc': model.history.history["val_acc"]}
回答列表
-
2019/07/30 上午 01:04Seanyu.TW贊同數:0不贊同數:0留言數:1
請問有任何錯誤訊息嗎? 另外在執行時,應該會看到一條 progress bar 在跑,請問是否有看到它在動呢?
-
2019/08/01 下午 00:08張維元 (WeiYuan)贊同數:1不贊同數:0留言數:0
嗨,可以把 epochs、batch_size 先設小一點跑跑看,是否有結果?先確認是跑不完,還是不能跑。
-
2019/08/01 下午 00:20陳明佑 (Ming You Chen)贊同數:0不贊同數:0留言數:0
同學您好
正如Sean助教所問的 : 我們要幫你判斷, 還需要知道你的Keras進度條有沒有出現?
進度條在ipynb上長這樣
在指令環境下長這樣
有的話就表示只是GPU慢 (但通常GPU跑3分鐘的, 用CPU跑也能1.5小時跑完, 不用跑一整天)
沒有的話就是連記憶體都不夠 根本在載入階段就沒了 (這樣等N年都不會動)
看你回答, 我猜你的畫面可能連進度條都沒出現吧?
而且MX130, 似乎是筆記本電腦的GPU型號,
如果確定是用用筆電跑, 那麼就很有可能是記憶體不足了
這時候我們會建議您, 先試著先改用colab執行這些作業
或者將資料集先做抽樣, 先用較少筆的資料(比如說先抽十分之一or百分之一)跑跑看
跑得動, 那就可以確定是記憶體問題了
-
2019/08/09 下午 11:06羅芳彥贊同數:0不贊同數:0留言數:1
在Batch size太小的情況下GPU沒辦法發揮他平行化的優勢,建議版主先將Batch size調大(如1024)看看訓練速度是否跟以往差不多,詳情可以見李弘毅老師的影片(28分開始)
https://www.youtube.com/watch?v=Lx3l4lOrquw&list=PLJV_el3uVTsPy9oCRY30oBPNLCo89yu49&index=13