[问题] 关于NN之准确度无法上去

楼主: oo855050 (阿伟)   2019-11-10 22:17:59
版上各位好
小弟目前正在学机器学习,看了李宏毅老师的线上影片,想说自己做一下作业来练习,不
过目前训练中遇到了triaining data的准确率都卡在0.82左右,自己手刻程式训练的结果
是0.82,用keras去训练也差不多在0.85左右
目前手刻使用过的方法有shffle资料 跟用batch去训练,而gradient descend用了一般的
GD和momentum的方式
想请教版上各位大大,是否有什么方式是可以提高准确度的呢?
上网查一下,似乎挑选资料的特征也非常重要不过如何挑选就没什么概念了QQ
请问版上大大是否有什么好的方法可以提升training 的准确率吗
感谢><
作者: TuCH (谬客)   2019-11-10 23:26:00
NN多层一点
作者: robert09080 (Aspettarei)   2019-11-10 23:45:00
优化器换别的?
楼主: oo855050 (阿伟)   2019-11-11 01:12:00
tuch大 目前我是用两层 sigmoid+softmax 不过我再加层数上去时 准确度反而降低了 我在想可能是输入特征只有15维的关系 加太多层反而效果不好 小弟拙见还请赐教>_<robert大 目前我是用adam当优化器 也试过adagrad 效果都差不多( ̄▽ ̄)不知robert大有什么好建议吗
作者: sheep1129588 (Sheep_Cheng)   2019-11-11 09:53:00
softmax不用每一层都过ㄅ,你是做哪类型的分类呢
作者: penut85420 (PenutGGorz)   2019-11-11 10:39:00
有查过同样的资料集别人大概是做到多少准确率吗
作者: TuCH (谬客)   2019-11-11 10:44:00
你的准确率是training data 还是 validation data?
作者: moodoa3583 (金牌台灣啤酒)   2019-11-11 10:53:00
如果可以,Sigmoid换Relu试试看?
作者: tsoahans (ㄎㄎ)   2019-11-11 11:14:00
relu + dropout or batch normalization都试试
作者: moodoa3583 (金牌台灣啤酒)   2019-11-11 11:22:00
得要先确定模型现在是overfitting还是underfitting,如果是前者,用楼上的dropout的确有帮助
作者: ciaoPTT (Ciao)   2019-11-11 16:00:00
relu在大部分的状况都有极佳表现建议先多看经典的比赛架构,然后多实作不同的架构准确率先放一边 那个是arch搞定后才会搞的梯度下降大哉问
楼主: oo855050 (阿伟)   2019-11-12 01:00:00
很感谢有这么多人回复,这边统一回答一下 目前在做2元分类的练习 softmax只有在最后一层过而已 而准确度我是从training data看的 所以应该属于underfitting 不过从tenting data去看的话准确度和training data是差不多的激励函数我会用relu试试的谢谢 不过我自己是刚起步学ML所以可能还有很多眉眉眉角角还不是很懂( ̄▽ ̄) 不过这边还是非常感谢大家的踊跃回答
作者: TuCH (谬客)   2019-11-12 09:57:00
通常越多层准确度不会下降 而是收敛会变慢2元的话 最后用sigmoid 就好 前面就用relu太多层会导致sigmoid 梯度消失 用relu可以避免这问题
作者: cloudandfree   2019-11-13 01:36:00
跟楼上一样想法,全 ReLU,二元分类最后一层 sigmoid。
作者: moodoa3583 (金牌台灣啤酒)   2019-11-13 13:03:00
准确度得要把validation data的准确度加进来一起看,最初步的判断如果training data和validation data准确率都还在提升,那model可能under fitting,但如果training data的准确度一直提升,validation data的准确度开始下降,可能就是出现了over fitting
楼主: oo855050 (阿伟)   2019-11-14 23:36:00
目前已测试用relu 最后用sigmoid 精准度似乎还是上不去现在在想是不是应该对数据做处理(PCA、去除outlier等等)各位大大有什么好建议吗
作者: moodoa3583 (金牌台灣啤酒)   2019-11-15 01:13:00
data的笔数有多少笔啊,如果足够大去除outliers 的确是个方法,如果可能的话有办法贴出你现在的模型,以及train/validation data的acc.吗?另外batch和epochs 有尝试调整过吗?最后就是每份资料都还是有准确度的上限的,你的这份资料平均预测的准确度是多少呢?
作者: Kazimir (Kazimir)   2019-11-15 12:13:00
对数据做预处理是不可能隔空抓药的 必然要对数据有理解你可以先去看看 被分类错误的资料都是那些 再思考怎么作
作者: curtis0982 (curtis0982)   2019-11-15 23:04:00
用resnet
楼主: oo855050 (阿伟)   2019-11-15 23:53:00
非常感谢大家的意见另外再回复mooda大一下 我刚上网搜寻了一下别任用那份资料train的结果 其实也满多都是在85%左右 =ˇ= 虽然也是有人做到更高的acc
作者: bookstar07 (书星零柒)   2019-11-16 00:02:00
其实资料量够多的话 15维输入 层数应该可以增加你层数增加精准度没上升 是因为参数还没调好吧LR可以用dynamic的对于卡精准度也许也会有帮助batch其实可以一开始用full batch或大一点的当epochs大一点后再缩小batch size之类的

Links booklink

Contact Us: admin [ a t ] ucptt.com