假设我有一个200万的数据集。最初,我只使用了一百万,对它们进行了培训,然后以h5
格式(如first.h5
)保存了模型。后来我又使用了一百万个数据,使用相同的算法训练了这些数据,并另存为second.h5
。培训需要一天以上的时间,因此我无法一次使用所有两百万个数据。有什么办法,我可以合并这两个保存的模型,例如first.h5 + second.h5
= merged.h5
答案 0 :(得分:2)
您可以合并-average weights-但这与完整数据集的训练不同。
通常,使用更多数据进行训练会导致更好的结果和更好的模型。
如果您不想使用完整的数据集进行训练,我建议您不要对平均权重进行平均,而是将两种模型都用于推理和平均预测。
答案 1 :(得分:2)
您无法做到这一点(合并模型)。让我简单地说一下。您使用大约一百万个数据训练了一个名为first
的孩子,以识别图像是猫还是狗。然后,您使用其他100万个数据训练了一个名为second
的第二个孩子,以识别图像是猫还是狗。现在,您需要的是结合first
和second
。
但是,假设训练数据是IID(独立且分布均匀),那么您可以做的是创建两个模型的集合以进行预测。
集成两个模型的简单方法是
按照link的说明进行集成。
或者简单的策略是将两个模型的最终得分平均,然后使用平均得分进行预测。
一种更强大的策略是使用验证集找到类的权重,然后使用这些权重对看不见的数据进行最终预测。