如何同时为两个不同的训练集和不同的成本函数训练Keras模型

时间:2019-04-03 17:34:46

标签: keras training-data loss-function

我正在尝试根据两组不同的训练数据来训练CNN。对于训练数据集A和B,我想分别优化成本函数Cost_A和Cost_B。 我要确保在训练期间模型参数朝着同时优化两个损失函数的方向变化。

有人知道如何在Keras中实现它吗?

PS:我不是在寻找代码!只是一个提示就足够了!

1 个答案:

答案 0 :(得分:0)

备用迷你批次

一个选择是替代训练-运行具有成本函数A的A组小批量(使用train_on_batch),运行具有成本函数B的B组小批量。

有条件的成本函数

另一个选择是具有“条件”成本函数。本质上,您可以向输入中添加(创建多输入模型)一个新变量X,该变量对于A中的每个样本均设置为1,对于B中的每个样本均设置为0。然后,您可以将成本函数设置为{{ 1}},它将忽略每个项目的“错误”成本函数。然后,您可以一次训练两个数据集。