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

楼主: oo855050 (阿伟)   2019-11-15 23:52:17
※ 引述《oo855050 (阿伟)》之铭言:
: 版上各位好
: 小弟目前正在学机器学习,看了李宏毅老师的线上影片,想说自己做一下作业来练习,不
: 过目前训练中遇到了triaining data的准确率都卡在0.82左右,自己手刻程式训练的结果
: 是0.82,用keras去训练也差不多在0.85左右
: 目前手刻使用过的方法有shffle资料 跟用batch去训练,而gradient descend用了一般的
: GD和momentum的方式
: 想请教版上各位大大,是否有什么方式是可以提高准确度的呢?
: 上网查一下,似乎挑选资料的特征也非常重要不过如何挑选就没什么概念了QQ
: 请问版上大大是否有什么好的方法可以提升training 的准确率吗
: 感谢><
这边回复一下moodoa大
资料量为32500笔左右
https://imgur.com/YGXKC3d
此为我目前的网络架构
作者: bookstar07 (书星零柒)   2019-11-16 00:19:00
LR太大了
作者: moodoa3583 (金牌台灣啤酒)   2019-11-16 00:54:00
如果最后是二元分辨(True/False, 0/1),那loss比起用'categorical_crossentropy',也许用'binary_crossentropy'会更适合一些然后也许没有使用one hot encoding 的必要,抑或是我误会你说的二元分类的意思了?此外像其他板友提过的,可以在第二层加上dropout,最后的activation 从softmax换成sigmoid,以及在fit那边加上validation_split=0.2取两成的train data当val. data,以此来观察模型是否缺乏/过度训练
作者: bookstar07 (书星零柒)   2019-11-16 01:30:00
M大看他上篇说的 underfitting可能性比较大简单解法就是增加层数、节点数换优化器改cost func.都无法改善模型复杂度不足
作者: ciaoPTT (Ciao)   2019-11-16 10:02:00
一次dropout第二层dense太小lr拿掉 1e-02....metrics增加errorbs=64 就行可以的话弄个one cycle fitloss function改binary_crossentropy
作者: moodoa3583 (金牌台灣啤酒)   2019-11-16 16:50:00
如b大所说,如果是under fitting 那就增加层数节点试试看,或是最直观的增加epochs噢我刚刚看到你的epochs已经30了,那就朝向增加层数和每层增加unit这个方向先试试看吧

Links booklink

Contact Us: admin [ a t ] ucptt.com