CN114548416A - 数据模型训练方法及装置 - Google Patents
数据模型训练方法及装置 Download PDFInfo
- Publication number
- CN114548416A CN114548416A CN202011349018.4A CN202011349018A CN114548416A CN 114548416 A CN114548416 A CN 114548416A CN 202011349018 A CN202011349018 A CN 202011349018A CN 114548416 A CN114548416 A CN 114548416A
- Authority
- CN
- China
- Prior art keywords
- data model
- data
- node
- model
- child node
- 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.)
- Pending
Links
- 238000013499 data model Methods 0.000 title claims abstract description 564
- 238000012549 training Methods 0.000 title claims abstract description 165
- 238000000034 method Methods 0.000 title claims abstract description 98
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 54
- 238000013473 artificial intelligence Methods 0.000 claims abstract description 47
- 238000010801 machine learning Methods 0.000 claims abstract description 37
- 230000004927 fusion Effects 0.000 claims abstract description 32
- 238000004891 communication Methods 0.000 claims description 84
- 230000000875 corresponding effect Effects 0.000 claims description 64
- 238000012545 processing Methods 0.000 claims description 43
- 238000004590 computer program Methods 0.000 claims description 31
- 230000008901 benefit Effects 0.000 claims description 23
- 238000013480 data collection Methods 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 7
- 238000013461 design Methods 0.000 description 49
- 238000013528 artificial neural network Methods 0.000 description 24
- 230000009471 action Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 14
- 230000002787 reinforcement Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000007499 fusion processing Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/098—Distributed learning, e.g. federated learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供数据模型训练方法及装置,涉及计算机技术领域以及机器学习技术领域,能够提高分布式机器学习下数据模型的运算性能。该方法包括:接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;向第一子节点发送第一数据模型以及第一数据集合或者第一数据集合的子集,其中,第一子节点配置有人工智能AI算法;接收来自第一子节点的第二数据模型,第二数据模型是基于第一数据集合或者第一数据集合的子集对第一数据模型进行训练得到的;根据第二数据模型对第一数据模型进行更新,得到目标数据模型,向多个子节点发送目标数据模型。
Description
技术领域
本申请涉及计算机技术领域以及机器学习技术领域,尤其涉及数据模型训练方法及装置。
背景技术
随着大数据的应用越来越普及,每台用户设备都会以各种形式产生大量的原始数据,传统的集中式机器学习可以通过收集各个边缘设备上的设备数据并上传到中心端的云服务器上,由云服务器根据设备数据通过人工智能(Artificial Intelligence,AI)算法集中进行数据模型的训练迭代,得到数据模型,从而根据数据模型可以智能化地为用户提供推理运算或者决策等服务。
其中,传统的集中式机器学习算法要求大量的边缘设备将本地数据统一传输至计算中心的服务器上,然后再利用收集到的数据集合进行模型的训练与学习。但是,随着设备数据的多样化以及学习场景和学习任务的复杂化,大量数据的集中传输会导致较大程度的时延以及通信损耗,并且集中式机器学习对云服务器的机器学习能力有较高的需求,其实时性和处理效率都有待提高。
另外,现有的联邦学习(Federated Learning,FL)技术通过各个边缘设备和中心端服务器协同合作来高效地完成数据模型的学习任务。具体的,在FL框架中,分布式节点分别收集并存储本地设备数据,根据本地的设备数据进行训练得到分布式节点本地的数据模型。中心节点通过收集多个分布式节点训练得到的数据模型,并进行多个数据模型的融合处理,得到全局数据模型并下发给多个分布式节点,持续进行模型的训练迭代直至数据模型收敛。其中,FL技术中的中心节点本身没有数据集,只负责将分布式节点的训练结果进行融合处理,得到全局模型,并下发给分布式节点。
因此,上述的FL技术,当各分布式节点的本地设备数据符合独立同分布特性时,例如设备数据之间的依赖性和关联性较低时,中心节点根据多个本地数据模型进行融合处理得到的全局数据模型性能较好;而当各分布式节点的本地设备数据不符合独立同分布特性时,中心节点融合处理得到的全局数据模型性能较差。
发明内容
本申请提供数据模型训练方法及装置,能够提高分布式机器学习下数据模型的运算性能。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种数据模型训练方法,应用于机器学习系统包括的中心节点,该方法包括:接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;向第一子节点发送第一数据模型以及第一数据集合或者第一数据集合的子集,其中,第一子节点配置有人工智能AI算法;接收来自第一子节点的第二数据模型,第二数据模型是基于第一数据集合或者第一数据集合的子集和第一子节点的本地数据对第一数据模型进行训练得到的;根据第二数据模型对第一数据模型进行更新,得到目标数据模型,向多个子节点发送目标数据模型,其中,多个子节点中包括第一子节点。
上述技术方案中,通过中心节点收集多个子节点上报的设备数据,从而中心节点与至少一个子节点根据收集的全局设备数据协作进行训练,以避免现有技术中,由分布式节点基于本地数据集进行训练而导致的数据模型性能较差的问题,提高了机器学习算法的性能,提升用户体验。
在一种可能的设计中,向第一子节点发送第一数据模型,具体包括:将中心节点本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至第一子节点。
上述可能的设计方式中,中心节点向第一子节点下发全局数据模型,可以通过下发数据模型的参数信息或者模型结构信息,从而节省数据传输的资源占用,提高通信效率。
在一种可能的设计中,接收来自第一子节点的第二数据模型,具体包括:接收来自第一子节点的第二数据模型的参数信息或者梯度信息。
上述可能的设计方式中,中心节点接收第一子节点训练生成的第二数据模型,可以通过接收第二数据模型的参数信息或者梯度信息,从而中心节点可以根据收到的参数信息或梯度信息,进行融合并更新全局数据模型,继续进行下一轮训练得到优化的数据模型。
在一种可能的设计中,根据第二数据模型对第一数据模型进行更新,得到目标数据模型,具体包括:将第二数据模型与第一数据模型进行模型融合,得到目标数据模型,或者,将第二数据模型与第一数据模型进行融合得到第三数据模型,根据第一数据集合或者第一数据集合的子集对第三数据模型进行训练,得到目标数据模型。
上述可能的设计方式中,中心节点可以根据接收到的至少一个子节点进行训练得到的数据模型更新本地的全局数据模型,也可以根据至少一个子节点进行训练得到的数据模型继续进行全局数据集的训练,得到目标数据模型,从而提高训练的性能。
在一种可能的设计中,向第一子节点发送第一数据模型以及第一数据集合或者第一数据集合的子集,具体包括:根据发送数据的通信链路容量优先发送第一数据模型;若通信链路的剩余容量不足以满足第一数据集合的数据量,则根据通信链路的剩余容量对第一数据集合中的数据进行随机均匀采样,得到第一数据集合的子集,向第一子节点发送第一数据集合的子集。
上述可能的设计方式中,中心节点向子节点发送第一数据模型和全局数据集合的时候,可以考虑通信链路的容量,优先发送全局数据模型,以保证训练的进行,得到更优的数据模型。进一步的,根据通信链路的剩余容量对全局数据集进行随机采样,发送训练数据,从而保证子节点进行训练的子数据集与全局数据局其数据分布特性基本一致,从而克服现有技术中非非独立同分布的训练性能不好的问题,改善数据模型性能。
在一种可能的设计中,若子节点的数据子集包括子节点的状态参数和收益参数,则接收来自多个子节点的数据子集,具体包括:接收来自第二子节点的状态参数;将状态参数输入中心节点本地的第一数据模型,得到状态参数对应的输出参数;将输出参数发送至第二子节点,用于根据输出参数执行相应的动作;接收来自第二子节点的收益参数,收益参数用于指示根据输出参数执行相应的动作之后得到的反馈。
上述可能的设计方式中,针对强化学习算法,中心节点可以通过收集子节点的状态参数和收益参数用于数据模型的训练。其中,对于没有配置AI算法的第二子节点来说,第二子节点可以通过借助于中心节点实现推理计算,以根据子节点的状态参数得到对应的收益参数,从而进行训练,提高全局数据采集的多样性,提高训练的性能。
第二方面,提供一种数据模型训练处理方法,应用于机器学习系统包括的第一子节点,其中,第一子节点配置有人工智能AI算法,方法包括:接收来自中心节点的第一数据模型以及第一数据集合或者第一数据集合的子集,其中,第一数据集合是中心节点根据来自多个子节点的数据子集进行融合生成的;根据第一数据集合或者第一数据集合的子集和本地数据对第一数据模型进行训练,得到第二数据模型;向中心节点发送第二数据模型;接收来自中心节点的目标数据模型,目标数据模型是根据第二数据模型进行更新得到的。
上述技术方案中,第一子节点通过中心节点下发的全局数据集和全局数据模型进行训练,得到数据模型的更新,在上报至中心节点,从而缓解中心节点的数据运算压力,并且,基于机器学习系统的全局数据集进行训练,避免了现有技术中分布式节点基于本地数据集进行训练而导致的数据模型性能较差的问题,提高了机器学习算法的性能,提升用户体验。
在一种可能的设计中,接收来自中心节点的第一数据模型,具体包括:接收来自中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
在一种可能的设计中,若第一子节点具备数据收集能力,则根据第一数据集合或者第一数据集合的子集对第一数据模型进行训练,得到第二数据模型,具体包括:将第一数据集合或者第一数据集合的子集与第一子节点本地收集的数据进行融合,得到第二数据集合;根据第二数据集合对第一数据模型进行训练,得到第二数据模型。
在一种可能的设计中,向中心节点发送第二数据模型,具体包括:向中心节点发送第二数据模型的参数信息或者梯度信息。
第三方面,提供一种数据模型训练方法,应用于机器学习系统包括的中心节点,该方法包括:向第一子节点发送第一数据模型,其中,第一子节点配置有人工智能AI算法;接收来自第一子节点的第二数据模型,第二数据模型是基于第一子节点本地的数据对第一数据模型进行训练得到的;根据第二数据模型对第一数据模型进行更新,得到第三数据模型;接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;根据第一数据集合对第三数据模型进行训练,得到目标数据模型,向多个子节点发送目标数据模型,其中,多个子节点中包括第一子节点。
上述技术方案中,中心节点通过与至少一个分布式节点协作进行训练,分布式子节点可以根据本地数据对中心节点下发的全局数据模型进行训练,并将得到的本地数据模型上报给中心节点。中心节点收集多个子节点上报的设备数据,从而中心节点根据全局数据集合对至少一个分布式节点收集的数据模型进行全局训练。其中,中心节点下发的全局数据模型是基于全局数据集训练得来的,分布式节点用全局数据模型更新本地的数据模型,以避免了现有技术中,由分布式节点基于本地数据集进行训练而导致的数据模型性能较差的问题,提高了机器学习算法的性能,提升用户体验。
在一种可能的设计中,向第一子节点发送第一数据模型,具体包括:将中心节点本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至第一子节点。
在一种可能的设计中,接收来自第一子节点的第二数据模型,具体包括:接收来自第一子节点的第二数据模型的参数信息或者梯度信息。
在一种可能的设计中,根据第二数据模型对第一数据模型进行更新,得到第三数据模型,具体包括:将第二数据模型与第一数据模型进行模型融合,得到第三数据模型。
在一种可能的设计中,若子节点的数据子集包括子节点的状态参数和收益参数,则接收来自多个子节点的数据子集,具体包括:接收来自第二子节点的状态参数;将状态参数输入中心节点本地的第一数据模型,得到状态参数对应的输出参数;将输出参数发送至第二子节点,用于根据输出参数执行相应的动作;接收来自第二子节点的收益参数,收益参数用于指示根据输出参数执行相应的动作之后得到的反馈。
第四方面,提供一种数据模型训练方法,应用于机器学习系统包括的第一子节点,其中,第一子节点配置有人工智能AI算法,该方法包括:接收来自中心节点的第一数据模型;根据第一子节点本地的数据对第一数据模型进行训练,得到第二数据模型;向中心节点发送第二数据模型;接收来自中心节点的目标数据模型,目标数据模型是根据第二数据模型进行更新得到的。
上述技术方案中,至少一个分布式子节点可以基于中心节点下发的全局数据模型,结合本地收集的数据进行训练,并将得到的数据模型上报给中心节点,中心节点融合多个分布式子节点上报的本地数据模型和本地数据集,得到全局数据模型和全局数据集,从而也可以协同完成训练,改善现有技术对非独立同分布特性的训练的性能不佳的问题,提高训练的性能。
在一种可能的设计中,接收来自中心节点的第一数据模型,具体包括:接收来自中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
在一种可能的设计中,向中心节点发送第二数据模型,具体包括:向中心节点发送第二数据模型的参数信息或者梯度信息。
第五方面,提供一种数据模型训练装置,该装置包括:接收模块,用于接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;发送模块,用于向第一子节点发送第一数据模型以及第一数据集合或者第一数据集合的子集,其中,第一子节点配置有人工智能AI算法;接收模块,还用于接收来自第一子节点的第二数据模型,第二数据模型是基于第一数据集合或者第一数据集合的子集对第一数据模型进行训练得到的;处理模块,用于根据第二数据模型对第一数据模型进行更新,得到目标数据模型;发送模块,还用于向多个子节点发送目标数据模型,其中,多个子节点中包括第一子节点。
在一种可能的设计中,发送模块具体用于:将中心节点本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至第一子节点。
在一种可能的设计中,接收模块具体用于:接收来自第一子节点的第二数据模型的参数信息或者梯度信息。
在一种可能的设计中,处理模块具体用于:将第二数据模型与第一数据模型进行模型融合,得到目标数据模型,或者,将第二数据模型与第一数据模型进行融合得到第三数据模型,根据第一数据集合或者第一数据集合的子集对第三数据模型进行训练,得到目标数据模型。
在一种可能的设计中,发送模块具体还用于:根据发送数据的通信链路容量优先发送第一数据模型;若通信链路的剩余容量不足以满足第一数据集合的数据量,则根据通信链路的剩余容量对第一数据集合中的数据进行随机均匀采样,得到第一数据集合的子集,向第一子节点发送第一数据集合的子集。
在一种可能的设计中,若子节点的数据子集包括子节点的状态参数和收益参数,则接收模块具体还用于:接收来自第二子节点的状态参数;处理模块用于将状态参数输入中心节点本地的第一数据模型,得到状态参数对应的输出参数;发送模块用于将输出参数发送至第二子节点,用于根据输出参数执行相应的动作;接收模块还用于接收来自第二子节点的收益参数,收益参数用于指示根据输出参数执行相应的动作之后得到的反馈。
第六方面,提供一种数据模型训练装置,该装置配置有人工智能AI算法,该装置包括:接收模块,用于接收来自中心节点的第一数据模型以及第一数据集合或者第一数据集合的子集,其中,第一数据集合是中心节点根据来自多个子节点的数据子集进行融合生成的;处理模块,用于根据第一数据集合或者第一数据集合的子集对第一数据模型进行训练,得到第二数据模型;发送模块,用于向中心节点发送第二数据模型;接收模块,还用于接收来自中心节点的目标数据模型,目标数据模型是根据第二数据模型进行更新得到的。
在一种可能的设计中,接收模块具体用于:接收来自中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
在一种可能的设计中,若第一子节点具备数据收集能力,则处理模块具体用于:将第一数据集合或者第一数据集合的子集与第一子节点本地收集的数据进行融合,得到第二数据集合;根据第二数据集合对第一数据模型进行训练,得到第二数据模型。
在一种可能的设计中,发送模块具体用于:向中心节点发送第二数据模型的参数信息或者梯度信息。
第七方面,提供一种数据模型训练装置,该装置包括:发送模块,用于向第一子节点发送第一数据模型,其中,第一子节点配置有人工智能AI算法;接收模块,用于接收来自第一子节点的第二数据模型,第二数据模型是基于第一子节点本地的数据对第一数据模型进行训练得到的;处理模块,用于根据第二数据模型对第一数据模型进行更新,得到第三数据模型;接收模块,还用于接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;处理模块,还用于根据第一数据集合对第三数据模型进行训练,得到目标数据模型,向多个子节点发送目标数据模型,其中,多个子节点中包括第一子节点。
在一种可能的设计中,发送模块具体用于:将中心节点本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至第一子节点。
在一种可能的设计中,接收模块具体用于:接收来自第一子节点的第二数据模型,具体包括:接收来自第一子节点的第二数据模型的参数信息或者梯度信息。
在一种可能的设计中,处理模块具体用于:根据第二数据模型对第一数据模型进行更新,得到第三数据模型,具体包括:将第二数据模型与第一数据模型进行模型融合,得到第三数据模型。
在一种可能的设计中,若子节点的数据子集包括子节点的状态参数和收益参数,则接收模块具体用于:接收来自第二子节点的状态参数;处理模块用于将状态参数输入中心节点本地的第一数据模型,得到状态参数对应的输出参数;发送模块用于将输出参数发送至第二子节点,用于根据输出参数执行相应的动作;接收模块用于接收来自第二子节点的收益参数,收益参数用于指示根据输出参数执行相应的动作之后得到的反馈。
第八方面,提供一种数据模型训练装置,该装置配置有人工智能AI算法,该装置包括:接收模块,用于接收来自中心节点的第一数据模型;处理模块,用于根据装置本地的数据对第一数据模型进行训练,得到第二数据模型;发送模块,用于向中心节点发送第二数据模型;接收模块,还用于接收来自中心节点的目标数据模型,目标数据模型是根据第二数据模型进行更新得到的。
在一种可能的设计中,接收模块具体用于:接收来自中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
在一种可能的设计中,发送模块具体用于:向中心节点发送第二数据模型的参数信息或者梯度信息。
第九方面,提供一种通信装置,所述通信装置包括处理器,所述处理器与存储器耦合;存储器,用于存储计算机程序或指令;处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如上述第一方面中任一项所述的方法。
第十方面,提供一种通信装置,所述通信装置包括处理器,所述处理器与存储器耦合;存储器,用于存储计算机程序或指令;处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如上述第二方面中任一项所述的方法。
第十一方面,提供一种通信装置,所述通信装置包括处理器,所述处理器与存储器耦合;存储器,用于存储计算机程序或指令;处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如上述第三方面中任一项所述的方法。
第十二方面,提供一种通信装置,所述通信装置包括处理器,所述处理器与存储器耦合;存储器,用于存储计算机程序或指令;处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如上述第四方面中任一项所述的方法。
第十三方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上述第一方面中任一项所述的方法。
第十四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上述第二方面中任一项所述的方法。
第十五方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上述第三方面中任一项所述的方法。
第十六方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上述第四方面中任一项所述的方法。
第十七方面,提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如上述第一方面中任一项所述的方法。
第十八方面,提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如上述第二方面中任一项所述的方法。
第十九方面,提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如上述第三方面中任一项所述的方法。
第二十方面,提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如上述第四方面中任一项所述的方法。
第二十一方面,提供一种机器学习系统,所述机器学习系统包括如上述第五方面中任一项所述的装置和第六方面中任一项所述的装置。
第二十二方面,提供一种机器学习系统,所述机器学习系统包括如上述第七方面中任一项所述的装置和第八方面中任一项所述的装置。
可以理解地,上述提供的任一种数据模型训练装置、计算机可读存储介质和计算机程序产品,均可以由上文所提供的对应的方法来实现,因此,其所能达到的有益效果可参考上文所提供的对应的方法中有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种机器学习系统的系统架构图;
图2为本申请实施例提供的一种电子设备的硬件架构图;
图3为本申请实施例提供的一种数据模型训练方法的流程示意图;
图4为本申请实施例提供的一种数据模型训练方法的数据处理示意图;
图5为本申请实施例提供的另一种数据模型训练方法的数据处理示意图;
图6为本申请实施例提供的另一种数据模型训练方法的流程示意图;
图7为本申请实施例提供的另一种数据模型训练方法的数据处理示意图;
图8为本申请实施例提供的另一种数据模型训练方法的数据处理示意图;
图9为本申请实施例提供的一种数据模型训练装置的结构示意图。
具体实施方式
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先,对本申请实施例的实施环境和应用场景进行简单介绍。
本申请可以应用于能够实现分布式学习、联邦学习等机器学习算法的通信系统,以实现监督学习、非监督学习或者强化学习的任务。其中,监督学习即通常所说的分类,可以通过已有的训练样本(即已知数据以及其对应的输出)去训练得到一个数据模型(可以为某个函数的集合或者神经网络),从而电子设备可以利用该数据模型进行推理运算,即将输入映射为相应的输出,即完成对数据进行分类的能力。非监督学习即通常所说的聚类,是指在没有训练样本的情况下,直接对数据进行建模,即能够根据相似特性的数据聚在一起得到分类的结果。强化学习则需要数据模型可以根据输入的数据得到对应的行为方式,并强调电子设备的行为与实现状态的交互过程,以获得最大化的预期利益,学习得到最优的行为方式。具体的强化学习算法过程可以参照相关的技术描述,本申请的下述实施中将结合分布式联邦学习架构进行介绍,此处不再赘述。
示例性的,本申请实施例可以应用于如图1所示的移动边缘计算(Mobile EdgeComputing,MEC)的机器学习系统,该机器学习系统可以包括中心节点和多个分布式节点。
其中,MEC是移动接入网与互联网业务深度融合的一种技术,通过利用无线接入网络就近为用户提供所需的网络服务和云端计算功能,可以是一个具备高性能、低延迟与高带宽的电信级服务环境,能够实现加速网络中各项内容、服务及应用的快速下载,让用户享有不间断的高质量网络体验。
图1中的中心节点可以为移动边缘计算系统中的边缘服务器,能够用于实现边缘电子设备的数据收集、数据融合和数据存储,配置有人工智能(Artificial Intelligence,AI)算法,能够进行边缘学习场景下的AI训练得到数据模型,并可以根据多个分布式节点训练的数据模型进行数据模型的融合和更新等处理。
多个分布式节点即为边缘电子设备,可以采集数据,使得具有训练功能的中心节点或者部分分布式节点能够根据大量的数据进行训练,得到对应的数据模型,用于为用户提供决策或者AI计算等服务。
具体的,分布式节点可以包括采集视频、图像信息的摄像头,采集感知信息的传感器设备等,或者,分布式节点还可以包括具有简单运算能力的电子设备,如车载电子设备,智能手表、智能音箱或可穿戴设备等,或者,分布式节点还可以包括具有较强运算能力和通信需求的电子设备,例如计算机、笔记本电脑、平板电脑或智能手机等。
其中,可以根据设备运算能力的不同将分布式节点分为几个不同的类别,例如,根据分布式节点是否具备训练和推理计算的能力,可以分为I类子节点、II类子节点和III类子节点。示例性的,图1中包括的第一子节点可以为I类子节点,第二子节点可以为II类子节点,第三子节点可以为III类子节点。
I类分布式节点可以是智能收集设备、笔记本电脑或智能手机等具有较强运算能力和通信需求的设备,配置有AI算法,能够进行训练,并能够根据数据模型进行推理运算。II类分布式节点可以是一些具有简单运算能力的设备,如车载电子设备,可穿戴设备等,它们可以采集数据,同时具有一定的通信需求和运算能力,配置有AI算法,能够根据下发的数据模型进行推理运算,但没有训练的能力。III类分布式节点可以是采集视频、图像信息的摄像头,采集感知信息的传感器设备,其主要功能是本地数据的采集,通信的需求较低,没有配置AI算法,不能够进行训练以及推理运算。
应注意,图1所示的机器学习系统仅用于举例,并非用于限制本申请的技术方案。本领域的技术人员应当明白,在具体实现过程中,机器学习系统还可以包括其他设备,同时也可根据具体需要来确定中心节点或者分布式节点的设备类型和数量。图1中的各网元可以通过通信接口进行数据传输与通信。
可选的,本申请实施例图1中的各节点,例如中心节点或分布式节点,可以是一个电子设备或者一个电子设备内的一个功能模块。可以理解的是,上述功能既可以是硬件设备中的网络元件,例如手机中的通信芯片,也可以是在专用硬件上运行的软件功能,或者是平台(例如,云平台)上实例化的虚拟化功能。
另外,本申请的机器学习系统除了可以部署在通信系统中,还可以部署于一台电子设备上。即在一种实施方式中,上述机器学习系统中的中心节点和多个分布式节点,也可以集成在同一台电子设备上,例如,服务器或者存储设备等,用于进行分布式学习优化数据模型。本申请对机器学习系统的实现方式不做具体限定。
例如,图1中的各节点均可以通过图2中的电子设备200来实现。图2所示为可适用于本申请实施例的通信装置的硬件结构示意图。该电子设备200包括至少一个处理器201,通信线路202,存储器203以及至少一个通信接口204。
处理器201可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路202可包括一通路,在上述组件之间传送信息,例如总线。
通信接口204,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网接口,无线接入网接口(radio access network,RAN),无线局域网接口(wirelesslocal area networks,WLAN)等。
存储器203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路202与处理器相连接。存储器也可以和处理器集成在一起。本申请实施例提供的存储器通常可以具有非易失性。其中,存储器203用于存储执行本申请方案所涉及的计算机执行指令,并由处理器201来控制执行。处理器201用于执行存储器203中存储的计算机执行指令,从而实现本申请实施例提供的方法。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,处理器201可以包括一个或多个CPU,例如图2中的CPU0和CPU1。
在具体实现中,作为一种实施例,电子设备200可以包括多个处理器,例如图2中的处理器201和处理器207。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,电子设备200还可以包括输出设备205和输入设备206。输出设备205和处理器201通信,可以以多种方式来显示信息。例如,输出设备205可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备206和处理器201通信,可以以多种方式接收用户的输入。例如,输入设备206可以是鼠标、键盘、触摸屏设备或传感设备等。
上述的电子设备200可以是一个通用设备或者是一个专用设备。在具体实现中,电子设备200可以是台式机、便携式电脑、网络服务器、掌上电脑(personal digitalassistant,PDA)、移动手机、平板电脑、无线终端设备、嵌入式设备、增强现实(augmentedreality,AR)/虚拟现实(virtual reality,VR)设备、车辆、车载模组、车载电脑、车载芯片、车载通信系统、工业控制中的无线终端等,或具有图2中类似结构的电子设备。本申请实施例不限定电子设备200的类型。
下面结合图1和图2对本申请实施例提供的数据模型训练方法进行具体阐述。
本申请提供一种分布式的数据模型训练方法,通过中心节点收集来自多个分布式节点采集到的数据,由中心节点与具备训练能力的部分分布式节点基于机器学习系统的全局数据集协同完成训练,以及多个节点生成的数据模型进行融合处理,经过多轮次的数据模型迭代,最终得到该机器学习系统的全局数据模型,从而避免了基于单个节点根据非独立同分布特性的数据集训练得到的数据模型性能较差的问题,改善深度学习的性能和效率。
如图3所示,将该方法应用于通信系统时,包括以下内容。
301:子节点向中心节点发送数据子集。
至少一个子节点收集设备数据建立数据子集,并将数据子集上传至中心节点。
其中,设备数据可以是指子节点对应的电子设备收集到的数据信息,例如,电子设备的状态信息、应用产生的应用数据、运动轨迹信息、图像信息或网络流量信息等。
需要说明的是,根据数据模型的实现任务不同,收集的设备数据可能不同。例如,数据模型的实现任务为对通信系统中无线资源的调度进行决策,则子节点收集的设备数据可以包括子节点的信道质量、通信的服务质量指标等信息。从而可以根据各个子节点的信道质量、通信的服务质量指标等建立数据模型并进行大量训练,例如,可以基于马尔科夫决策过程(Markov Decision Process,MDP)算法实现强化学习的建模。
本申请实施例对数据模型的实现任务以及采集的设备数据的类型不做具体限定,具体可以基于数据模型的实现任务需求进行机器学习的模型构建以及设备数据的采集上报。另外,子节点与中心节点可以预先配置好神经网络模型的结构和算法,或者,也可以在训练的一开始,对神经网络的模型结构进行协商或者通报。
其中,子节点可以包括上述通信系统中的I类分布式节点、II类分布式节点或III类分布式节点。在子节点向中心节点上传本地数据子集时,也需要考虑当前的通信链路的吞吐容量,当本地数据子集的数据量大于链路容量时,子节点可以对本地的数据子集进行随机均匀采样,将采样后得到的数据子集进行上传。
需要说明的是,上述进行随机均匀采样后得到的数据样本与原数据集的数据分布特性是相同的。
302:中心节点接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合。
中心节点可以将多个子节点收集的设备数据进行数据融合,得到全局数据集合即第一数据集合。
需要说明的是,子节点的数据子集以及该第一数据集合中的设备数据可能符合独立同分布特性,也可能不符合独立同分布特性,均可以实现本申请的技术方案,本申请对此不做具体限定。
303:中心节点向第一子节点发送第一数据模型,以及第一数据集合或者第一数据集合的子集。
其中,第一子节点可以是上述通信系统中的I类分布式节点。第一子节点具体可以是配置有神经网络算法的电子设备,具有神经网络模型的训练以及根据数据模型推理计算的能力。
另外,第一子节点还可以用于收集设备数据得到第一子节点对应的数据子集,用于根据该数据子集进行训练,得到数据模型。
需要说明的是,本申请实施例中第一数据模型即为该通信系统的全局神经网络模型,第一数据模型是在中心节点与至少一个I类分布式节点协作进行训练的过程中生成的,通过多轮次的反复训练与参数迭代、更新,直至第一数据模型满足收敛条件,或者,训练完成的轮次满足一定条件,则结束第一数据模型的训练,该中心节点的第一数据模型更新为最终的目标数据模型。因此,本申请实施例中所指的第一数据模型是指,在第i个轮次的训练过程中,中心节点本地的全局数据模型。
在一种实施方式中,在步骤303之前,中心节点开启训练时,则中心节点首先可以初始化神经网络参数,例如,随机生成该神经网络的初始配置参数。然后向第一子节点发送初始数据模型,具体的,可以发送初始数据模型对应的模型结构和初始配置参数等信息。从而第一子节点根据模型结构和初始配置参数等可以得到与中心节点同步的初始数据模型,以进行全局数据模型的协同训练。
另外,中心节点还需要向第一子节点下发全局数据集合用于进行训练。下发的全局数据集合可以为第一数据集合,也可以为第一数据集合的子集。
其中,第一数据集合的子集是对第一数据集合进行随机均匀采样得到的,因此,第一数据集合的子集的数据分布特性与第一数据集合是一致的。例如,第一数据集合中的数据符合独立同分布特性,则第一数据集合的子集中的数据也符合独立同分布特性。
在一种实施方式中,考虑到中心节点和第一子节点之间的通信链路吞吐容量,中心节点可以根据发送数据的通信链路容量优先发送第一数据模型;若通信链路的剩余容量不足以满足第一数据集合的数据量,则根据通信链路的剩余容量对第一数据集合中的数据进行随机均匀采样,得到第一数据集合的子集。
具体的,在训练过程的第i个轮次中,中心节点可以按照以下原则,根据通信链路的容量确定向第一子节点发送第一数据模型,以及发送第一数据集合或者第一数据集合的子集。
1、当通信链路容量大于或者等于第一数据模型与第一数据集合的数据量之和时,中心节点向子节点发送第一数据模型以及第一数据集合。
示例性的,即当I≥IW+ID时,中心节点向子节点发送第一数据模型以及第一数据集合。其中,第一数据模型的数据量大小为IW,第一数据集合的数据量大小为ID。
2、当通信链路容量小于第一数据模型与第一数据集合的数据量之和,且通信链路容量大于或者等于第一数据模型时,中心节点向子节点发送第一数据模型以及第一数据集合的子集。
示例性的,即当I<IW+ID且I≥IW时,中心节点向子节点发送第一数据模型,以及第一数据集合的子集D1,ID1=I-IW。其中,第一数据模型的数据量大小为IW,第一数据集合的子集D1的数据量大小为ID1,第一数据集合D的数据量大小为ID。
第一数据集合的子集D1包括从第一数据集合D中随机均匀采样出的q个样本数据,其中,q=floor(ID1/IS),其中,IS表示为第一数据集合中各元素的数据量大小。floor(x)函数的功能是“向下取整”,取不大于x的最大整数,即小于或者等于x的整数中最大的那个整数值。
3、当通信链路容量等于第一数据模型的数据量大小,则中心节点向子节点发送第一数据模型。即本轮次可以不发送用于训练的数据集合,等下一轮次再发送第一数据集合或者第一数据集合的子集。
示例性的,即当I=IW时,中心节点仅向子节点发送第一数据模型。
4、当通信链路容量小于第一数据模型的数据量大小时,中心节点向子节点发送第一数据集合的子集,而不发送第一数据模型。
示例性的,即当I<IW时,中心节点向子节点发送第一数据集合的子集D2,其中,第一数据集合的子集D2包括从第一数据集合D中随机均匀采样出的q个样本数据,其中,q=floor(I/IS),其中,IS表示为第一数据集合中各元素的数据量大小。
304:第一子节点根据第一数据集合或者第一数据集合的子集对第一数据模型进行训练,得到第二数据模型。
第一子节点可以根据全局数据进行训练,以将第一数据模型更新为第二数据模型。
另外,如果第一子节点本身具备收集设备数据的能力,则第一子节点可以先将本地收集的数据子集与中心节点下发的第一数据集合或者第一数据集合的子集进行数据融合,得到第二数据集合。之后,再根据数据融合得到的第二数据集合对第一数据模型进行训练。本地训练结束之后,得到的数据模型即为第二数据模型。
需要说明的是,同上述第一数据模型指示的内容类似,本申请实施例中的第二数据模型即是指在在第i个轮次的训练过程中,第一子节点本地的数据模型。第二数据模型也会在多轮次的反复训练中进行模型参数的更新,直至完成训练。
305:第一子节点向中心节点发送第二数据模型。
第一子节点完成本轮次的训练之后,将得到的第二数据模型上报给中心节点。具体可以包括:第一子节点向中心节点发送第二数据模型的参数信息或者梯度信息。
其中,神经网络算法一般包括多层算法,第二数据模型的参数信息包括第二数据模型对应的神经网络中多层网络对应的多个参数信息。梯度信息是指第二数据模型的参数的梯度值组成的信息集合。例如,可以通过第二数据模型的参数对损失函数求导得到梯度值,具体的梯度信息的计算可以参照相关算法,本申请对此不做具体限定。从而,中心节点可以根据第二数据模型的参数信息可以得到第二数据模型,或者,中心节点可以根据第一数据模型结合第二数据模型的梯度信息,得到第二数据模型。
306:中心节点根据第二数据模型对第一数据模型进行更新,得到目标数据模型,并向多个子节点发送目标数据模型。
其中,多个子节点中包括第一子节点。
中心节点根据第一子节点上报的第二数据模型对本地的第一数据模型进行更新,具体的,可以为将第一数据模型的各个参数更新为第二数据模型对应的参数,得到目标数据模型。
或者,中心节点可以根据第二数据模型对第一数据模型进行更新,得到目标数据模型,具体可以包括:将多个I类分布式节点上报的多个第二数据模型与第一数据模型进行模型融合,得到目标数据模型。
或者,中心节点可以根据第二数据模型对第一数据模型进行更新,得到目标数据模型,具体还可以包括:中心节点可以将多个I类分布式节点上报的多个第二数据模型与第一数据模型进行融合得到第三数据模型,根据第一数据集合或者第一数据集合的子集对第三数据模型进行训练,得到目标数据模型。从而中心节点基于分布式节点进行训练得到的模型根据全局数据集合进行再一次训练,可以进一步提高数据模型的性能。
其中,本申请实施例中,该目标数据模型是指在第i个轮次的训练过程中,在中心节点本地得到的全局数据模型。当第i+1个轮次的训练开始时,即本申请继续执行上述的步骤301-306时,表示进行下一轮次的训练,此时中心节点将收集的多个子节点上报的多个数据子集融合为第一数据集合,中心节点重复执行步骤303,向至少一个第一子节点下发第一数据集合和第一数据模型,此时的第一数据模型即为上述步骤306中更新得到的目标数据模型,即第i轮次得到的目标数据模型即为第i+1轮次的第一数据模型。
当中心节点与至少一个I类分布式节点协作进行训练的过程中,通过多轮次的反复训练与参数迭代、更新,直至目标数据模型满足收敛条件,或者,训练完成的轮次满足一定条件,则结束目标数据模型的训练,上述步骤306中该中心节点得到的目标数据模型即为最终的目标数据模型。中心节点将该目标数据模型下发给多个子节点,以在子节点本地根据设备数据输入该目标数据模型完成推理运算。
通过本申请的上述实施方式,通过中心节点收集多个子节点上报的设备数据,从而中心节点与至少一个I类分布式节点根据收集的全局设备数据协作进行训练,以避免了现有技术中,由分布式节点基于本地数据集进行训练而导致的数据模型性能较差的问题,提高了机器学习算法的性能,提升用户体验。
需要说明的是,将本申请的上述机器学习架构实际部署在通信网络中时,三类分布式节点并不一定是都存在的,例如,如不存在II类和III类分布式节点时,机器学习架构退化成传统的联邦学习结构,此时由于没有上传本地数据的节点,则整体系统性能会受数据非独立同分布特性的问题影响。另外,II类和III类分布式节点需要上传设备数据,可能涉及数据隐私的问题,可以通过以下方式来解决:首先,将II类和III类分布式节点部署为网络运营商布置的专门用于数据收集的特定节点,这样其收集数据的目的就是为了提升系统性能,数据本身也不携带隐私信息。其次,当II类和III类分布式节点为用户设备时,可以通过加密手段对设备数据进行加密,加密方法可以参照相关技术,本申请实施例对此不再赘述。
在一种实施方式中,上述的步骤301之前,中心节点可以在通信网络中选择多个用于收集设备数据的II类分布式节点或多个III类分布式节点,以及选择进行训练的多个I类分布式节点。
其中,中心节点选择分布式节点的具体方法可以为随机选择,也可以根据分布式节点的通信链路质量选择通信链路质量较好的几个分布式节点用于协作处理,或者还可以根据数据模型的处理任务选择能够收集该处理任务对应的特定设备数据的分布式节点。
另外,由于II类分布式节点是具有简单运算能力的设备,配置有AI算法,能够根据下发的数据模型进行推理运算。因此,II类分布式节点除了可以为中心节点进行设备数据的收集之外,还可以根据中心节点下发的数据模型基于本地的设备数据进行推理运算。
示例性的,中心节点选择了N个I类分布式节点,用于协作进行训练;选择了K个II类分布式节点以及M个III类分布式节点,用于收集设备数据。
则如图4所示的,在上述实施方式的步骤301中,该K个II类分布式节点和该M个III类分布式节点可以向中心节点上报本地的数据子集。在上述实施方式的步骤303中,中心节点可以向该N个I类分布式节点下发第一数据模型Wi以及第一数据集合Di或者第一数据集合的子集D1i,用于该N个I类分布式节点进行训练,得到多个第二数据模型Gi,其中,i表示该训练的轮数。在上述实施方式的步骤306中,中心节点即可以根据该N个I类分布式节点上报的N个第二数据模型,进行数据模型的融合后更新第一数据模型,以得到目标数据模型,完成第i轮次的训练过程。然后开始第i+1轮次的训练,第i轮次得到的目标数据模型即为第i+1轮次的第一数据模型Wi+1,中心节点向N个I类分布式节点下发Wi+1以及全局数据集合,继续进行训练,直至模型收敛或者达到训练的轮次条件。
另外,根据强化学习的算法逻辑,电子设备需要收集状态参数,并按照一定的决策策略得到对应的动作参数,电子设备执行该动作之后,收集电子设备执行该动作所对应的收益参数,通过多次的反复迭代,使电子设备得到根据状态参数作出最优的动作决策的数据模型。
在本申请实施例提供的另一种实施场景中,当通信系统中包括用于进行强化学习建模的分布式联邦学习任务时,即分布式节点需要收集本地的状态参数以及收益参数,用于分布式节点与中心节点协作进行训练,得到最优的数据模型。
在一种实施方式中,中心节点选定了N个I类分布式节点,用于协作进行训练;选择了K个II类分布式节点以及M个III类分布式节点,用于收集设备数据。其中,I类分布式节点和II类分布式节点由于本地配置有AI算法,具备数据推理能力,因此,可以根据中心节点下发的数据模型基于状态参数进行推理得到相应的动作,进而根据执行动作之后得到收益参数,从而将收集的多组状态参数与对应的收益参数上报给中心节点。
但是,III类分布式节点没有配置AI算法,不具备训练的能力,也不具备推理运算的能力,因此,需要借助于中心节点实现推理计算,以根据子节点的状态参数得到对应的收益参数。
示例性的,第三子节点属于上述的III类分布式节点。则上述实施方式中的步骤301-302中,子节点收集的数据子集包括子节点的状态参数和收益参数,其中,中心节点接收来自第三子节点的数据子集,具体可以包括:
Step1:第三子节点收集状态参数得到数据子集,并向中心节点发送数据子集。
Step2:中心节点得到来自第三子节点的状态参数,将状态参数输入中心节点本地的第一数据模型,得到该状态参数对应的输出参数。
也就是说,中心节点将第三子节点的状态参数输入第一数据模型进行决策,得到该状态参数对应的动作,也称为该状态参数对应的输出参数。
Step3:中心节点将输出参数发送至第三子节点。
Step4:第三子节点根据输出参数执行相应的动作,得到该输出参数对应的收益参数。
Step5:第三子节点向中心节点上报该收益参数,收益参数用于指示根据输出参数执行相应的动作之后第三子节点得到的反馈信息。
Step6:中心节点接收来自第三子节点的收益参数。
在一种实施方式中,上述实施方式中的强化学习算法具体可以采用actor(演员)-critic(评论家)的深度强化学习算法。例如,上述通信系统中的用于训练的分布式节点或者中心节点可以分别配置有actor神经网络和critic神经网络。
其中,actor神经网络负责根据状态参数(Sn)进行决策,得到对应的动作(An),critic神经网络负责根据状态参数(Sn)和设备执行动作(An)之后反馈的收益参数(Rn)来评价actor神经网络做出的动作(An)决策的优劣。actor神经网络会根据critic神经网络的评价调制自身的决策策略,以便输出更好的动作决策,获得更好的系统性能。在深度强化学习框架下,actor和critic都可以由深度神经网络实现。
如图5所示的,由于I类分布式节点具备训练和数据推理能力,则需部署actor神经网络和critic神经网络网络。I类分布式节点可以用于根据中心节点下发的数据集合S和R以及第一数据模型Wi进行训练,得到I类分布式节点本地的第二数据模型Gi,并上报给中心节点用于全局数据模型的融合,以进行下一轮的训练。
II类分布式节点只有数据推理能力没有训练能力,则只需部署actor神经网络。II类分布式节点可以用于收集本地的状态参数以及对应的收益参数。具体为,II类分布式节点接收中心节点下发的第一数据模型Wi,根据本地的状态参数Sn输入第一数据模型Wi得到对应的执行动作An,根据动作An得到的反馈得到收益参数Rn。从而II类分布式节点可以将多次重复上述动作,收集状态参数Sn和收益参数Rn,分别得到对应的数据集合S和R。II类分布式节点可以将数据集合S和R上报给中心节点,用于全局数据的收集以完成全局训练。
III类分布式节点没有训练和数据推理能力,故其无需部署神经网络。III类分布式节点可以用于收集本地的状态参数以及对应的收益参数。可以借助于中心节点实现推理计算,即III类分布式节点将状态参数Sn上报至中心节点,中心节点根据第一数据模型Wi得到对应的执行动作An,中心节点将动作An下发给III类分布式节点,III类分布式节点根据动作An得到的反馈得到收益参数Rn。具体可以根据上述的Step1-Step6来实现。
此外,考虑到中心节点向I类分布式节点频繁下发全局数据集所占用网络带宽带来的资源占用以及实时性的问题,本申请还提供一种实施方式,通过中心节点只下发全局数据模型,而不下发全局数据集来实现分布式的数据管理,该实施方式如图6所示,具体包括以下步骤。
601:中心节点向第一子节点发送第一数据模型。
其中,第一子节点配置有人工智能AI算法,能够用于进行训练。
602:第一子节点根据收集的本地数据对第一数据模型进行训练,得到第二数据模型。
603:第一子节点向中心节点上报第二数据模型。
604:中心节点接收来自第一子节点的第二数据模型,并根据第二数据模型对第一数据模型进行更新,得到第三数据模型。
605:多个子节点向中心节点发送数据子集。
606:中心节点根据来自多个子节点的数据子集进行数据融合,得到第一数据集合,并根据第一数据集合对第三数据模型进行训练,得到目标数据模型。
跟前述实施例中指出的类似,本申请实施例中所指的第一数据模型为在第i轮次的训练过程中的中心节点本地的数据模型。则在第i轮次的训练过程中,得到的目标数据模型即成为第i+1轮次的第一数据模型,重复执行上述的步骤601-604,直至目标数据模型满足收敛条件,或者,训练完成的轮次满足一定条件,则结束目标数据模型的训练,该中心节点的目标数据模型更新为最终的目标数据模型。
通过本申请的上述实施方式,通过至少一个I类分布式节点根据本地数据对中心节点下发的数据模型进行训练,并将得到的本地数据模型上报给中心节点。中心节点收集多个子节点上报的设备数据,从而中心节点根据全局数据集合对至少一个I类分布式节点根据收集的数据模型进行全局训练。其中,中心节点下发的全局数据模型是基于全局数据集训练得来的,I类分布式节点用全局数据模型更新本地的数据模型,以避免了现有技术中,由分布式节点基于本地数据集进行训练而导致的数据模型性能较差的问题,提高了机器学习算法的性能,提升用户体验。
在一种实施方式中,上述的步骤605之前,中心节点可以在通信网络中选择多个用于收集设备数据的II类分布式节点或多个III类分布式节点,以及选择进行训练的多个I类分布式节点。
则如图7所示的,在上述实施方式中,中心节点可以向I类分布式节点下发第一数据模型Wi,用于I类分布式节点进行训练,得到第二数据模型Gi并上报至中心节点,其中,i表示该训练的轮数。中心节点可以收集II类分布式节点和III类分布式节点上报的数据子集Data1和Data2得到全局数据集合D,同时,中心节点可以对多个I类分布式节点上报的第二数据模型进行模型融合后,根据全局数据集合D对融合后的全局数据模型进行训练,得到下一轮次的第一数据模型Wi+1,直至模型收敛得到最终的全局目标数据模型。
另外,上述图6所示的分布式的数据模型训练方法也适用于前述的强化学习的场景,即分布式节点收集的设备数据可以包括状态参数和收益参数,用于分布式节点与中心节点协作进行训练,得到最优的数据模型。
在一种实施方式中,中心节点选定了N个I类分布式节点,用于协作进行训练;选择了K个II类分布式节点以及M个III类分布式节点,用于收集设备数据。其中,I类分布式节点和II类分布式节点由于本地配置有AI算法,具备数据推理能力,因此,可以根据中心节点下发的数据模型基于状态参数进行推理得到相应的动作,进而根据执行动作之后得到收益参数,从而将收集的多组状态参数与对应的收益参数上报给中心节点。
但是,III类分布式节点没有配置AI算法,不具备训练的能力,也不具备推理运算的能力,因此,需要借助于中心节点实现推理计算,以根据子节点的状态参数得到对应的收益参数。
示例性的,第三子节点属于上述的III类分布式节点。则上述图6所示的实施方式中,子节点收集的数据子集包括子节点的状态参数和收益参数,其中,中心节点接收来自第三子节点的数据子集,具体可以参照前述的Step1-Step6,此处不再赘述。
则相对应的,如图8所示,上述实施方式中的强化学习算法具体可以采用actor(演员)-critic(评论家)的深度强化学习算法。
由于I类分布式节点具备训练和数据推理能力,则需部署actor神经网络和critic神经网络网络。I类分布式节点可以用于根据本地收集的状态参数以及对应的收益参数对中心节点下发的第一数据模型Wi进行训练,得到I类分布式节点本地的第二数据模型Gi,并上报给中心节点用于全局数据模型的融合,以进行下一轮的训练。
II类分布式节点只有数据推理能力没有训练能力,则只需部署actor神经网络。II类分布式节点可以用于收集本地的状态参数以及对应的收益参数。具体为,II类分布式节点接收中心节点下发的第一数据模型Wi,根据本地的状态参数Sn输入第一数据模型Wi得到对应的执行动作An,根据动作An得到的反馈得到收益参数Rn。从而II类分布式节点可以将多次重复上述动作,收集状态参数Sn和收益参数Rn,分别得到对应的数据集合S和R。II类分布式节点可以将数据集合S和R上报给中心节点,用于全局数据的收集以完成全局训练。
III类分布式节点没有训练和数据推理能力,故其无需部署神经网络。III类分布式节点可以用于收集本地的状态参数以及对应的收益参数。可以借助于中心节点实现推理计算,即III类分布式节点将状态参数Sn上报至中心节点,中心节点根据第一数据模型Wi得到对应的执行动作An,中心节点将动作An下发给III类分布式节点,III类分布式节点根据动作An得到的反馈得到收益参数Rn。具体可以根据上述的Step1-Step6来实现。
可以理解的,本申请的多个实施例中同一个步骤或者具有相同功能的步骤或者消息在不同实施例之间可以互相参考借鉴。
基于上述的分布式数据管理的方法,本申请还提供数据模型训练的装置,如图9所示,该装置900包括接收模块901、发送模块902和处理模块903。
其中,接收模块901可以用于接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合。
发送模块902可以用于向第一子节点发送第一数据模型以及第一数据集合或者第一数据集合的子集,其中,第一子节点配置有人工智能AI算法。
接收模块901还可以用于接收来自第一子节点的第二数据模型,第二数据模型是基于第一数据集合或者第一数据集合的子集对第一数据模型进行训练得到的。
处理模块903可以用于根据第二数据模型对第一数据模型进行更新,得到目标数据模型.
发送模块902还可以用于向多个子节点发送目标数据模型,其中,多个子节点中包括第一子节点。
在一种可能的设计中,发送模块902具体用于:将中心节点本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至第一子节点。
在一种可能的设计中,接收模块901具体用于:接收来自第一子节点的第二数据模型的参数信息或者梯度信息。
在一种可能的设计中,处理模块903具体用于:将第二数据模型与第一数据模型进行模型融合,得到目标数据模型,或者,将第二数据模型与第一数据模型进行融合得到第三数据模型,根据第一数据集合或者第一数据集合的子集对第三数据模型进行训练,得到目标数据模型。
在一种可能的设计中,发送模块902具体还用于:根据发送数据的通信链路容量优先发送第一数据模型;若通信链路的剩余容量不足以满足第一数据集合的数据量,则根据通信链路的剩余容量对第一数据集合中的数据进行随机均匀采样,得到第一数据集合的子集,向第一子节点发送第一数据集合的子集。
在一种可能的设计中,若子节点的数据子集包括子节点的状态参数和收益参数,则接收模块901具体还用于:接收来自第二子节点的状态参数;处理模块903用于将状态参数输入中心节点本地的第一数据模型,得到状态参数对应的输出参数;发送模块902用于将输出参数发送至第二子节点,用于根据输出参数执行相应的动作;接收模块901还用于接收来自第二子节点的收益参数,收益参数用于指示根据输出参数执行相应的动作之后得到的反馈。
上述的装置900用于执行上述图3所示的实施方式中中心节点所执行的步骤,具体内容可以参照前述的实施方式,此处不再赘述。
另外,本申请还提供一种数据模型训练装置,该装置配置有人工智能AI算法,用于执行上述图3所示的实施方式中第一子节点所执行的步骤。如图9所示,该装置900包括接收模块901、发送模块902和处理模块903。
其中,接收模块901,用于接收来自中心节点的第一数据模型以及第一数据集合或者第一数据集合的子集,其中,第一数据集合是中心节点根据来自多个子节点的数据子集进行融合生成的。
处理模块903,用于根据第一数据集合或者第一数据集合的子集对第一数据模型进行训练,得到第二数据模型;
发送模块902,用于向中心节点发送第二数据模型;接收模块,还用于接收来自中心节点的目标数据模型,目标数据模型是根据第二数据模型进行更新得到的。
在一种可能的设计中,接收模块901具体用于:接收来自中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
在一种可能的设计中,若第一子节点具备数据收集能力,则处理模块903具体用于:将第一数据集合或者第一数据集合的子集与第一子节点本地收集的数据进行融合,得到第二数据集合;根据第二数据集合对第一数据模型进行训练,得到第二数据模型。
在一种可能的设计中,发送模块902具体用于:向中心节点发送第二数据模型的参数信息或者梯度信息。
另外,本申请还提供一种数据模型训练装置,该装置配置有人工智能AI算法,用于执行上述图6所示的实施方式中中心节点所执行的步骤。
如图9所示,该装置900包括接收模块901、发送模块902和处理模块903。
其中,发送模块902用于向第一子节点发送第一数据模型,其中,第一子节点配置有人工智能AI算法.
接收模块901用于接收来自第一子节点的第二数据模型,第二数据模型是基于第一子节点本地的数据对第一数据模型进行训练得到的。
处理模块903用于根据第二数据模型对第一数据模型进行更新,得到第三数据模型。
接收模块901还用于接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合。
处理模块903还用于根据第一数据集合对第三数据模型进行训练,得到目标数据模型,向多个子节点发送目标数据模型,其中,多个子节点中包括第一子节点。
在一种可能的设计中,发送模块902具体用于:将该装置本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至第一子节点。
在一种可能的设计中,接收模块901具体用于:接收来自第一子节点的第二数据模型,具体包括:接收来自第一子节点的第二数据模型的参数信息或者梯度信息。
在一种可能的设计中,处理模块903具体用于:根据第二数据模型对第一数据模型进行更新,得到第三数据模型,具体包括:将第二数据模型与第一数据模型进行模型融合,得到第三数据模型。
在一种可能的设计中,若子节点的数据子集包括子节点的状态参数和收益参数,则接收模块901具体用于:接收来自第二子节点的状态参数;处理模块用于将状态参数输入中心节点本地的第一数据模型,得到状态参数对应的输出参数;发送模块用于将输出参数发送至第二子节点,用于根据输出参数执行相应的动作;接收模块用于接收来自第二子节点的收益参数,收益参数用于指示根据输出参数执行相应的动作之后得到的反馈。
另外,本申请还提供一种数据模型训练装置,该装置配置有人工智能AI算法,用于执行上述图6所示的实施方式中第一子节点所执行的步骤。如图9所示,该装置900包括接收模块901、发送模块902和处理模块903。
其中,接收模块901用于接收来自中心节点的第一数据模型.
处理模块903用于根据装置本地的数据对第一数据模型进行训练,得到第二数据模型。
发送模块902用于向中心节点发送第二数据模型。
接收模块901还用于接收来自中心节点的目标数据模型,目标数据模型是根据第二数据模型进行更新得到的。
在一种可能的设计中,接收模块901具体用于:接收来自中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
在一种可能的设计中,发送模块902具体用于:向中心节点发送第二数据模型的参数信息或者梯度信息。
需要说明的是,上述的装置900中具体的执行过程和实施例可以参照上述方法实施例中中心节点和第一子节点执行的步骤和相关的描述,所解决的技术问题和带来的技术效果也可以参照前述实施例所述的内容,此处不再一一赘述。
在本实施例中,该装置可以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定电路、执行一个或多个软件或固件程序的处理器和存储器、集成逻辑电路、和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到上述装置可以采用如图2所示的形式。
示例性的,图9中的各处理模块的功能/实现过程可以通过图2中的处理器201调用存储器203中存储的计算机程序指令来实现。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,上述指令可由电子设备200的处理器201执行以完成上述实施例的方法。因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
本申请实施例还提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中中心节点或者各类子节点执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中中心节点或者各类子节点执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (30)
1.一种数据模型训练方法,其特征在于,应用于机器学习系统包括的中心节点,所述方法包括:
接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;
向第一子节点发送第一数据模型以及所述第一数据集合或者所述第一数据集合的子集,其中,所述第一子节点配置有人工智能AI算法;
接收来自所述第一子节点的第二数据模型,所述第二数据模型是基于所述第一数据集合或者所述第一数据集合的子集对所述第一数据模型进行训练得到的;
根据所述第二数据模型对所述第一数据模型进行更新,得到目标数据模型,向多个子节点发送所述目标数据模型,其中,所述多个子节点中包括所述第一子节点。
2.根据权利要求1所述的方法,其特征在于,所述向第一子节点发送第一数据模型,具体包括:
将所述中心节点本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至所述第一子节点。
3.根据权利要求1或2所述的方法,其特征在于,所述接收来自所述第一子节点的第二数据模型,具体包括:
接收来自所述第一子节点的所述第二数据模型的参数信息或者梯度信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述第二数据模型对所述第一数据模型进行更新,得到目标数据模型,具体包括:
将所述第二数据模型与所述第一数据模型进行模型融合,得到所述目标数据模型,或者,
将所述第二数据模型与所述第一数据模型进行融合得到第三数据模型,根据所述第一数据集合或者所述第一数据集合的子集对所述第三数据模型进行训练,得到所述目标数据模型。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述向第一子节点发送所述第一数据模型以及所述第一数据集合或者所述第一数据集合的子集,具体包括:
根据发送数据的通信链路容量优先发送所述第一数据模型;
若通信链路的剩余容量不足以满足所述第一数据集合的数据量,则根据所述通信链路的剩余容量对所述第一数据集合中的数据进行随机均匀采样,得到所述第一数据集合的子集,向所述第一子节点发送所述第一数据集合的子集。
6.根据权利要求1-5任一项所述的方法,其特征在于,若所述子节点的数据子集包括所述子节点的状态参数和收益参数,则接收来自多个子节点的数据子集,具体包括:
接收来自第二子节点的状态参数;
将所述状态参数输入所述中心节点本地的第一数据模型,得到所述状态参数对应的输出参数;
将所述输出参数发送至所述第二子节点,用于根据所述输出参数执行相应的动作;
接收来自所述第二子节点的收益参数,所述收益参数用于指示根据所述输出参数执行相应的动作之后得到的反馈。
7.一种数据模型训练方法,其特征在于,应用于机器学习系统包括的第一子节点,其中,所述第一子节点配置有人工智能AI算法,所述方法包括:
接收来自中心节点的第一数据模型以及第一数据集合或者所述第一数据集合的子集,其中,所述第一数据集合是所述中心节点根据来自多个子节点的数据子集进行融合生成的;
根据所述第一数据集合或者所述第一数据集合的子集对所述第一数据模型进行训练,得到第二数据模型;
向所述中心节点发送所述第二数据模型;
接收来自所述中心节点的目标数据模型,所述目标数据模型是根据所述第二数据模型进行更新得到的。
8.根据权利要求7所述的方法,其特征在于,所述接收来自中心节点的第一数据模型,具体包括:
接收来自所述中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
9.根据权利要求7或8所述的方法,其特征在于,若所述第一子节点具备数据收集能力,则所述根据所述第一数据集合或者所述第一数据集合的子集对所述第一数据模型进行训练,得到第二数据模型,具体包括:
将所述第一数据集合或者所述第一数据集合的子集与所述第一子节点本地收集的数据进行融合,得到第二数据集合;
根据所述第二数据集合对所述第一数据模型进行训练,得到第二数据模型。
10.根据权利要求7-9任一项所述的方法,其特征在于,所述向所述中心节点发送所述第二数据模型,具体包括:
向所述中心节点发送所述第二数据模型的参数信息或者梯度信息。
11.一种数据模型训练方法,其特征在于,应用于机器学习系统包括的中心节点,所述方法包括:
向第一子节点发送第一数据模型,其中,所述第一子节点配置有人工智能AI算法;
接收来自所述第一子节点的第二数据模型,所述第二数据模型是基于所述第一子节点本地的数据对所述第一数据模型进行训练得到的;
根据所述第二数据模型对所述第一数据模型进行更新,得到第三数据模型;
接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;
根据所述第一数据集合对所述第三数据模型进行训练,得到目标数据模型,向多个子节点发送所述目标数据模型,其中,所述多个子节点中包括所述第一子节点。
12.根据权利要求11所述的方法,其特征在于,所述向第一子节点发送第一数据模型,具体包括:
将所述中心节点本地的第一数据模型的参数信息和模型结构信息中的至少一种发送至所述第一子节点。
13.根据权利要求11或12所述的方法,其特征在于,所述接收来自所述第一子节点的第二数据模型,具体包括:
接收来自所述第一子节点的所述第二数据模型的参数信息或者梯度信息。
14.根据权利要求11-13任一项所述的方法,其特征在于,所述根据所述第二数据模型对所述第一数据模型进行更新,得到第三数据模型,具体包括:
将所述第二数据模型与所述第一数据模型进行模型融合,得到所述第三数据模型。
15.根据权利要求11-14任一项所述的方法,其特征在于,若所述子节点的数据子集包括所述子节点的状态参数和收益参数,则接收来自多个子节点的数据子集,具体包括:
接收来自第二子节点的状态参数;
将所述状态参数输入所述中心节点本地的第一数据模型,得到所述状态参数对应的输出参数;
将所述输出参数发送至所述第二子节点,用于根据所述输出参数执行相应的动作;
接收来自所述第二子节点的收益参数,所述收益参数用于指示根据所述输出参数执行相应的动作之后得到的反馈。
16.一种数据模型训练方法,其特征在于,应用于机器学习系统包括的第一子节点,其中,所述第一子节点配置有人工智能AI算法,所述方法包括:
接收来自中心节点的第一数据模型;
根据所述第一子节点本地的数据对所述第一数据模型进行训练,得到第二数据模型;
向所述中心节点发送所述第二数据模型;
接收来自所述中心节点的目标数据模型,所述目标数据模型是根据所述第二数据模型进行更新得到的。
17.根据权利要求16所述的方法,其特征在于,所述接收来自中心节点的第一数据模型,具体包括:
接收来自所述中心节点的第一数据模型的参数信息和模型结构信息中的至少一种。
18.根据权利要求16或17所述的方法,其特征在于,所述向所述中心节点发送所述第二数据模型,具体包括:
向所述中心节点发送所述第二数据模型的参数信息或者梯度信息。
19.一种数据模型训练装置,其特征在于,所述装置包括:
接收模块,用于接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;
发送模块,用于向第一子节点发送第一数据模型以及所述第一数据集合或者所述第一数据集合的子集,其中,所述第一子节点配置有人工智能AI算法;
所述接收模块,还用于接收来自所述第一子节点的第二数据模型,所述第二数据模型是基于所述第一数据集合或者所述第一数据集合的子集对所述第一数据模型进行训练得到的;
处理模块,用于根据所述第二数据模型对所述第一数据模型进行更新,得到目标数据模型;
所述发送模块,还用于向多个子节点发送所述目标数据模型,其中,所述多个子节点中包括所述第一子节点。
20.一种数据模型训练装置,其特征在于,所述装置配置有人工智能AI算法,所述装置包括:
接收模块,用于接收来自中心节点的第一数据模型以及第一数据集合或者所述第一数据集合的子集,其中,所述第一数据集合是所述中心节点根据来自多个子节点的数据子集进行融合生成的;
处理模块,用于根据所述第一数据集合或者所述第一数据集合的子集对所述第一数据模型进行训练,得到第二数据模型;
发送模块,用于向所述中心节点发送所述第二数据模型;
所述接收模块,还用于接收来自所述中心节点的目标数据模型,所述目标数据模型是根据所述第二数据模型进行更新得到的。
21.一种数据模型训练装置,其特征在于,所述装置包括:
发送模块,用于向第一子节点发送第一数据模型,其中,所述第一子节点配置有人工智能AI算法;
接收模块,用于接收来自所述第一子节点的第二数据模型,所述第二数据模型是基于所述第一子节点本地的数据对所述第一数据模型进行训练得到的;
处理模块,用于根据所述第二数据模型对所述第一数据模型进行更新,得到第三数据模型;
所述接收模块,还用于接收来自多个子节点的数据子集,并根据多个数据子集进行数据融合得到第一数据集合;
所述处理模块,还用于根据所述第一数据集合对所述第三数据模型进行训练,得到目标数据模型,向多个子节点发送所述目标数据模型,其中,所述多个子节点中包括所述第一子节点。
22.一种数据模型训练装置,其特征在于,所述装置配置有人工智能AI算法,所述装置包括:
接收模块,用于接收来自中心节点的第一数据模型;
处理模块,用于根据所述装置本地的数据对所述第一数据模型进行训练,得到第二数据模型;
发送模块,用于向所述中心节点发送所述第二数据模型;
所述接收模块,还用于接收来自所述中心节点的目标数据模型,所述目标数据模型是根据所述第二数据模型进行更新得到的。
23.一种通信装置,其特征在于,所述通信装置用于执行如权利要求1至6中任一项所述的方法。
24.一种通信装置,其特征在于,所述通信装置用于执行如权利要求7至10中任一项所述的方法。
25.一种通信装置,其特征在于,所述通信装置用于执行如权利要求11至15中任一项所述的方法。
26.一种通信装置,其特征在于,所述通信装置用于执行如权利要求16至18中任一项所述的方法。
27.一种通信装置,其特征在于,所述通信装置包括处理器,所述处理器与存储器耦合;
存储器,用于存储计算机程序或指令;
处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如权利要求1至6中任一项所述的方法。
28.一种通信装置,其特征在于,所述通信装置包括处理器,所述处理器与存储器耦合;
存储器,用于存储计算机程序或指令;
处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如权利要求7至10中任一项所述的方法。
29.一种通信装置,其特征在于,所述通信装置包括处理器,所述处理器与存储器耦合;
存储器,用于存储计算机程序或指令;
处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如权利要求11至15中任一项所述的方法。
30.一种通信装置,其特征在于,所述通信装置包括处理器,所述处理器与存储器耦合;
存储器,用于存储计算机程序或指令;
处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述通信装置执行如权利要求16至18中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011349018.4A CN114548416A (zh) | 2020-11-26 | 2020-11-26 | 数据模型训练方法及装置 |
PCT/CN2021/131907 WO2022111398A1 (zh) | 2020-11-26 | 2021-11-19 | 数据模型训练方法及装置 |
US18/313,590 US20230281513A1 (en) | 2020-11-26 | 2023-05-08 | Data model training method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011349018.4A CN114548416A (zh) | 2020-11-26 | 2020-11-26 | 数据模型训练方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114548416A true CN114548416A (zh) | 2022-05-27 |
Family
ID=81668170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011349018.4A Pending CN114548416A (zh) | 2020-11-26 | 2020-11-26 | 数据模型训练方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230281513A1 (zh) |
CN (1) | CN114548416A (zh) |
WO (1) | WO2022111398A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024012326A1 (zh) * | 2022-07-12 | 2024-01-18 | 华为技术有限公司 | 一种通信方法、装置及系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11556730B2 (en) * | 2018-03-30 | 2023-01-17 | Intel Corporation | Methods and apparatus for distributed use of a machine learning model |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10152676B1 (en) * | 2013-11-22 | 2018-12-11 | Amazon Technologies, Inc. | Distributed training of models using stochastic gradient descent |
US9563854B2 (en) * | 2014-01-06 | 2017-02-07 | Cisco Technology, Inc. | Distributed model training |
CN107330516B (zh) * | 2016-04-29 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 模型参数训练方法、装置及系统 |
CN110197128A (zh) * | 2019-05-08 | 2019-09-03 | 华南理工大学 | 基于边缘计算与云端统筹的人脸识别架构设计方法 |
CN110929886B (zh) * | 2019-12-06 | 2022-03-22 | 支付宝(杭州)信息技术有限公司 | 模型训练、预测方法及其系统 |
-
2020
- 2020-11-26 CN CN202011349018.4A patent/CN114548416A/zh active Pending
-
2021
- 2021-11-19 WO PCT/CN2021/131907 patent/WO2022111398A1/zh active Application Filing
-
2023
- 2023-05-08 US US18/313,590 patent/US20230281513A1/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024012326A1 (zh) * | 2022-07-12 | 2024-01-18 | 华为技术有限公司 | 一种通信方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20230281513A1 (en) | 2023-09-07 |
WO2022111398A1 (zh) | 2022-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lin et al. | ELECTRE II method to deal with probabilistic linguistic term sets and its application to edge computing | |
CN112153700B (zh) | 一种网络切片资源管理方法及设备 | |
EP4152797A1 (en) | Information processing method and related device | |
US20230281513A1 (en) | Data model training method and apparatus | |
CN113037877B (zh) | 云边端架构下时空数据及资源调度的优化方法 | |
EP4350572A1 (en) | Method, apparatus and system for generating neural network model, devices, medium and program product | |
EP4113386A2 (en) | Method, apparatus and system for federated learning, electronic device, computer readable medium | |
CN111222647A (zh) | 联邦学习系统优化方法、装置、设备及存储介质 | |
CN113821332B (zh) | 自动机器学习系统效能调优方法、装置、设备及介质 | |
CN115358487A (zh) | 面向电力数据共享的联邦学习聚合优化系统及方法 | |
CN115297008B (zh) | 基于智算网络的协同训练方法、装置、终端及存储介质 | |
Xiong et al. | A self-adaptive approach to service deployment under mobile edge computing for autonomous driving | |
Ateya et al. | Energy efficient offloading scheme for MEC-based augmented reality system | |
Park et al. | Collaborative virtual 3D object modeling for mobile augmented reality streaming services over 5G networks | |
Zhang | Storage optimization algorithm design of cloud computing edge node based on artificial intelligence technology | |
Ryabko et al. | Graph theory methods for fog computing: A pseudo-random task graph model for evaluating mobile cloud, fog and edge computing systems | |
CN116781788A (zh) | 服务决策方法以及服务决策装置 | |
CN115412401B (zh) | 训练虚拟网络嵌入模型及虚拟网络嵌入的方法和装置 | |
CN113992520B (zh) | 一种虚拟网络资源的部署方法和系统 | |
CN112906745B (zh) | 基于边缘协同的诚信智能网络训练方法 | |
CN115001692A (zh) | 模型更新方法及装置、计算机可读存储介质和电子设备 | |
CN109272180B (zh) | 云制造服务的实现方法、装置和云制造服务平台 | |
Zhang et al. | Deploying GIS services into the edge: A study from performance evaluation and optimization viewpoint | |
Lim et al. | Reinforcement learning-based virtual network embedding: A comprehensive survey | |
Barrachina‐Muñoz et al. | Deploying cloud‐native experimental platforms for zero‐touch management 5G and beyond networks |
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 |