chinese_ocr
chinese_ocr copied to clipboard
只用两张图片训练,竟然不收敛,感觉不可能呢
作者提供的图片,只用两张训练是收敛了,可是用我准备的,两张车牌图片没有收敛,与作者原训练任务不同点就是车牌图片模糊些,id范围只有一个中文省份,和数字和大写字母,结果不能收敛 就算随机猜,也能50%,可是trainloss 1.0左右,acc为0,为什么呢?
1/1 [==============================] - 0s 255ms/step - loss: 1.4361 - acc: 0.0000e+00 - val_loss: 1.4272 - val_acc: 0.0000e+00 Epoch 18485/100000000
而训练集只有一张图片,train loss 可以到0.01, train acc 到1.0
这是文字序列识别,模型的最后是通过将特征图的每一列分别展开输入全连接层识别的,加入你输入的图像最终得到的特征图有70列就会有70个识别结果,然后通过CTC合并得到最终结果,所以和你说的50%的理论不相符
一张图有70列的ground truth, 两张图,就是两个序列, 也就是序列总共就两个,随机猜一个,就可以 就是模型没有学习到这个序列的关系吗?
模型预测出的序列结果并不是一个整体,而是一个由70列预测结果组成的序列(使用CTC之前),你训练的两张图里面其实可能包含着70*2个不同的类别,自然不是随机猜一个50%