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的正则项(参见联合特征学习(joint feature learning),常为\(l_1/l_2\)、\(l_1/l_{\infin}\)范数的组合,用于只保留对所有任务有用的特征)。比如。在group lasso penalty[1][2] 中使用 \(\text{pen}(\mathbf{W}) =\sum_{t=1}^T||\bm{w}_t||_2 = \sum_{t=1}^T (\sum_{j=1}^d{w}_{jt}^2 )^{1/2}\)(这里\(d\)为特征维度,\(T\)为任务数,\(\bm{w}_t\)为\(\mathbf{W}\)的第\(t\)列); \(\text{iCAP}\)使用\(\text{pen}(\mathbf{W}) = ||\mathbf{W}||_{\infin, 1} = \sum_{j=1}^d||\bm{w}^j||_{\infin}= \sum_{j=1}^d\underset{1\leqslant t \leqslant T}{\text{max}}|w_{jt}|\) [3][4](这里\(\bm{w}^j\)是指\(\mathbf{W}\)的第\(j\)行。注意区分这个和矩阵的\(\infin\)范数,求和与求最大的顺序是不一样的!这里相当于求向量的无穷范数之和),等等。

在分布式的环境中,我们可以按照文章《分布式多任务学习论文阅读(二)同步和异步优化算法》(链接:https://www.cnblogs.com/orion-orion/p/15487700.html)提到的基于近端梯度的同步/异步优化算法来优化问题\((1)\),但是正如我们在该篇博客中所说的,这种方法需要多轮的通信,时间开销较大。这样,如何实现机器间的有效通信是我们必须要想办法解决该问题。

现在的热点解决方案是采用去中心化(decentralize)的思想,即使任务节点绕过主节点,直接利用相邻任务节点的信息,这样可以大大降低通信量[5][6][7]。这种方法我们未来会着重介绍,此时按下不表。

当然,读者可能会思考,我们可以不可以直接每个任务各自优化各的\(l_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 ||\textbf{w}_t||_{1}
\]

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

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

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

这里我们特别说明一下第4行的操作,\(m_t^{-1}\mathbf{X}_t^T(\bm{y}_t - \mathbf{X}_t\hat{\bm{w}}_t)\)

是损失函数的次梯度;矩阵\(\textbf{M}_t\in \mathbb{R}^{d \times d}\)是Hessian矩阵的近似逆,\(m_t\)是任务\(t\)对应的样本个数(事实上原论文假定\(m_1=m_2=...=m_T\));节点\(t\)对应的训练数据是\((\mathbf{X}_t, \bm{y}_t)\)。


这种求去偏lasso估计量的方法由最近关于高维统计[9][10][11]的文章提出,这些论文都企图去除引入算法第3行所示的\(l_1\)正则项所导致的偏差(bias),具体方法是运用\(l_1\)正则损失函数关于\(\bm{w}_t\)的次梯度来构造得到参数成分的无偏估计量\(\hat{\bm{w}}^u_t\)。下面我们会参照去偏估计器的采样分布,但我们的最终目标不同。[9][10][11]这三篇论文构造矩阵\(\mathbf{M}\)的方法不同,本篇论文主要参照论文[11]的方法,复合假设。每个机器使用矩阵\(\mathbf{M}_t=(\hat{\bm{m}}_{tj})_{j=1}^d\),它的行是:

\[\begin{aligned}
& \hat{\bm{m}}_{tj} = \underset{\bm{m}_j \in \mathbb{R}^p}{\text{argmin}} \quad \bm{m}_j^T\hat{\mathbf{\Sigma}_t}\bm{m}_j \\
& \text{s.t.} \quad ||\hat{\mathbf{\Sigma}}_t\bm{m}_j - \bm{e}_j ||_{\infin} \leqslant u.
\end{aligned}
\]

这里\(\bm{e}_j\)是第\(j\)个元素为1其他元素为0的(标准基)向量,\(\hat{\Sigma}_t={m_t}^{-1} \mathbf{X}_t^T\mathbf{X}_t\)。


当每个任务节点得到去偏估计量\(\hat{\bm{w}}_t^u\)后,就会将其送往主节点。在主节点那边,待从所有任务节点收到\(\{\hat{\bm{w}}_t^u\}_{t=1}^T\)后,就来到了第\(12\)行的操作。第\(12\)行的操作在master节点的操作充分利用了不同任务参数之间的共享稀疏性,即主节点将接收到的估计量拼接成矩阵\(\hat{\textbf{W}}^u=(\hat{\bm{w}}_1^u, \hat{\bm{w}}_2^u,..., \hat{\bm{w}}_T^u)\),然后再执行hard thresholding以过得\(\mathbf{S}\)的估计量:

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

参考文献

  • [1] Yuan M, Lin Y. Model selection and estimation in regression with grouped variables[J]. Journal of the Royal Statistical Society: Series B (Statistical Methodology), 2006, 68(1): 49-67.
  • [2] Friedman J, Hastie T, Tibshirani R. A note on the group lasso and a sparse group lasso[J]. arXiv preprint arXiv:1001.0736, 2010.
  • [3] Zhao P, Rocha G, Yu B. The composite absolute penalties family for grouped and hierarchical variable selection[J]. The Annals of Statistics, 2009, 37(6A): 3468-3497.
  • [4] Liu H, Palatucci M, Zhang J. Blockwise coordinate descent procedures for the multi-task lasso, with applications to neural semantic basis discovery[C]//Proceedings of the 26th Annual International Conference on Machine Learning. 2009: 649-656.
  • [5] Zhang C, Zhao P, Hao S, et al. Distributed multi-task classification: A decentralized online learning approach[J]. Machine Learning, 2018, 107(4): 727-747.
  • [6] Yang P, Li P. Distributed primal-dual optimization for online multi-task learning[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2020, 34(04): 6631-6638.
  • [7] Li J, Abbas W, Koutsoukos X. Byzantine Resilient Distributed Multi-Task Learning[J]. arXiv preprint arXiv:2010.13032, 2020.
  • [8] Wang J, Kolar M, Srerbo N. Distributed multi-task learning[C]//Artificial intelligence and statistics. PMLR, 2016: 751-760.
  • [9] Zhang C H, Zhang S S. Confidence intervals for low dimensional parameters in high dimensional linear models[J]. Journal of the Royal Statistical Society: Series B (Statistical Methodology), 2014, 76(1): 217-242.
  • [10] Van de Geer S, Bühlmann P, Ritov Y, et al. On asymptotically optimal confidence regions and tests for high-dimensional models[J]. The Annals of Statistics, 2014, 42(3): 1166-1202.
  • [11] Javanmard A, Montanari A. Confidence intervals and hypothesis testing for high-dimensional regression[J]. The Journal of Machine Learning Research, 2014, 15(1): 2869-2909.
  • [12] 杨强等. 迁移学习[M].机械工业出版社, 2020.

分布式多任务学习论文阅读(四):去偏lasso实现高效通信的更多相关文章

  1. Android学习总结(四)—— Activity和 Service进行通信

    一.Activity 和 Service进行通信的基本概念 前面我们学习我生命周期里面包含了启动和停止服务的方法,虽然服务器在活动里启动,但在启动了服务之后,活动与服务基本就没有什么关系了.我们在活动 ...

  2. 论文阅读笔记四:CTPN: Detecting Text in Natural Image with Connectionist Text Proposal Network(ECCV2016)

    前面曾提到过CTPN,这里就学习一下,首先还是老套路,从论文学起吧.这里给出英文原文论文网址供大家阅读:https://arxiv.org/abs/1609.03605. CTPN,以前一直认为缩写一 ...

  3. 论文阅读:Face Recognition: From Traditional to Deep Learning Methods 《人脸识别综述:从传统方法到深度学习》

     论文阅读:Face Recognition: From Traditional to Deep Learning Methods  <人脸识别综述:从传统方法到深度学习>     一.引 ...

  4. deepin linux学习笔记(四)进不去图形界面怎么办?

    目录 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 更换成lxde桌面 进不去图形界面怎么办? 总结 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息 ...

  5. 【论文笔记】多任务学习(Multi-Task Learning)

    1. 前言 多任务学习(Multi-task learning)是和单任务学习(single-task learning)相对的一种机器学习方法.在机器学习领域,标准的算法理论是一次学习一个任务,也就 ...

  6. [置顶] 人工智能(深度学习)加速芯片论文阅读笔记 (已添加ISSCC17,FPGA17...ISCA17...)

    这是一个导读,可以快速找到我记录的关于人工智能(深度学习)加速芯片论文阅读笔记. ISSCC 2017 Session14 Deep Learning Processors: ISSCC 2017关于 ...

  7. 深度学习论文笔记:Fast R-CNN

    知识点 mAP:detection quality. Abstract 本文提出一种基于快速区域的卷积网络方法(快速R-CNN)用于对象检测. 快速R-CNN采用多项创新技术来提高训练和测试速度,同时 ...

  8. YOLO 论文阅读

    YOLO(You Only Look Once)是一个流行的目标检测方法,和Faster RCNN等state of the art方法比起来,主打检测速度快.截止到目前为止(2017年2月初),YO ...

  9. [DeeplearningAI笔记]ML strategy_2_3迁移学习/多任务学习

    机器学习策略-多任务学习 Learninig from multiple tasks 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.7 迁移学习 Transfer Learninig 神 ...

随机推荐

  1. nginx源码编译安装(详解)

    nginx编译安装 安装步骤: 官网下载合适的版本,建议选择稳定版本. 官网地址:https://nginx.org wget https://nginx.org/download/nginx-1.2 ...

  2. 深入浅出Java内存模型

    面试官:我记得上一次已经问过了为什么要有Java内存模型 面试官:我记得你的最终答案是:Java为了屏蔽硬件和操作系统访问内存的各种差异,提出了「Java内存模型」的规范,保证了Java程序在各种平台 ...

  3. 记一个非常诡异的关于 shared_ptr 的 bug

    问题描述 今天写项目的时候遇见一个特别诡异的 bug,体现在在执行某条语句时,程序会莫名崩溃,并且给出的错误信息也非常难懂,只有一个malloc(): invalid size (unsorted)错 ...

  4. Beta Scrum Meeting汇总

    第0次Alpha Scrum Meeting 第1次Alpha Scrum Meeting 第2次Alpha Scrum Meeting 第3次Alpha Scrum Meeting 第4次Alpha ...

  5. 【做题记录】DP 杂题

    P2577 [ZJOI2004]午餐 $\texttt{solution}$ 想到贪心: 吃饭慢的先打饭节约时间, 所以先将人按吃饭时间从大到小排序. 状态: \(f[i][j]\) 表示前 \(i\ ...

  6. 腾讯云星星海SA2云服务器特点

    一.腾讯云星星海SA2云服务器特点 腾讯云深度定制AMD处理器.AMD EPYC ROME ,频率3.3Ghz.提供超大单核 L3 Cache.(基础频率2.6Ghz,睿频3.3Ghz).企业级服务器 ...

  7. Forest v1.5.12 发布,声明式 HTTP 框架,已超过 1.6k star

    Forest介绍 Forest 是一个开源的 Java HTTP 客户端框架,它能够将 HTTP 的所有请求信息(包括 URL.Header 以及 Body 等信息)绑定到您自定义的 Interfac ...

  8. Linux下向windows传输文件【sz 文件】没有弹框提示下载到什么位置

    Linux环境向windows环境传输文件 security crt工具,同同一个软件,连接不同服务器,有的服务器传送文件没有弹框选择要下载的文件路径,可以在[Options]-[Session Op ...

  9. sudo 命令详解

    在linux系统中,由于root的权限过大,一般情况都不使用它.只有在一些特殊情况下才采用登录root执行管理任务,一般情况下临时使用root权限多采用su和sudo命令. 一.su和sudo命令对比 ...

  10. CommonJS与ES6 Module的使用与区别

    CommonJS与ES6 Module的使用与区别 1. CommonJS 1.1 导出 1.2 导入 2. ES6 Module 2.1 导出 2.2 导入 3. CommonJS 与 ES6 Mo ...