文章目录

  • 0.写在前面
  • 1.背景介绍
    • ① 概念解释
    • ② 应用背景
    • ③ 小结
  • 2.研究动态与现状
    • ①分布式优化算法的数学模型
    • ②分布式优化算法的分类
    • ③ 有中心节点VS无中心节点
    • ④有向图和无向图
    • ⑤静态图和时变图
    • ⑥同步更新和异步更新
    • ⑦次线性收敛和线性收敛
    • ⑧小结
  • 3.写在最后
  • 4.参考文献

0.写在前面

注:图床使用的是github,所以如果图片加载不出来,请打开小飞机。

这是在B站看的一则视频。

内容是【人工智能前沿学生论坛 第十期】

清华大学博三的张家绮学长做的关于一个分布式优化算法及其应用的分享

内容主要分四个小节

  • 背景介绍
  • 研究现状与动态
  • 我们的工作
  • 集中式优化和随机梯度

这里对前面两小节做了一个自己的记录,主要内容为分布式优化算法的背景和研究现状。

通过这篇博文可以简单的了解一下

  • 什么是多自主体控制系统?
  • 什么是分布式优化问题?
  • 分布式优化算法的应用背景
  • 分布式优化算法中经典的算法
  • 分布式优化算法研究动态

1.背景介绍

① 概念解释

首先来理解一下,多自主体系统(Multi-Agent System) 又可以叫做多智能体系统。

关于自主体的概念可能会比较广,例如,

  • 在一架无人机编队中,每一架无人机可以看做一个自主体(agent)
  • 在智能电网中,每一个供电站可以看做一个自主体(agent)
  • 在深度学习中,每一个TPU/CPU/服务器可以看做一个自主体(agent)

(张量处理器(英语:tensor processing unit,缩写:TPU)是Google为机器学习全定制的人工智能加速器专用集成电路,专为Google的深度学习框架TensorFlow而设计。)


自主体之间通过协作来完成一个给定的任务

这里的协作可以理解为互相之间进行通信或者交换信息。

这里的给定的任务在机器学习中可以理解为优化神经网络的任务。它可以理解为一个分布式优化问题

在这个分布式优化问题中,单个自主体智能获得局部信息,自主体需要通过相互交换信息来实现全局目标

② 应用背景


​ 可以看到分布式优化算法有着许多的应用背景,比如在控制领域

以无人机编队举例来说,

如果一个无人机编队想要排成一个五角星队形,而他没有一个中心控制节点。

那么一架无人机想要控制自己的位置,可以通过他身边邻近的无人机的位置信息来做出决策,决定自己的位置。


分布式优化算法近年来机器学习和人工智能领域得到了广泛的运用:

比如以这个边缘计算为例:

阿里云最近发布的这个边缘计算产品(Link Edge)被誉为物联网的下一个风口

它的每一个终端节点都不靠近数据中心,因此它的每一个终端节点都必须能够自主的做出决策

这就很符合分布式优化算法的应用场景。


机器学习的训练中,分布式优化也非常常见。

目前的神经网络,机器学习等对计算资源的消耗比较高。

单个处理器往往无法解决。我们一般会采用多个GPU或多个CPU的方式来加速计算。

​ 可以看到用多个GPU,或多个CPU分布式并行的进行计算可以大幅的减少计算的时间。

③ 小结

所谓分布式优化,

我们的目的是优化。比如我们要优化一个神经网络。

但我们选择的方式是一种分布式处理方式。

为什么要采用这种方式呢?有两方面的原因:

  • 一个是实际物理环境中的约束

    这个在控制领域比较常见,比如前面所说的无人机编队。

  • 另一个是为了加速优化过程

    这个在机器学习过程中比较常见

前面所说的多自主体系统(Multi-Agent System)就是分布式优化算法的实现载体及应用对象

