[問題] 關於NN之準確度無法上去

看板Python作者 (阿偉)時間4年前 (2019/11/10 22:18), 編輯推噓13(13043)
留言56則, 12人參與, 4年前最新討論串1/2 (看更多)
版上各位好 小弟目前正在學機器學習,看了李宏毅老師的線上影片,想說自己做一下作業來練習,不 過目前訓練中遇到了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

11/10 23:26, 4年前 , 1F
NN多層一點
11/10 23:26, 1F

11/10 23:45, 4年前 , 2F
優化器換別的?
11/10 23:45, 2F

11/11 01:12, 4年前 , 3F
tuch大 目前我是用兩層 sigmoid+softmax 不過我再加層
11/11 01:12, 3F

11/11 01:12, 4年前 , 4F
數上去時 準確度反而降低了 我在想可能是輸入特徵只有15
11/11 01:12, 4F

11/11 01:12, 4年前 , 5F
維的關係 加太多層反而效果不好 小弟拙見還請賜教>_<
11/11 01:12, 5F

11/11 01:13, 4年前 , 6F
robert大 目前我是用adam當優化器 也試過adagrad 效果
11/11 01:13, 6F

11/11 01:13, 4年前 , 7F
都差不多( ̄▽ ̄)不知robert大有什麼好建議嗎
11/11 01:13, 7F

11/11 09:53, 4年前 , 8F
softmax不用每一層都過ㄅ,你是做哪類型的分類呢
11/11 09:53, 8F

11/11 10:39, 4年前 , 9F
有查過同樣的資料集別人大概是做到多少準確率嗎
11/11 10:39, 9F

11/11 10:44, 4年前 , 10F
你的準確率是training data 還是 validation data?
11/11 10:44, 10F

11/11 10:53, 4年前 , 11F
如果可以,Sigmoid換Relu試試看?
11/11 10:53, 11F

11/11 11:14, 4年前 , 12F
relu + dropout or batch normalization都試試
11/11 11:14, 12F

11/11 11:22, 4年前 , 13F
得要先確定模型現在是overfitting還是underfitting,
11/11 11:22, 13F

11/11 11:22, 4年前 , 14F
如果是前者,用樓上的dropout的確有幫助
11/11 11:22, 14F

11/11 16:00, 4年前 , 15F
relu在大部分的狀況都有極佳表現
11/11 16:00, 15F

11/11 16:02, 4年前 , 16F
建議先多看經典的比賽架構,然後多實作不同的架構
11/11 16:02, 16F

11/11 16:02, 4年前 , 17F
準確率先放一邊 那個是arch搞定後才會搞的梯度下降大哉
11/11 16:02, 17F

11/11 16:02, 4年前 , 18F
11/11 16:02, 18F

11/12 01:00, 4年前 , 19F
很感謝有這麼多人回覆,這邊統一回答一下 目前在做2元
11/12 01:00, 19F

11/12 01:00, 4年前 , 20F
分類的練習 softmax只有在最後一層過而已 而準確度我是
11/12 01:00, 20F

11/12 01:00, 4年前 , 21F
從training data看的 所以應該屬於underfitting 不過從t
11/12 01:00, 21F

11/12 01:01, 4年前 , 22F
enting data去看的話準確度和training data是差不多的
11/12 01:01, 22F

11/12 01:01, 4年前 , 23F
激勵函數我會用relu試試的謝謝 不過我自己是剛起步學ML
11/12 01:01, 23F

11/12 01:01, 4年前 , 24F
所以可能還有很多眉眉眉角角還不是很懂( ̄▽ ̄) 不過這
11/12 01:01, 24F

11/12 01:01, 4年前 , 25F
邊還是非常感謝大家的踴躍回答
11/12 01:01, 25F

11/12 09:57, 4年前 , 26F
通常越多層準確度不會下降 而是收斂會變慢
11/12 09:57, 26F

11/12 09:58, 4年前 , 27F
2元的話 最後用sigmoid 就好 前面就用relu
11/12 09:58, 27F

