Attention_ocr.pytorch icon indicating copy to clipboard operation
Attention_ocr.pytorch copied to clipboard

模型准确率的问题

Open duxiangcheng opened this issue 6 years ago • 49 comments

你好,我想问一下,我重新运行了一下你的代码但是21轮epoch之后,识别的准确率还是很低,达不到你所给出的效果。您觉得,这可能与什么原因有关呢?

duxiangcheng avatar Mar 15 '19 01:03 duxiangcheng

而且,我发现,到达一定的训练阶段,loss值会上升。想请问一下,这是怎么回事呢?

duxiangcheng avatar Mar 15 '19 07:03 duxiangcheng

@duxiangcheng ,模型最近会更新一下的,到时候有修复。

chenjun2hao avatar Mar 15 '19 08:03 chenjun2hao

谢谢你的回复,我想请教一下你,就是前面阶段的loss降的蛮快的,但是后面阶段loss突然暴涨,这是模型导致的吗?

duxiangcheng avatar Mar 15 '19 08:03 duxiangcheng

没有改任何代码,就是用README中提供的数据从头训练(而不是finetune),21个epoch结束后显示准确率只有10%,实际应该更低,预测出来全部是“的的的的的”,不知道哪里有问题

freesouls avatar Mar 20 '19 02:03 freesouls

@freesouls 你训练21个epoch之后的loss会暴涨吗?

duxiangcheng avatar Mar 20 '19 02:03 duxiangcheng

我的loss好像没怎么变,从最开始60左右,到21个epoch结束的时候还是60左右,中间有没有下降不清楚,忘记重定向log了

freesouls avatar Mar 20 '19 03:03 freesouls

@freesouls 中间过程的loss是会降低的,但是训练达到21轮epoch的时候,loss又会上升,我也觉得很奇怪

duxiangcheng avatar Mar 20 '19 03:03 duxiangcheng

我用的是anaconda python3.6.3, cuda9.0, cudnn 7.0, pytorch 1.0.1.post2~ 是否跟pytorch的版本有问题? @chenjun2hao 你的模型是在什么环境下得到的?我可以重新跑一下

freesouls avatar Mar 20 '19 03:03 freesouls

@chenjun2hao 我也想知道你当时跑的环境,我的是anaconda python3.6.8,cuda10.0,pytorch1.0.1

duxiangcheng avatar Mar 20 '19 03:03 duxiangcheng

@duxiangcheng @freesouls 你们找到解决方法了吗?我在训练时也出现了loss先下降后来不断上升的情况。

yyfanxing avatar Mar 22 '19 01:03 yyfanxing

主要是模型不够稳定,最近会更新一下模型的。

chenjun2hao avatar Mar 22 '19 01:03 chenjun2hao

@yyfanxing @duxiangcheng @freesouls ,I have update the decoder model for identificating the variable length images

chenjun2hao avatar Mar 24 '19 07:03 chenjun2hao

ok,I will try it again

yyfanxing avatar Mar 25 '19 02:03 yyfanxing

@chenjun2hao ,我用最新的代码进行训练,还是出现了loss突然上升的情况,到了一定阶段,loss每隔几万步就突然上升。我是用这个训练Synth90k数据,max_width改成了26,imgW为100,batch size为256,其他都没有改变。我的loss如下: 2019-03-27 09-50-23屏幕截图

yyfanxing avatar Mar 27 '19 01:03 yyfanxing

@yyfanxing ,I think this is mainly a problem with the rmsprop optimizer,you can try SGD.

chenjun2hao avatar Mar 27 '19 02:03 chenjun2hao

@yyfanxing 你好,换了优化器之后,这个问题解决了吗?

duxiangcheng avatar Mar 28 '19 06:03 duxiangcheng

@duxiangcheng @chenjun2hao 我重新用sgd训练不会出现loss突然上升情况,但是好像准确率没有之前adam优化器训练的效果好。

