我想训练一个模型来对90K标签进行分类,所以我使用了所谓的增量训练。
我最初训练模型仅对1K标签进行分类,然后添加另外1K标签并将最终FC层的输出尺寸扩展到2K,并训练更多的纪元。之后我添加了另外1K标签,依此类推......
请注意,它不是微调,其中最后一个FC之前的所有参数都是固定的,因此我可以缓存输出功能。在我的情况下,我需要更新每个阶段的所有变量。
我设计的解决方案是:
所以这里的关键点是实现部分恢复检查点。
在TensorFlow中,我使用此类代码加载检查点:
saver.restore(sess, "model.ckpt")
但是,当形状不匹配时它会失败。
任何人都可以提供帮助,无论是部分恢复/初始化变量,还是如何以其他方式实施增量培训?
答案 0 :(得分:1)
目前这并不容易。我们正在积极添加新的API以使其更容易。
与此同时,如果您确定,:),您可以在更改FC图层的大小时尝试以下操作:
希望有所帮助!
雪利酒