Open CherishineNi opened 5 years ago
他的代码写的是1000个step保存一下,你的数据集显然太小,没有跑到1000个step。把他的save_model参数改小一点就好了
他的代码写的是1000个step保存一下,你的数据集显然太小,没有跑到1000个step。把他的save_model参数改小一点就好了
我的save_step=100 ,num_epochs=1000,训练结束还是没有保存结果,models下面为空
# Save the model checkpoints if (i+1) % args.save_step == 0: torch.save(decoder.state_dict(), os.path.join( args.model_path, 'decoder-{}-{}.ckpt'.format(epoch+1, i+1))) torch.save(encoder.state_dict(), os.path.join( args.model_path, 'encoder-{}-{}.ckpt'.format(epoch+1, i+1)))
...
total_step = len(data_loader) for epoch in range(args.num_epochs): for i, (images, captions, lengths) in enumerate(data_loader):
这个地方是(i+1)% save_step ==0 才会保存,你的save_step = 100 , 但是他的i是每一个epoch里面的第几次迭代,到了下一个epoch,i 就重新从0开始算了。如果你把 save_step写成40,应该就会每个epoch保存一次了
请问如何评估生成的语句得分? @Lzhushuai
训练结束,但是models文件夹下面为空,训练好的模型没有保存。请问要如何解决?