Python 多输出模型的编译选项:多重损失&;损失加权
正如Keras手册-Pyhton深度学习-中所述,对于多输出模型,我们需要为不同的网络头指定不同的损失函数。但是,因为梯度下降需要最小化标量,所以必须将这些损失合并为单个值,以便训练模型 非常不平衡的损失贡献将导致模型表示优先针对个体损失最大的任务进行优化,而以牺牲其他任务为代价。要解决此问题,您可以在损失值对最终损失的贡献中为其指定不同的重要性级别。如果损失值使用不同的标度,这尤其有用 任何人都可以在以下方面提供帮助: 我有一个五输出模型,输出如下:Python 多输出模型的编译选项:多重损失&;损失加权,python,keras,deep-learning,Python,Keras,Deep Learning,正如Keras手册-Pyhton深度学习-中所述,对于多输出模型,我们需要为不同的网络头指定不同的损失函数。但是,因为梯度下降需要最小化标量,所以必须将这些损失合并为单个值,以便训练模型 非常不平衡的损失贡献将导致模型表示优先针对个体损失最大的任务进行优化,而以牺牲其他任务为代价。要解决此问题,您可以在损失值对最终损失的贡献中为其指定不同的重要性级别。如果损失值使用不同的标度,这尤其有用 任何人都可以在以下方面提供帮助: 我有一个五输出模型,输出如下: 情感(多类别、多标签分类) 价(回归) 觉
losses_list = {'EMOTIONS': 'binary_crossentropy',
'VALENCE': 'mse',
'AROUSAL': 'mse',
'DOMINANCE': 'mse',
'AGE': 'categorical_crossentropy'}
losses_weights = {'EMOTIONS': 1.0,
'VALENCE': 0.025,
'AROUSAL': 0.025,
'DOMINANCE': 0.025,
'AGE': 0.45}
metrics ={'EMOTIONS': 'crossentropy',
'VALENCE': 'mse',
'AROUSAL': 'mse',
'DOMINANCE': 'mse',
'AGE': 'categorical_accuracy'}
这些是正确的损失函数吗?这些权重正确吗?这些指标设置正确吗?
二元精度
,对于经常使用的回归mae
或平均绝对误差,最后一个对于多类分类是正确的谢谢你。例如,如书中所述,用于年龄回归任务的均方误差(MSE)损失通常取3-5左右的值,而用于性别分类任务的交叉熵损失可低至0.1。在这种情况下,为了平衡不同损失的贡献,您可以为交叉熵损失分配10的权重,为MSE损失分配0.25的权重。因此,基于此,我的问题是,我的示例中使用的损失函数的典型值是什么?