YCG09 / chinese_ocr

CTPN + DenseNet + CTC based end-to-end Chinese OCR implemented using tensorflow and keras
Apache License 2.0
2.74k stars 1.08k forks source link

训练中不保存模型? #188

Closed shuizhongyu closed 5 years ago

shuizhongyu commented 5 years ago

我自己使用TextRecognitionDataGenerator生成了100,000张图片,跑了一夜,训练进度如下: 19121/28184 [===================>..........] - ETA: 8:35:45 - loss: 1.9174 - acc: 0.9251 19122/28184 [===================>..........] - ETA: 8:35:42 - loss: 1.9174 - acc: 0.9251 19123/28184 [===================>..........] - ETA: 8:35:38 - loss: 1.9173 - acc: 0.9251 19124/28184 [===================>..........] - ETA: 8:35:34 - loss: 1.9172 - acc: 0.9251 却在训练目录下没有发现任何保存的模型? 在train.py中看到是保存在./models/weights_densenet-{epoch:02d}-{val_loss:.2f}.h5 但models目录下没有任何输出模型? 查看keras的定义发现此处有一个period代表每个检查点之间的间隔,是代表保存模型之间的间隔?我是需要添加此定义来保存模型? keras.callbacks.ModelCheckpoint(filepath, monitor='val_loss', verbose=0, save_best_only=False, save_weights_only=False, mode='auto', period=1) 或者是有其他的地方设置我没有发现?

shuizhongyu commented 5 years ago

看了下,是每个Epoch保存一次模型吗?我这个截止目前好像还在Epoch1/10阶段,这是没保存的原因吗? 目前为止的精度acc: 0.9401,所以我这个只需要一个Epoch就可用了? 那如果我想让他在Epoch内保存模型,要在哪里修改代码呢?

shuizhongyu commented 5 years ago

在训练完一个epoch后,模型输出了。如果需要更快的保存模型,通过修改steps_per_epoch 即可实现