Closed daoyijushi closed 6 years ago
这个原因比较多,模型收敛了吗
模型收敛了, 训练结果是下面这样的,这一次的还没有训练完,而且很奇怪的是验证集准确率比训练集准确率还要高, 而且每次执行的结果都不一样
loss: 0.6920 - acc: 0.9360 - val_loss: 0.6790 - val_acc: 0.9491
我做的标签是下面这种的
丫垣职唏粉速斓苦醵匀_6623.jpg 4406 2426 5221 5551 3348 3142 5289 1826 5778 1771 丫舱爬堆刘涣柴贿烛烹_13235.jpg 4406 2219 211 4507 583 598 1375 5827 2036 2596 丫轰版哧夜伛稿娟酰寤_19718.jpg 4406 5700 2131 5245 1647 5770 4501 2606 2006 2770 丫镕笤印姆涮刑泱磁皁_16892.jpg 4406 314 228 3033 2047 3220 1044 3524 1550 25
@daoyijushi 原因可能是模型路径加载不对,自己训练保持的路径为weights-densenet,实际代码加载的路径是weights_densenet(下横杠)
hi 我也遇到了相同的问题。请问现在您的问题解决了嘛?感谢 @daoyijushi
@lijc210 hi,请问您是直接用楼主的代码和数据集训练的嘛?感谢
@braveman123 @daoyijushi 我也是相同的问题 同问!
@lijc210 路径是对的,没有问题,检查了好多遍了
@braveman123 我的问题还没有解决,还不知道问题出在了哪里,代码用的是楼主的,数据集是自己做的
@braveman123 @flumen-mons 咱们一起想想办法吧,看看问题出在哪里,一起解决掉吧
你们可能没有加占位符,我代码里有个“卍”
keras的backend是tensorflow,tf的CTC把最后一个字符作为blank label,所以最后必须有个占位符
@daoyijushi 用的是自己的数据集训练的,我发现没有weights_densenet.h5文件,预测也不会报错,结果就是乱码的,所以我乱码的原因是weights_densenet.h5路径加载错了。
@YCG09 加了占位符了
@lijc210 你是说下面这个吗,原来的我把源码里的路径给注释掉了,然后换成了下面这个,应该是没有错的吧
#modelPath = './models/pretrain_model/keras.h5'
modelPath = './Data/east+crnn/densenet/models/weights_densenet.h5'
basemodel.load_weights(modelPath)
@daoyijushi 你改得不对,默认情况下自己训练的会保存在chinese_ocr/train/models/weights-densenet...,训练好后需要移到chinese_ocr/densenet/models/weights_densenet.h5(一个是中横杠,一个是下横杠)
@lijc210 只要模型路径和代码里的路径一致就可以了吧,而且我训练好以后也移动到你说的那个目录下了
@lijc210 我改了路径以后都是用的绝对路径,路径上应该是没有问题的,非常感谢您
如果每次都对同一张图片进行识别出都是同样的乱码,那不会是模型没加载正确,可能是训练模型的样本语料库重复太多导致过拟合了。
@flycocopig 乱码不是一样的,同一个模型同一张图片每次结果都不一样
那你检查你的加载模型吧,看看是不是真的正确加载模型了
@flycocopig 模型都检查好多遍了,路径都是复制过去的
@daoyijushi @YCG09 我还真是名字弄错了,一个是“_”,一个是“-”,非常感谢@lijc210,感谢楼主,感谢居士
@braveman123 同样感谢你
@daoyijushi @lijc210 @braveman123 @YCG09 弱弱的问一句,楼主的代码,模型我什么都没改,只是运行了一下,还是乱码。是什么原因呢
我在楼主的训练集基础上添加了10万张训练集,对应的标签也都添加了。训练结果如下: Epoch 7/10 773/773 [==============================] - 9231s 12s/step - loss: 0.8825 - acc: 0.9929 - val_loss: 0.8609 - val_acc: 0.9933 Epoch 00007: early stopping
我将训练好的Epoch 7对应的模型移到路径:chinese_ocr/densenet/models/weights_densenet.h5下,然后进行测试,发现输出结果是空,试了好几张照片都是空。是什么原因呢?
感觉人都不在了,现在没有回答问题了
我在楼主的训练集基础上添加了10万张训练集,对应的标签也都添加了。训练结果如下: Epoch 7/10 773/773 [==============================] - 9231s 12s/step - loss: 0.8825 - acc: 0.9929 - val_loss: 0.8609 - val_acc: 0.9933 Epoch 00007: early stopping
我将训练好的Epoch 7对应的模型移到路径:chinese_ocr/densenet/models/weights_densenet.h5下,然后进行测试,发现输出结果是空,试了好几张照片都是空。是什么原因呢?
@focuswuke 同样的问题,您后来有解决吗?
请问楼主,我采用您的代码,自己做了几个数据集,但是每次都是乱码,请问这是怎么回事呢,应该怎么解决呀 Recognition Result:
蝇俛蝇俛蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇 蝇蝇蝇蝇蝇健蝇蝇蝇蝇蝇拽蝇蝇蝇蝇蝇蝇蝇健蝇蝇蝇健蝇蝇蝇蝇蝇蝇 蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇蝇膜蝇蝇蝇蝇蝇蝇蝇