CN111698327B - 基于聊天室架构的分布并行强化学习模型训练方法及系统 - Google Patents
基于聊天室架构的分布并行强化学习模型训练方法及系统 Download PDFInfo
- Publication number
- CN111698327B CN111698327B CN202010537848.3A CN202010537848A CN111698327B CN 111698327 B CN111698327 B CN 111698327B CN 202010537848 A CN202010537848 A CN 202010537848A CN 111698327 B CN111698327 B CN 111698327B
- Authority
- CN
- China
- Prior art keywords
- model
- message
- nodes
- node
- chat room
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本发明公开一种基于聊天室架构的分布并行强化学习模型训练方法,包括根据消息中间件,构建聊天室架构的消息共享机制;将预先设置的强化学习模型的局部模型分别部署在各个所述节点中,通过各个所述节点产生的训练样本分别对各个所述节点中部署的局部模型进行训练,得到各个局部模型的更新参数;将所述更新参数保存为参数消息,并将所述参数消息利用所述消息中间件共享至所述聊天室架构中的其他所述节点;获取其他所述节点中的参数消息,将从其他所述节点中获取的参数消息与当前节点的参数消息进行聚合,得到训练后的强化学习模型。与现有技术相比,本发明提供的训练方法可有效克服现有的分布并行强化学习算法负载不均衡、单点失效等缺陷。
Description
技术领域
本发明涉及强化学习技术领域,尤其是一种基于聊天室架构的分布并行强化学习模型训练方法及系统。
背景技术
强化学习算法由于其在可靠性、计算速度和资源利用上的优越性,已经在强化学习领域有着越来越多的探索与应用,然而强化学习算法的训练过程需要大量的训练样本,并且模型参数的收敛速度缓慢,影响了强化学习算法的实用价值。为了提高强化学习的收敛速度,一种常见的分布并行途径是利用大量的节点并行生成训练样本,并推送给训练节点,这种方式提升了样本生成速度,相对于单个节点而言能够提升样本的供给效率。然而,模型参数训练过程仍然受限于单个节点的处理速度,收敛速度仍然较慢;另一种常见的分布并行途径是将模型训练分布到多个节点,每个节点利用不同的样本更新模型参数,并将更新后的模型参数推到一个中心节点,中心结点聚合每个节点的模型参数,并重新推送给各个节点,这种方式下中心节点的负载较重,并且容易产生单点失效问题。
发明内容
本发明提供一种基于聊天室架构的分布并行强化学习模型训练方法及系统,用于克服现有的分布并行强化学习算法负载不均衡、单点失效等缺陷。
为实现上述目的,本发明提出一种基于聊天室架构的分布并行强化学习模型训练方法,包括:
根据消息中间件,构建聊天室架构的消息共享机制;所述消息共享机制是所述聊天室架构中多个节点通过所述消息中间件进行消息共享;
将预先设置的强化学习模型的局部模型分别部署在各个所述节点中,通过各个所述节点产生的训练样本分别对各个所述节点中部署的局部模型进行训练,得到各个局部模型的更新参数;
将所述更新参数保存为参数消息,并将所述参数消息利用所述消息中间件共享至所述聊天室架构中的其他所述节点;
获取其他所述节点中的参数消息,将从其他所述节点中获取的参数消息与当前节点的参数消息进行聚合,得到训练后的强化学习模型。
为实现上述目的,本发明还提出一种基于聊天室架构的分布并行强化学习模型训练系统,包括:
机制构建模块,用于根据消息中间件,构建聊天室架构的消息共享机制;所述消息共享机制是所述聊天室架构中多个节点通过所述消息中间件进行消息共享;
参数更新模块,用于将预先设置的强化学习模型的局部模型分别部署在各个所述节点中,通过各个所述节点产生的训练样本分别对各个所述节点中部署的局部模型进行训练,得到各个局部模型的更新参数;
消息共享模块,用于将所述更新参数保存为参数消息,并将所述参数消息利用所述消息中间件共享至所述聊天室架构中的其他所述节点;
聚合模块,用于获取其他所述节点中的参数消息,将从其他所述节点中获取的参数消息与当前节点的参数消息进行聚合,得到训练后的强化学习模型。
与现有技术相比,本发明的有益效果有:
本发明提供的基于聊天室架构的分布并行强化学习模型训练方法,根据消息中间件,构建聊天室架构的消息共享机制;所述消息共享机制是所述聊天室架构中多个节点通过所述消息中间件进行消息共享;将预先设置的强化学习模型的局部模型分别部署在各个所述节点中,通过各个所述节点产生的训练样本分别对各个所述节点中部署的局部模型进行训练,得到各个局部模型的更新参数;将所述更新参数保存为参数消息,并将所述参数消息利用所述消息中间件共享至所述聊天室架构中的其他所述节点;根据所述更新参数和从其他所述节点中获取的参数消息进行聚合,得到训练后的强化学习模型。与现有技术相比,本发明提供的训练方法采用分布式消息中间件构建聊天室架构的消息共享机制,实现了1跳步的p2p网络结构,即每个节点能够在1个跳步接收到聊天室架构中所有其他节点的模型更新消息,覆盖面高,能够实现模型的最快收敛。由于本发明实现了多节点的异步模型交换,避免了同步延迟,每个节点都通过聊天室架构聚合其他节点的参数,架构整体的稳定性高、负载均衡,每个节点都能有效,还可以随时增加节点,不会因为单个节点训练无效造成整个分布式架构中的模型训练效果差。因此可有效克服现有的分布并行强化学习算法负载不均衡、单点失效等缺陷。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明提供的基于聊天室架构的分布并行强化学习模型训练方法的流程图;
图2为本发明提供的基于聊天室架构的分布并行强化学习模型训练方法的架构图;
图3为本发明提供的基于聊天室架构的分布并行强化学习模型训练方法的泳道图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
节点,节点通过消息中间件进行交互,节点可以是个人计算机、服务器等。
本发明提出一种基于聊天室架构的分布并行强化学习模型训练方法,如图1~3所示,包括:
101:根据消息中间件,构建聊天室架构的消息共享机制。
消息共享机制是聊天室架构中多个节点通过消息中间件进行消息共享。
消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。
聊天室架构实现了多个节点之间all-to-all的异步模型交换。每个节点通过聚合表现更好的其他节点的模型作为新的局部模型。通过设置节点的不同主题,还可以支持不同主题下的节点间的模型聚合,使通过本发明训练方法获得的强化学习模型能很好地应用到不同主题的场景内。这种方式可以消除同步延迟,消除单点性能瓶颈,消除单点失效。
102:将预先设置的强化学习模型的局部模型分别部署在各个节点中,通过各个节点产生的训练样本分别对各个节点中部署的局部模型进行训练,得到各个局部模型的更新参数。
强化学习模型的局部模型分别部署在主题相同的各个节点中,以实现各个局部模型的同时训练。
将强化学习模型划分为多个部分,每个部分为一个局部模型。将强化学习模型划分为多个不同的部分并将该不同的部分分别部署在各个节点中,不同节点并行训练以实现多个局部模型的同时训练,以加速模型的训练速度。
103:将更新参数保存为参数消息,并将参数消息利用消息中间件共享至聊天室架构中的其他节点。
参数消息为字典格式,包括learner模型的深拷贝和learner模型的当前得分。字典格式具体为key-value,key=ID,value=更新参数。
聊天室架构中包含多个同主题的节点,其中一个节点的参数消息将利用消息中间件共享至聊天室架构中的其他节点,同时该节点也将通过消息中间件接收其他节点在聊天室架构中发布的消息。
104:获取其他所述节点中的参数消息,将从其他所述节点中获取的参数消息与当前节点的参数消息进行聚合,得到训练后的强化学习模型。
多个同主题的节点,每个节点的训练过程是并行的,每个节点的训练样本也可能存在差异,这将导致每个节点训练获得的局部模型参数不同,因此需要将其中一个节点的更新参数与从其他节点中获取的参数消息进行聚合,以获得一个精度更高的强化学习模型。
每个节点都将进行步骤104,最终每个节点都聚合得到一个训练后的强化学习模型,同主题内节点得到的所有强化学习模型具有相同功能,以供具体场景应用的调取与使用。
本发明提供的训练方法采用分布式消息中间件构建聊天室架构的消息共享机制,实现了1跳步的p2p网络结构,即每个节点能够在1个跳步接收到聊天室架构中所有其他节点的模型更新消息,覆盖面高,能够实现模型的最快收敛。由于本发明实现了多节点的异步模型交换,避免了同步延迟,每个节点都通过聊天室架构聚合其他节点的参数,架构整体的稳定性高、负载均衡,每个节点都能有效,还可以随时增加节点,不会因为单个节点训练无效造成整个分布式架构中的模型训练效果差。因此可有效克服现有的分布并行强化学习算法负载不均衡、单点失效等缺陷。
在其中一个实施例中,对于步骤101,根据消息中间件,构建聊天室架构的消息共享机制的步骤,包括:
001:根据消息中间件,构建多个节点通过消息中间件在聊天室架构的通信总线;通信总线用于多个节点之间消息的发布与接收;
002:根据通信总线,构建聊天室架构的消息共享机制;消息共享机制是聊天室架构中多个节点通过消息中间件进行消息共享;
其中,发布消息采用aiozyre库中的接口shout,接收消息采用aiozyre库中的接口recv。
本实施例中,聊天室架构使用单独的进程,通过消息中间件使用发布订阅模式从而建立聊天室架构内的通信总线。
聊天室架构中的每个节点的标识是其id(身份标识),节点发送的消息是字典格式,id作为消息的key(索引)。
节点加入到聊天室架构的过程为:将节点的id输入聊天室架构内,若通信总线内有其他节点接收到该id发送的消息,并返回成功提示,则说明该节点加入聊天室架构成功。
在某个实施例中,对于步骤101,聊天室架构包括多个主题;
根据消息中间件,构建聊天室架构的消息共享机制,还包括:
根据消息中间件,构建聊天室架构中同一主题下多个节点的消息共享机制。
多个节点订阅同一主题,以实现在同一主题下进行all-to-all的消息发布与接收。同主题内节点得到的所有强化学习模型具有相同功能,以保证通过本发明训练方法获得的强化学习模型能很好地应用到该主题的场景内。
在另一个实施例中,根据消息中间件,构建聊天室架构中同一主题下多个节点的消息共享机制的步骤,包括:
将节点的id输入主题的主题列表;
当输出节点加入主题列表成功的反馈信息,或,主题下其他节点接收到节点发布的消息时,确定节点加入主题列表成功。
在聊天室架构中,节点将向其他节点发布消息并接收其他节点发布的消息;对接收的消息进行判断,若接收的消息来源id属于主题列表,则保存接收的消息,否则丢弃接收的消息。
在下一个实施例中,对于步骤102,局部模型包括多个actor模型和learner模型;设置多个actor模型以加速训练样本的生成速度;
将预先设置的强化学习模型的局部模型分别部署在各个节点中,包括:
将预先设置的强化学习模型的actor模型和learner模型分别部署在各个述节点中;actor模型用于产生训练样本,learner模型用于更新局部模型的模型参数。
不同节点的actor模型产生的训练样本可能相同、可能不相同,不同节点的actor模型彼此独立。
actor模型产生的训练样本用于对learner模型进行训练,以实现局部模型的本地更新。
节点用id标识本节点的learner模型,将参数消息发布在聊天室架构中。
在其中一个实施例中,对于步骤102,通过各个节点产生的训练样本分别对各个节点中部署的局部模型进行训练,得到各个局部模型的更新参数的步骤,包括:
201:利用节点id及模型配置参数分别初始化部署在各个节点中的actor模型和learner模型;
节点id用于标注各个actor模型和learner模型。
某个实施例中actor模型的配置参数包括:
游戏名称,默认值为SpaceInvadersNoFrameskip-v0;
随机种子,默认值为1;
用于同一个learner模型更新的actor模型数量,默认值为5;
进行强化学习训练的设备,默认值为GPU;
训练中奖励的折扣因子,默认值为0.99;
存放训练日志的文件位置,默认值为/tmp/gym/;
对应learner模型的id。
learner模型的配置参数包括模型状态空间大小,learner模型通过传入的模型状态空间大小选择不同的网络架构进行初始化,网络架构包含卷积神经网络CNNBase和多层神经网络MLPBase。
除了网络架构作为参数传递给learner模型,learner模型的配置参数还包括:
值函数损失系数,默认值为0.5;
熵系数,默认值为0.01;
学习率,默认值为7e-4;
优化器epsilon系数,默认值为1e-5;
优化器alpha系数,默认值为0.99;
梯度的最大范数,默认值为0.5;
learner模型的id。
某个实施例中,卷积神经网络CNNBase的结构是四层。第一层是卷积层,包含非线性转化激活函数ReLu,其中图像输入的通道数是待传入参数,输出的通道数为32,卷积核的大小为8×8,滑动步长为4;第二层是卷积层,包含非线性转化激活函数ReLu,其中图像输入的通道数是32,输出的通道数为64,卷积核的大小为4×4,滑动步长为2;第三层是卷积层,包含非线性转化激活函数ReLu和扁平化过程Flatten,其中图像输入的通道数是64,输出的通道数为32,卷积核的大小为3×3,滑动步长为1;最后一层是全连接层,以32×7×7的大小输入,经过全连接层后输出的张量形状是hidden_size,大小为512。
某个实施例中,多层神经网络MLPBase的结构是两层。第一层是全连接层,包含非线性转化激活函数Tanh,其中全连接层输入大小是待传入参数,经过全连接层后输出的张量形状是hidden_size,大小为64;第二层是全连接层,包含非线性转化激活函数Tanh,其中全连接层以hidden_size的大小输入,经过全连接层后输出的张量形状是hidden_size。
网络架构的配置包括:来自于actor模型初始化结果的状态空间,动作空间,网络是否重复的标志。
202:向actor模型输入设置参数,获得训练样本;
某个实施例中,设置参数包括:
更新步数,默认值为5;
用于同一个learner模型更新的actor模型数量;
状态空间形状;
动作空间;
当前网络架构的重复网络隐藏层大小。
向actor模型输入设置参数后,actor模型将根据初始化后的actor模型和learner模型产生训练样本。
每个节点中,各个actor模型产生的训练样本将被统一保存到rollouts训练样本集中。训练样本集的内容包括:状态;重复网络隐藏层大小;动作;动作分布概率;值函数;奖励;记录完整episode过程正常结束的张量;记录完整episode过程非正常结束的张量。其中,完整episode就是actor模型根据当前的策略执行一系列动作到结束的序列。
203:利用训练样本训练learner模型,获得各个局部模型的更新参数。
在某个实施例中,利用训练样本训练learner模型,获得各个局部模型的更新参数的步骤,包括:
分别以各个节点的训练样本作为输入,利用A2C算法进行多线程的各个节点的learner模型训练,每个节点的learner模型并行训练,以加速模型的训练。
A2C算法全称为优势动作评论算法,算法整体分为策略函数与评价函数。策略函数经常用神经网络来表示,因此称为策略网络。评价函数,也常常用神经网络进行逼近,又称为评价网络。两个模型同时进行训练,相互提升模型效果。A2C算法使用优势函数代替评价网络中的原始回报,可以作为衡量选取动作值和所有动作平均值好坏的指标。优势函数指动作值函数相比于当前状态值函数的优势。
每个节点的learner模型进行训练,在learner模型的最大更新次数内,线性降低学习率。
最大更新次数由最大训练步数被更新步数,同一个learner模型更新的actor模型数量和节点数量三者的积整除得到。其中,最大训练步数,默认值为10e5;节点数量,默认值为1。
每一次更新的更新步数内,在rollouts内抽取当前learner模型的动作并观察奖励和下一状态。更新步数完成后,若完整episode过程正常结束的张量或者完整episode过程非正常结束的张量显示episode过程结束,则清除观察记录,记录抽取的动作,奖励和下一状态。所抽取的动作指智能体在当前策略中所采取的动作,所有能采取的动作构成动作空间。当执行某个动作后,当前状态会以某种概率转移到下一状态;
将rollouts中最后一个动作的状态obs,重复网络隐藏层大小,记录完整episode过程正常结束的张量作为参数传入当前网络架构,计算当前learner模型的下一个值函数;
使用rollouts计算当前奖励值,采用折扣累积奖励方式。计算当前奖励值的参数包括下一个值函数;是否使用广义优势估计的标志,默认值为False;奖励的折扣因子;广义优势估计的系数,默认值为0.95;是否考虑时间限制的标志,默认值为False;
使用rollouts计算值函数的损失函数,动作损失函数,通过优化器RMSprop优化损失函数进行learner模型参数的更新;
将learner模型的深拷贝和模型的当前得分保存为字典格式,作为节点的一次消息。
在下一个实施例中,对于步骤103,将更新参数保存为参数消息,并将参数消息利用消息中间件共享至聊天室架构中的其他节点的步骤,包括:
301:将更新参数保存为字典格式的参数消息,参数消息包括learner模型的深拷贝和learner模型的当前得分;字典格式为key-value,key=id,value=更新参数;
302:将参数消息缓存到本地队列;
303:将本地队列中的参数消息按先入先出的顺序利用消息中间件共享至聊天室架构中的其他节点。
在下一个实施例中,对于步骤104,获取其他所述节点中的参数消息,将从其他所述节点中获取的参数消息与当前节点的参数消息进行聚合,得到训练后的强化学习模型,包括:
获取其他所述节点中的参数消息;
将获取的其他所述节点中的参数消息与当前节点的参数消息进行聚合,形成当前节点的优先级队列;
从所述优先级队列中选取得分高于当前所述节点中部署的局部模型得分的局部模型,对选取的局部模型的参数取平均值,得到训练后的强化学习模型。
优先级队列中的参数消息为字典格式,包括learner模型的深拷贝和learner模型的当前得分。
本发明还提出一种基于聊天室架构的分布并行强化学习模型训练系统,包括:
机制构建模块,用于根据消息中间件,构建聊天室架构的消息共享机制;消息共享机制是聊天室架构中多个节点通过消息中间件进行消息共享;
参数更新模块,用于将预先设置的强化学习模型的局部模型分别部署在各个节点中,通过各个节点产生的训练样本分别对各个节点中部署的局部模型进行训练,得到各个局部模型的更新参数;
消息共享模块,用于将更新参数保存为参数消息,并将参数消息利用消息中间件共享至聊天室架构中的其他节点;
聚合模块,用于根据更新参数和从其他节点中获取的参数消息进行聚合,得到训练后的强化学习模型。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。
Claims (9)
1.一种基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,包括:
根据消息中间件,构建聊天室架构的消息共享机制;所述消息共享机制是所述聊天室架构中多个节点通过所述消息中间件进行消息共享;
将预先设置的强化学习模型的局部模型分别部署在各个所述节点中,通过各个所述节点产生的训练样本分别对各个所述节点中部署的局部模型进行训练,得到各个局部模型的更新参数;
将所述更新参数保存为参数消息,并将所述参数消息利用所述消息中间件共享至所述聊天室架构中的其他所述节点;
获取其他所述节点中的参数消息,将从其他所述节点中获取的参数消息与当前节点的参数消息进行聚合,得到训练后的强化学习模型,包括:
获取其他所述节点中的参数消息;
将获取的其他所述节点中的参数消息与当前节点的参数消息进行聚合,形成当前节点的优先级队列;
从所述优先级队列中选取得分高于当前所述节点中部署的局部模型得分的局部模型,对选取的局部模型的参数取平均值,得到训练后的强化学习模型。
2.如权利要求1所述的基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,根据消息中间件,构建聊天室架构的消息共享机制的步骤,包括:
根据消息中间件,构建多个所述节点通过所述消息中间件在所述聊天室架构的通信总线;所述通信总线用于多个所述节点之间消息的发布与接收;
根据所述通信总线,构建聊天室架构的消息共享机制;所述消息共享机制是所述聊天室架构中多个节点通过所述消息中间件进行消息共享;
其中,发布消息采用aiozyre库中的接口shout,接收消息采用aiozyre库中的接口recv。
3.如权利要求2所述的基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,所述聊天室架构包括多个主题;
根据消息中间件,构建聊天室架构的消息共享机制,还包括:
根据消息中间件,构建聊天室架构中同一主题下多个节点的消息共享机制。
4.如权利要求3所述的基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,根据消息中间件,构建聊天室架构中同一主题下多个节点的消息共享机制的步骤,包括:
将所述节点的id输入所述主题的主题列表;
当输出所述节点加入所述主题列表成功的反馈信息,或,所述主题下其他节点接收到所述节点发布的消息时,确定所述节点加入所述主题列表成功。
5.如权利要求1所述的基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,所述局部模型包括多个actor模型和learner模型;
将预先设置的强化学习模型的局部模型分别部署在各个所述节点中,包括:
将预先设置的强化学习模型的actor模型和learner模型分别部署在各个所述节点中;所述actor模型用于产生训练样本,所述learner模型用于更新局部模型的模型参数。
6.如权利要求5所述的基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,通过各个所述节点产生的训练样本分别对各个所述节点中部署的局部模型进行训练,得到各个局部模型的更新参数的步骤,包括:
利用节点id及模型配置参数分别初始化部署在各个节点中的所述actor模型和所述learner模型;
向所述actor模型输入设置参数,获得训练样本;
利用所述训练样本训练所述learner模型,获得各个局部模型的更新参数。
7.如权利要求6所述的基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,利用所述训练样本训练所述learner模型,获得各个局部模型的更新参数的步骤,包括:
分别以各个节点的所述训练样本作为输入,利用A2C算法进行多线程的各个节点的learner模型训练,每个节点的learner模型并行训练。
8.如权利要求1所述的基于聊天室架构的分布并行强化学习模型训练方法,其特征在于,将所述更新参数保存为参数消息,并将所述参数消息利用所述消息中间件共享至所述聊天室架构中的其他所述节点的步骤,包括:
将所述更新参数保存为字典格式的参数消息,所述参数消息包括learner模型的深拷贝和learner模型的当前得分;所述字典格式为key-value,key=id,value=更新参数;
将所述参数消息缓存到本地队列;
将所述本地队列中的参数消息按先入先出的顺序利用所述消息中间件共享至所述聊天室架构中的其他所述节点。
9.一种基于聊天室架构的分布并行强化学习模型训练系统,其特征在于,包括:
机制构建模块,用于根据消息中间件,构建聊天室架构的消息共享机制;所述消息共享机制是所述聊天室架构中多个节点通过所述消息中间件进行消息共享;
参数更新模块,用于将预先设置的强化学习模型的局部模型分别部署在各个所述节点中,通过各个所述节点产生的训练样本分别对各个所述节点中部署的局部模型进行训练,得到各个局部模型的更新参数;
消息共享模块,用于将所述更新参数保存为参数消息,并将所述参数消息利用所述消息中间件共享至所述聊天室架构中的其他所述节点;
聚合模块,用于获取其他所述节点中的参数消息,将从其他所述节点中获取的参数消息与当前节点的参数消息进行聚合,得到训练后的强化学习模型,包括:
获取其他所述节点中的参数消息;
将获取的其他所述节点中的参数消息与当前节点的参数消息进行聚合,形成当前节点的优先级队列;
从所述优先级队列中选取得分高于当前所述节点中部署的局部模型得分的局部模型,对选取的局部模型的参数取平均值,得到训练后的强化学习模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010537848.3A CN111698327B (zh) | 2020-06-12 | 2020-06-12 | 基于聊天室架构的分布并行强化学习模型训练方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010537848.3A CN111698327B (zh) | 2020-06-12 | 2020-06-12 | 基于聊天室架构的分布并行强化学习模型训练方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111698327A CN111698327A (zh) | 2020-09-22 |
CN111698327B true CN111698327B (zh) | 2022-07-01 |
Family
ID=72480677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010537848.3A Active CN111698327B (zh) | 2020-06-12 | 2020-06-12 | 基于聊天室架构的分布并行强化学习模型训练方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111698327B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108604315A (zh) * | 2015-12-30 | 2018-09-28 | 脸谱公司 | 使用深度学习模型识别实体 |
CN109710289A (zh) * | 2018-12-21 | 2019-05-03 | 南京邮电大学 | 基于深度强化学习算法的分布式参数服务器的更新方法 |
CN110245743A (zh) * | 2019-05-23 | 2019-09-17 | 中山大学 | 一种异步分布式深度学习训练方法、装置及系统 |
CN111090631A (zh) * | 2020-03-24 | 2020-05-01 | 中国人民解放军国防科技大学 | 分布式环境下的信息共享方法、装置和电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10572773B2 (en) * | 2017-05-05 | 2020-02-25 | Intel Corporation | On the fly deep learning in machine learning for autonomous machines |
US20190317825A1 (en) * | 2018-04-16 | 2019-10-17 | Kazuhm, Inc. | System for managing deployment of distributed computing resources |
-
2020
- 2020-06-12 CN CN202010537848.3A patent/CN111698327B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108604315A (zh) * | 2015-12-30 | 2018-09-28 | 脸谱公司 | 使用深度学习模型识别实体 |
CN109710289A (zh) * | 2018-12-21 | 2019-05-03 | 南京邮电大学 | 基于深度强化学习算法的分布式参数服务器的更新方法 |
CN110245743A (zh) * | 2019-05-23 | 2019-09-17 | 中山大学 | 一种异步分布式深度学习训练方法、装置及系统 |
CN111090631A (zh) * | 2020-03-24 | 2020-05-01 | 中国人民解放军国防科技大学 | 分布式环境下的信息共享方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111698327A (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pu et al. | Asymptotic network independence in distributed stochastic optimization for machine learning: Examining distributed and centralized stochastic gradient descent | |
CN111368888A (zh) | 基于深度动态贝叶斯网络的服务功能链故障诊断方法 | |
EP4350572A1 (en) | Method, apparatus and system for generating neural network model, devices, medium and program product | |
WO2022088082A1 (zh) | 基于缺陷检测的任务处理方法、装置及设备及存储介质 | |
CN112948885B (zh) | 实现隐私保护的多方协同更新模型的方法、装置及系统 | |
Liao et al. | Accurate sub-swarms particle swarm optimization algorithm for service composition | |
Gupta et al. | Performance analysis of finite buffer discrete-time queue with bulk service | |
Liu et al. | Fedpa: An adaptively partial model aggregation strategy in federated learning | |
CN114595396A (zh) | 一种基于联邦学习的序列推荐方法和系统 | |
CN113282348A (zh) | 一种基于区块链的边缘计算任务卸载系统及方法 | |
CN107608781A (zh) | 一种负载预测方法、装置以及网元 | |
CN115580882A (zh) | 动态网络切片资源分配方法及装置、存储介质及电子设备 | |
CN117061365B (zh) | 一种节点选择方法、装置、设备及可读存储介质 | |
Jiang et al. | Computation and communication efficient federated learning with adaptive model pruning | |
Sun et al. | H∞ fusion estimation for uncertain discrete time-delayed Hamiltonian systems with sensor saturations: An event-triggered approach | |
Nadella et al. | Advancing Edge Computing with Federated Deep Learning: Strategies and Challenges | |
CN111698327B (zh) | 基于聊天室架构的分布并行强化学习模型训练方法及系统 | |
Jin et al. | Simulating aggregation algorithms for empirical verification of resilient and adaptive federated learning | |
WO2021047665A1 (zh) | 终端之间连接状态的预测方法、装置和分析设备 | |
CN111935026A (zh) | 一种数据传输方法、装置、处理设备及介质 | |
Anwar et al. | Recommender system for optimal distributed deep learning in cloud datacenters | |
CN114338398B (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN112256756B (zh) | 一种基于三元关联图和知识表示的影响力发现方法 | |
CN108924240A (zh) | 基于一致性协议的分布式处理方法、装置及存储介质 | |
CN115001692A (zh) | 模型更新方法及装置、计算机可读存储介质和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |