[問題] 測試數劇集的預處理與測試模型疑問

看板DataScience作者 (karco)時間5年前 (2019/02/18 11:25), 5年前編輯推噓2(2011)
留言13則, 3人參與, 5年前最新討論串1/1
作業系統: mac,win10 問題類別: ML,CNN 使用工具: python,pytorch,scikit 問題內容: 資料科學板的各位大大好 我目前所訓練的模型是 利用CNN建立出一個迴歸預測模型。 在建置出初步的模型後,想到了兩個問題, 想要跟各位大大請教。 第一個問題是關於數據的標準化 為了避免特徵尺度不同, 導致模型過度的擬合某一個特徵, 所以會對數據進行標準化 目前是使用Scikit的Standler進行這項工作 會將訓練數據集進行fit_transform 然後將得到的數值 套用進測試數據集直接transform 那我目前困惑的點在於,那如果今天模型訓練完成, 那我目前困惑的點在於,那如果今天模型訓練完成, 那我目前困惑的點在於,那如果今天模型訓練完成, 那我目前困惑的點在於,那如果今天模型訓練完成, 我們保存了一個模型,今天直接載入新的數據時, 我們沒有測試數據集了,但我們仍然需要將新的數據進行標準化 那這時我們需要使用的是fit_transform對嗎? 這樣對模型的預測結果會有影響嗎? 第二個問題目前比較頭痛 在於我使用測試模式下進行預測時 發現模型的預測完全不會變動 只要第一次預測某個值,後面預測的值都會一樣 可是在訓練模式下一切都很正常 請問這可能是遭遇到什麼樣的問題呢? 模型訓練時跟測試時的寫法相同 只有在測試前加上 model.eval() with torch.no_grad(): 目前試了很多方法,還是找不到哪邊出錯 請問有大大遇到類似的問題嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.121.150 ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.121.150 ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1550460349.A.B2C.html ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1550460349.A.B2C.html

02/18 13:14, 5年前 , 1F
為什麼想用 CNN 在回歸上? cnn 一般都用在影像處理
02/18 13:14, 1F

02/18 13:14, 5年前 , 2F
為什麼想用 CNN 在回歸上? cnn 一般都用在影像處理
02/18 13:14, 2F

02/18 13:15, 5年前 , 3F
而且 cnn 有所謂的 pool,這樣資料怎麼處理會很重要
02/18 13:15, 3F
因為目前的input是一個二維的矩陣 因此認為使用DNN的話參數會過多而難以學習 因此才想使用CNN進行迴歸預測 目前網路上對於回歸模型的討論很少,所以也不知道有沒有其他的架構可以使用@@ ※ 編輯: karco (140.113.121.150), 02/18/2019 13:19:55

02/18 16:40, 5年前 , 4F
沒有code可參考,也不知道你的train/test流程,連資料
02/18 16:40, 4F

02/18 16:41, 5年前 , 5F
大概長什麼樣子都不知道,難道是要人幫忙隔空抓藥?
02/18 16:41, 5F
大大抱歉 沒有附上程式碼的原因是因為 訓練模型時並沒有遇到問題 而是在切換成model.eval()時才出現 並且將訓練數據集放進測試數據集時問題還是一樣 因此我第一時間就判斷是在eval出現問題 而非數據處理相關 所以我認為可能是一個比較大眾的pytorch問題 才沒有特別上傳程式碼 十分不好意思@@ 然後這問題我暫時解決了 下午在pytorch的論壇上發現了此篇 下午在pytorch的論壇上發現了此篇 https://discuss.pytorch.org/t/performance-highly-degraded-when-eval-is-activated-in-the-test-phase/3323/4 照著回覆中的設定 將BN層 track_running_stats設成false後就正常運行了 所以問題應該是發生在單獨的model.eval()前 還要手動將bn層的設置關閉 只是這樣的設置 雖然有效 但不知道是否合理(? 因為看論壇後續的回覆 似乎也是眾說紛紜 所以還是希望可以跟各位大大進行討論 ※ 編輯: karco (39.12.138.80), 02/18/2019 17:54:14

02/18 18:54, 5年前 , 6F
網路上對於回歸模型的討論應該超多
02/18 18:54, 6F
網路上我找到的迴歸討論 都在初步的線性迴歸模型而已 許多書籍的介紹也是 基本上都是重複的介紹@@ CNN進行迴歸問題目前只看到了幾篇論文 請問大大是否有推薦的網路資源 因為我真的沒找到很多 ※ 編輯: karco (39.12.138.80), 02/18/2019 19:07:15 ※ 編輯: karco (39.12.138.80), 02/18/2019 19:07:15

02/18 19:27, 5年前 , 7F
你可以用 XGBoost 試試,在kaggle上,這跟DL平起平坐
02/18 19:27, 7F
好的 我會研究看看 感謝建議 ※ 編輯: karco (39.12.138.80), 02/18/2019 20:11:36

07/05 13:16, 5年前 , 8F
你第二個問題我遇過,忘了怎解掉,印像是訓練的參數和
07/05 13:16, 8F

07/05 13:16, 5年前 , 9F
測試時的參數不一致
07/05 13:16, 9F

07/05 13:19, 5年前 , 10F
回一下前面推文,CNN也可用在非影像,如時間序列資料,
07/05 13:19, 10F

07/05 13:19, 5年前 , 11F
用一維卷積。我的經驗是效果還不錯
07/05 13:19, 11F

07/05 13:24, 5年前 , 12F
cnn用迴歸很簡單,我的做法是把最後一層softmax換成迴
07/05 13:24, 12F

07/05 13:24, 5年前 , 13F
歸函數就行了,麻煩的是怎解釋輸出結果
07/05 13:24, 13F
文章代碼(AID): #1SQYMzii (DataScience)
文章代碼(AID): #1SQYMzii (DataScience)