当前位置:   article > 正文

Keras 神经网络模型的多输出 loss weight metrics 设置_神经网络多个输出,默认对多个loss函数如何处理

神经网络多个输出,默认对多个loss函数如何处理

keras支持模型多输入多输出,本文记录多输出时loss、loss weight和metrics的设置方式。

模型输出

假设模型具有多个输出

  • classify: 二维数组,分类softmax输出,需要配置交叉熵损失
  • segmentation:与输入同尺寸map,sigmoid输出,需要配置二分类损失
  • others:自定义其他输出,需要自定义损失

具体配置

model

  • 变量均为模型中网络层
1
2
3
inputs = [input_1 , input_2]
outputs = [classify, segmentation, others]
model = keras.models.Model(inputs, outputs)

loss

1
2
3
4
my_loss = {
    'classify': 'categorical_crossentropy',\
    'segmentation':'binary_crossentropy',\
    'others':my_loss_fun}

loss weight

1
2
3
4
my_loss_weights = {
    'classify':1,\
    'segmentation':1,\
    'others':10}

metrics

1
2
3
4
5
my_metrics ={
    'classify':'acc',\
    'segmentation':[mean_iou,'acc'],\
    'others':['mse','acc']
    }

编译

1
model.compile(optimizer=Adam(lr=config.LEARNING_RATE), loss=my_loss, loss_weights= my_loss_weights, metrics= my_metrics)

本文标题 :  Keras 模型多输出 loss weight metrics 设置
文章作者 :  
发布时间 :  2020年05月25日 - 18:50:19
最后更新 :  2020年06月19日 - 20:17:58
原始链接 :  https://www.zywvvd.com/2020/05/25/deep_learning/keras/keras-multi-metrics/keras-multi-metrics/

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/133360
推荐阅读
相关标签
  

闽ICP备14008679号