作者stellawang18 (stella)
看板DataScience
标题[问题] imagenet pretrained model accuracy
时间Thu Jul 2 12:05:04 2020
作业系统:win10+colab
问题类别:ML, DL
使用工具:keras
问题内容:
大家好,最近在做图像分类,约有100k张图像,问题是一直遇到val_acc上不去的问题,
想询问有什麽解决办法,谢谢!
我是使用resnet50的pretrained model,且套用imagenet的weight,因此在最後一层换成
自己的分类器,并只训练最後一层。
图像处理部分使用imagedatagenerator,resize至224*224,并加上翻转、缩放等增强,
以及将pixel scale成0-1之间。
validation则不做增强,只做scale到0-1。
训练时training accuracy会随epoch上升至0.5多,但validation永远只有0.02...。
想到的可能改善方法是
1.换个模型
2.不确定是否一定要用preprocess_input,看了图像格式和generator是一样的,应该没
影响?
是不是我有哪边少做漏掉了才造成validation这麽低呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 27.242.15.153 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DataScience/M.1593662706.A.D6D.html
1F:推 sssh: validation set 怎麽切出来的 ?有没有imbalance 的问题07/02 14:14
2F:→ sssh: 另外,您的资料集部分利用现在的 augmentation 设定是否合理07/02 14:15
3F:→ sssh: val acc 不动,那 loss 有变动吗 ? 07/02 14:16
4F:→ sssh: 我觉得 train acc 这样其实蛮低,有可能是分类器结构的问题07/02 14:17
我是按各类别比例切的,的确是有一类约较少,约500,其他类皆有1500-2500左右,共40
多类,可能算是有一点不平衡,但不确定会不会是最主要的因素。
加入augmentation後的准确率有上升,但我没有思考过各个augmentation的设定,所以这
也会是一个问题吗
val loss算是有动,不过变化不大,大概每个epoch会降0.1,但acc几乎不动,如果是分
类器问题的话,是应该要选再深一点的模型吗?谢谢!!
※ 编辑: stellawang18 (27.242.15.153 台湾), 07/02/2020 18:38:32
5F:推 truehero: 先用两类试试吧 如果data没问题 通常是loss写错或超参 07/02 20:39
6F:→ truehero: 数不对07/02 20:39
我用两类试了,training acc约0.9,validation acc有到0.5,但後来降到0.48
data算是有些noise,但主要是不晓得为何training和validation结果差很多
7F:推 min86615: 这资料量不要用pretrain了07/02 23:59
是因为资料量太多吗,我一开始也没有用pretrain,是有人推荐我用的,虽然training结
果变好,但反而validation变很差
※ 编辑: stellawang18 (27.242.15.153 台湾), 07/03/2020 00:21:58
※ 编辑: stellawang18 (27.242.15.153 台湾), 07/03/2020 00:23:36
※ 编辑: stellawang18 (27.242.15.153 台湾), 07/03/2020 00:25:29
8F:→ min86615: 你要pretrain试试看Adam lr调大资料分布不太一样,lr 太 07/03 06:48
9F:→ min86615: 小影响不大,我是建议不要load pretrain啦 07/03 06:48
了解!我再试试不用pretrain,谢谢你!!
10F:推 ballislife: 碰到过类似的问题,当时是因为BN的moving mean/var还07/03 08:02
11F:→ ballislife: 没有收敛,特别是当BN的momentum较大的时候07/03 08:02
12F:→ ballislife: 把BN的momentum调小试试,或是多train几个epoch让其07/03 08:04
13F:→ ballislife: 收敛07/03 08:04
是指调pretrain内的BN吗?
※ 编辑: stellawang18 (39.11.129.250 台湾), 07/04/2020 00:25:47
14F:推 ballislife: 是的 07/04 03:26
原来!没有想到调BN!找到方向了,我再研究看看,非常谢谢你!
※ 编辑: stellawang18 (39.11.129.250 台湾), 07/04/2020 12:35:02
15F:推 dogppatrick: 如果你是在弄虾皮那个 我推荐effiectnet / xception 07/06 11:06
对~!虽然结束了但会再试试你推荐的方法,真是实作才知道自己能力多不足,谢谢你!
!
※ 编辑: stellawang18 (39.11.129.250 台湾), 07/06/2020 21:39:16
※ 编辑: stellawang18 (39.11.129.250 台湾), 07/06/2020 21:39:40