看板 Python 關於我們 聯絡資訊
版上各位好 小弟目前正在學機器學習,看了李宏毅老師的線上影片,想說自己做一下作業來練習,不 過目前訓練中遇到了triaining data的準確率都卡在0.82左右,自己手刻程式訓練的結果 是0.82,用keras去訓練也差不多在0.85左右 目前手刻使用過的方法有shffle資料 跟用batch去訓練,而gradient descend用了一般的 GD和momentum的方式 想請教版上各位大大,是否有什麼方式是可以提高準確度的呢? 上網查一下,似乎挑選資料的特徵也非常重要不過如何挑選就沒什麼概念了QQ 請問版上大大是否有什麼好的方法可以提升training 的準確率嗎 感謝>< -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.247.66.105 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1573395481.A.174.html
TuCH: NN多層一點 11/10 23:26
robert09080: 優化器換別的? 11/10 23:45
oo855050: tuch大 目前我是用兩層 sigmoid+softmax 不過我再加層 11/11 01:12
oo855050: 數上去時 準確度反而降低了 我在想可能是輸入特徵只有15 11/11 01:12
oo855050: 維的關係 加太多層反而效果不好 小弟拙見還請賜教>_< 11/11 01:12
oo855050: robert大 目前我是用adam當優化器 也試過adagrad 效果 11/11 01:13
oo855050: 都差不多( ̄▽ ̄)不知robert大有什麼好建議嗎 11/11 01:13
sheep1129588: softmax不用每一層都過ㄅ,你是做哪類型的分類呢 11/11 09:53
penut85420: 有查過同樣的資料集別人大概是做到多少準確率嗎 11/11 10:39
TuCH: 你的準確率是training data 還是 validation data? 11/11 10:44
moodoa3583: 如果可以,Sigmoid換Relu試試看? 11/11 10:53
tsoahans: relu + dropout or batch normalization都試試 11/11 11:14
moodoa3583: 得要先確定模型現在是overfitting還是underfitting, 11/11 11:22
moodoa3583: 如果是前者,用樓上的dropout的確有幫助 11/11 11:22
ciaoPTT: relu在大部分的狀況都有極佳表現 11/11 16:00
ciaoPTT: 建議先多看經典的比賽架構,然後多實作不同的架構 11/11 16:02
ciaoPTT: 準確率先放一邊 那個是arch搞定後才會搞的梯度下降大哉 11/11 16:02
ciaoPTT: 問 11/11 16:02
oo855050: 很感謝有這麼多人回覆,這邊統一回答一下 目前在做2元 11/12 01:00
oo855050: 分類的練習 softmax只有在最後一層過而已 而準確度我是 11/12 01:00
oo855050: 從training data看的 所以應該屬於underfitting 不過從t 11/12 01:00
oo855050: enting data去看的話準確度和training data是差不多的 11/12 01:01
oo855050: 激勵函數我會用relu試試的謝謝 不過我自己是剛起步學ML 11/12 01:01
oo855050: 所以可能還有很多眉眉眉角角還不是很懂( ̄▽ ̄) 不過這 11/12 01:01
oo855050: 邊還是非常感謝大家的踴躍回答 11/12 01:01
TuCH: 通常越多層準確度不會下降 而是收斂會變慢 11/12 09:57
TuCH: 2元的話 最後用sigmoid 就好 前面就用relu 11/12 09:58
TuCH: 太多層會導致sigmoid 梯度消失 用relu可以避免這問題 11/12 09:59
cloudandfree: 跟樓上一樣想法,全 ReLU,二元分類最後一層 sigmo 11/13 01:36
cloudandfree: id。 11/13 01:36
moodoa3583: 準確度得要把validation data的準確度加進來一起看, 11/13 13:03
moodoa3583: 最初步的判斷如果training data和validation data準 11/13 13:03
moodoa3583: 確率都還在提升,那model可能under fitting,但如果tr 11/13 13:03
moodoa3583: aining data的準確度一直提升,validation data的準 11/13 13:04
moodoa3583: 確度開始下降,可能就是出現了over fitting 11/13 13:04
oo855050: 目前已測試用relu 最後用sigmoid 精準度似乎還是上不去 11/14 23:36
oo855050: 現在在想是不是應該對數據做處理(PCA、去除outlier等 11/14 23:36
oo855050: 等)各位大大有什麼好建議嗎 11/14 23:36
moodoa3583: data的筆數有多少筆啊,如果足夠大去除outliers 的確 11/15 01:13
moodoa3583: 是個方法,如果可能的話有辦法貼出你現在的模型,以及 11/15 01:13
moodoa3583: train/validation data的acc.嗎? 11/15 01:13
moodoa3583: 另外batch和epochs 有嘗試調整過嗎?最後就是每份資料 11/15 01:13
moodoa3583: 都還是有準確度的上限的,你的這份資料平均預測的準確 11/15 01:14
moodoa3583: 度是多少呢? 11/15 01:14
Kazimir: 對數據做預處理是不可能隔空抓藥的 必然要對數據有理解 11/15 12:13
Kazimir: 你可以先去看看 被分類錯誤的資料都是那些 再思考怎麼作 11/15 12:15
curtis0982: 用resnet 11/15 23:04
oo855050: 非常感謝大家的意見 11/15 23:53
oo855050: 另外再回覆mooda大一下 我剛上網搜尋了一下別任用那份 11/15 23:58
oo855050: 資料train的結果 其實也滿多都是在85%左右 =ˇ= 雖然也 11/16 00:00
oo855050: 是有人做到更高的acc 11/16 00:01
bookstar07: 其實資料量夠多的話 15維輸入 層數應該可以增加 11/16 00:02
bookstar07: 你層數增加精準度沒上升 是因為參數還沒調好吧 11/16 00:03
bookstar07: LR可以用dynamic的對於卡精準度也許也會有幫助 11/16 00:05
bookstar07: batch其實可以一開始用full batch或大一點的 11/16 00:10
bookstar07: 當epochs大一點後再縮小batch size之類的 11/16 00:12