Multi-Task Learning as Multi-Objective Optimization

less than 1 minute read

Published:

[TOC]

URL: http://arxiv.org/abs/1810.04650

TL;DR

(Takeaway message for readers) 本文针对多任务学习中的 hard sharing 类任务,将 Multi-task learning 转化为一个 Multi-objective Optimization 的问题,并提出了该优化目标的 upper bound,通过利用该 upper bound 做近似,可以极大的提高计算效率;本文通过跟 static scaling、GradNorm、Uncertainty weighting 等方法在 MultiMNIST、MultiLabel、CityScape Multi Task 任务上均取得了由于其他方法的性能

问题定义

Multi task 的 loss 一般这样定义: mtl 其中,theta_sh 和 theta_t 分别代表共享的参数和 task specific 的参数部分, ct 是各个 task 的权重。

MTL can be formulated as multi-objective optimization: optimizing a collection of possibly conflicting objectives. We specify the multi-objective optimization formulation of MTL using a vector-valued loss L: eq2

优化上面这个方程的目标就是达到 Pareto optimality. def1

基于此作者提出了 Multiple Gradient Descent Algorithm 使用 KKT 条件约束 shared 和 task-specific parameters kkt

Any solution that satisfies these conditions is called a Pareto stationary point.

本文最终要解的是下面这个优化问题: eq3

然后提出 grad 的 upper bound: app eq6

从而可以得到最终的 approximation opjective: mgda

Results

tb2 tb1 fig2