CN115115020A - 数据处理方法及装置 - Google Patents
数据处理方法及装置 Download PDFInfo
- Publication number
- CN115115020A CN115115020A CN202110304438.9A CN202110304438A CN115115020A CN 115115020 A CN115115020 A CN 115115020A CN 202110304438 A CN202110304438 A CN 202110304438A CN 115115020 A CN115115020 A CN 115115020A
- Authority
- CN
- China
- Prior art keywords
- neural network
- node
- nodes
- parameters
- data processing
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 37
- 238000013528 artificial neural network Methods 0.000 claims abstract description 497
- 238000012545 processing Methods 0.000 claims abstract description 182
- 238000000034 method Methods 0.000 claims abstract description 109
- 230000002596 correlated effect Effects 0.000 claims abstract description 30
- 230000000875 corresponding effect Effects 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 20
- 230000003993 interaction Effects 0.000 claims description 5
- 239000000126 substance Substances 0.000 claims 1
- 238000004891 communication Methods 0.000 abstract description 55
- 239000011159 matrix material Substances 0.000 description 123
- 230000006870 function Effects 0.000 description 40
- 238000012549 training Methods 0.000 description 31
- 230000005540 biological transmission Effects 0.000 description 22
- 230000000694 effects Effects 0.000 description 21
- 239000013598 vector Substances 0.000 description 18
- 230000008901 benefit Effects 0.000 description 17
- 230000008859 change Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 230000002776 aggregation Effects 0.000 description 11
- 238000004220 aggregation Methods 0.000 description 11
- 238000011217 control strategy Methods 0.000 description 10
- 238000005259 measurement Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000002787 reinforcement Effects 0.000 description 10
- 238000013461 design Methods 0.000 description 9
- 230000002829 reductive effect Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 235000008694 Humulus lupulus Nutrition 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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/084—Backpropagation, e.g. using gradient descent
-
- 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/09—Supervised 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/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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- 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/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Mobile Radio Communication Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供一种数据处理方法及装置,能够降低神经网络的计算复杂度和计算量,从而提高数据处理效率,可应用于通信***中的节点,如第一节点。第一节点和第二节点存在邻接关系,且第一节点和第二节点用于执行同一类任务。该方法包括:获取第一数据,并通过第一神经网络,确定第一数据的处理结果,其中,第一神经网络是根据第一神经网络参数集合的组合确定的,该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。
Description
技术领域
本申请涉及通信领域,尤其涉及一种数据处理方法及装置。
背景技术
随着人工智能(artificial intelligence,AI)技术的发展,神经网络可以采用设备集群的方式部署,如设备集群内的每个节点都可以部署完整神经网络,该完整神经网络的网络规模与集群规模匹配。如此,每个节点可以独立地训练该完整神经网络,并使用训练后的完整神经网络完成相应的集群业务。
然而,由于每个节点部署的都是完整神经网络,故导致神经网络的计算复杂度高,计算量大,数据处理效率低。
发明内容
本申请实施例提供一种数据处理方法及装置,能够降低神经网络的计算复杂度和计算量,从而提高数据处理效率。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种数据处理方法。该方法应用于第一节点。第一节点和第二节点存在邻接关系,且第一节点和第二节点用于执行同一类任务。该方法包括:获取第一数据,并通过第一神经网络,确定第一数据的处理结果。其中,第一神经网络是根据第一神经网络参数集合的组合确定的。该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。
基于第一方面所述的方法,多个节点都可以执行同一类任务,第一节点可以根据多个节点中邻居节点的数量,如第二节点的数量,确定第一神经网络参数集合的数量,进而确定第一神经网络。第一神经网络的网络规模便可以与第二节点的数量正相关,以配合第二节点执行同一类任务。例如,由于完整神经网络的网络规模与集群规模匹配,即与设备集群的节点数量匹配,则当邻居节点的数量小于设备集群的节点数量时,第一神经网络的网络规模也小于完整神经网络的网络规模,故能够降低神经网络的计算复杂度和计算量,提高数据处理效率。
一种可能的设计方案中,第一神经网络可以包括:N个隐藏层。第i个隐藏层可以包括Mi个参数子集合。Mi个参数子集合中可以有m个参数子集合相同。Mi个参数子集合可以是根据第一神经网络参数集合的组合确定的。N为正整数,i为小于或等于N的正整数,M为大于1的整数,m为小于或等于Mi且大于1的整数。也就是说,第一神经网络可以是根据相同的参数子集合的组合确定的。如此,可以有效降低计算量,以快速地确定第一神经网络。
可选地,第一神经网络参数集合可以包括:第一参数子集合和/或第二参数子集合。换言之,第一神经网络可以是根据两种参数子集合的组合确定的。如此,可以进一步降低计算量,以更快速地确定第一神经网络。
进一步地,第i个隐藏层的神经网络结构可表示为:其中,Wi-1,i可以用于表示第i个隐藏层的神经网络结构。Si-1,i可以是根据第i个隐藏层对应的第一参数子集合确定的,Oi-1,i可以是根据第i个隐藏层对应的第二参数子集合确定的。应理解,第i个隐藏层的这种对称结构可使得第一神经网络具有置换不变性。比如,若第一数据的输入顺序变化,则第一神经网络输出的处理结果的顺序也相应变化,而处理结果本身保持不变,以便无论以什么顺序输入第一数据,第一神经网络都能够输出正确的处理结果。因此,相较于不具有置换不变性的神经网络,具有置换不变性的第一神经网络可以省略调整输入顺序这一步骤,以简化处理流程,从而可以提高数据处理效率。
进一步地,Wi-1,i中的行数量可以与第二节点的数量正相关,Wi-1,i中的列数量可以与第二节点的数量正相关。比如,Wi-1,i中的行数量可以等于第一节点与第二节点的数量之和,而Wi-1,i中的列数量可以等于第一节点与第二节点的数量之和,以便第一节点可以根据该数量之和,快速确定第一神经网络。
一种可能的设计方案中,若第二节点的数量从第一数量变化为第二数量,则第一神经网络参数集合的组合中,第一参数子集合的数量可以从第三数量相应调整为第四数量,第二参数子集合的数量可以从第五数量相应调整为第六数量。如此,可实现根据第二节点的数量变化,动态调整第一神经网络的网络规模,以便第一神经网络可以动态保持在最佳网络规模,从而避免网络规模冗余,以进一步提高数据处理效率。
一种可能的设计方案中,确定第一数据的处理结果之后,第一方面所述的方法还可以包括:确定第二神经网络参数集合,并发送第二神经网络参数集合。其中,第二神经网络参数集合可以是根据处理结果和第一神经网络确定的,如根据处理结果更新第一神经网络,从而获得第二神经网络参数集合。如此,可以实现第一神经网络的训练更新,以便第一神经网络精准度更高,输出的处理结果更准确。
一种可能的设计方案中,第二节点可以由如下一项或多项确定:节点所在的区域、节点的类型、节点所属的网络、或节点服务的用户。如此,第一节点可以根据实际业务需求,灵活地调整第二节点的数量,以确保第一节点能够与第二节点配合执行同一类任务,从而提高任务的可靠性。
第二方面,提供一种数据处理方法。该方法应用于第一节点。第一节点和第二节点存在邻接关系,且第一节点和第二节点用于执行同一类任务。该方法包括:获取第一神经网络参数集合,并根据第一神经网络参数集合的组合,确定第一神经网络,再通过第一神经网络,确定第一数据的处理结果。其中,该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。
基于第二方面所述的方法,由于多个节点都可以执行同一类任务,那么第一节点可以根据多个节点中邻居节点的数量,如第二节点的数量,确定第一神经网络参数集合的数量,进而确定第一神经网络。如此,第一神经网络的网络规模便可以与第二节点的数量正相关,以配合第二节点执行同一类任务。例如,当邻居节点的数量小于设备集群的节点数量时,第一神经网络只是完整神经网络的一部分,第一神经网的网络规模也小于完整神经网络的网络规模,从而能够降低神经网络的降低训练复杂度和训练计算量,提高训练效率。
第三方面,提供一种数据处理方法。该方法应用于第一设备。该方法包括:确定第一神经网络参数集合,并发送第一神经网络参数集合。其中,第一神经网络是根据第一神经网络参数集合的组合确定的。该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。第二节点和第一节点存在邻接关系,且第二节点和第一节点用于执行同一类任务。
基于第三方面所述的方法,由于第一神经网络是根据第一神经网络参数集合的组合确定的,那么第一神经网络参数集合中的参数的数量便可以小于第一神经网络的参数数量。相较于发送第一神经网络的所有神经网络参数,发送第一神经网络参数集合可以有效降低数据通信量,进而提高通信效率。
一种可能的设计方案中,在发送第一神经网络参数集合之后,第三方面所述的方法还可以包括:获取第二神经网络参数集合。其中,第二神经网络参数集合可以是根据第一数据的处理结果和第一神经网络确定的。
可选地,在获取第二神经网络参数集合之后,第三方面所述的方法还可以包括:根据第二神经网络参数集合和第三神经网络参数集合,确定第四神经网络参数集合。其中,第三神经网络参数集合可以由第二节点确定。第四神经网络参数集合可以用于更新第一神经网络。如此,实现了将第一节点和第二节点的训练结果聚合,以加快第一神经网络的训练速度,以便第一神经网络能够更快速地收敛,从而缩短训练时长,提高训练效率。此外,由于第二神经网络参数集合中的参数数量和第三神经网络参数集合中的参数数量都小于第一神经网络的参数数量,则相较于聚合神经网络的所有神经网络参数,聚合第二神经网络参数集合中的参数和第三神经网络参数集合中的参数可以有效降低计算量,提高聚合速度。
第四方面,提供一种数据处理装置。该装置应用于第一节点。第一节点和第二节点存在邻接关系,且第一节点和第二节点用于执行同一类任务。该装置包括:收发模块和处理模块。其中,收发模块,用于获取第一数据。处理模块,用于通过第一神经网络,确定第一数据的处理结果。其中,第一神经网络是根据第一神经网络参数集合的组合确定的。该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。
一种可能的设计方案中,第一神经网络可以包括:N个隐藏层。第i个隐藏层可以包括Mi个参数子集合。Mi个参数子集合中可以有m个参数子集合相同。Mi个参数子集合可以是根据第一神经网络参数集合的组合确定的。N为正整数,i为小于或等于N的正整数,Mi为大于1的整数,m为小于或等于M且大于1的整数。
可选地,第一神经网络参数集合可以包括:第一参数子集合和/或第二参数子集合。
进一步地,第i个隐藏层的神经网络结构可表示为:其中,Wi-1,i可以用于表示第i个隐藏层的神经网络结构。si-1,i可以是根据第i个隐藏层对应的第一参数子集合确定的,Oi-1,i可以是根据第i个隐藏层对应的第二参数子集合确定的。
进一步地,Wi-1,i中的行数量可以与第二节点的数量正相关,Wi-1,i中的列数量可以与第二节点的数量正相关。
一种可能的设计方案中,若第二节点的数量从第一数量变化为第二数量,则第一神经网络参数集合的组合中,第一参数子集合的数量可以从第三数量相应调整为第四数量,第二参数子集合的数量可以从第五数量相应调整为第六数量。
一种可能的设计方案中,处理模块确定第一数据的处理结果之后,处理模块,还用于确定第二神经网络参数集合。收发模块,还用于发送第二神经网络参数集合。其中,第二神经网络参数集合可以是根据处理结果和第一神经网络确定的。
一种可能的设计方案中,第二节点可以由如下一项或多项确定:节点所在的区域、节点的类型、节点所属的网络、或节点服务的用户。
可选地,收发模块可以包括接收模块和发送模块。其中,发送模块用于实现第四方面所述的装置的发送功能,接收模块用于实现第四方面所述的装置的接收功能。
可选地,第四方面所述的装置还可以包括存储模块,该存储模块存储有程序或指令。当处理模块执行该程序或指令时,使得该装置可以执行第一方面所述的方法。
需要说明的是,第四方面所述的装置可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(***)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
此外,第四方面所述的装置的技术效果可以参考第一方面所述的方法的技术效果,此处不再赘述。
第五方面,提供一种数据处理装置。该装置应用于第一节点。第一节点和第二节点存在邻接关系,且第一节点和第二节点用于执行同一类任务。该装置包括:收发模块和处理模块。其中,收发模块,用于获取第一神经网络参数集合。处理模块,用于根据第一神经网络参数集合的组合,确定第一神经网络,再通过第一神经网络,确定第一数据的处理结果。其中,该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。
可选地,收发模块可以包括接收模块和发送模块。其中,发送模块用于实现第五方面所述的装置的发送功能,接收模块用于实现第五方面所述的装置的接收功能。
可选地,第五方面所述的装置还可以包括存储模块,该存储模块存储有程序或指令。当处理模块执行该程序或指令时,使得该装置可以执行第二方面所述的方法。
需要说明的是,第五方面所述的装置可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(***)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
此外,第五方面所述的装置的技术效果可以参考第二方面所述的方法的技术效果,此处不再赘述。
第六方面,提供一种数据处理装置。该装置应用于第一设备。该装置包括:收发模块和处理模块。其中,处理模块,用于确定第一神经网络参数集合。收发模块,用于发送第一神经网络参数集合。其中,第一神经网络是根据第一神经网络参数集合的组合确定的。该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。第二节点和第一节点存在邻接关系,且第二节点和第一节点用于执行同一类任务。
一种可能的设计方案中,收发模块在发送第一神经网络参数集合之后,收发模块,还用于获取第二神经网络参数集合。其中,第二神经网络参数集合可以是根据第一数据的处理结果和第一神经网络确定的。
可选地,收发模块在获取第二神经网络参数集合之后,处理模块,还用于根据第二神经网络参数集合和第三神经网络参数集合,确定第四神经网络参数集合。其中,第三神经网络参数集合可以由第二节点确定。第四神经网络参数集合可以用于更新第一神经网络。
可选地,收发模块可以包括接收模块和发送模块。其中,发送模块用于实现第六方面所述的装置的发送功能,接收模块用于实现第六方面所述的装置的接收功能。
可选地,第六方面所述的装置还可以包括存储模块,该存储模块存储有程序或指令。当处理模块执行该程序或指令时,使得该装置可以执行第三方面所述的方法。
需要说明的是,第六方面所述的装置可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(***)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
此外,第六方面所述的装置的技术效果可以参考第三方面所述的方法的技术效果,此处不再赘述。
第七方面,提供一种数据处理装置。该装置包括:处理器,该处理器与存储器耦合,该处理器用于执行存储器中存储的计算机程序,以使得该装置执行第一方面至第三方面中任意一种可能的实现方式所述的方法。
在一种可能的设计方案中,第七方面所述的装置还可以包括收发器。该收发器可以为收发电路或接口电路。该收发器可以用于第七方面所述的装置与其他装置通信。
在本申请中,第七方面所述的装置可以为第一方面、第二方面、或第三方面中的终端设备或网络设备,或者可设置于该终端设备或网络设备中的芯片(***)或其他部件或组件,或者包含该终端设备或网络设备的装置。
此外,第七方面所述的装置的技术效果可以参考第一方面至第三方面中任意一种实现方式所述的方法的技术效果,此处不再赘述。
第八方面,提供了一种数据处理装置。该装置包括:处理器和存储器;该存储器用于存储计算机程序,当该处理器执行该计算机程序时,以使该装置执行第一方面至第三方面中的任意一种实现方式所述的方法。
在一种可能的设计方案中,第八方面所述的装置还可以包括收发器。该收发器可以为收发电路或接口电路。该收发器可以用于第八方面所述的装置与其他装置通信。
在本申请中,第八方面所述的装置可以为第一方面、第二方面、或第三方面中的终端设备或网络设备,或者可设置于该终端设备或网络设备中的芯片(***)或其他部件或组件,或者包含该终端设备或网络设备的装置。
此外,第八方面所述的装置的技术效果可以参考第一方面至第三方面中任意一种实现方式所述的方法的技术效果,此处不再赘述。
第九方面,提供了一种数据处理装置。该装置包括:处理器和接口电路。其中,接口电路,用于接收代码指令并传输至该处理器;处理器用于运行该代码指令以执行第一方面至第三方面中的任意一种实现方式所述的方法。
可选地,第九方面所述的装置还可以包括:接收器和发送器。其中,接收器用于实现该装置的接收功能,发送器用于实现该装置的发送功能。可选地,该发送器和接收器也可以集成为一个器件,如收发器。其中,收发器则用于实现该装置的发送功能和接收功能。
可选地,第九方面所述的装置还可以包括存储器,该存储器存储有程序或指令。当第九方面所述的处理器执行该程序或指令时,使得该装置可以执行第一方面至第三方面中的任意一种实现方式所述的方法。
在本申请中,第九方面所述的装置可以为第一方面、第二方面、或第三方面中的终端设备或网络设备,或者可设置于该终端设备或网络设备中的芯片(***)或其他部件或组件,或者包含该终端设备或网络设备的装置。
此外,第九方面所述的装置的技术效果可以参考第一方面至第三方面中任意一种实现方式所述的方法的技术效果,此处不再赘述。
第十方面,提供了一种数据处理装置。该装置包括处理器和收发器,其中,收发器可以为收发电路或接口电路,该收发器用于该装置和其他装置之间进行信息交互,该处理器执行程序指令,用以执行第一方面至第三方面中的任意一种实现方式所述的方法。
可选地,第十方面所述的装置还可以包括存储器,该存储器存储有程序或指令。当第十方面所述的处理器执行该程序或指令时,使得该装置可以执行第一方面至第三方面中的任意一种实现方式所述的方法。
在本申请中,第十方面所述的装置可以为第一方面、第二方面、或第三方面中的终端设备或网络设备,或者可设置于该终端设备或网络设备中的芯片(***)或其他部件或组件,或者包含该终端设备或网络设备的装置。
此外,第十方面所述的装置的技术效果可以参考第一方面至第三方面中任意一种实现方式所述的方法的技术效果,此处不再赘述。
第十一方面,提供一种通信***。该通信***包括一个或多个终端设备,以及一个或多个网络设备。该终端设备或网络设备用于执行第一方面至第三方面中的任意一种实现方式所述的方法。
第十二方面,提供一种计算机可读存储介质,包括:计算机程序或指令;当该计算机程序或指令在计算机上运行时,使得该计算机执行第一方面至第三方面中任意一种可能的实现方式所述的方法被执行。
第十三方面,提供一种计算机程序产品,包括计算机程序或指令,当该计算机程序或指令在计算机上运行时,使得该计算机执行第一方面至第三方面中任意一种可能的实现方式所述的方法被执行。
附图说明
图1为本申请实施例提供的通信***的架构示意图一;
图2为本申请实施例提供的数据处理方法的流程示意图一;
图3为本申请实施例提供的神经网络的架构示意图一;
图4为本申请实施例提供的通信***的架构示意图二;
图5为本申请实施例提供的神经网络的架构示意图二;
图6为本申请实施例提供的数据处理方法的帧结构示意图;
图7为本申请实施例提供的数据处理方法的流程示意图二;
图8为本申请实施例提供的数据处理方法的流程示意图三;
图9为本申请实施例提供的数据处理装置的结构示意图一;
图10为本申请实施例提供的数据处理装置的结构示意图二。
具体实施方式
首先介绍本申请实施例所涉及的技术术语。
置换不变性
其中,置换不变性是指:在输入参数的输入顺序变化时,输出结果的输出顺序也相应变化,但输出结果本身不会变化。
比如,对于具有置换不变性的方程Y=f(X),若输入参数为X=[x2,x1,…,xK],则方程Y=f(X)的输出结果可以为Y=[y1,y2,…,yK]。其中,K为大于1的整数,y1为x1的输出结果,y2为x2的输出结果,依次类推,yK为xK的输出结果。若输入参数的输入顺序变化为X=[x2,x1,…,xK],则方程Y=f(X)的输出结果只是输出顺序相应变化,如输出顺序可以为Y=[y2,y1,…,yK],但输出结果本身不会变化,如y1仍为x1的为输出结果,y2仍为x2的为输出结果,依次类推,yK仍为xK的为输出结果。
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例的技术方案可以应用于各种通信***,包括但不限于:无线保真(wireless fidelity,WiFi)***,车到任意物体(vehicle to everything,V2X)通信***、设备间(device-todevie,D2D)通信***、车联网通信***、窄带物联网***(narrow band-internet of things,NB-IoT)、第4代(4th generation,4G)移动通信***,如长期演进(long term evolution,LTE)***、第五代(5th generation,5G)移动通信***,如新空口(new radio,NR)***,以及未来的通信***,如第六代(6th generation,6G)移动通信***等。
本申请将围绕可包括多个设备、组件、模块等的***来呈现各个方面、实施例或特征。应当理解和明白的是,各个***可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
另外,在本申请实施例中,“示例地”、“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例中,“的(of)”,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
本申请实施例中,有时候下标如W1可能会笔误为非下标的形式如W1,在不强调其区别时,其所要表达的含义是一致的。
本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
为便于理解本申请实施例,首先以图1中示出的通信***为例详细说明适用于本申请实施例的通信***。示例性地,图1为本申请实施例提供的数据处理方法所适用的一种通信***的架构示意图。
如图1所示,该通信***包括多个节点(node)。其中,多个节点可以构成设备集群。每个节点都可以是终端设备或网络设备。
上述终端设备为接入上述通信***,且具有收发功能的终端或可设置于该终端的芯片或芯片***。该终端设备也可以称为用户装置、接入终端、用户单元(subscriberunit)、用户站、移动站、移动台(mobile station,MS)、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。本申请的实施例中的终端设备可以是手机(mobile phone)、蜂窝电话(cellular phone)、智能手机(smart phone)、平板电脑(Pad)、可穿戴设备、无线调制解调器(modem)、手持设备(handset)、膝上型电脑(laptopcomputer)、机器类型通信(machine type communication,MTC)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、车载终端、具有终端功能的路边单元(road side unit,RSU)等。本申请的终端设备还可以是作为一个或多个部件或者单元而内置于车辆的车载模块、车载模组、车载部件、车载芯片或者车载单元,车辆通过内置的所述车载模块、车载模组、车载部件、车载芯片或者车载单元可以实施本申请提供的数据处理方法。
其中,上述网络设备为位于上述通信***的网络侧,且具有收发功能的设备或可设置于该设备的芯片或芯片***。该网络设备包括但不限于:无线保真(wirelessfidelity,WiFi)***中的接入点(access point,AP)、基站(base station,BS)。其中,接入点可以是家庭网关、路由器、服务器、交换机、网桥等。基站可以是宏基站、微基站(也称为小站)、中继站、演进型节点B(evolved Node B,eNB)、无线网络控制器(radio networkcontroller,RNC)、节点B(Node B,NB)、家庭基站(例如,home evolved NodeB,或home NodeB,HNB)、无线中继节点、无线回传节点、传输点(transmission and reception point,TRP或者transmission point,TP)等,还可以为5G,如,新空口(new radio,NR)***中的gNB,或,传输点(TRP或TP),5G***中的基站的一个或一组(包括多个天线面板)天线面板,或者,还可以为构成gNB或传输点的网络节点,如有源天线处理单元(active antenna unit,AAU),或基带单元(baseband unit,BBU)、远端射频单元(remote radio unit,RRU),或,分布式单元(distributed unit,DU)、具有基站功能的RSU等。其中,BBU和RRU可以放置在不同的地方,例如:RRU可以放置于高话务量的区域,BBU放置于中心机房。又例如,BBU和RRU也可以放置在同一机房。再例如,BBU和RRU也可以为一个机架下的不同部件。
进一步地,图1为通信***的架构示意图。其中,图1中的连线可以表示通信***中各节点之间的通信连接关系。如图1所示,在通信***的多个节点中,每个节点可以部署上述具有置换不变性的神经网络,以便多个节点可以通过各自的神经网络配合执行同一类任务(下称为第一类任务)。例如,图1所示的6个节点中,节点1-节点5可以共同为一个终端设备提供服务,或者,节点1-节点5可以配合完成各自的功率控制。如此,可以认为节点1-节点5属于同一个设备集群。但由于节点6无法为该终端设备提供服务,或者,无法与节点1-节点5配合完成节点6的功率控制,则节点6不属于该设备集群。
其中,每个节点的神经网络参数可以由第一设备下发。该第一设备可以是通信***中除上述多个节点以外的设备,或者也可以是上述多个节点中的某一个或多个节点。
其中,每个节点的神经网络的网络规模可以是,根据与该节点存在邻接关系的节点,如根据邻居节点的数量确定。其中,每个节点的邻居节点的数量与该节点的神经网络的网络规模正相关。例如,图1中,若节点1的邻居节点有2个(节点3和节点4),节点2的邻居节点有1个(节点5),则在配合执行第一类任务时,节点1可以与2个邻居节点进行数据交互,而节点2只与1个邻居节点进行数据交互。这种情况下,节点1的数据交互量可以大于节点2的数据交互量,从而导致节点1的数据处理量大于节点2的数据处理量。由于节点1的数据处理量大于节点2的数据处理量,那么节点1的神经网络的网络规模则应当大于节点2的神经网络的网络规模,以确保节点1能够处理大批量的数据。
为便于理解,在下面的方法实施例中,本申请以通信***中的第一设备、第一节点和第二节点,且第一设备、第一节点和第二节点是不同设备为例,对第一设备下发上述神经网络参数,以及多个节点通过神经网络配合执行同一类任务的实现原理进行具体介绍。
应当指出的是,本申请实施例中的方案还可以应用于其他通信***中,相应的名称也可以用其他通信***中的对应功能的名称进行替代。
应理解,图1仅为便于理解而示例的简化示意图,该通信***中还可以包括其他网络设备,和/或,其他终端设备,图1中未予以画出。
下面将结合图2-图8对本申请实施例提供的数据处理方法进行具体阐述。
示例性地,图2为本申请实施例提供的数据处理方法的流程示意图一。该数据处理方法可以适用于图1所示的设备集群中任意两个节点之间的通信,如第一节点和第二节点之间的通信。
如图2所示,该数据处理方法包括如下步骤:
S201,第一节点获取第一数据。
其中,第一数据可以包括:第一节点的数据,和/或,第二节点的数据。
其中,第一节点和第二节点可以用于执行第一类任务,且第一节点和第二节点存在邻接关系,比如,第二节点可以是第一节点的邻居节点。其中,第二节点可以由如下一项或多项确定:节点所在的区域,节点的类型、节点所属的网络、或节点服务的用户。可选地,第二节点也可以基于无线链路的信噪比(signal noise ratio,SNR)、信道的容量(capacity),节点运算能力、负载情况、同步能力等确定,对此不予限定。为便于理解,下面分别以根据节点所在的区域,节点的类型、节点所属的网络、或节点服务的用户确定第二节点为例进行介绍。
场景A,第二节点由节点所在的区域确定
其中,节点所在的区域的位置关系,可以表示节点在网络中的连接关系。若两个节点所在的区域相邻,可以直接相互通信,则表示这两个节点直接连接。如此,一个节点可以是另一个节点的下一跳节点。又例如,若两个节点所在的区域之间间隔有其他区域,这两个节点间的相互通信需要通过其他节点,则表示这两节点之间通过其他节点间接连接。如此,一个节点可以是另一个节点的下n跳节点,n为大于1的整数。这种情况下,节点所在的区域的位置关系可以表示节点之间的跳数关系。如此,节点之间的跳数在预设跳数以内的两个节点可以视为存在邻接关系。其中,预设跳数可以根据实际需求设置,如设置为1跳,2跳,3跳等,对此不予限定。因此,第一节点根据节点所在的区域确定第二节点可以是:根据节点之间的跳数关系,确定与第一节点之间的跳数在预设跳数以内的节点,即第二节点。比如,第一节点可以根据每个节点的任务类型,从设备集群中确定用于执行该第一类任务的节点,再根据节点的跳数关系,从用于执行该第一类任务的节点中确定第二节点。下面具体介绍。
具体而言,第一节点可以通过中心式方法或分布式方法,确定设备集群中每个节点的任务类型,从而确定用于执行第一类任务的节点。
其中,中心式方法是指:知晓每个节点的任务类型的中心控制设备,可以向设备集群广播指示信息。例如,中心控制设备可以通过广播信道,如物理广播信道(physicalbroadcast channel,PBCH),和/或控制信道,如物理下行控制信道(physical downlinkcontrol channel,PDCCH),向设备集群广播指示信息。其中,中心控制设备可以是设备集群中的节点、核心网网元、用户设备(user equipment,UE)等,对此不予限定。指示信息可以指示每个节点的任务类型,且可以承载在***信息块(system information block,SIB)、无线资源控制(radio resource control,RRC)信令、下行控制信息(Downlink controlinformation,DCI)中。如此,第一节点可以根据中心控制节点的指示信息指示的任务类型,从设备集群确定用于执行第一类任务的节点。为便于理解,下面结合图1,通过一个示例具体介绍。
示例性地,中心控制节点广播的指示信息可以指示:节点1{任务1,任务2}、节点2{任务1,任务2,任务3}、节点3{任务2,任务3}、节点4{任务2,任务4}、节点5{任务1,任务2}、以及节点6{任务3,任务4}。若第一类任务为任务2,则第一节点,如节点1可以确定节点2-节点5为用于执行第一类任务的节点。
可选地,中心控制节点广播的指示信息还可以指示:任务1{节点1,节点2,节点5}、任务2{节点2,节点3,节点4,节点5}、任务3{节点2,节点3,节点6}、任务4{节点4,节点6}。如此,也可以确定节点2-节点5为用于执行第一类任务的节点。
应理解,若中心控制设备是设备集群中的节点,且与第一节点是同一设备,则第一节点可以直接确定用于执行第一类任务的节点。
上述分布式方法是指:设备集群中的每个节点可以向设备集群广播该节点的指示信息。例如,每个节点可以通过设备到设备(device-to-device,D2D)通信链路,如侧链通信(sidelink)中的承载物理侧行链路控制信道(physcial sidelink control channel,PSCCH)、物理侧行链路共享信道(physcial sidelink share channel,PSSCH)等,向设备集群广播该节点的指示信息。其中,指示信息可以指示该节点的任务类型,且可以承载在侧行控制信息(sidelink control information,SCI)中。如此,第一节点可以根据设备集群中每个节点的指示信息指示的任务类型,从设备集群确定用于执行第一类任务的节点。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,节点1广播的指示信息可以指示:节点1{任务1,任务2},节点2广播的指示信息指示:节点2{任务1,任务2,任务3},节点3广播的指示信息指示:节点3{任务2,任务3},节点4广播的指示信息指示:节点4{任务2,任务4},节点5广播的指示信息指示:节点5{任务1,任务2},以及节点6广播的指示信息指示:节点6{任务3,任务4}。若第一类任务为任务2,则第一节点,如节点1也可以确定节点2-节点5为用于执行第一类任务的节点。
进一步地,第一节点确定用于执行第一类任务的节点后,可根据该连接关系从用于执行第一类任务的节点中,确定第二节点。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,若预设跳数为1,则第一节点,如节点1根据图1所示的连接关系,可以从节点2-节点5中,确定节点1分别与节点3和节点4之间的跳数等于预设跳数,从而确定节点3和节点4为第二节点。若预设跳数为2,则节点1可以确定节点3-节点5为第二节点。若预设跳数为3,则节点1可以确定节点2-节点5为第二节点。
应理解,上述确定第二节点的方式仅为示例性地方式,并不作为限定。例如,第一节点也可以先根据跳数关系,确定从设备集群中确定满足该跳数关系的节点,再根据第一类任务的类型,从满足该跳数关系的节点中确定第二节点。
场景B、第二节点由节点的类型确定
其中,节点的类型可以是设备类型。其中,若两个节点的设备类型相同,如两个节点都是基站,则这两个节点可以视为存在邻接关系。反之,若两个节点的设备类型不同,如一个节点是基站,而另一个节点是安全网关,则这两个节点可以视为不存在邻接关系。如此,第一节点可以根据第一节点的设备类型确定第二节点。比如,第一节点可以根据每个节点的任务类型,从设备集群中确定用于执行该第一类任务的节点,再根据第一节点的设备类型,从用于执行该第一类任务的节点中确定第二节点。下面具体介绍。
具体而言,第一节点也可以通过中心式方法或分布式方法,从设备集群中确定用于执行该第一类任务的节点,并从用于执行该第一类任务的节点中确定第二节点。
一方面,与上述场景A中介绍的中心式方法不同的是,在场景B中,中心控制设备广播的指示信息不仅可以指示每个节点的任务类型,还可以指示每个节点的设备类型。如此,第一节点可以根据中心控制节点的指示信息指示的任务类型,从设备集群确定用于执行第一类任务的节点,并根据该指示信息指示的设备类型,从用于执行第一类任务的节点中确定第二节点。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,中心控制节点广播的指示信息可以指示:节点1的设备类型为类型1、节点2的设备类型为类型2、节点3的设备类型为类型1、节点4的设备类型为类型1、以及节点5的设备类型为类型2。如此,第一节点,如节点1可以从节点2-节点5中,确定节点3和节点4与节点1的设备类型相同,从而确定节点3和节点4为第二节点。
可选地,中心控制节点广播的指示信息还可以指示:类型1{节点1,节点3,节点4}、类型2{节点2,节点5},从而也可以确定节点3和节点4为第二节点。
另一方面,与上述场景A中介绍的分布式方法不同的是,在场景B中,每个节点广播的指示信息不仅可以指示该节点的任务类型,还可以指示该节点的设备类型。如此,第一节点可以根据设备集群中每个节点的指示信息指示的任务类型,从设备集群确定用于执行第一类任务的节点,并根据该指示信息指示的设备类型,从用于执行第一类任务的节点中确定第二节点。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,若节点1广播的指示信息指示:节点1的设备类型为类型1,节点2广播的指示信息指示:节点2的设备类型为类型2,节点3广播的指示信息指示:节点3的设备类型为类型1,节点4广播的指示信息指示:节点4的设备类型为类型1,以及节点5广播的指示信息指示:节点5的设备类型为类型2,则第一节点,如节点1也可以确定节点3和节点4为第二节点。
应理解,上述确定第二节点的方式仅为示例性地方式,并不作为限定。例如,第一节点也可以先根据第一节点的设备类型,从设备集群中确定相同类型的节点,再根据第一类任务的类型,从相同类型的节点中确定第二节点。
场景C、第二节点由节点所属的网络确定
其中,节点所属的网络可以是节点所属的物理网络,如接入网或核心网,或者逻辑网络,如网络切片。以网络切片为例,若两个节点属于同一个网络切片,则这两个节点可以视为存在邻接关系。反之,若两个节点属于不同的两个网络切片,则这两个节点可以视为不存在邻接关系。如此,第一节点可以根据第一节点所属的网络切片确定第二节点。比如,第一节点可以根据每个节点的类型,从设备集群中确定用于执行该第一类任务的节点,再根据第一节点所属的网络切片,从用于执行该第一类任务的节点中确定第二节点。下面具体介绍。
具体而言,第一节点也可以通过中心式方法或分布式方法,从设备集群中确定用于执行该第一类任务的节点,并从用于执行该第一类任务的节点中确定第二节点。
一方面,与上述场景A中介绍的中心式方法不同的是,在场景C中,中心控制设备广播的指示信息不仅可以指示每个节点的任务类型,还可以指示每个节点所属的网络切片。如此,第一节点可以根据中心控制节点的指示信息指示的任务类型,从设备集群确定用于执行第一类任务的节点,并根据该指示信息指示的网络切片,从用于执行第一类任务的节点中确定第二节点。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,中心控制节点广播的指示信息指示:节点1属于网络切片1、节点2属于网络切片2、节点3属于网络切片1、节点4属于网络切片1、以及节点5属于网络切片1。如此,第一节点,如节点1可以从节点2-节点5中,确定节点3-节点5与节点1所属的同一网络切片,从而确定节点3-节点5为第二节点。
可选地,中心控制节点广播的指示信息还可以指示:网络切片1{节点1,节点3,节点4}、网络切片2{节点2,节点5},如此,也可以确定节点3和节点4为第二节点。
另一方面,与上述场景A中介绍的分布式方法不同的是,在场景C中,每个节点广播的指示信息不仅可以指示该节点的任务类型,还可以指示该节点所属的网络切片。如此,第一节点可以根据设备集群中每个节点的指示信息指示的任务类型,从设备集群确定用于执行第一类任务的节点,并根据该指示信息指示的网络切片,从用于执行第一类任务的节点中确定第二节点。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,节点1广播的指示信息指示:节点1属于网络切片1,节点2广播的指示信息指示:节点2属于网络切片2,节点3广播的指示信息指示:节点3属于网络切片1,节点4广播的指示信息指示:节点4属于网络切片1,以及节点5广播的指示信息指示:节点5属于网络切片1。如此,第一节点,如节点1也可以确定节点3-节点5为第二节点。
应理解,上述确定第二节点的方式仅为示例性地方式,并不作为限定。例如,第一节点也可以先根据第一节点所属的网络切片,从设备集群中确定属于相同网络切片的节点,再根据第一类任务的类型,从属于相同网络切片的节点中确定第二节点。
场景D、第二节点由节点服务的用户确定
其中,节点为用户提供的服务可以是接入服务、网络服务等。其中,若两个节点为相同的用户提供服务,则这两个节点视为存在邻接关系;反之,若两个节点分别为不同的用户提供服务,则这两个节点视为不存在邻接关系。其中,相同的用户可以是同一个用户、同一类用户,同一个组播组的用户、位于同一区域的用户等。比如,以TRP节点为例,若两个TRP节点为同一个用户提供数据传输服务,则这两个TRP可以视为存在邻接关系;反之,若两个TRP分别为不同的两个用户提供数据传输服务,则这两个TRP视为不存在邻接关系。下面具体介绍。
具体而言,在场景D中,用户可以向多个节点广播指示信息,以指示该用户由哪些节点服务。如此,第一节点可以根据用户广播的指示信息指示的服务节点,从用于执行第一类任务的节点中确定第二节点。可选地,在场景D中,执行第一类任务的节点可以采用上述中心式方法或分布式方法确定,具体实现可以参考上述场景A-C中,任一场景中的相关介绍,在此不再赘述。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,用户广播的指示信息可以指示:节点1服务用户1、节点2服务用户1、节点3服务用户1、节点4服务用户1、以及节点5服务用户1。如此,第一节点,如节点1可以从节点2-节点5中,确定节点2-节点5与节点1服务同一用户,从而确定节点2-节点5为第二节点。
可选地,用户广播的指示信息还可以指示:用户1接收{节点2,节点3,节点4,节点5}的服务,如此,也可以确定节点2-节点5为第二节点。
应理解,上述确定第二节点的方式仅为示例性地方式,并不作为限定。例如,第一节点也可以先根据用户发送的指示信息,从设备集群中确定服务相同用户的节点,再根据第一类任务的类型,从服务相同用户的节点中确定第二节点。
进一步地,根据上述介绍可知,由于第一数据可以包括:第一节点的数据,和/或,第二节点的数据,则对于第一节点的数据,第一节点可以从本地获取该数据,而对于第二节点的数据,第一节点可以从第二节点获取。然后,第一节点可以继续执行下述S302。
S202,第一节点通过第一神经网络,确定第一数据的处理结果。
其中,第一神经网络可以是第一节点根据第一神经网络参数集合的组合确定的。其中,该组合中的第一神经网络参数集合的数量与第二节点的数量正相关。第一神经网络参数集合可以是第一节点预先配置好的参数集合,或者,也可以是从第一设备获取的参数集合。
其中,第一神经网络参数集合可以包括:第一参数子集合和/或第二参数子集合。第一参数子集合与第二参数子集合是两种不同的参数子集合。
可选地,若第一神经网络包括N个隐藏层,则第一参数子集合和第二参数子集合可以是N组。如此,第i组第一参数子集合和第二参数子集合可以用于确定第i个隐藏层的神经网络结构。
具体而言,由于,第i个隐藏层对应的输出向量hi,与第i-1个隐藏层对应的输出向量hi-1之间的关系可以通过下式(1)表示:
hi=σ(wi-1,ihi-1+bi);(1)
其中,wi-1,i可以是矩阵,且可以根据第i个隐藏层对应的一部分神经网络参数集合的确定,如根据神经元的权重参数集合确定。bi可以是矩阵,且可以根据第i个隐藏层对应的另一部分神经网络参数集合确定,如根据神经元的偏置参数集合确定。σ可以为激活函数,如可以是线性整流函数(rectified linear unit,ReLU)、双曲正切函数(hyperbolictangent function)等。N为正整数,i为小于或等于N的整数。
如此,若设置Wi-1,i=[wi-1,i bi],并设置第i个隐藏层对应的所有输出向量Hi=[hi1]T,则第i个隐藏层对应的所有输出向量Hi,与第i-1个隐藏层对应的所有输出向量Hi-1之间的关系可以通过下式(2)表示:
Hi=σ(Wi-1,iHi-1);(2)
其中,Wi-1,i可以是矩阵,可以根据第i组第一参数子集合和第二参数子集合确定,以用于表示第i个隐藏层的神经网络结构。
其中,图3为第一神经网络的神经网络结构示意图。如图3所示,第一列参数[x1,x2,…,xK]为输入参数,第i列参数为输出向量,最后一列参数[y1,y2,…,yK]为输出结果,第i个隐藏层对应的矩阵Wi-1,i对应位于相邻两列参数之间,且相邻两列参数之间的连线可以表示式(2)对应的操作。比如,第一列参数和第二列参数之间,即输入参数[x1,x2,…,xK]和输出向量之间,为第一个隐藏层对应的矩阵W0,1,以及第二列参数和第三列参数之间,即输出向量和输出向量之间,为第二个隐藏层对应的矩阵W1,2。依次类推,第i-1列参数和第i列参数之间,即输出向量和输出向量之间为第i个隐藏层对应的矩阵Wi-1,i,以及第i列参数和第i+1列参数之间,即输出向量和输出结果[y1,y2,…,yK]之间为第i个隐藏层对应的矩阵Wi,i+1。如此可知,矩阵Wi-1,i的上角标可以表示该矩阵Wi-1,i在第一神经网络中的位置。并且,对于各列参数,也可理解为:输出向量为通过矩阵W0,1处理输入参数[x1,x2,…,xK]确定,输出向量为通过矩阵W0,1处理输出向量确定,依次类推,输出向量为通过矩阵Wi-1,i处理输出向量确定,以及输出结果[y1,y2,…,yK]为通过矩阵Wi,i+1处理输出向量确定。
需要说明的是,对于矩阵W0,1,矩阵W0,1的第一行用于处理第一节点的数据,如处理输入参数X1,矩阵W0,1的第二行-第K行用于处理第二节点的数据,如处理输入参数[x2,…,xK],如此可确保各节点的数据都能正确地被处理。
其中,矩阵Wi-1,i可以包括矩阵si-1,i和矩阵oi-1,i,且矩阵Si-1,i和矩阵Oi-1,i是两种不同的矩阵。如此,第i组第一参数子集合可以用于确定矩阵Si-1,i,如根据第i组第一参数子集合,以及第i组第一参数子集合中各参数的参数结构,确定该矩阵Si-1,i,第i组第二参数子集合可以用于确定矩阵Oi-1,i,如根据第i组第二参数子集合,以及第i组第二参数子集合中各参数的参数结构,确定该矩阵oi-1,i。其中,第i组第一参数子集合中各参数的参数结构,可以用于确定第i组第一参数子集合中的各参数在该矩阵Si-1,i中的位置。第i组第二参数子集合中各参数的参数结构,可以用于确定第i组第二参数子集合中的各参数在该矩阵Oi-1,i中的位置。此外,上述参数结构可以是第一节点预先配好的,或者,也可以是从第一设备获取的。比如,第一设备可以打包发送第一神经网络参数集合和上述参数结构,或者,发送矩阵Si-1,i和矩阵Oi-1,i。
应理解,由于第一神经网络是根据第一神经网络参数集合的组合确定的,则第一神经网络的参数数量应当大于第一神经网络参数集合中的参数数量。如此,相较于发送神经网络的所有神经网络参数,发送第一神经网络参数集合可以有效降低数据通信量,进而提高通信效率。
进一步地,第一节点可以确定第一神经网络的架构如图3所示,并根据矩阵Si-1,i和矩阵Oi-1,i的组合,确定第i个隐藏层的神经网络结构,如确定矩阵Wi-1,i下式(3)所示。
如此,第一神经网络则可以是对称网络结构的神经网络,具备上述置换不变性。
可以看出,由于常规结构的神经网络,如不具有置换不变性的神经网络,需要调整数据的输入顺序才能输出正确的处理结果。与此不同的是,具有置换不变性的第一神经网络不调整数据的输入顺序,也能够输出正确的处理结果。也就是说,相较于常规结构的神经网络,第一神经网络可以省略调整输入顺序这一步骤,以简化处理流程,从而可以提高数据处理效率。例如,在资源调度场景中,若输入参数XK是第K个设备的状态信息,如信道状态信息、缓存状态信息、历史调度信息等,则输出结果yK可以是第K个设备的调度优先级。若变化状态信息的输入顺序,如将输入顺序从X=[x1,x2,…,xK]变化为X=[x2,x1,…,xK],则第一神经网络输出调度优先级的顺序相应变化,如输出顺序相应从Y=[y1,y2,…,yK]变化为Y=[y2,y1,…,yK],而每个设备的调度优先级的取值大小并不会因为输入顺序的变化而发生改变。又例如,在功率控制场景中,若输入参数xK是第K个设备的状态信息,如信道矩阵、信号干扰矩阵、上一轮的功率控制策略等,则输出结果yK可以是第K个设备本轮的功率控制策略。若变化状态信息的输入顺序,如将输入顺序从X=[x1,x2,…,xK]变化为X=[x2,x1,…,xK],则第一神经网络输出功率控制策略的顺序相应变化,如输出顺序相应从Y=[y1,y2,…,yK]变化为Y=[y2,y1,…,yK],而每个设备本轮的功率控制策略并不会因为输入顺序的变化而发生改变。
为便于理解,下面具体介绍,第一节点如何根据矩阵Si-1,i和矩阵Oi-1,i的组合,确定矩阵Wi-1,i。
其中,由于第二节点的数量与上述组合中第一神经网络参数集合的数量正相关,第二节点的数量,也与上述组合中的第一参数子集合和/或第二参数子集合的数量正相关。又由于第一参数子集合可以确定矩阵Si-1,i,第二参数子集合可以确定矩阵Oi-1,i,第二节点的数量,也可以与上述组合中矩阵Si-1,i和矩阵Oi-1,i的数量正相关。进一步地,矩阵Si-1,i和矩阵Oi-1,i可以组合成矩阵Wi-1,i,在第二节点的数量,与上述组合中矩阵Si-1,i和矩阵Oi-1,i的数量正相关的基础上,第二节点的数量也可以与矩阵Wi-1,i的大小正相关。如此,矩阵Wi-1,i的行数量可以与第二节点的数量正相关,如矩阵Wi-1,i的行数量可以是第一节点与第二节点的数量之和,以及矩阵Wi-1,i的列数量可以与第二节点的数量正相关,如矩阵Wi-1,i的列数量也可以是第一节点与第二节点的数量之和。
基于上述原理,第一节点可以根据第二节点的数量与矩阵Wi-1,i的大小的正相关关系,确定矩阵Wi-1,i的大小。这样,第一节点可以根据矩阵Wi-1,i的大小,确定矩阵Wi-1,i中,矩阵Si-1,i的数量Si,以及矩阵Oi-1,i的数量Oi。如此,第一节点根据Si个矩阵Si-1,i和/或Oi个矩阵Oi-1,i的组合,便可以确定第i个隐藏层的神经网络结构,从而确定第一神经网络,以实现根据第一神经网络参数集合的组合确定第一神经网络。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,在上述场景A或场景B中,第一节点可以为节点1,且第二节点可以包括节点3和节点4,即第二节点的数量为2,则节点1可以根据第二节点的数量与矩阵Wi-1,i的大小的正相关关系,确定矩阵Wi-1,i的大小为3*3。其中,大小为3*3的矩阵Wi-1,i可以是3个矩阵Si-1,i和6个矩阵Oi-1,i的组合。如此,节点1可以确定第i个隐藏层的神经网络结构如下式(5)所示:
在上述场景C中,由于第一节点可以为节点1,且第二节点可以包括节点3-节点5,即第二节点的数量为3,则节点1可以根据第二节点的数量与矩阵Wi-1,i的大小的正相关关系,确定矩阵Wi-1,i的大小为4*4。其中,大小为4*4的矩阵Wi-1,i可以是4个矩阵Si-1,i和12个矩阵Oi-1,i的组合。如此,节点1可以确定第i个隐藏层的神经网络结构如下式(6)所示:
在上述场景D中,由于第一节点可以为节点1,且第二节点包括节点2-节点5,即第二节点的数量为4,则节点1可以根据第二节点的数量与矩阵Wi-1,i的大小的正相关关系,确定矩阵Wi-1,i的大小为5*5。其中,大小为5*5的矩阵Wi-1,i可以是5个矩阵Si-1,i和20个矩阵Oi -1,i的组合。如此,节点1可以确定第i个隐藏层的神经网络结构如下式(7)所示:
应理解,根据上述确定第一神经网络的方式仅为一种示例性的方式,并不作为限定。例如,若第一神经网络参数集合包括两种以上的参数子集合,则第一节点还可以根据两种以上的参数子集合的组合,确定第一神经网络。
还应理解,由于第i个隐藏层可以是根据第一神经网络参数集合的组合确定的,比如可以是根据一种或多种以上的参数子集合的组合确定的,那么第i个隐藏层包括的Mi个参数子集合中,可以有m个参数子集合相同。其中,m为小于或等于M且大于1的整数。例如,上述式(5)所示的第i个隐藏层中不仅有3个第一参数子集合相同,还有9个第二参数子集合相同。又例如,上述式(6)所示的第i个隐藏层中不仅有4个第一参数子集合相同,还有12个第二参数子集合相同。再例如,上述式(7)所示的第i个隐藏层中不仅有5个第一参数子集合相同,还有20个第二参数子集合相同。换句话说,第一神经网络可以是根据相同的参数子集合的组合确定的。如此,可以有效降低计算量,以快速地确定第一神经网络。
进一步地,根据第一神经网络的神经网络结构的上述介绍可知,第1个隐藏层可以处理第一数据,从而输出第1个隐藏层的处理结果。然后,第2个隐藏层可以处理第1个隐藏层的处理结果,从而输出第2个隐藏层的处理结果。依次类推,最后,第i个隐藏层可以处理第i-1个隐藏层的处理结果,从而输出第i个隐藏层的处理结果,即第一数据的处理结果。其中,第一数据的处理结果可以包括:第一节点的数据的处理结果和/或第二节点的数据的处理结果。
可选地,在图2所示出的实施例的第一种实现场景中,若第二节点的数量从第一数量变化为第二数量,则第一神经网络参数集合的组合中,第一参数子集合的数量可以从第三数量相应调整为第四数量,如上述矩阵Wi-1,i中,矩阵Si-1,i的数量可以从第三数量相应调整为第四数量,第二参数子集合的数量可以从第五数量相应调整为第六数量,如上述矩阵Wi-1,i中,矩阵Oi-1,i的数量可以从第五数量相应调整为第六数量。若第二节点的数量从第一数量变化为第二数量。如此,可实现根据第二节点的数量变化,动态调整第一神经网络的网络规模,以便第一神经网络可以动态保持在最佳网络规模,避免网络规模冗余,以进一步提高数据处理效率。
一种可能的实现方式中,第一节点可以通过上述中心式方法或分布式方式,确定第二节点的数量是否有变化。比如,中心控制设备或设备集群中每个节点可以周期性地广播指示信息。如此,第一节点可以根据该指示信息确定第二节点的本周期数量,并根据本周期数量与上一周期数量,确定第二节点的数量是否有变化。其中,若第一节点确定第二节点的数量有变化,如确定从第一数量变化为第二数量,则可以根据第二数量,将上述矩阵Wi-1,i中,矩阵Si-1,i的数量从第三数量相应调整为第四数量,以及将上述矩阵Wi-1,i中,矩阵Oi-1,i的数量从第五数量相应调整为第六数量。如此,第一节点可以根据第四数量的矩阵Si-1,i和第六数量的矩阵Oi-1,i的组合,动态调整第一神经网络的网络规模。其中,第一节点根据指示信息确定第二节点本周期的数量的具体实现,可以参考上述场景A-场景D中的相关介绍,组合第四数量的矩阵Si-1,i和第六数量的矩阵Oi-1,i的具体实现,可以参考上述“S302”中的相关介绍,在此不再赘述。为便于理解,下面结合图1,继续对上述示例进行介绍。
示例性地,在上述场景A或场景B中,第一节点可以为节点1,第二节点可以包括节点3和节点4。若节点1根据指示信息,如根据中心控制设备广播的指示信息,确定节点6为新增的第二节点,则第二节点可以进一步包括节点3、节点4和节点6。如此,节点1可以确定第二节点的数量为从2变化为3,并根据第二节点的数量与矩阵Wi-1,i的大小的正相关关系,确定矩阵Wi-1,i的大小为从3*3变化为4*4,从而进一步确定矩阵Si-1,i的数量Si为从3变化为4,以及矩阵Oi-1,i的数量Oi为从6变化为12。如此,节点1可以根据4个矩阵Si-1,i和12个矩阵Oi -1,i的组合,将第i个隐藏层的神经网络结构从上述式(5)所示的结构,调整为上述式(6)所示的结构,以实现扩大第一神经网络的网络规模。
在上述场景C中,第一节点可以为节点1,第二节点包括节点3-节点5。若节点1根据指示信息,如根据节点广播的指示信息,确定节点6为新增的第二节点,则第二节点可以进一步包括节点3-节点6。如此,节点1可以确定第二节点的数量为从3变化为4,并根据第二节点的数量与矩阵Wi-1,i的大小的正相关关系,确定矩阵Wi-1,i的大小为从4*4变化为5*5,从而进一步矩阵si-1,i的数量Si为从4变化为5,以及矩阵oi-1,i的数量Oi为从12变化为20。如此,节点1可以根据5个矩阵Si-1,i和20个矩阵Oi-1,i的组合,将第i个隐藏层的神经网络结构从上述式(6)所示的结构,调整为上述式(7)所示的结构,以实现扩大第一神经网络的网络规模。
另一种可能的实现方式中,第一节点可以通过可达性检测,确定第二节点的数量是否有变化。比如,第一节点可以周期性地检测每个第二节点的可达性,从而确定在本周期内是否有不可达的节点。其中,若第一节点确定在本周期内有不可达的节点,则可以进一步确定第二节点的数量变化,如确定从第一数量变化为第二数量。其中,第二数量为第一数量减去不可达的节点的数量。如此,第一节点可以根据第二数量,将上述矩阵Wi-1,i中,矩阵Si -1,i的数量从第三数量相应调整为第四数量,以及将上述矩阵Wi-1,i中,矩阵oi-1,i的数量从第五数量相应调整为第六数量。这样一来,第一节点可以根据第四数量的矩阵Si-1,i和第六数量的矩阵oi-1,i的组合,动态调整第一神经网络的网络规模。其中,组合第四数量的矩阵si -1,i和第六数量的矩阵oi-1,i的具体实现也可以参考上述“S302”中的相关介绍,在此不再赘述。
为便于理解,下面结合图1和图4,继续对上述示例进行介绍。其中,图4示出了通信***中各节点的连接关系变化。
示例性地,在上述场景D中,第一节点可以为节点1,第二节点可以包括节点2-节点5。如图4所示,若节点1通过可达性检测确定节点3不可达,则第二节点可以进一步包括节点2、节点4和节点5。如此,节点1可以确定第二节点的数量为从4变化为3,并根据第二节点的数量与矩阵wi-1,i的大小的正相关关系,确定矩阵Wi-1,i的大小为从5*5变化为4*4,从而进一步确定矩阵si-1,i的数量Si为从5变化为4,以及矩阵Oi-1,i的数量Oi为从20变化为12。如此,节点1可以根据4个矩阵si-1,i和12个矩阵oi-1,i的组合,将第i个隐藏层的神经网络结构从上述式(7)所示的结构,调整为上述式(6)所示的结构,以实现缩小第一神经网络的网络规模。
可选地,结合上述第一种实现场景,在图2所示出的实施例的第二种实现场景中,S302之后,图1中所示出的方法还可以包括:步骤1,第一节点确定第二神经网络参数集合。
其中,第二神经网络参数集合可以是第一节点根据上述处理结果和第一神经网络确定的,如根据处理结果更新第一神经网络,从而获得第二神经网络参数集合,以实现第一神经网络的训练更新。其中,该处理结果是通过第一神经网络确定的上述第一数据的处理结果。第二神经网络参数集合可以包括:第三参数子集合和/或第四参数子集合。其中,训练第一神经网络的方式可以包括:监督学习和强化学习,下面分别介绍。
a、监督学习
监督学习也可称为监督训练或有教师学习。监督学习是指:使用第一数据的处理结果和第一数据的数据标签之间的损失(loss),更新第一神经网络,以便第一神经网络后续输出的处理结果与数据标签之间的损失可以越来越小,并最终实现收敛。其中,处理结果是第一神经网络预估的结果,而数据标签则是实际的结果。比如,若第一数据为设备的状态信息,如信道状态信息、缓存状态信息、历史调度信息等,且处理结果为预估的调度优先级,则数据标签可以为该设备实际的调度优先级。又比如,若第一数据为用户的画像信息,如业务类型、业务量、业务的存活时间段等,且处理结果为预估的用户类型,则数据标签可以为该用户实际的用户类型。
具体而言,一种可能的实现方式中,第一节点可以使用第一节点的数据训练第一神经网络。如此,第一节点与第二节点可以交互各自的数据,无需交互各自数据对应的数据标签,从而可以减小第一节点与第二节点之间的数据通信量,进而提高通信效率。为便于理解,下面结合图5进行介绍。
图5示出了第一场景下,第一神经网络的整体结构。其中,第一场景为使用第一节点的数据、第二节点的数据和第一节点的数据的标签训练第一神经网络的场景。如图5所示,第一神经网络的第i个隐藏层可以输出第一节点的数据的处理结果y1。若第一节点的数据标签为z1,则第一节点可以确定损失为loss=D(y1,z1)。其中,D()可以为损失函数,如交叉熵函数、均方误差函数等。进一步地,第一节点可以使用损失函数,对第一神经网络的神经网络参数集合中的参数进行求导,从而获得相应的梯度,并通过梯度的反向传递更新第一神经网络,如将第一神经网络参数集合更新为第二神经网络参数集合。如此,第一节点可以根据第二神经网络参数集合的组合,更新第i个隐藏层的神经网络结构,以实现训练第一神经网络。其中,第i个隐藏层更新后的神经网络结构可以如下式(8)所示:
其中,Si-1,i′可以是根据第二神经网络参数集合中的第三参数子集合和上述参数结构确定的,Oi-1,i′可以是根据第二神经网络参数集合中的第四参数子集合和上述参数结构确定的。
另一种可能的实现方式中,第一节点可以使用第一节点的数据及数据对应的标签、第二节点的数据及数据对应的标签训练第一神经网络。如此,第一节点与第二节点不仅可以交互数据,还可以交互各自数据对应的数据标签,以便第一节点可以使用更多的数据训练第一神经网络,使得第一神经网络能够更快速地收敛,从而提高第一神经网络的训练效果,缩短训练时长。为便于理解,下面结合图3进行介绍。
图3示出了第二场景下,第一神经网络的整体结构。其中,第二场景为使用第一节点和第二节点的数据标签训练第一神经网络的场景。如图3所示,第一神经网络的第i个隐藏层可以输出第一节点和第二节点各自数据的处理结果,如处理结果y1-处理结果yK,共K个处理结果。相应地,第一节点和第二节点各自的数据对应的数据标签也可以有K个。其中,第k个处理结果yk对应的数据标签为zk,k为小于或等于K的正整数。如此,第一节点可以确定损失为进一步地,第一节点可以使用损失函数,对第一神经网络的神经网络参数集合进行求导,从而获得相应的梯度,并通过梯度的反向传递更新第一神经网络,如将第一神经网络参数集合更新为第二神经网络参数集合。如此,第一节点也可以根据第二神经网络参数集合的组合,更新第i个隐藏层的神经网络结构,以实现训练第一神经网络。其中,第i个隐藏层更新后的神经网络结构也可以如上述式(8)所示。
b、强化学习
强化学习也可以称为再励学习、评价学习或增强学习。强化学习是指:在无标签的情况下,使用处理结果产生的收益更新第一神经网络,以便第一神经网络后续输出的处理结果产生的收益可以越来越大,并最终实现收敛。其中,收益可以反映处理结果的合理性。若处理结果越合理,则收益越大。比如,若第一数据为设备的状态信息,如信道矩阵、信号干扰矩阵、上一轮的功率控制策略等,且处理结果为该设备本轮的功率控制策略,则该设备执行本轮的功率控制策略后,该设备收益可以由该设备的数据吞吐量以及丢包率表示,如表示为r=THP+α*(1-PL)。其中,THP为数据吞吐量,PL为丢包率,α为常量。可以看出,若该设备本轮的功率控制策略越合理,则该设备的数据吞吐量越大和/或丢包率越低,那么收益便越大。
具体而言,一种可能的实现方式中,第一节点可以使用第一节点的数据的处理结果产生收益,并训练第一神经网络。为便于理解,下面继续结合图5进行介绍。
其中,第一神经网络在第三场景下的整体结构也可以如图5所示。如图5所示,第一神经网络的第i个隐藏层可以输出第一节点的数据的处理结果y1。若第一节点的收益为r1,则第一节点可以使用收益r1,对第一神经网络的神经网络参数集合进行求导,从而获得相应的梯度,并通过梯度的反向传递更新第一神经网络,如将第一神经网络参数集合更新为第二神经网络参数集合。如此,第一节点也可以根据第二神经网络参数集合的组合,更新第i个隐藏层的神经网络结构,以实现训练第一神经网络。其中,第i个隐藏层更新后的神经网络结构也可以如上述式(8)所示。
另一种可能的实现方式中,第一节点可以使用第一节点和第二节点的数据的处理结果产生收益,并训练第一神经网络。为便于理解,下面继续结合图5进行介绍。
其中,第一神经网络在第三场景下的整体结构也可以如图5所示。如图5所示,一方面,第一神经网络的第i个隐藏层可以输出第一节点和第二节点的数据的处理结果,如处理结果y1,以便第一节点可以确定处理结果y1对应的一个收益r1。另一方面,第一节点可以接收来自每个第二节点的收益,如收益r2-收益rk,共K-1个收益。其中,每个第二节点确定该第二节点的收益的实现原理,可以参考第一节点确定收益r1的相关介绍,在此不再赘述。如此,第一节点共获得K个收益。其中,第k个收益为rk。那么,第一节点可以确定全局收益为或者为其中,β可以为常量,r′k可以用于调整收益rk的平衡性,以确保收益rk能够对全局收益产生合理的影响。比如,若收益rk为rk=THPk+α*(1-PLk),则rk′可以为其中,THPk为第k个设备的数据吞吐量,PLk为第k个设备的丢包率,α为通信***的公平性指标。进一步地,第一节点可以使用全局收益,对第一神经网络的神经网络参数集合进行求导,从而获得相应的梯度,并通过梯度的反向传递更新第一神经网络,如将第一神经网络参数集合更新为第二神经网络参数集合。如此,第一节点也可以根据第二神经网络参数集合的组合,更新第i个隐藏层的神经网络结构,以实现训练第一神经网络。其中,第i个隐藏层更新后的神经网络结构也可以如上述式(8)所示。
应理解,由于上述第一场景-第四场景的训练方式各不相同,那么上述式(8)中,矩阵si-1,i′和矩阵oi-1,i′在上述第一场景-第四场景中的取值也可以不同。此外,每个第二节点发送该第二节点的收益仅为一种示例,不作为限定。比如,每个第二节点也可以发送该第二节点的处理结果,以便第一节点根据每个第二节点的处理结果,确定该第二节点的收益。
还应理解,上述是以第一节点执行某一次训练为例进行介绍,并不作为限定。实际中,第一节点使用神经网络的流程可以如图6所示。根据图6可知,在需要执行第一类任务时,第一节点可以确定第一神经网络,并进入训练阶段,以重复上述训练过程,直至第一神经网络收敛。然后第一节点可以进入推理阶段,以使用该第一神经网络执行第一类任务。之后,随着数据的类型变化、信道的状态变化等,第一神经网络精准度可能会逐渐下降,则第一节点可以再次进入训练阶段,并依次类推,直至第一类任务结束。其中,在第一类任务结束后,第一节点可以释放第一神经网络,以节约资源,提高资源利用率。换言之,第一神经网络的续存时长可以是第一类任务的续存时长,该续存时长也可以被称为一个超帧时间。如此,在下n个超帧时间,n可以为正整数,第一节点可以根据第n类任务,如第二类任务,重新确定神经网络,然后继续依次类推。
可选地,结合上述第二种实现场景,在图2所示出的实施例的第三种实现场景中,步骤1之后,该方法还可以包括:步骤2,第一节点发送第二神经网络参数集合。
其中,第一节点可以向第一设备发送第二神经网络参数集合。相应地,第一设备可以接收来自第一节点的第二神经网络参数集合。如此,第一设备可以执行神经网络的聚合操作,比如,第一设备可以根据第二神经网络参数集合和第三神经网络参数集合,确定第四神经网络参数集合。
其中,第三神经网络参数集合由第二节点确定,可以包括第五参数子集合和/或第六参数子集合。其中,第四神经网络参数集合可以包括第七参数子集合和/或第八参数子集合,并可以用于第一设备更新第一神经网络参数集合。
应理解,第二节点确定第三神经网络参数集合的具体实现可以参考上述“步骤1”中第一节点确定第二神经网络参数集合的相关介绍,在此不再赘述。下面对第一设备执行神经网络的聚合操作进行具体介绍。
具体而言,第一设备可以根据第一节点和第二节点各自的权重,将第二神经网络参数集合和第三神经网络参数集合加权求和,从而确定第四神经网络参数集合。比如,第一设备可以根据第一节点和第二节点各自的权重,将第三参数子集合和第五参数子集合加权求和,以确定第七参数子集合,并将第四参数子集合和第六参数子集合加权求和,从而确定第八参数子集合。其中,第一节点和第二节点各自的权重可以根据第一节点和第二节点各自的数据量确定,和/或,也可以根据第一节点和第二节点各自的数据重要性确定,对此不予限定。例如,若每个节点训练神经网络所使用的数据的数据量越大和/或重要性越强,则该节点的权重也相应越大;反之,若每个节点训练神经网络所使用的数据的数据量越小和/或重要性越弱,则该节点的权重也相应越小,以确保每个节点的神经网络参数集合可以对神经网络参数的聚合产生合理影响。
之后,第一设备可以发送第四神经网络参数集合,如第一设备发送第四神经网络参数集合,以便第一节点可以获取该第四神经网络参数集合,并根据第四神经网络参数集合更新第一神经网络。其中,根据第四神经网络参数集合更新第一神经网络的具体实现可以参考上述S302中的相关介绍,在此不再赘述。
应理解,由于聚合操作可以综合各节点的训练结果,从而可以提高第一神经网络的训练速度,以便第一神经网络能够更快收敛,从而缩短训练时长,提高训练效率。此外,由于第二神经网络参数集合与第三神经网络参数集合中参数的数量,都小于第一神经网络的参数数量,则相较于聚合第一神经网络的所有参数,聚合第二神经网络参数集合和第三神经网络参数集合可以有效降低计算量,提高聚合速度。
还应理解,第一节点发送第二神经网络参数集合仅为一种示例性的方式,并不作为限定。例如,第一节点也可以向第一设备发送上述矩阵si-1,i′和矩阵oi-1,i′。此外,第一设备向第一节点发送第四神经网络参数集合仅为一种示例性的方式,并不作为限定。例如,第一设备还可以向第一节点发送矩阵si-1,i″′和矩阵oi-1,i″′。其中,矩阵si-1,i″′可以是根据上述第七参数子集合和上述参数结构确定的,矩阵oi-1,i″′可以是根据上述第八参数子集合和上述参数结构确定的。
以上结合图2-图6,对本申请提供的数据处理方法的原理进行了介绍,下面结合图7和图8具体介绍该方法在实际场景中的应用。
请参阅图7,图7示出了数据处理方法在功率控制场景下的流程示意图。为便于理解,下面以第一网络设备和第二网络设备为例进行介绍。其中,第一网络设备和第二网络设备分别为上述多个节点中的任意两个节点。如图7所示,该数据处理方法可以包括:
S701,第一网络设备确定邻接关系。
其中,第一网络设备可以确定第一网络设备与第二网络设备存在邻接关系。其中,S701的具体实现可以参考上述“S301”中的相关介绍,在此不再赘述。
S702,第二网络设备确定邻接关系。
同理,第二网络设备也可以确定第二网络设备与第一网络设备存在邻接关系。其中,S702的具体实现也可以参考上述“S301”中的相关介绍,在此不再赘述。
S703,第一设备发送第一神经网络参数集合,第一网络设备和第二网络设备接收来自第一设备的第一神经网络参数集合。
其中,一种可能的实现方式中,第一设备可以非定向地发送上述第一神经网络参数集合。比如,第一设备可以周期性地广播第一广播消息。其中,该第一神经网络参数集合可以承载在该第一广播消息中。如此,第一网络设备和第二网络设备便可以接收第一广播消息,从而获取该第一神经网络参数集合。
另一种可能的实现方式中,第一设备可以定向地发送该第一神经网络参数集合。比如,第一设备接收到来自第一网络设备的第一请求消息后,可以向第一设备发送携带有第一神经网络参数集合的第一响应消息,以便第一网络设备接收第一响应消息,获取第一参数子集合和第二参数子集合。同理,第一设备接收到来自第二网络设备的第二请求消息后,也可以向第二设备发送携带有第一神经网络参数集合的第二响应消息,以便第二网络设备接收第二响应消息,从而获取该第一神经网络参数集合。
其中,第一设备还可以向第一网络设备和第二网络设备,发送该第一神经网络参数集合的参数结构,或者,也可以向第一网络设备和第二网络设备发送上述矩阵Si-1,i和矩阵Oi-1,i,具体实现可以参考上述S302中的相关介绍,在此不再赘述。此外,S701-S703的执行顺序不限定。
S704,第一网络设备确定第一神经网络。
其中,第一网络设备可以根据第二网络设备的数量与第一神经网络参数集合的数量的正相关关系,组合第一神经网络参数集合,从而确定第一神经网络。此外,S704的具体实现可以参考上述S302中的相关介绍,在此不再赘述。
S705,第二网络设备确定第二神经网络。
同理,第二网络设备也可以根据第一网络设备的数量与第一神经网络参数集合的数量的正相关关系,组合第一神经网络参数集合,从而确定第二神经网络。
此外,S705的具体实现也可以参考上述S302中的相关介绍,在此不再赘述。
S706,第一网络设备向第二网络设备发送第一网络设备的数据,第二网络设备接收来自第一网络设备的数据。
其中,第一网络设备的数据可以是第一网络设备的如下一项或多项数据:信道矩阵、信号干扰矩阵、或上一轮的功率控制策略,对此不予限定。
S707,第一网络设备向第二网络设备发送第一网络设备的数据标签,第二网络设备接收来自第一网络设备的数据标签。
其中,第一网络设备的数据标签可以是第一网络设备本轮实际的功率控制策略。其中,S707为可选步骤。比如,若第二网络设备采用监督学习的方式训练第二神经网络,则可以执行S707,否则,若第二网络设备采用强化学习的方式训练第二神经网络,则可以不执行S707。
S708,第二网络设备向第一网络设备发送第二网络设备的数据,第一网络设备接收来自第二网络设备的数据。
其中,第二网络设备的数据可以是第二网络设备的如下一项或多项数据:信道矩阵、信号干扰矩阵、或上一轮的功率控制策略,对此不予限定。
S709,第二网络设备向第一网络设备发送第二网络设备的数据标签,第一网络设备接收来自第二网络设备的数据标签。
其中,第二网络设备的数据标签可以是第二网络设备本轮实际的功率控制策略。其中,S709也为可选步骤。比如,若第一网络设备采用监督学习的方式训练第一神经网络,则可以执行S709,否则,若第一网络设备采用强化学习的方式训练第一神经网络,则可以不执行S709。此外,S704-S709的执行顺序不限定。
S710,第一网络设备使用第一网络设备的数据和第二网络设备的数据,训练第一神经网络。
具体地,第一网络设备可以采用监督学习的方式或者强化学习的方式,训练第一神经网络,从而获得第二神经网络参数集合。其中,S710的具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
S711,第二网络设备使用第一网络设备的数据和第二网络设备的数据,训练第二神经网络。
具体地,第二网络设备也可以采用监督学习的方式或者强化学习的方式,训练第二神经网络,从而获得第三神经网络参数集合。其中,S711的具体实现也可以参考上述步骤2中的相关介绍,在此不再赘述。
S712,第一网络设备向第一设备发送第二神经网络参数集合,第一设备接收来自第一网络设备的第二神经网络参数集合。
S713,第二网络设备向第一设备发送第三神经网络参数集合,第一设备接收来自第二网络设备的第三神经网络参数集合。
其中,第一网络设备也可以向第一设备发送上述矩阵Si-1,i′和矩阵Oi-1,i′,第二网络设备也可以向第一设备发送上述矩阵Si-1,i″和Oi-1,i″,对此不予限定,具实现可以参考上述步骤2中的相关介绍,在此不再赘述。此外,S712和S713的执行顺序不限定。
S714,第一设备确定第四神经网络参数集合。
其中,第四神经网络参数集合可以是第一设备,聚合第二神经网络参数集合和第三神经网络参数集合确定的,具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
S715,第一设备发送第四神经网络参数集合,第一网络设备和第二网络设备接收来自第一设备的第四神经网络参数集合。
其中,第一设备还可以发送第四神经网络参数集合的结构参数,或者也可以发送矩阵Si-1,i″′和矩阵Oi-1,i″,对此不予限定。其中,矩阵Si-1,i″′可以是第一设备聚合矩阵Si-1,i′和Si-1,i″确定的,矩阵Oi-1,i″′可以是第一设备聚合矩阵Oi-1,i′和Oi-1,i″确定的。此外,S715的具体实现可以参考上述步骤2和上述S703中的相关介绍,在此不再赘述。
S716,第一网络设备更新第一神经网络。
其中,第一网络设备可以根据第四神经网络参数集合,更新第一神经网络。此外,S716的具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
S717,第二网络设备更新第二神经网络。
其中,第二网络设备可以根据第四神经网络参数集合,更新第二神经网络。此外,S717的具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
应理解,在S716之后,第一网络设备可以继续训练第一神经网络,即迭代执行上述S706-S716中的相关步骤,直至第一神经网络的训练完成,从而进入推理阶段,以执行功率控制任务。或者,在S716之后,第一网络设备也可以进入推理阶段。同理,在S717之后,第二网络设备也可以继续训练第二神经网络,即迭代执行上述S707-S717中的相关步骤,直至第二神经网络的训练完成,从而进入推理阶段,以执行功率控制任务。或者,在S717之后,第二网络设备也可以进入推理阶段。
S718,第一网络设备释放第一神经网络。
其中,若功率控制任务结束,即一个超帧时间结束,则第一网络设备可以释放第一神经网络,如可以删除第一神经网络的神经网络参数集合,以避免第一网络设备的资源冗余,提高第一网络设备的资源利用率。
S719,第二网络设备释放第二神经网络。
其中,若功率控制任务结束,即一个超帧时间结束,则第二网络设备也可以释放第二神经网络,如可以删除第二神经网络的神经网络参数集合,以避免第二网络设备上的资源冗余,从而提高第二网络设备的资源利用率。
此外,S718和S719为可选地步骤。比如,若超帧时间结束后需要执行其他任务,则可以释放第一神经网络和第二神经网络,否则,可以保留该第一神经网络和第二神经网络。
请参阅图8,图8示出了数据处理方法在,多传输点(multi-transmission/reception point,multi-TRP)场景下的流程示意图。为便于理解,下面以终端设备、并以多个TRP中的第一TRP和第二TRP为例进行介绍。其中,第一TRP和第二TRP分别为上述多个节点中的任意两个节点。如图8所示,该数据处理方法可以包括:
S801,终端设备获取多个TRP的信道测量结果。
其中,由于终端设备可以位于多个TRP信号覆盖范围内,那么终端设备可以执行信道测量,从而获取多个TRP的信道测量结果。比如,信道测量结果可以是该终端设备与每个TRP的信号强度。
S802,终端设备向多个TRP广播第一消息,第一TRP和第二TRP接收来自终端设备的第一消息。
其中,第一消息可以承载上述信道测量结果,如可以是SCI消息。如此,第一TRP和第二TRP都可以接收该第一消息,从而获得信道测量结果。
S803,第一TRP确定邻接关系。
具体地,第一TRP可以根据上述信道测量结果,确定第一TRP与第二TRP存在邻接关系。比如,若信道测量结果指示第一TRP和第二TRP与终端设备之间的信号强度大于信号强度阈值,则第一TRP和第二TRP都可以给该终端设备提供数据传输服务,如此第一TRP可以确定第一TRP与第二TRP存在邻接关系。又比如,若信道测量结果指示第一TRP与终端设备的信号强度大于信号强度阈值,并指示第三TRP(图中未示出)与终端设备的信号强度小于信号强度阈值,则第三TRP可能无法给该用户提供数据传输服务,如此第一TRP可以确定第一TRP与第三TRP不存在邻接关系。此外,第一TRP与也可以通过上述其他方式确定第一TRP与第二TRP存在邻接关系,具体实现可以参考上述“S301”中的相关介绍,在此不再赘述。
S804,第二TRP确定邻接关系。
同理,第二TRP也可以根据上述信道测量结果,确定第二TRP与第一TRP存在邻接关系。此外,S804的具体实现也可以参考上述“S301”中的相关介绍,在此不再赘述。
S805,第一设备发送第一神经网络参数集合,第一TRP与第二TRP接收来自第一设备的第一神经网络参数集合。
其中,S805具体实现可以参考上述S703中的相关介绍,在此不再赘述。此外,S801-S805的执行顺序不限定。
S806,第一TRP确定第一神经网络。
其中,第一TRP可以根据第二TRP的数量与第一神经网络参数集合的数量的正相关关系,组合第一神经网络参数集合,从而确定第一神经网络。此外,S806的具体实现可以参考上述S302中的相关介绍,在此不再赘述。
S807,第二TRP确定第二神经网络。
同理,第二TRP也可以根据第一TRP的数量与第一神经网络参数集合的数量的正相关关系,组合第一神经网络参数集合,从而确定第二神经网络。此外,S807的具体实现也可以参考上述S302中的相关介绍,在此不再赘述。
S808,第一TRP向第二TRP发送第一TRP的数据,第二TRP接收来自第一TRP的数据。
其中,第一TRP的数据可以是第一TRP的如下一项或多项数据:信道强度、信道矩阵、或负载,对此不予限定。
S809,第一TRP向第二TRP发送第一TRP的数据标签,第二TRP接收来自第一TRP的数据标签。
其中,第一TRP的数据标签可以是第一TRP实际是否给终端设备提供数据传输服务,如可以是0或1,0表示第一TRP实际未给终端设备提供数据传输服务,1表示第一TRP实际给终端设备提供数据传输服务。此外,S809为可选地步骤。比如,若第二TRP采用监督学习的方式训练第二神经网络,则可以执行S809,否则,若第二TRP采用强化学习的方式训练第二神经网络,则可以不执行S809。
S810,第二TRP向第一TRP发送第二TRP的数据,第一TRP接收来自第二TRP的数据。
其中,第二TRP的数据可以是第二TRP的如下一项或多项数据:信道强度、信道矩阵、或负载,对此不予限定。
S811,第二TRP向第一TRP发送第二TRP的数据标签,第一TRP接收来自第二TRP的数据标签。
具体地,第二TRP的数据标签可以是第二TRP实际是否给终端设备提供数据传输服务,如可以是0或1,0表示第二TRP实际未给终端设备提供数据传输服务,1表示第二TRP实际给终端设备提供数据传输服务。此外,S811也为可选地步骤,比如,若第一TRP采用监督学习的方式训练第一神经网络,则可以执行S811,否则,若第一TRP采用强化学习的方式训练第一神经网络,则可以不执行S811此外,S806-S811的执行顺序不限定。
S812,第一TRP使用第一TRP的数据和第二TRP的数据,训练第一神经网络。
具体地,第一TRP可以根据第一神经网络,获得第一神经网络对第一TRP的数据和第二TRP的数据的处理结果,如处理结果可以是第一TRP给终端设备提供数据传输服务的概率,且概率可以在0-1之间。如此,第一TRP可以采用监督学习的方式或者强化学习的方式,训练第一神经网络,从而获得上述第二神经网络参数集合。比如,若采用监督学习,则第一TRP可以确定该概率与第一TRP实际是否给终端设备提供数据传输服务之间的损失,以使用该损失训练第一神经网络。又比如,若采用强化学习,则第一TRP可以根据该概率,确定是否给终端设备提供数据传输服务。这样,第一TRP可以获取在第一TRP提供数据传输服务或未提供数据传输服务情况下,终端设备的数据吞吐量、丢包率、或时延等参数,从而根据这些参数确定收益,以使用该收益训练第一神经网络。此外,S812的具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
S813,第二TRP使用第一TRP的数据和第二TRP的数据,训练第二神经网络。
具体地,第二TRP可以根据第二神经网络,获得第二神经网络对第一TRP的数据和第二TRP的数据的处理结果,如处理结果可以是第二TRP给终端设备提供数据传输服务的概率。如此,第二TRP可以采用监督学习的方式或者强化学习的方式,训练第二神经网络,从而获得上述第三神经网络参数集合。比如,若采用监督学习,则第二TRP可以确定该概率与第二TRP实际是否给终端设备提供数据传输服务之间的损失,以使用该损失训练第一神经网络。又比如,若采用强化学习,则第二TRP可以根据该概率,确定是否给终端设备提供数据传输服务。这样,第二TRP可以获取在第二TRP提供数据传输服务或未提供数据传输服务情况下,终端设备的数据吞吐量、丢包率、或时延等参数,从而根据这些参数确定收益,以使用该收益训练第一神经网络。此外,S813的具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
S814,第一TRP向第一设备发送第二神经网络参数集合,第一设备接收来自第一TRP的第二神经网络参数集合。
S815,第二TRP向第一设备发送第三神经网络参数集合,第一设备接收来自第二TRP的第三神经网络参数集合。
其中,第一TRP也可以向第一设备发送上述矩阵Si-1,i′和矩阵Oi-1,i′,第二TRP也可以向第一设备发送上述矩阵Si-1,i″和Oi-1,i″,对此不予限定,具实现可以参考上述步骤2中的相关介绍,在此不再赘述。此外,S814和S815的执行顺序不限定。
S816,第一设备确定第四神经网络参数集合。
其中,S816具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
S817,第一设备发送第四神经网络参数集合。
其中,S817的具体实现可以参考上述步骤2、S703以及S715中的相关介绍,在此不再赘述。
S818,第一TRP更新第一神经网络。
其中,第一TRP可以根据第四神经网络参数集合,更新第一神经网络。此外,S818的具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
S819,第二TRP更新第二神经网络。
其中,第二TRP也可以根据第四神经网络参数集合,更新第二神经网络。此外,S819的具体实现可以参考上述步骤2中的相关介绍,在此不再赘述。
应理解,在S818之后,第一TRP可以继续训练第一神经网络,即迭代执行上述S808-S818中的相关步骤,直至第一神经网络的训练完成,从而进入推理阶段,以执行多TRP任务。或者,在S818之后,第一TRP也可以进入推理阶段。同理,在S819之后,第二TRP也可以继续训练第二神经网络,即迭代执行上述S809-S819中的相关步骤,直至第二神经网络的训练完成,从而进入推理阶段,以执行多TRP任务。或者,在S819之后,第二TRP也可以进入推理阶段。
S820,第一TRP释放第一神经网络。
其中,若多TRP任务结束,即一个超帧时间结束,则第一TRP可以释放第一神经网络,如可以删除第一神经网络的神经网络参数集合,以避免第一TRP的资源冗余,提高第一TRP的资源利用率。
S821,第二TRP释放第二神经网络。
其中,若多TRP任务结束,即一个超帧时间结束,则第二TRP可以释放第二神经网络,如可以删除第二神经网络的神经网络参数集合,以避免第二TRP的资源冗余,从而提高第二TRP的资源利用率。
此外,S820和S821为可选地步骤。比如,若超帧时间结束后需要执行其他任务,则可以释放第一神经网络和第二神经网络,否则,可以保留该第一神经网络和第二神经网络。
基于图2、图7、或图8中任一项所示出的数据处理方法可知,由于多个节点都可以执行同一类任务,那么第一节点可以根据多个节点中邻居节点的数量,如第二节点的数量,确定第一神经网络参数集合的数量,进而确定第一神经网络。如此,第一神经网络的网络规模便可以与第二节点的数量正相关,以配合第二节点执行同一类任务。例如,当邻居节点的数量小于设备集群的节点数量时,第一神经网络只是完整神经网络的一部分,第一神经网的网络规模也小于完整神经网络的网络规模,故能够降低神经网络的计算复杂度和计算量,提高数据处理效率。
以上结合图2-图8详细说明了本申请实施例提供的数据处理方法。为了实现上述本申请实施例提供的方法中的各功能,终端设备、网络设备均可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。以下结合图9和图10详细说明用于执行本申请实施例提供的数据处理方法的数据处理装置。
示例性地,图9是本申请实施例提供的数据处理装置的结构示意图一。如图9所示,数据处理装置900包括:处理模块901和收发模块902。为了便于说明,图9仅示出了该数据处理装置的主要部件。
一些实施例中,数据处理装置900可适用于图1中所示出的通信***中,执行图2中所示出的方法中第一节点的功能、执行图7中所示出的方法中第一网络设备或第二网络设备的功能、或者执行图8中所示出的方法中第一TRP或第二TRP的功能。
其中,若数据处理装置900为第一节点,则收发模块902用于执行S201,处理模块901用于执行S202。
若数据处理装置900为第一网络设备或第二网络设备,则收发模块902用于执行S703、S706-S709、S712-S713、S715,处理模块901用于执行S701-S702、S704-S705、S710-S711、S716-S719。
若数据处理装置900为第一TRP或第二TRP,则收发模块902用于执行S802、S805、S808-S811、S814-S815、S817,处理模块901用于执行S802-S804、S806-S807、S812-S813、S818-S820。
可选地,收发模块902可以包括接收模块和发送模块(图9中未示出)。其中,接收模块用于实现数据处理装置900的接收功能。发送模块用于实现数据处理装置900的发送功能。
可选地,数据处理装置900还可以包括存储模块(图9中未示出),该存储模块存储有程序或指令。当处理模块901执行该程序或指令时,使得数据处理装置900可以执行图2、图7、或图8中任一项所示出的方法。
应理解,数据处理装置900中涉及的处理模块901可以由处理器、处理器相关电路组件或逻辑电路实现,可以为处理器或处理单元;收发模块902可以由收发器、收发器相关电路组件或输入输出接口实现,可以为收发器或收发单元。
需要说明的是,数据处理装置900可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(***)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
此外,数据处理装置900的技术效果可以参考图2、图7、或图8中任一项所示出的方法的技术效果,此处不再赘述。
另一些实施例中,数据处理装置900可适用于图1中所示出的通信***中,执行图2、图7、或图8中任一项所示出的方法中第一设备的功能。
其中,收发模块902,用于执行S703、S712-S713、S715、S805、S814-S815、S817等步骤。
处理模块901,用于执行S714、S816等步骤。
可选地,数据处理装置900还可以包括存储模块(图9中未示出),该存储模块存储有程序或指令。当处理模块901执行该程序或指令时,使得数据处理装置900可以执行图2、图7、或图8中任一项所示出的方法。
应理解,数据处理装置900中涉及的处理模块901可以由处理器或处理器相关电路组件实现,可以为处理器或处理单元;收发模块902可以由收发器或收发器相关电路组件实现,可以为收发器或收发单元。
需要说明的是,数据处理装置900可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(***)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
此外,数据处理装置900的技术效果可以参考图2、图7、或图8中任一项所示出的方法的技术效果,此处不再赘述。
示例性地,图10为本申请实施例提供的数据处理装置1000的结构示意图二。该数据处理装置1000可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备的芯片(***)或其他部件或组件。如图10所示,通信可以包括处理器1001。可选地,数据处理装置1000还可以包括存储器1002和/或收发器1003。其中,处理器1001与存储器1002和收发器1003耦合,如可以通过通信总线连接。
下面结合图10对数据处理装置1000的各个构成部件进行具体的介绍:
其中,处理器1001是数据处理装置1000的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器1001是一个或多个中央处理器(central processingunit,CPU),也可以是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(fieldprogrammable gate array,FPGA)。
可选地,处理器1001可以通过运行或执行存储在存储器1002内的软件程序,以及调用存储在存储器1002内的数据,执行数据处理装置1000的各种功能,如上述方法实施例中各种可能实现的方法。
在具体的实现中,作为一种实施例,处理器1001可以包括一个或多个CPU,例如图10中所示出的CPU0和CPU1。
在具体实现中,作为一种实施例,数据处理装置1000也可以包括多个处理器,例如图10中所示的处理器1001和处理器1004。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
其中,所述存储器1002用于存储执行本申请方案的软件程序,并由处理器1001来控制执行,具体实现方式可以参考上述方法实施例,此处不再赘述。
可选地,存储器1002可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1002可以和处理器1001集成在一起,也可以独立存在,并通过数据处理装置1000的接口电路(图10中未示出)与处理器1001耦合,本申请实施例对此不作具体限定。
收发器1003,用于与其他装置之间的通信。例如,数据处理装置1000为终端设备,收发器1003可以用于与网络设备通信,或者与另一个终端设备通信。又例如,数据处理装置1000为网络设备,收发器1003可以用于与终端设备通信,或者与另一个网络设备通信。
可选地,收发器1003可以包括接收器和发送器(图10中未单独示出)。其中,接收器用于实现接收功能,发送器用于实现发送功能。
可选地,收发器1003可以和处理器1001集成在一起,也可以独立存在,并通过数据处理装置1000的接口电路(图10中未示出)与处理器1001耦合,本申请实施例对此不作具体限定。
需要说明的是,图10中示出的数据处理装置1000的结构并不构成对该装置的限定,实际的装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
此外,数据处理装置1000的技术效果可以参考上述方法实施例所述的方法的技术效果,此处不再赘述。
上述实施,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行机算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
基于与上述方法实施例相同构思,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被硬件(例如处理器等)执行,以实现本申请实施例中由任意装置执行的任意一种方法的部分或全部步骤。
基于与上述方法实施例相同构思,本申请实施例还提供了一种包括程序指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述这个计算机执行以上各方面的任意一种方法的部分或者全部步骤。
基于与上述方法实施例相同构思,本申请还提供一种芯片或芯片***,该芯片可包括处理器。该芯片还可包括存储器(或存储模块)和/或收发器(或通信模块),或者,该芯片与存储器(或存储模块)和/或收发器(或通信模块)耦合,其中,收发器(或通信模块)可用于支持该芯片进行有线和/或无线通信,存储器(或存储模块)可用于存储程序,该处理器调用该程序可用于实现上述方法实施例、方法实施例的任意一种可能的实现方式中由上述第一设备和/或节点执行的操作。该芯片***可包括以上芯片,也可以包含上述芯片和其他分立器件,如存储器(或存储模块)和/或收发器(或通信模块)。
基于与上述方法实施例相同构思,本申请还提供一种通信***,该通信***可包括以上第一设备和/或节点。该通信***可用于实现上述方法实施例、方法实施例的任意一种可能的实现方式中由第一设备和/或节点执行的操作。示例性的,该通信***可具有图1所示结构。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考上述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而上述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (28)
1.一种数据处理方法,其特征在于,应用于第一节点,所述第一节点和第二节点存在邻接关系,所述第一节点和所述第二节点用于执行同一类任务,所述方法包括:
获取第一数据;
通过第一神经网络,确定所述第一数据的处理结果,其中,所述第一神经网络是根据第一神经网络参数集合的组合确定的,所述组合中的所述第一神经网络参数集合的数量与所述第二节点的数量正相关。
2.根据权利要求1所述的数据处理方法,其特征在于,
所述第一神经网络包括:N个隐藏层,第i个隐藏层包括Mi个参数子集合,所述Mi个参数子集合中有m个参数子集合相同,所述Mi个参数子集合是根据所述第一神经网络参数集合的组合确定的,N为正整数,i为小于或等于N的正整数,Mi为大于1的整数,m为小于或等于M且大于1的整数。
3.根据权利要求1或2所述的数据处理方法,其特征在于,
所述第一神经网络参数集合包括:第一参数子集合和/或第二参数子集合。
5.根据权利要求4所述的数据处理方法,其特征在于,
所述Wi-1,i中的行数量与所述第二节点的数量正相关,所述Wi-1,i中的列数量与所述第二节点的数量正相关。
6.根据权利要求3或4所述的数据处理方法,其特征在于,
若所述第二节点的数量从第一数量变化为第二数量,则所述第一神经网络参数集合的组合中,所述第一参数子集合的数量从第三数量相应调整为第四数量,所述第二参数子集合的数量从第五数量相应调整为第六数量。
7.根据权利要求1-6中任一项所述的数据处理方法,其特征在于,所述确定所述第一数据的处理结果之后,所述方法还包括:
确定第二神经网络参数集合,其中,所述第二神经网络参数集合是根据所述处理结果和所述第一神经网络确定的;
发送所述第二神经网络参数集合。
8.根据权利要求1-7中任一项所述的数据处理方法,其特征在于,
所述第二节点由如下一项或多项确定:节点所在的区域、节点的类型、节点所属的网络、或节点服务的用户。
9.一种数据处理方法,其特征在于,应用于第一设备,所述方法包括:
确定第一神经网络参数集合,其中,第一神经网络是根据所述第一神经网络参数集合的组合确定的,所述组合中的所述第一神经网络参数集合的数量与第二节点的数量正相关,所述第二节点和第一节点存在邻接关系,所述第二节点和所述第一节点用于执行同一类任务;
发送第一神经网络参数集合。
10.根据权利要求9所述的数据处理方法,其特征在于,在所述发送第一神经网络参数集合之后,所述方法还包括:
获取第二神经网络参数集合,其中,所述第二神经网络参数集合是根据第一数据的处理结果和所述第一神经网络确定的。
11.根据权利要求9或10所述的数据处理方法,其特征在于,在所述获取第二神经网络参数集合之后,所述方法还包括:
根据所述第二神经网络参数集合和第三神经网络参数集合,确定第四神经网络参数集合,其中,所述第三神经网络参数集合由所述第二节点确定,所述第四神经网络参数集合用于更新所述第一神经网络。
12.一种数据处理装置,其特征在于,应用于第一节点,所述第一节点和第二节点存在邻接关系,所述第一节点和所述第二节点用于执行同一类任务,所述装置包括:收发模块和处理模块,其中,
所述收发模块,用于获取第一数据;
所述处理模块,用于通过第一神经网络,确定所述第一数据的处理结果,其中,所述第一神经网络是根据第一神经网络参数集合的组合确定的,所述组合中的所述第一神经网络参数集合的数量与所述第二节点的数量正相关。
13.根据权利要求12所述的数据处理装置,其特征在于,
所述第一神经网络包括:N个隐藏层,第i个隐藏层包括Mi个参数子集合,所述Mi个参数子集合中有m个参数子集合相同,所述Mi个参数子集合是根据所述第一神经网络参数集合的组合确定的,N为正整数,i为小于或等于N的正整数,Mi为大于1的整数,m为小于或等于M且大于1的整数。
14.根据权利要求12或13所述的数据处理装置,其特征在于,
所述第一神经网络参数集合包括:第一参数子集合和/或第二参数子集合。
16.根据权利要求15所述的数据处理装置,其特征在于,
所述Wi-1,i中的行数量与所述第二节点的数量正相关,所述Wi-1,i中的列数量与所述第二节点的数量正相关。
17.根据权利要求15或16所述的数据处理装置,其特征在于,
若所述第二节点的数量从第一数量变化为第二数量,则所述第一神经网络参数集合的组合中,所述第一参数子集合的数量从第三数量相应调整为第四数量,所述第二参数子集合的数量从第五数量相应调整为第六数量。
18.根据权利要求12-17中任一项所述的数据处理装置,其特征在于,所述处理模块在确定所述第一数据的处理结果之后,
所述处理模块,还用于确定第二神经网络参数集合,其中,所述第二神经网络参数集合是根据所述处理结果和所述第一神经网络确定的;
所述收发模块,还用于发送所述第二神经网络参数集合。
19.根据权利要求12-18中任一项所述的数据处理装置,其特征在于,
所述第二节点由如下一项或多项确定:节点所在的区域、节点的类型、节点所属的网络、或节点服务的用户。
20.一种数据处理装置,其特征在于,应用于第一设备,所述装置包括:收发模块和处理模块,其中,
所述处理模块,用于确定第一神经网络参数集合,其中,第一神经网络是根据所述第一神经网络参数集合的组合确定的,所述组合中的所述第一神经网络参数集合的数量与第二节点的数量正相关,所述第二节点和第一节点存在邻接关系,所述第二节点和所述第一节点用于执行同一类任务;
所述收发模块,用于发送第一神经网络参数集合。
21.根据权利要求20所述的数据处理装置,其特征在于,所述收发模块在所述发送第一神经网络参数集合之后,
所述收发模块,还用于获取第二神经网络参数集合,其中,所述第二神经网络参数集合是根据第一数据的处理结果和所述第一神经网络确定的。
22.根据权利要求20或21所述的数据处理装置,其特征在于,在所述收发模块获取第二神经网络参数集合之后,
所述处理模块,还用于根据所述第二神经网络参数集合和第三神经网络参数集合,确定第四神经网络参数集合,其中,所述第三神经网络参数集合由所述第二节点确定,所述第四神经网络参数集合用于更新所述第一神经网络。
23.一种数据处理装置,其特征在于,包括:处理器,所述处理器与存储器耦合;
所述处理器,用于执行所述存储器中存储的计算机程序,以使得所述装置执行如权利要求1-8中任一项所述的方法,或者执行如权利要求9-11中任一项所述的方法。
24.一种数据处理装置,其特征在于,包括:处理器和存储器;所述存储器用于存储计算机指令,当所述处理器执行所述指令时,以使所述装置执行如权利要求1-8中任一项所述的方法,或者执行如权利要求9-11中任一项所述的方法。
25.一种数据处理装置,其特征在于,包括:处理器和接口电路;其中,
所述接口电路,用于接收代码指令并传输至所述处理器;
所述处理器用于运行所述代码指令以执行如权利要求1-8中任一项所述的方法,或者执行如权利要求9-11中任一项所述的方法。
26.一种数据处理装置,其特征在于,包括处理器和收发器,所述收发器用于所述装置和其他装置之间进行信息交互,所述处理器执行程序指令,用以执行如权利要求1-8中任一项所述的方法,或者执行如权利要求9-11中任一项所述的方法。
27.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得如权利要求1-11中任一项所述的方法被执行。
28.一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得如权利要求1-11中任一项所述的方法被执行。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110304438.9A CN115115020A (zh) | 2021-03-22 | 2021-03-22 | 数据处理方法及装置 |
MX2023011077A MX2023011077A (es) | 2021-03-22 | 2022-02-24 | Metodo y aparato de procesamiento de datos. |
EP22773977.8A EP4303781A1 (en) | 2021-03-22 | 2022-02-24 | Data processing method and apparatus |
PCT/CN2022/077733 WO2022199315A1 (zh) | 2021-03-22 | 2022-02-24 | 数据处理方法及装置 |
US18/471,728 US20240020513A1 (en) | 2021-03-22 | 2023-09-21 | Data processing method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110304438.9A CN115115020A (zh) | 2021-03-22 | 2021-03-22 | 数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115115020A true CN115115020A (zh) | 2022-09-27 |
Family
ID=83323540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110304438.9A Pending CN115115020A (zh) | 2021-03-22 | 2021-03-22 | 数据处理方法及装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240020513A1 (zh) |
EP (1) | EP4303781A1 (zh) |
CN (1) | CN115115020A (zh) |
MX (1) | MX2023011077A (zh) |
WO (1) | WO2022199315A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10235625B1 (en) * | 2018-02-09 | 2019-03-19 | Capital One Services, Llc | Automatically scaling neural networks based on load |
CN110738322B (zh) * | 2018-07-03 | 2023-06-02 | 杭州海康威视数字技术股份有限公司 | 一种分布式训练方法、装置、设备及*** |
CN113597621A (zh) * | 2018-12-29 | 2021-11-02 | 华为技术有限公司 | 计算资源分配技术及神经网络*** |
CN109871958B (zh) * | 2019-02-01 | 2023-07-28 | 东软医疗***股份有限公司 | 训练模型的方法、装置及设备 |
-
2021
- 2021-03-22 CN CN202110304438.9A patent/CN115115020A/zh active Pending
-
2022
- 2022-02-24 EP EP22773977.8A patent/EP4303781A1/en active Pending
- 2022-02-24 WO PCT/CN2022/077733 patent/WO2022199315A1/zh active Application Filing
- 2022-02-24 MX MX2023011077A patent/MX2023011077A/es unknown
-
2023
- 2023-09-21 US US18/471,728 patent/US20240020513A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022199315A1 (zh) | 2022-09-29 |
MX2023011077A (es) | 2023-12-07 |
US20240020513A1 (en) | 2024-01-18 |
EP4303781A1 (en) | 2024-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11388644B2 (en) | Apparatus and method for load balancing in wireless communication system | |
US10536197B2 (en) | Device and method for managing spectrum resources, and wireless communication device and method | |
EP3903243A1 (en) | A wireless device, a network node and methods therein for updating a first instance of a machine learning model | |
US11012133B2 (en) | Efficient data generation for beam pattern optimization | |
CN112154611A (zh) | 用于无线节点调度器的波束选择加速器 | |
US11464013B2 (en) | Coordinated link adaptation and packet scheduling in dynamic spectrum sharing | |
US20230232273A1 (en) | Allocating resources for communication and sensing services | |
CN113330767B (zh) | 频谱管理设备、电子设备、无线通信方法和存储介质 | |
US11825532B2 (en) | Control of multi-user multiple input multiple output connections | |
Zhao et al. | Dynamic and non-centric networking approach using virtual gateway platforms for low power wide area systems | |
Kaur et al. | OCTRA‐5G: osmotic computing based task scheduling and resource allocation framework for 5G | |
CN113595599B (zh) | 面向5g的群簇协作通信异构***和干扰抑制的方法 | |
CN115115020A (zh) | 数据处理方法及装置 | |
CN115941563B (zh) | 集成多指挥平台信息的任务监测方法及装置 | |
EP4120579A1 (en) | Interference aware eigen-beamforming based on second order statistics | |
CN116208992B (zh) | 一种运行状态的稳定性评估方法及装置 | |
US20240023092A1 (en) | Whitening Uplink Data Streams | |
WO2024050667A1 (zh) | 通信方法及相关装置 | |
WO2024067248A1 (zh) | 一种获取训练数据集的方法和装置 | |
WO2022199322A1 (zh) | 一种通信协作方法及装置 | |
WO2023030620A1 (en) | Interference management | |
Le-Ngoc et al. | MDP-Based Access Scheme for Virtualized M2M Networks | |
EP4397102A1 (en) | Interference management | |
CN117769041A (zh) | 前导矩阵 | |
KR20240099494A (ko) | 통신 방법 및 장치 |
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 |