作者oo855050 (阿伟)
看板Python
标题[问题] 关於NN之准确度无法上去
时间Sun Nov 10 22:17:59 2019
版上各位好
小弟目前正在学机器学习,看了李宏毅老师的线上影片,想说自己做一下作业来练习,不
过目前训练中遇到了triaining data的准确率都卡在0.82左右,自己手刻程式训练的结果
是0.82,用keras去训练也差不多在0.85左右
目前手刻使用过的方法有shffle资料 跟用batch去训练,而gradient descend用了一般的
GD和momentum的方式
想请教版上各位大大,是否有什麽方式是可以提高准确度的呢?
上网查一下,似乎挑选资料的特徵也非常重要不过如何挑选就没什麽概念了QQ
请问版上大大是否有什麽好的方法可以提升training 的准确率吗
感谢><
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 27.247.66.105 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1573395481.A.174.html
1F:推 TuCH: NN多层一点 11/10 23:26
2F:推 robert09080: 优化器换别的? 11/10 23:45
3F:→ oo855050: tuch大 目前我是用两层 sigmoid+softmax 不过我再加层 11/11 01:12
4F:→ oo855050: 数上去时 准确度反而降低了 我在想可能是输入特徵只有15 11/11 01:12
5F:→ oo855050: 维的关系 加太多层反而效果不好 小弟拙见还请赐教>_< 11/11 01:12
6F:→ oo855050: robert大 目前我是用adam当优化器 也试过adagrad 效果 11/11 01:13
7F:→ oo855050: 都差不多( ̄▽ ̄)不知robert大有什麽好建议吗 11/11 01:13
8F:推 sheep1129588: softmax不用每一层都过ㄅ,你是做哪类型的分类呢 11/11 09:53
9F:推 penut85420: 有查过同样的资料集别人大概是做到多少准确率吗 11/11 10:39
10F:→ TuCH: 你的准确率是training data 还是 validation data? 11/11 10:44
11F:→ moodoa3583: 如果可以,Sigmoid换Relu试试看? 11/11 10:53
12F:→ tsoahans: relu + dropout or batch normalization都试试 11/11 11:14
13F:推 moodoa3583: 得要先确定模型现在是overfitting还是underfitting, 11/11 11:22
14F:→ moodoa3583: 如果是前者,用楼上的dropout的确有帮助 11/11 11:22
15F:推 ciaoPTT: relu在大部分的状况都有极佳表现 11/11 16:00
16F:→ ciaoPTT: 建议先多看经典的比赛架构,然後多实作不同的架构 11/11 16:02
17F:→ ciaoPTT: 准确率先放一边 那个是arch搞定後才会搞的梯度下降大哉 11/11 16:02
18F:→ ciaoPTT: 问 11/11 16:02
19F:→ oo855050: 很感谢有这麽多人回覆,这边统一回答一下 目前在做2元 11/12 01:00
20F:→ oo855050: 分类的练习 softmax只有在最後一层过而已 而准确度我是 11/12 01:00
21F:→ oo855050: 从training data看的 所以应该属於underfitting 不过从t 11/12 01:00
22F:→ oo855050: enting data去看的话准确度和training data是差不多的 11/12 01:01
23F:→ oo855050: 激励函数我会用relu试试的谢谢 不过我自己是刚起步学ML 11/12 01:01
24F:→ oo855050: 所以可能还有很多眉眉眉角角还不是很懂( ̄▽ ̄) 不过这 11/12 01:01
25F:→ oo855050: 边还是非常感谢大家的踊跃回答 11/12 01:01
26F:推 TuCH: 通常越多层准确度不会下降 而是收敛会变慢 11/12 09:57
27F:→ TuCH: 2元的话 最後用sigmoid 就好 前面就用relu 11/12 09:58
28F:→ TuCH: 太多层会导致sigmoid 梯度消失 用relu可以避免这问题 11/12 09:59
29F:推 cloudandfree: 跟楼上一样想法,全 ReLU,二元分类最後一层 sigmo 11/13 01:36
30F:→ cloudandfree: id。 11/13 01:36
31F:推 moodoa3583: 准确度得要把validation data的准确度加进来一起看, 11/13 13:03
32F:→ moodoa3583: 最初步的判断如果training data和validation data准 11/13 13:03
33F:→ moodoa3583: 确率都还在提升,那model可能under fitting,但如果tr 11/13 13:03
34F:→ moodoa3583: aining data的准确度一直提升,validation data的准 11/13 13:04
35F:→ moodoa3583: 确度开始下降,可能就是出现了over fitting 11/13 13:04
36F:→ oo855050: 目前已测试用relu 最後用sigmoid 精准度似乎还是上不去 11/14 23:36
37F:→ oo855050: 现在在想是不是应该对数据做处理(PCA、去除outlier等 11/14 23:36
38F:→ oo855050: 等)各位大大有什麽好建议吗 11/14 23:36
39F:推 moodoa3583: data的笔数有多少笔啊,如果足够大去除outliers 的确 11/15 01:13
40F:→ moodoa3583: 是个方法,如果可能的话有办法贴出你现在的模型,以及 11/15 01:13
41F:→ moodoa3583: train/validation data的acc.吗? 11/15 01:13
42F:→ moodoa3583: 另外batch和epochs 有尝试调整过吗?最後就是每份资料 11/15 01:13
43F:→ moodoa3583: 都还是有准确度的上限的,你的这份资料平均预测的准确 11/15 01:14
44F:→ moodoa3583: 度是多少呢? 11/15 01:14
45F:→ Kazimir: 对数据做预处理是不可能隔空抓药的 必然要对数据有理解 11/15 12:13
46F:→ Kazimir: 你可以先去看看 被分类错误的资料都是那些 再思考怎麽作 11/15 12:15
47F:推 curtis0982: 用resnet 11/15 23:04
48F:→ oo855050: 非常感谢大家的意见 11/15 23:53
49F:→ oo855050: 另外再回覆mooda大一下 我刚上网搜寻了一下别任用那份 11/15 23:58
50F:→ oo855050: 资料train的结果 其实也满多都是在85%左右 =ˇ= 虽然也 11/16 00:00
51F:→ oo855050: 是有人做到更高的acc 11/16 00:01
52F:推 bookstar07: 其实资料量够多的话 15维输入 层数应该可以增加 11/16 00:02
53F:→ bookstar07: 你层数增加精准度没上升 是因为参数还没调好吧 11/16 00:03
54F:→ bookstar07: LR可以用dynamic的对於卡精准度也许也会有帮助 11/16 00:05
55F:推 bookstar07: batch其实可以一开始用full batch或大一点的 11/16 00:10
56F:→ bookstar07: 当epochs大一点後再缩小batch size之类的 11/16 00:12