![[ML] Pytorch自學實戰項目其4:基于學習(RNN)算法的車輛狀態估計,展示歸納總結當前結果,以及展望下一步](http://pic.xiahunao.cn/yaotu/[ML] Pytorch自學實戰項目其4:基于學習(RNN)算法的車輛狀態估計,展示歸納總結當前結果,以及展望下一步)
寫在前面目前完成了的文章普通全連接網絡初步建立和結構分析部分優化以及修改為循環網絡結構RNN加入和結構優化調整模型結構和超級參數優化及其可視化初步調整超級參數TB應用到模型中改正了BN層為LN層調整features相關知識整理LN與BN層TensorBoard學習RNN部分筆記當前狀態訓練用數據整理成dataset 模型使用了dropout LN adam 動態學習率 正態初始化參數 tensorboard觀察 等技術模型可以合理正常訓練和對超級參數調整進行了一系列的工作 基于同一臺車的不同數據training9萬條 validation 3萬條evaluation 1萬條 搭建了訓練 test 推理模型分析了loss情況并打印了結果作為對比本次更新本節將基于當前效果做一個暫時的總結和計劃后續的調整。之前一直有一個不太合理的錯誤我的推理結果應該只有自車速度和Yawrate是合理的。計劃但忘記了將比如加速度等量移出參考label。其中縱向速度認為和加速度yawrate和之前的速度有關yawrate認為和輪速度差、總線橫向加速度、總線yawrate、方向盤轉角、車速相關。其次就是對于RNN結構我們不應該使用BN層作處理這里最好使用LN在sample的feature的特征維度上做歸一化因為我沒有在訓練前做數據的特征縮放所以在訓練時在特征維度上要消除數量級的差異以便使用MSE函數同時調整了模型使用順序本節展示結果已經作出部分對應修改。還差部分feature和更多工況的數據收集下一次完成整理當前的sample features 和labels為我的模型當前修改為結果數據分析上一節中實現了循環打印結果調節超級參數數據還有調整空間暫時沒有使用Hyperopt修改了feature和label內容作出了很多測試在最終修改label合理和調整BN層為LN層之后基于超級參數當前最后確定的一版效果如下test集合的每一個epoch的平均loss在1e-3的數量級上。驗證集合我在推理模型中使用關閉了隨機batch以便使數據按照時間排序可以畫圖對比。下方是驗證集的結果基本在0.001-0.01間。使用腳本打印出來和原數據對比并且plot發現車速估計的狠準但是yawrate效果不太好。下一步計劃數據整理一個特征準一個不準可能是我開頭所講學習車速所需要的條件基本滿足學習用yawrate的feature我還需要整理填充一下并且我在ros打印的時候簡單的鎖住了不同回調函數打印的前后關系還需要商榷。 下一次也需要記錄更多training場景。使用Hyperpt部署寫在本文最后請教了一個同事在實際使用相關知識的時候一般都是要參考論文的模型如果不是搞科研和訓練實用為主的話還是要基于別人的模型做一些工作盡量不要自己從頭開始搭建模型。