簡體   English   中英

如何使用我的keras TensorFlow模型減少損失?

[英]How can I reduce loss with my keras TensorFlow model?

因此,我有一個大約140,000個樣本的數據集,其中有5個輸入,汽車的速度,汽車的加速度,領先汽車的雷達速度,領頭車的距離以及領頭車的加速度。 輸出從0到1,0最大制動,1是最大加速。

我是神經網絡的初學者,所以我無法優化我的模型以獲得這些數據的最佳准確度/損失。 我一直在嘗試更改優化器,激活功能,隱藏層數,層中節點數等,但似乎沒有什么能夠降低一段時間內的損失。

這是我目前的型號:

opt = keras.optimizers.Adam(lr=0.001, decay=1e-6)
model = Sequential()
model.add(Dense(5, activation="tanh", input_shape=(x_train.shape[1:])))
for i in range(40):
    model.add(Dense(60, activation="relu"))
model.add(Dense(1))

我現在不太擔心過度擬合我的數據,因為我可以稍后再努力,我只是想基本記住數據,看看我能獲得多少損失,只是為了看看我是否可以改進它。 並預測經過培訓的數據,以確保它能夠返回正確的輸出。 然而,我得到的最低驗證損失約為0.015 ,這絕對不會在我的測試中返回當前輸出,它的准確率約為90%。

有什么我做錯了嗎? 我應該增加我的模型大小,還是減少它? 我嘗試過的任何東西似乎都沒有用。 我還確保將我的5個輸入和1個輸出正常化。 似乎它在幾個時代之后永遠不會學到任何東西。

謝謝,如果有人決定幫我解決這個非常具體的問題。

我想幫忙,但那里沒有太多的信息。

首先,網絡的目標是什么? 這很難說,你想減少損失什么。 你的損失功能是什么? 你的標簽是什么? 這似乎是一個經典的強化學習問題,而不是傳統的監督學習問題。 數據結構如何? 我假設他們以某種得分“跑”了?

一個毯子的東西,這可能是太多的層次。

大部分時間使用網絡最大的改進來自清理數據(我們認為這很好)並且弄亂你的損失功能。 最好先從一個簡單的模型開始,然后弄清楚是否需要更多。

還有這個,這是強化學習,但它是一個很好的例子https://github.com/lexfridman/deeptraffic

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM