iDi*_*lip 5 artificial-intelligence machine-learning conv-neural-network keras tensorflow
我构建了一个包含 2 个类的图像分类器,即“A”和“B”。我还使用 model.save() 保存了这个模型。
现在,在一段时间后,出现了添加一个“C”级的要求。是否可以使用 load_model() 然后仅向之前保存的模型添加一个类,以便我们得到具有 3 个类(“A”、“B”和“C”)的最终模型,而无需重新训练整个模型,再次参加“A 级”和“B”级吗?
有人可以帮忙吗?
我已经尝试过这个:
我使用 vgg16 作为基础模型,弹出它的最后一层,冻结权重并添加一个密集层 (DL2),训练它预测 2 个类别。
然后我在 DL2 之上添加了一个更密集的层(例如 DL3),冻结权重并仅使用 C 类进行训练,但现在它总是预测 C 类。
小智 2
我认为您应该查看本教程: https://www.tensorflow.org/tutorials/image_retraining。
简而言之:您不能采用经过训练的模型并添加新的类。您应该进行一些额外的“微调”,可能不是从头开始重新训练模型,但至少要训练分类器(和一些附加层)。
| 归档时间: |
|
| 查看次数: |
3444 次 |
| 最近记录: |