分布式优化算法的设计目标以及研究核心可以总结为四个字多 快 好 省

  • 多:自主体个数多

    比如在无人机编队中,分布式优化算法需要影响无人机编队中的每一架无人机

    比如在机器学习中,我们可以用几十个,几百个甚至上千个CPU GPU来加速训练

  • 快:优化收敛速度要快

    比如在机器学习中,我们使用分布式优化算法的目的就是为了让训练速度更快

  • 好:算法应用场景多

    这个应用场景一会会介绍。这里比如说一些agent之间通信可能是多边的,或者是单向的。

  • 省:通信等资源消耗少

    因为分布式优化算法必然会涉及到许多自主体,所以单个自主不能消耗过多的资源,不然从总体上会导致不必要的资源消耗太大。

2.研究动态与现状

①分布式优化算法的数学模型

分布式优化算法主要解决这样一个形式的优化问题:类似于一些子目标函数的求和形式。

例如机器学习中,每个f(x)f(x)f(x)可能对应一个样本的损失函数。

但与传统情况不同的是,我们这里的每个自主体都可能只知道其自身的子目标函数,

其中每个自主个体都有一个其自身的副本xix_ixi​这个副本是不能全局共享的。


我们可以利用这个图来表示这个主体之间的通信拓扑:

  • 每个自主体对应一个节点

  • 两个自主体可以交换信息对应图中两个节点存在一条边

    为什么不能两两互相通信呢?因为当网络非常大的时候,两两互相通信对资源消耗是非常大的,比如你有nnn台处理机,

    那么在来两两互相通信的时候你需要消耗n(n−1)2\frac{n(n-1)}22n(n−1)​ 次资源。

  • 为了降低这种资源消耗,我们设计每个个体只允许与它的邻居(它的相邻节点)进行通信

②分布式优化算法的分类

当前分布式优化算法主要分成以下几类:

其中左边黑色字体代表相对简单的情况,蓝色字体代表相对困难的情况。

③ 有中心节点VS无中心节点

在有中心节点的情况中:

中心节点就是可以和其他所有节点都能通信的节点。我们一般把这个中心节点叫做master

如在机器学习中,每个节点都可以将自己的梯度信息发送给中心节点,这样中心节点就可以获得所有节点的梯度信息。然后再由中心节点来修改决策变量,并将修改好的决策变量发送给各个服务器。

然后不断重复上述过程来达到加速计算的目的。

在没有中心节点的情况:

整个服务器拓扑类似于一个环状。

每个服务器智能将自己的梯度信息发送给自己的邻居,我们一般发送一个状态,状态是指自己对决策变量副本的一个估计,然后他接收邻居的状态,再根据邻居的状态和自身的梯度来更新自己的一个状态。

可以发现,无中心节点的情况每个节点只需要跟自己的邻居交互。

④有向图和无向图

⑤静态图和时变图

⑥同步更新和异步更新

⑦次线性收敛和线性收敛

⑧小结

3.写在最后

第一小节主要内容为背景介绍,主要从当前的一些应用场景去了解一下什么多智能体系统,以及在以多智能体系统为载体来运用分布式优化算法。写的较为通俗易懂。

第二小节涉及到一些偏专业的知识,在此并不做太过深入的了解。

总体来说第二小节了解三方面的内容,

  1. 有中心节点、无中心节点的概念;有向图无向图的概念;静态图时变图的概念;同步更新异步更新的概念;次线性收敛线性收敛的概念
  2. 不同算法之间的比较(见小结中的PPT图片);算法的应用场景与出处。
  3. 分布式优化算法设计目标(小结中的PPT图片);

4.参考文献

bilibili 人工智能 | 分布式优化算法及其在多智能体系统与机器学习中的应用

知乎 分布式优化算法及其在多智能体系统与机器学习中的应用

