并行多任务学习论文阅读(三):运用代理损失进行任务分解

1 代理损失函数——一种并行化技巧

我们在本系列第一篇文章《并行多任务学习论文阅读(一)多任务学习速览》(链接:https://www.cnblogs.com/lonelyprince7/p/15481054.html)中提到,实现多任务学习的一种典型的方法为增加一个正则项[1][2][3]

\[\begin{aligned} \underset{\textbf{W}}{\min} & \sum_{t=1}^{T} [\frac{1}{m_t}\sum_{i=1}^{m_t}L(y_i^t, f(\bm{x}_i^t; \bm{w}_t))]+\lambda g(\textbf{W})\\ & = \sum_{t=1}^{T} \mathcal{l}_t(\bm{w}_t)+\lambda g(\textbf{W})\\ & = f(\textbf{W}) + \lambda g(\textbf{W}) \end{aligned} \tag{1} \]

目标函数中的\(f(\mathbf{W})\)很容易并行化,但是一般\(g(\mathbf{W})\)就很难并行化了,那么如何解决这个问题呢?答案是运用一个可以分解的代理损失函数来替换掉原始的目标函数。我们接下来就以论文《Parallel Multi-Task Learning》[4](zhang 2015c等人)为例来介绍该思想。该论文MTLR模型[5](zhang 2015a)的基础上利用FISTA算法设计代理损失函数,该代理函数可以依据学习任务进行分解,从而并行计算。

2 基于正则化的多任务学习(MTLR)算法回顾

给定\(T\)个任务\({\{\mathcal{T}_i\}}_{i=1}^T\),每个任务都有一个训练集\(\mathcal{D}_t = {\{(\bm{x}_{i}^t, y_{i}^t)}_{i=1}^{m_t}\}\)。我们现在考虑以下形式的目标函数:

\[\begin{aligned} \underset{\textbf{W}, b}{\min} & \sum_{t=1}^{T} [\frac{1}{m_t}\sum_{i=1}^{m_t}L(y_i^t, \langle \bm{w}_t, \phi(\bm{x}_{i}^t)\rangle+b) ]+ \frac{\lambda}{2}\text{tr}(\textbf{W}\Omega\mathbf{W}^T)\\ \end{aligned} \tag{2} \]

这里的\(\phi(\cdot)\)是一个和核函数\(k(\cdot, \cdot)\)相关的特征映射,这里\(\phi(\bm{x}_1)^T\phi(\bm{x}_2)=k(\bm{x}_1, \bm{x}_2)\)\(L(\cdot, \cdot)\)是损失函数(比如对于分类问题的\(\text{hinge loss}\) 和对于回归问题的 \(\epsilon \text{-insentive loss}\)。式\((2)\)的第一项是所有任务的经验损失函数,第二项基于\(\mathbf{W}和\Omega\)来建模任务间的关系。根据论文[5]\(\Omega\)是一个正定(Positive definite, PD)矩阵,它用来描述任务两两之间关系的精度矩阵(协方差矩阵\(\Sigma\)的逆)。如果损失函数是凸的且\(\Omega\)正定,那么目标函数\((2)\)关于\(\mathbf{W}和\bm{b}\)是联合凸(jointly convex)的。为了体现目标函数\((2)\)和单任务核方法的关系,我们这里只考虑\(\Omega\)是对角矩阵的情况。在此情况下,任务两两之间没有关系,问题\((2)\)也退化为了多个单任务模型(每个模型对应一个任务)。因此,问题\((2)\)可以被视为单任务正则化模型的多任务扩展。在问题\((2)\)中,\(\frac{\lambda}{2}\text{tr}(\textbf{W}\Omega\mathbf{W}^T)\)不影响我们的并行算法设计,这是非常好的。而问题\((2)\)总是能够加速问题的学习,当使用特定的优化程序如论文[5]和论文[6]一样,根据过去的研究这些方法由很快的收敛率,不管正则项是什么。
在问题\((2)\)中有许多损失函数可供使用,比如\(\text{hinge loss}\)\(\epsilon-\text{insensitive loss}\)\(\text{square loss}\),下面我们主要就采用这三种损失函数,后面我们会分别给出问题\((2)\)关于这三个损失函数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值