keras 模型多输出 loss weight metrics 设置

32 篇文章 0 订阅
7 篇文章 0 订阅
 

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

<!--more-->

模型输出

假设模型具有多个输出

  • classify: 二维数组,分类softmax输出,需要配置交叉熵损失

  • segmentation:与输入同尺寸map,sigmoid输出,需要配置二分类损失

  • others:自定义其他输出,需要自定义损失

具体配置

model

  • 变量均为模型中网络层

inputs = [input_1 , input_2]
outputs = [classify, segmentation, others]
model = keras.models.Model(inputs, outputs)

loss

my_loss = {
    'classify': 'categorical_crossentropy',\
    'segmentation':'binary_crossentropy',\
    'others':my_loss_fun}

loss weight

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

metrics

my_metrics ={
    'classify':'acc',\
    'segmentation':[mean_iou,'acc'],\
    'others':['mse','acc']
    }

编译

model.compile(optimizer=Adam(lr=config.LEARNING_RATE), loss=my_loss, loss_weights= my_loss_weights, metrics= my_metrics)
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值