分布式优化算法的背景,应用场景,研究动态相关推荐

  1. 人工智能 自动规划 ppt 蔡自兴_分布式优化算法及其在多智能体系统与机器学习中的应用【附PPT与视频资料】...

    关注微信公众号:人工智能前沿讲习对话框回复"张家绮"获取PPT与视频资料视频资料可点击→播放视频查看 导读 分布式优化理论和算法近年来在多智能体系统中得到了广泛的发展与应用,目前在 ...

  2. 【大论文】可扩展机器学习的并行与分布式优化算法综述_亢良伊2017

    一.基础知识: 1.目标函数 机器学习要优化的目标函数一般表现为一下形式: 函数J(θ)为目标函数,f为表示真实值与拟合值之差的损失函数,r(θ)为正则项(防止过拟合问题,主要分为L1正则项.L2正则 ...

  3. 蚂蚁金服:超大规模分布式计算系统 + 超大规模分布式优化算法

             人工智能大数据与深度学习  公众号: weic2c 近年来,随着"大"数据及"大"模型的出现,学术界和工业界对分布式机器学习算法引起了广泛关注 ...

  4. 分布式优化算法学习(一)

    分布式优化算法学习(一) 分布式优化简介 分布式协同优化与传统集中式优化相比较具有如下特点: 与优化问题相关的信息分布存储在每个智能体中, 因此更隐私; 每个智能体不需要将数据传输到中心节点, 只需要 ...

  5. 灰狼优化算法训练多层感知神经网络研究(Matlab代码实现)

  6. 基于变化点 copula 优化算法中的贝叶斯研究(Matlab代码实现)

  7. Paxos、Raft分布式一致性算法应用场景

    本文是Paxos.Raft分布式一致性最佳实践的第一篇文章,说明分布式一致性问题与分布式一致性算法的典型应用场景,帮助后面大家更好的理解Paxos.Raft等分布式一致性算法. 一.分布式一致性 (C ...

  8. MATLAB中果蝇味道浓度判定函数,基于果蝇优化算法对栓接结合部间距的优化方法与流程...

    本发明涉及机床基础制造领域,特别是涉及基于果蝇优化算法优化机床结合部螺栓之间间距的研究. 背景技术: 栓接结合部作为组成机床的基本部件,由于栓接结构在机床的组装和拆卸过程中的方便.简易,而被广泛用在机 ...

  9. 【智能优化算法-蒲公英优化器】基于蒲公英优化器求解单目标优化问题附matlab代码

    1 内容介绍 群智能优化算法作为当前优化算法中的一个主要研究热点,经过近年的发展,已经发展为较为新颖的演化计算技术,受到越来越多不同领域研究工作者的关注.群智能优化算法比传统优化方法求解各种复杂优化问 ...

最新文章

  1. 得分碾压人类的NLP系统诞生了,微软创CoQA挑战新纪录!
  2. Entity Framework 的 edmx xml 文档解析
  3. 《C++ Primer》13.1.2节练习
  4. mpvue v-html解决方案,mpvue开发小程序所遇问题及h5转化方案
  5. 【嵌入式Linux】嵌入式项目实战之七步从零编写带GUI的应用之显示系统、输入系统、文字系统
  6. [Ext JS 7]ClassRequire错误解决
  7. 在CF卡上建立文件系统和安装引导加载程序
  8. android volley 请求参数,android – Volley – 如何发送DELETE请求参数?
  9. DVM 和 JVM 的区别?
  10. HttpServlet介绍
  11. 利用图像来测量的技术——数字图像相关法(DIC)
  12. MTK平台创建Vendor方法(最大化复用代码)
  13. 流水线中数据相关的理解(RAW、WAR和WAW)
  14. 辛普森复合求积公式matlab,MATLAB数值分析实验二(复合梯形、辛普森和龙贝格求积,以及二重积分计算等).doc...
  15. 多传感器数据融合算法综述
  16. 从信息泄露到权限后台
  17. 众人给诺基亚支招 Android提议何时了?
  18. SpringBoot - OAuth2第三方登录之新浪微博登录
  19. python:chatGPT 写一个趋势跟踪策略 量化交易程序
  20. 岛屿类问题通用解法与DFS框架

热门文章

  1. firebase 推送_使用Firebase Cloud Messaging发送推送通知
  2. php 闭合标记,什么叫自闭合标签?自闭标签有什么用
  3. 傅里叶变换和拉普拉斯变换的物理解释及区别
  4. iphoneXR的tabbar底部图片的适配
  5. 计算机主板维修层次,计算机主板维修
  6. 靠一碗面一年三轮融资受资本热捧,张拉拉真的高枕无忧?
  7. Docker容器化技术笔记
  8. OpenBmc开发错误6:gyp ERR! configure error gyp ERR! stack Error: socket hang up
  9. Q-Learning的学习及简单应用
  10. 2003-2019年A股上市公司名义所得税率(Wind)