11/12 09:59, 4年前 , 28F
太多層會導致sigmoid 梯度消失 用relu可以避免這問題
11/12 09:59, 28F

11/13 01:36, 4年前 , 29F
跟樓上一樣想法,全 ReLU,二元分類最後一層 sigmo
11/13 01:36, 29F

11/13 01:36, 4年前 , 30F
id。
11/13 01:36, 30F

11/13 13:03, 4年前 , 31F
準確度得要把validation data的準確度加進來一起看,
11/13 13:03, 31F

11/13 13:03, 4年前 , 32F
最初步的判斷如果training data和validation data準
11/13 13:03, 32F

11/13 13:03, 4年前 , 33F
確率都還在提升,那model可能under fitting,但如果tr
11/13 13:03, 33F

11/13 13:04, 4年前 , 34F
aining data的準確度一直提升,validation data的準
11/13 13:04, 34F

11/13 13:04, 4年前 , 35F
確度開始下降,可能就是出現了over fitting
11/13 13:04, 35F

11/14 23:36, 4年前 , 36F
目前已測試用relu 最後用sigmoid 精準度似乎還是上不去
11/14 23:36, 36F

11/14 23:36, 4年前 , 37F
現在在想是不是應該對數據做處理(PCA、去除outlier等
11/14 23:36, 37F

11/14 23:36, 4年前 , 38F
等)各位大大有什麼好建議嗎
11/14 23:36, 38F

11/15 01:13, 4年前 , 39F
data的筆數有多少筆啊,如果足夠大去除outliers 的確
11/15 01:13, 39F

11/15 01:13, 4年前 , 40F
是個方法,如果可能的話有辦法貼出你現在的模型,以及
11/15 01:13, 40F

11/15 01:13, 4年前 , 41F
train/validation data的acc.嗎?
11/15 01:13, 41F

11/15 01:13, 4年前 , 42F
另外batch和epochs 有嘗試調整過嗎?最後就是每份資料
11/15 01:13, 42F

11/15 01:14, 4年前 , 43F
都還是有準確度的上限的,你的這份資料平均預測的準確
11/15 01:14, 43F

11/15 01:14, 4年前 , 44F
度是多少呢?
11/15 01:14, 44F

11/15 12:13, 4年前 , 45F
對數據做預處理是不可能隔空抓藥的 必然要對數據有理解
11/15 12:13, 45F

11/15 12:15, 4年前 , 46F
你可以先去看看 被分類錯誤的資料都是那些 再思考怎麼作
11/15 12:15, 46F

11/15 23:04, 4年前 , 47F
用resnet
11/15 23:04, 47F

11/15 23:53, 4年前 , 48F
非常感謝大家的意見
11/15 23:53, 48F

11/15 23:58, 4年前 , 49F
另外再回覆mooda大一下 我剛上網搜尋了一下別任用那份
11/15 23:58, 49F

11/16 00:00, 4年前 , 50F
資料train的結果 其實也滿多都是在85%左右 =ˇ= 雖然也
11/16 00:00, 50F

11/16 00:01, 4年前 , 51F
是有人做到更高的acc
11/16 00:01, 51F

11/16 00:02, 4年前 , 52F
其實資料量夠多的話 15維輸入 層數應該可以增加
11/16 00:02, 52F

11/16 00:03, 4年前 , 53F
你層數增加精準度沒上升 是因為參數還沒調好吧
11/16 00:03, 53F

11/16 00:05, 4年前 , 54F
LR可以用dynamic的對於卡精準度也許也會有幫助
11/16 00:05, 54F

11/16 00:10, 4年前 , 55F
batch其實可以一開始用full batch或大一點的
11/16 00:10, 55F

11/16 00:12, 4年前 , 56F
當epochs大一點後再縮小batch size之類的
11/16 00:12, 56F
文章代碼(AID): #1To1mP5q (Python)
文章代碼(AID): #1To1mP5q (Python)