mindscience.common.MTLWeightedLoss

class mindscience.common.MTLWeightedLoss(num_losses, bound_param=0.0)[源代码]

自动计算基于 MTL 策略的加权多任务损失。更多信息请参考 MTL weighted losses

参数:
  • num_losses (int) - 多任务损失的数量,应为正整数。

  • bound_param (float, 可选) - 当仅有的边界值高于给定常数时,用于对权重和正则项进行平方加和。默认 0.0

输入:
  • input (tuple[Tensor]) - 输入数据。

输出:
  • output (Tensor) - 多任务加权策略下的损失值。

样例:

>>> import numpy as np
>>> from mindscience.common import MTLWeightedLoss
>>> import mindspore
>>> from mindspore import Tensor
>>> net = MTLWeightedLoss(num_losses=2)
>>> input1 = Tensor(1.0, mindspore.float32)
>>> input2 = Tensor(0.8, mindspore.float32)
>>> output = net((input1, input2))
>>> print(output)
2.2862945