yyfanxing avatar Apr 02 '19 02:04 yyfanxing

@yyfanxing 准确率能达到多少啊?

dlml avatar May 15 '19 01:05 dlml

我在自己的训练集上进行训练,训练了200个epoch左右,训练的损失在4左右,一直不下降,但在验证集上的准确率才0.62,然后在训练集上测试发现准确率才0.75,这是为什么呢?

Yellower avatar May 17 '19 08:05 Yellower

@Yellower 中文数据集吗,你自己截别的图看效果了吗,怎么样

dlml avatar May 17 '19 08:05 dlml

@Yellower 中文数据集吗,你自己截别的图看效果了吗,怎么样

是中英文都有的,但是图片量小才6300张。之前我用了CTC的,在模型上微调了十几轮验证集精度就有0.8的准确率了,但在这个上连训练集都达不到0.8,我学习率设的是0.001,不知道是不是太大了

Yellower avatar May 17 '19 11:05 Yellower

我用SGD和ADAM以及RMS都试过,在第一个epoch上效果还不错,有96%的准确率。然后就越训越差 后面的loss比刚开始还高

zhangchurong avatar May 20 '19 01:05 zhangchurong

那实际的泛化能力怎么样呢

------------------ 原始邮件 ------------------ 发件人: "zhangchurong"[email protected]; 发送时间: 2019年5月20日(星期一) 上午9:53 收件人: "chenjun2hao/Attention_ocr.pytorch"[email protected]; 抄送: ""[email protected]; "Comment"[email protected]; 主题: Re: [chenjun2hao/Attention_ocr.pytorch] 模型准确率的问题 (#9)

我用SGD和ADAM以及RMS都试过,在第一个epoch上效果还不错,有96%的准确率。然后就越训越差 后面的loss比刚开始还高

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

dlml avatar May 20 '19 04:05 dlml

@zhangchurong 你是在哪个数据上训练的呢?ReadMe里的链接上那个数据集吗?

Yellower avatar May 20 '19 08:05 Yellower

那实际的泛化能力怎么样呢 ------------------ 原始邮件 ------------------ 发件人: "zhangchurong"[email protected]; 发送时间: 2019年5月20日(星期一) 上午9:53 收件人: "chenjun2hao/Attention_ocr.pytorch"[email protected]; 抄送: ""[email protected]; "Comment"[email protected]; 主题: Re: [chenjun2hao/Attention_ocr.pytorch] 模型准确率的问题 (#9) 我用SGD和ADAM以及RMS都试过,在第一个epoch上效果还不错,有96%的准确率。然后就越训越差 后面的loss比刚开始还高 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

现在的测试集和训练集还是很像的 还没有测试在实际应用上测试过

zhangchurong avatar May 20 '19 08:05 zhangchurong

@zhangchurong 你是在哪个数据上训练的呢?ReadMe里的链接上那个数据集吗?

是的 那个数据集分成两部分 一部分训练一部分测试 把学习率调到0.0001后面稳定了很多

zhangchurong avatar May 20 '19 08:05 zhangchurong

@freesouls 请问你的问题解决了吗?我在训练过程中也遇到类似问题,我用了300万张训练数据(标签都是定长);batchsize设为64,训练了几千次后loss降到60左右就降不下去了.

wenston2006 avatar Jul 09 '19 04:07 wenston2006

@chenjun2hao @Yellower 可否分享下你们的训练log文件?

wenston2006 avatar Jul 09 '19 04:07 wenston2006

学习率改为0.0001,第一个epoach 的loss降下来了,降到20了.

wenston2006 avatar Jul 09 '19 06:07 wenston2006

@chenjun2hao @Yellower 可否分享下你们的训练log文件?

我重新在ReadMe里面提供的数据集上训练的,确实精度有90多,训练的log文件我不确定还有没有,都放在服务器上了,但最近人都不在学校,拿不到

Yellower avatar Jul 09 '19 08:07 Yellower