其他分享
首页 > 其他分享> > 并行多任务学习论文阅读(四):去偏lasso实现高效通信

并行多任务学习论文阅读(四):去偏lasso实现高效通信

作者:互联网

1.难点-如何实现高效的通信

我们考虑下列的多任务优化问题:

\[ \underset{\textbf{W}}{\min} \sum_{t=1}^{T} [\frac{1}{m_t}\sum_{i=1}^{m_t}L(y_{ti}, \langle \bm{w}_t, \bm{x}_{ti} \rangle)]+\lambda \text{pen}(\textbf{W}) \tag{1} \]

这里\(\text{pen}(\mathbf{W})\)是一个用于增强group sparse的正则项。比如。group lasso penalty[1] 使用 \(\text{pen}(\mathbf{W}) = [\sum_{t=1}^T \left(\sum_{j=1}^d{w}_{jt}\right)^2 ]^{1/2}\)(这里\(d\)为特征维度,\(T\)为任务数); \(\text{iCAP}\)使用\(\text{pen}(\mathbf{W}) = \underset{1\leqslant t \leqslant T}{\text{max}}\sum_{j=1}^d|w_{jt}|\) [2][3](类似矩阵的\(\infin\)范数,但把行和列换了一下)。
在分布式的环境中,我们可以按照文章《并行多任务学习论文阅读(二)同步和异步优化算法》(链接:https://www.cnblogs.com/lonelyprince7/p/15487700.html)提到的基于近端梯度的同步/异步优化算法来优化问题\((1)\),但是正如我们在该篇博客中所说的,这种方法需要多轮的通信,时间开销较大。这样,如何实现机器间的有效通信是我们必须要想办法解决该问题。
有学者就在思考,我们可以不可以直接每个任务各自优化各的,直接求解下列的local lasso问题:

\[ \hat{\textbf{w}}_t = \underset{\textbf{w}_t}{\text{argmin}}\frac{1}{m_t}\sum_{i=1}^{m_t}L(y_{ti}, \langle \textbf{w}_t, \textbf{x}_{ti} \rangle)+\lambda_t \text{pen}(\textbf{w}_t) \]

很遗憾,这种方法虽然做到了不同任务优化的解耦,但本质上变成了单任务学习,没有充分利用好多任务之间的联系(须依靠group sparse正则项\(\text{pen}(\textbf{W})\)来实现)。那么,有没有即能够减少通信次数,又能够保存group regularization的基本作用呢?

2. 基于去偏lasso模型的分布式算法

论文《distributed multitask learning》[4]提出的算法介于传统的近端梯度优化算法和local lasso之间,其计算只需要一轮通信,但仍然保证了使用group regularization所带来的统计学效益。 该论文提出的算法描述如下:

去偏lasso算法

这里我们特别说明一下第\(12\)行的操作,这个在master节点的操作充分利用了不同任务参数之间的共享稀疏性。其中,在\((12)\)主节点将接收到的估计量拼接成矩阵\(\hat{\textbf{W}}^u=(\hat{\bm{w}}_1^u, \hat{\bm{w}}_2^u,..., \hat{\bm{w}}_T^u)\)。然后master节点执行hard thresholding以过得\(\mathbf{S}\)的估计量:

\[\hat{S}(\Lambda)=\{j \text{ }| \text{ } ||\hat{\textbf{W}}_j^u||_2 > \Lambda \} \]

参考文献

标签:text,sum,并行,textbf,pen,hat,多任务,lasso
来源: https://www.cnblogs.com/lonelyprince7/p/15535613.html