假设我正在通过尝试最小化损失总和来训练多个任务的模型通过梯度下降。
如果这些损失的规模不同,则范围较大的损失将主导优化。我目前正在尝试通过引入超参数来解决这个问题,并尝试通过调整将这些损失达到相同的规模,即,我尝试最小化在哪里.
但是,我不确定这是否是一个好方法。简而言之,在进行多任务学习时,有哪些应对不同尺度损失的策略?我对深度学习场景特别感兴趣。
假设我正在通过尝试最小化损失总和来训练多个任务的模型通过梯度下降。
如果这些损失的规模不同,则范围较大的损失将主导优化。我目前正在尝试通过引入超参数来解决这个问题,并尝试通过调整将这些损失达到相同的规模,即,我尝试最小化在哪里.
但是,我不确定这是否是一个好方法。简而言之,在进行多任务学习时,有哪些应对不同尺度损失的策略?我对深度学习场景特别感兴趣。
我目前正在研究类似的问题。我觉得你的方法很好。至于设置参数 lambda,由于您使用的是深度神经网络,因此您可以将其设为可学习参数,而不是您设置的超参数。这样,随着两个损失在您的训练迭代/时期内波动,模型将能够相应地调整 lambda 参数。