CN116776976A - 拆分推理方法及装置 - Google Patents
拆分推理方法及装置 Download PDFInfo
- Publication number
- CN116776976A CN116776976A CN202210220494.9A CN202210220494A CN116776976A CN 116776976 A CN116776976 A CN 116776976A CN 202210220494 A CN202210220494 A CN 202210220494A CN 116776976 A CN116776976 A CN 116776976A
- Authority
- CN
- China
- Prior art keywords
- communication device
- communication
- model
- reasoning
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 207
- 238000004891 communication Methods 0.000 claims abstract description 2448
- 238000012790 confirmation Methods 0.000 claims description 50
- 239000011159 matrix material Substances 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000007667 floating Methods 0.000 claims description 10
- 239000000523 sample Substances 0.000 claims 2
- 239000000758 substrate Substances 0.000 claims 1
- 238000013461 design Methods 0.000 description 187
- 238000012545 processing Methods 0.000 description 78
- 230000006870 function Effects 0.000 description 51
- 230000005540 biological transmission Effects 0.000 description 47
- 230000011664 signaling Effects 0.000 description 43
- 230000015654 memory Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 26
- 230000003993 interaction Effects 0.000 description 18
- 238000001514 detection method Methods 0.000 description 11
- 238000005259 measurement Methods 0.000 description 11
- 230000006399 behavior Effects 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 6
- 238000012163 sequencing technique Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 238000013528 artificial neural network Methods 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
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- GVVPGTZRZFNKDS-JXMROGBWSA-N geranyl diphosphate Chemical compound CC(C)=CCC\C(C)=C\CO[P@](O)(=O)OP(O)(O)=O GVVPGTZRZFNKDS-JXMROGBWSA-N 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例提供了一种拆分推理方法及装置,涉及通信技术领域,能够在降低通信开销的同时降低原始数据泄漏到中心服务器的风险。方法包括:第一通信装置接收来自第二通信装置的用于指示第一通信装置的上一跳通信装置和下一跳通信装置的第一指示信息;上一跳通信装置和下一跳通信装置中包括至少一个终端设备;第一通信装置接收来自上一跳通信装置的数据,根据第一通信装置对应的子模型对数据进行推理,得到推理结果,并发送给下一跳通信装置;第一通信装置对应的子模型为根据X个通信装置对模型进行拆分得到的X个子模型中的一个,X个通信装置中的通信装置x对应第x个子模型,X个通信装置包括第一通信装置,x大于或等于1,x小于或等于X。
Description
技术领域
本申请涉及通信技术领域,尤其是涉及一种拆分推理方法及装置。
背景技术
随着大模型时代的到来,拥有海量参数的深度学习模型如基于变换器的双向编码器表示(bidirectional encoder representation from transformers,BERT)模型、生成式预训练(generative pre-training,GPT)模型等能完成越来越复杂的任务,并能达到较好的性能。由于模型的推理过程会受到设备容量的限制,模型一般存放于云端的中心服务器上。
由于通信装置每天会产生海量的原始数据,如果通信装置将海量的原始数据发送给中心服务器,由中心服务器利用模型进行推理,会导致需要大量的通信资源传输原始数据,通信开销较大,同时由于将原始数据发送给中心服务器,导致用户的隐私存在泄露风险。
所以,在采用模型进行推理时,如何降低通信开销,同时降低原始数据泄漏到中心服务器的风险成为亟待解决的技术问题。
发明内容
有鉴于此,本申请实施例提供了一种拆分推理方法及装置,能够在降低通信开销的同时降低原始数据泄漏到中心服务器的风险。
第一方面,本申请实施例提供了一种拆分推理方法,该方法可以包括:第一通信装置接收来自第二通信装置的第一指示信息;其中,第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备;第一通信装置接收来自第一通信装置的上一跳通信装置的数据;第一通信装置根据第一通信装置对应的子模型对数据进行推理,得到推理结果;其中,第一通信装置对应的子模型为根据X个通信装置对模型进行拆分得到的X个子模型中的一个,X个通信装置中的通信装置x对应第x个子模型,X个通信装置包括第一通信装置,x大于或等于1,x小于或等于X;第一通信装置向第一通信装置的下一跳通信装置发送推理结果。
基于第一方面,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备,即第一通信装置可以从终端设备获取数据,或者第一通信装置可以向终端设备发送推理结果,相比于通信装置从中心服务器获取数据,并将推理结果发送给中心服务器,由中心服务器将推理结果发送给下一个通信装置,本申请可以降低推理结果的传输次数,降低通信开销,同时,第一通信装置将从终端设备处获取数据,或者将推理结果发送给终端设备,可以降低数据泄露到中心服务器的风险,降低用户隐私的泄露风险。
一种可能的设计中,当第一通信装置为X个通信装置中的通信装置k时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置k-1,第一通信装置的下一跳通信装置为X个通信装置中的通信装置k+1;k大于或等于2,k小于或等于X-1。
一种可能的设计中,当第一通信装置为X个通信装置中的通信装置1时,第一通信装置的上一跳通信装置为第二通信装置,第一通信装置的下一跳通信装置为X个通信装置中的通信装置2;当第一通信装置为X个通信装置中的通信装置X时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置X-1,第一通信装置的下一跳通信装置为第二通信装置。
基于上述两种可能的设计,当第二通信装置有推理任务时,第二通信装置可以直接将数据发送给X个通信装置中的通信装置1,由X个通信装置完成对数据的推理,并接收X个通信装置中的通信装置X发送的推理结果,完成推理,相比于经过中心服务器传输数据和推理结果,可以降低通信开销。
一种可能的设计中,当第一通信装置为X个通信装置中的通信装置1时,第一通信装置的上一跳通信装置为第三通信装置,第一通信装置的下一跳通信装置为X个通信装置中的通信装置2;当第一通信装置为X个通信装置中的通信装置X时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置X-1,第一通信装置的下一跳通信装置为第三通信装置。
基于该可能的设计,当第三通信装置有推理任务时,第三通信装置可以直接将数据发送给X个通信装置中的通信装置1,由X个通信装置完成对数据的推理,并接收X个通信装置中的通信装置X发送的推理结果,完成推理,相比于经过中心服务器传输数据和推理结果,可以降低通信开销。
一种可能的设计中,第一通信装置根据第一通信装置对应的子模型对数据进行推理,得到推理结果之前,方法还包括:第一通信装置接收来自第三通信装置的第一通信装置对应的子模型。
一种可能的设计中,第一通信装置根据第一通信装置对应的子模型对数据进行推理,得到推理结果之前,方法还包括:第一通信装置接收来自第二通信装置的第一通信装置对应的子模型。
基于上述两种可能的设计,当第二通信装置有推理任务时,第二通信装置可以对模型进行拆分,得到各个通信装置对应的子模型并发送。当第三通信装置有推理任务时,第三通信装置可以对模型进行拆分,得到各个通信装置对应的子模型并发送;第三通信装置也可以将模型发送给第二通信装置,由第二通信装置对模型进行拆分,得到各个通信装置对应的子模型并发送。
一种可能的设计中,第一通信装置接收来自第二通信装置的第一指示信息之前,方法还包括:第一通信装置向第二通信装置发送第一通信装置的状态信息。
一种可能的设计中,第一通信装置的状态信息包括下述一种或多种:第一通信装置的存储空间大小、第一通信装置的最大算力、第一通信装置占用的资源信息、第一通信装置的设备邻接矩阵、第一通信装置的设备状态、第一通信装置是否同意参与推理、第一通信装置的状态信息的有效期;其中,第一通信装置的设备邻接矩阵用于指示第一通信装置与其他第一通信装置的连接关系。
基于上述两种可能的设计,第一通信装置可以向第二通信装置发送状态信息,第二通信装置根据接收到的状态信息确定执行推理任务的X个通信装置,即可以根据状态信息动态地选择参与推理任务的通信装置,提高推理效率。
一种可能的设计中,第一通信装置接收来自第二通信装置的第一指示信息之前,方法还包括:第一通信装置接收来自第二通信装置的设备选择结果;其中,设备选择结果用于指示第一通信装置被选择;第一通信装置向第二通信装置发送第一通信装置对设备选择结果的确认。
基于该可能的设计,第一通信装置还可以接收第二通信装置发送的设备选择结果,如果第一通信装置确定参与推理任务,则可以向第二通信装置发送确认,如果第一通信装置拒绝参与推理任务,则可以向第二通信装置发送拒绝。
一种可能的设计中,第一通信装置接收来自第一通信装置的上一跳通信装置的数据之前,方法还包括:第一通信装置接收来自第二通信装置的第一信息;其中,第一信息包括下述一种或多种:第一通信装置的上一跳通信装置占用的资源信息、第一通信装置的下一跳通信装置占用的资源信息、时间信息;其中,时间信息用于指示第一通信装置接收第一通信装置的上一跳通信装置的数据对应的时间范围。
基于该可能的设计,第一通信装置还可以接收第二通信装置发送的第一信息,便于根据第一信息与上一跳通信装置进行通信,或者根据第一信息与下一跳通信装置进行通信。当第一信息包括时间信息时,第一通信装置可以在时间信息指示的时间范围内进行信道检测,降低因信道检测带来的功耗。
一种可能的设计中,第一通信装置根据第一通信装置对应的子模型对数据进行推理,得到推理结果之前,方法还包括:第一通信装置获取加密后的子模型;第一通信装置对加密后的子模型进行解密,得到第一通信装置对应的子模型。
基于该可能的设计,通过对子模型进行加密,可以提高子模型的安全保护性,降低子模型的泄露风险。
一种可能的设计中,第一通信装置接收来自第一通信装置的上一跳通信装置的数据,包括:第一通信装置接收来自第一通信装置的上一跳通信装置的加密后的数据;第一通信装置对加密后的数据进行解密,得到数据。
基于该可能的设计,通过对数据进行加密,可以提高数据的安全保护性,降低数据的泄露风险。
一种可能的设计中,第一通信装置根据第一通信装置对应的子模型对数据进行推理之前,方法还包括:第一通信装置接收来自第二通信装置的推理开始信令;其中,推理开始信令用于指示第一通信装置开始根据子模型对接收到的数据进行推理;第一通信装置根据推理开始信令,根据第一通信装置对应的子模型进行推理。
一种可能的设计中,第一通信装置接收来自第二通信装置的推理结束信令;其中,推理结束信令用于指示第一通信装置停止根据子模型对接收到的数据进行推理;第一通信装置根据推理结束信令,停止根据第一通信装置对应的子模型对接收到的数据进行推理。
基于上述两种可能的设计,第一通信装置可以根据推理开始信令进行信道检测并对检测到的数据进行推理,根据推理结束信令停止推理,为第一通信装置执行推理任务提供了一种可行性方案。
一种可能的设计中,第一通信装置向第一通信装置的下一跳通信装置发送推理结果,包括:第一通信装置向第一通信装置的下一跳通信装置发送发送请求;其中,发送请求用于请求发送推理结果;第一通信装置接收来自第一通信装置的下一跳通信装置对发送请求的确认;第一通信装置根据该确认向第一通信装置的下一跳通信装置发送推理结果。
一种可能的设计中,第一通信装置接收第一通信装置的下一跳通信装置对推理结果的确认;或者,第一通信装置接收来自第一通信装置的下一跳通信装置的重传请求;第一通信装置根据重传请求,向第一通信装置的下一跳通信装置发送推理结果。
基于上述两种可能的设计,第一通信装置向第一通信装置的下一跳通信装置发送数据之前,可以先发送发送请求,如果收到确认,则可以向第一通信装置的下一跳通信装置发送数据。第一通信装置的下一跳通信装置接收数据时,如果接收成功,可以向第一通信装置发送确认,如果接收失败,则可以请求第一通信装置重传数据,提高数据传输的可靠性。
一种可能的设计中,第一通信装置接收来自第一通信装置的上一跳通信装置的数据,包括:第一通信装置接收来自第一通信装置的上一跳通信装置的发送请求;其中,发送请求用于请求发送数据;第一通信装置向第一通信装置的上一跳通信装置发送第一通信装置对发送请求的确认;第一通信装置接收来自第一通信装置的上一跳通信装置的数据。
一种可能的设计中,第一通信装置接收来自第一通信装置的上一跳通信装置的数据之后,方法还包括:第一通信装置根据数据,确定数据的度量值;第一通信装置根据度量值,向第一通信装置的上一跳通信装置发送第一通信装置对数据的确认;或者,第一通信装置根据度量值,向第一通信装置的上一跳通信装置发送重传请求;第一通信装置接收来自第一通信装置的上一跳通信装置的数据。
基于上述两种可能的设计,第一通信装置接收到发送请求后,可以向第一通信装置的上一跳通信装置发送确认,以接收数据,如果接收成功,可以向第一通信装置的上一跳通信装置发送确认,如果接收失败,则可以请求第一通信装置的上一跳通信装置重传数据,提高数据传输的可靠性。
一种可能的设计中,第一通信装置向与第一通信装置通信连接的通信装置发送信道测量配置信息;第一通信装置广播第一通信装置特定参考信号;第一通信装置接收来自与第一通信装置通信连接的通信装置的信道状态信息;第一通信装置根据信道状态信息,对第一通信装置的设备邻接矩阵进行更新。
一种可能的设计中,信道测量配置信息包括下述一种或多种:第一通信装置占用的频带、参考信号配置信息、信道状态反馈方式、信道状态反馈占用的时频资源。
基于上述两种可能的设计,第一通信装置还可以对设备邻接矩阵进行更新,并在向第二通信装置发送状态信息时携带更新后的设备邻接矩阵,便于第二通信装置根据接收到的状态信息选择更为合适的通信装置参与到推理任务中,提高推理效率。
第二方面,本申请实施例提供了一种通信装置,通信装置可以实现上述第一方面或者第一方面可能的设计中第一通信装置所执行的功能,所述功能可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的模块。如,收发模块和处理模块。收发模块,用于接收来自第二通信装置的第一指示信息;其中,第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备;收发模块,还用于接收来自第一通信装置的上一跳通信装置的数据;处理模块,用于根据第一通信装置对应的子模型对数据进行推理,得到推理结果;其中,第一通信装置对应的子模型为根据X个通信装置对模型进行拆分得到的X个子模型中的一个,X个通信装置中的通信装置x对应第x个子模型,X个通信装置包括第一通信装置,x大于或等于1,x小于或等于X;收发模块,还用于向第一通信装置的下一跳通信装置发送推理结果。
一种可能的设计中,当第一通信装置为X个通信装置中的通信装置k时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置k-1,第一通信装置的下一跳通信装置为X个通信装置中的通信装置k+1;k大于或等于2,k小于或等于X-1。
一种可能的设计中,当第一通信装置为X个通信装置中的通信装置1时,第一通信装置的上一跳通信装置为第二通信装置,第一通信装置的下一跳通信装置为X个通信装置中的通信装置2;当第一通信装置为X个通信装置中的通信装置X时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置X-1,第一通信装置的下一跳通信装置为第二通信装置。
一种可能的设计中,当第一通信装置为X个通信装置中的通信装置1时,第一通信装置的上一跳通信装置为第三通信装置,第一通信装置的下一跳通信装置为X个通信装置中的通信装置2;当第一通信装置为X个通信装置中的通信装置X时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置X-1,第一通信装置的下一跳通信装置为第三通信装置。
一种可能的设计中,收发模块还用于,在处理模块根据第一通信装置对应的子模型对数据进行推理,得到推理结果之前,接收来自第三通信装置的第一通信装置对应的子模型。
一种可能的设计中,收发模块,还用于在处理模块根据第一通信装置对应的子模型对数据进行推理,得到推理结果之前,接收来自第二通信装置的第一通信装置对应的子模型。
一种可能的设计中,收发模块,还用于在接收来自第二通信装置的第一指示信息之前,向第二通信装置发送第一通信装置的状态信息。
一种可能的设计中,第一通信装置的状态信息包括下述一种或多种:第一通信装置的存储空间大小、第一通信装置的最大算力、第一通信装置占用的资源信息、第一通信装置的设备邻接矩阵、第一通信装置的设备状态、第一通信装置是否同意参与推理、第一通信装置的状态信息的有效期;其中,第一通信装置的设备邻接矩阵用于指示第一通信装置与其他第一通信装置的连接关系。
一种可能的设计中,收发模块还用于,在接收来自第二通信装置的第一指示信息之前,接收来自第二通信装置的设备选择结果;其中,设备选择结果用于指示第一通信装置被选择;收发模块,还用于向第二通信装置发送第一通信装置对设备选择结果的确认。
一种可能的设计中,收发模块还用于,在接收来自第一通信装置的上一跳通信装置的数据之前,接收来自第二通信装置的第一信息;其中,第一信息包括下述一种或多种:第一通信装置的上一跳通信装置占用的资源信息、第一通信装置的下一跳通信装置占用的资源信息、时间信息;其中,时间信息用于指示第一通信装置接收第一通信装置的上一跳通信装置的数据对应的时间范围。
一种可能的设计中,处理模块根据第一通信装置对应的子模型对数据进行推理,得到推理结果之前,收发模块,还用于获取加密后的子模型;处理模块对加密后的子模型进行解密,得到第一通信装置对应的子模型。
一种可能的设计中,收发模块接收来自第一通信装置的上一跳通信装置的数据,包括:收发模块接收来自第一通信装置的上一跳通信装置的加密后的数据;处理模块对加密后的数据进行解密,得到数据。
一种可能的设计中,处理模块根据第一通信装置对应的子模型对数据进行推理之前,收发模块还用于接收来自第二通信装置的推理开始信令;其中,推理开始信令用于指示第一通信装置开始根据子模型对接收到的数据进行推理;处理模块根据推理开始信令,根据第一通信装置对应的子模型进行推理。
一种可能的设计中,收发模块,还用于接收来自第二通信装置的推理结束信令;其中,推理结束信令用于指示第一通信装置停止根据子模型对接收到的数据进行推理;处理模块根据推理结束信令,停止根据第一通信装置对应的子模型对接收到的数据进行推理。
一种可能的设计中,收发模块向第一通信装置的下一跳通信装置发送推理结果,包括:收发模块向第一通信装置的下一跳通信装置发送发送请求;其中,发送请求用于请求发送推理结果;收发模块还用于接收来自第一通信装置的下一跳通信装置对发送请求的确认;收发模块根据确认向第一通信装置的下一跳通信装置发送推理结果。
一种可能的设计中,收发模块,还用于接收第一通信装置的下一跳通信装置对推理结果的确认;或者,用于接收来自第一通信装置的下一跳通信装置的重传请求;收发模块,还用于根据重传请求,向第一通信装置的下一跳通信装置发送推理结果。
一种可能的设计中,收发模块接收来自第一通信装置的上一跳通信装置的数据,包括:接收来自第一通信装置的上一跳通信装置的发送请求;其中,发送请求用于请求发送数据;收发模块还向第一通信装置的上一跳通信装置发送第一通信装置对发送请求的确认;并接收来自第一通信装置的上一跳通信装置的数据。
一种可能的设计中,收发模块接收来自第一通信装置的上一跳通信装置的数据之后,处理模块还根据数据,确定数据的度量值;收发模块还用于根据度量值,向第一通信装置的上一跳通信装置发送第一通信装置对数据的确认;或者,根据度量值,向第一通信装置的上一跳通信装置发送重传请求;收发模块还用于接收来自第一通信装置的上一跳通信装置的数据。
一种可能的设计中,收发模块还用于向与第一通信装置通信连接的通信装置发送信道测量配置信息;收发模块还用于广播第一通信装置特定参考信号;并接收来自与第一通信装置通信连接的通信装置的信道状态信息;处理模块根据信道状态信息,对第一通信装置的设备邻接矩阵进行更新。
一种可能的设计中,信道测量配置信息包括下述一种或多种:第一通信装置占用的频带、参考信号配置信息、信道状态反馈方式、信道状态反馈占用的时频资源。
需要说明的是,第二方面中通信装置的具体实现方式可参考第一方面或第一方面的任一种可能的设计提供的拆分推理方法中第一通信装置的行为功能。
第三方面,本申请实施例提供一种通信装置,该通信装置可以为第一通信装置或者第一通信装置中的芯片或者片上系统。该通信装置可以实现上述各方面或者各可能的设计中第一通信装置所执行的功能,所述功能可以通过硬件实现。一种可能的设计中,该通信装置可以包括:收发器和处理器。收发器和处理器可以用于支持通信装置实现上述第一方面或者第一方面的任一种可能的设计中所涉及的功能。例如:收发器可以用于接收来自第二通信装置的第一指示信息;其中,第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备;收发器还可以用于接收来自第一通信装置的上一跳通信装置的数据;处理器可以用于根据第一通信装置对应的子模型对数据进行推理,得到推理结果;其中,第一通信装置对应的子模型为根据X个通信装置对模型进行拆分得到的X个子模型中的一个,X个通信装置中的通信装置x对应第x个子模型,X个通信装置包括第一通信装置,x大于或等于1,x小于或等于X;收发器还可以用于向第一通信装置的下一跳通信装置发送推理结果。在又一种可能的设计中,所述通信装置还可以包括存储器,存储器,用于保存通信装置的计算机执行指令和数据。当该通信装置运行时,该收发器和处理器执行该存储器存储的该计算机执行指令,以使该通信装置执行如上述第一方面或者第一方面的任一种可能的设计所述的拆分推理方法。
其中,第三方面中通信装置的具体实现方式可参考第一方面或第一方面的任一种可能的设计提供的拆分推理方法中第一通信装置的行为功能。
第四方面,本申请实施例提供了一种拆分推理方法,该方法可以包括:第二通信装置生成第一指示信息;其中,第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备,第一通信装置为X个通信装置中的一个,X个通信装置中的通信装置x对应X个子模型中的第x个子模型,X个子模型是对模型进行拆分得到的,子模型用于对数据进行推理,x大于或等于1,x小于或等于X;第二通信装置向第一通信装置发送第一指示信息。
基于第四方面,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备,即第一通信装置可以从终端设备获取数据,或者第一通信装置可以向终端设备发送推理结果,相比于通信装置从中心服务器获取数据,并将推理结果发送给中心服务器,由中心服务器将推理结果发送给下一个通信装置,本申请可以降低推理结果的传输次数,降低通信开销,同时,第一通信装置将从终端设备处获取数据,或者将推理结果发送给终端设备,可以降低数据泄露到中心服务器的风险,降低用户隐私的泄露风险。
一种可能的设计中,第二通信装置生成第一指示信息之前,方法还包括:第二通信装置确定X个通信装置。
基于该可能的设计,当第二通信装置有推理任务时,第二通信装置可以调度X个通信装置共同完成推理任务。
一种可能的设计中,第二通信装置确定X个通信装置,包括:第二通信装置接收来自第三通信装置的推理信息;第二通信装置根据推理信息,确定X个通信装置。
一种可能的设计中,推理信息包括下述一种或多种:数据量大小、数据精度、模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、模型的最大拆分个数、推理任务的类型、推理任务的优先级;其中,推理任务的类型包括模型类型和数据类型,模型类型为私有或公有,数据类型为私有或公有。
基于上述两种可能的设计,当第三通信装置有推理任务时,第二通信装置可以根据第三通信装置发送的推理信息,调度X个通信装置共同完成第三通信装置的推理任务。
一种可能的设计中,第二通信装置向第三通信装置发送第二指示信息;其中,第二指示信息用于指示X个通信装置中的通信装置1和通信装置X。
基于该可能的设计,当第三通信装置有推理任务时,第二通信装置向第三通信装置发送第二指示信息,第三通信装置可以根据该第二指示信息将数据发送给通信装置1,并从通信装置X接收推理结果,完成推理,相比于经过中心服务器传输数据和推理结果,可以降低通信开销。
一种可能的设计中,第二通信装置获取M个通信装置的状态信息;其中,状态信息用于指示第一通信装置是否支持推理,X大于或等于1,X小于或等于M;第二通信装置根据M个通信装置的状态信息,选择X个通信装置。
一种可能的设计中,第二通信装置广播状态信息上报请求;其中,状态信息上报请求用于请求第一通信装置上报状态信息;第二通信装置接收来自M个通信装置的状态信息。
一种可能的设计中,第一通信装置的状态信息包括下述一种或多种:第一通信装置的存储空间大小、第一通信装置的最大算力、第一通信装置占用的资源信息、第一通信装置的设备邻接矩阵、第一通信装置的设备状态、第一通信装置是否同意参与推理、第一通信装置的状态信息的有效期;其中,第一通信装置的设备邻接矩阵用于指示第一通信装置与其他第一通信装置的连接关系。
基于上述三种可能的设计,第二通信装置可以根据状态信息,确定执行推理任务的X个通信装置,即可以根据状态信息动态地选择参与推理任务的通信装置,提高推理效率。
一种可能的设计中,第二通信装置向第一通信装置发送第一指示信息,包括:第二通信装置广播设备选择结果;其中,设备选择结果用于指示X个通信装置;第二通信装置接收第一通信装置对设备选择结果的确认;第二通信装置根据确认,向第一通信装置发送第一指示信息。
基于该可能的设计,第二通信装置确定X个通信装置后,还可以广播设备选择结果,如果选中的通信装置确定参与推理任务,则可以向第二通信装置发送确认。
一种可能的设计中,第二通信装置对模型进行拆分,得到X个子模型;第二通信装置分别向X个通信装置发送通信装置对应的子模型。
一种可能的设计中,第二通信装置对模型进行拆分,得到X个子模型,包括:第二通信装置广播设备选择结果;其中,设备选择结果用于指示X个通信装置;第二通信装置接收X个通信装置对设备选择结果的确认;第二通信装置根据确认对模型进行拆分,得到X个子模型。
基于上述两种可能的设计,当第二通信装置有推理任务时,第二通信装置可以对模型进行拆分,得到各个通信装置对应的子模型并发送。
一种可能的设计中,第二通信装置对模型进行拆分,得到X个子模型,包括:第二通信装置接收来自第三通信装置的模型;第二通信装置对模型进行拆分,得到X个子模型;或者,第二通信装置接收来自第三通信装置的模型的标识信息;第二通信装置根据模型的标识信息确定模型;第二通信装置对模型进行拆分,得到X个子模型。
一种可能的设计中,第二通信装置向第三通信装置发送X个通信装置对应的子模型信息;其中,子模型信息包括子模型对应的模型层数。
基于上述两种可能的设计,当第三通信装置有推理任务时,第二通信装置可以根据第三通信装置发送的模型,对模型进行拆分,得到各个通信装置对应的子模型并发送。第二通信装置也可以根据推理信息确定各个通信装置对应的子模型信息,由第二通信装置根据子模型信息对模型进行拆分,得到各个通信装置对应的子模型并发送。
一种可能的设计中,第二通信装置向X个通信装置中的通信装置1发送数据;第二通信装置接收来自X个通信装置中的通信装置X的推理结果。
一种可能的设计中,第二通信装置接收来自第三通信装置的数据;第二通信装置向X个通信装置中的通信装置1发送数据。
基于上述两种可能的设计,当第二通信装置有推理任务时,第二通信装置可以向通信装置发送数据,并接收通信装置X的推理结果,完成推理。当第三通信装置有推理任务时,当第二通信装置接收到第三通信装置的数据时,第二通信装置可以将数据转发给通信装置1,由通信装置1对第二通信装置的数据进行推理,进而完成第三通信装置的推理任务。
一种可能的设计中,第二通信装置向第一通信装置发送第一信息;其中,第一信息包括下述一种或多种:第一通信装置的上一跳通信装置占用的资源信息、第一通信装置的下一跳通信装置占用的资源信息、时间信息;其中,时间信息用于指示第一通信装置接收第一通信装置的上一跳通信装置的数据对应的时间范围。
基于该可能的设计,第二通信装置还可以向第一通信装置发送第一信息,第一通信装置可以根据第一信息与上一跳通信装置或下一跳通信装置进行通信。当第一信息包括时间信息时,第一通信装置还可以根据时间信息指示的时间范围进行信道检测,降低因信道检测带来的功耗。
一种可能的设计中,当第一通信装置的状态信息包括第一通信装置的状态信息的有效期时,方法还包括:当有效期超时的第一通信装置的状态信息的数量大于或等于第一阈值时,第二通信装置广播状态信息上报请求;第二通信装置接收来自M个通信装置的状态信息。
基于该可能的设计,当有效期超时的状态信息的数量大于或等于第一阈值时,第二通信装置可以重新获取通信装置的状态信息,进而根据重新获取的通信装置的状态信息选择更为合适的通信装置参与到推理任务中,提高推理效率。
一种可能的设计中,当第二通信装置接收到X个通信装置中至少一个通信装置对设备选择结果的拒绝时,第二通信装置重新选择X个通信装置并重新广播设备选择结果。
基于该可能的设计,当选中的通信装置拒绝参与推理任务时,第二通信装置可以重新选择更为合适的通信装置参与到推理任务中,提高推理效率。
一种可能的设计中,第二通信装置广播推理开始信令;其中,推理开始信令用于指示第一通信装置开始根据子模型对接收到的数据进行推理。
一种可能的设计中,第二通信装置广播推理结束信令;其中,推理结束信令用于指示第一通信装置停止根据子模型对接收到的数据进行推理。
基于上述两种可能的设计,第二通信装置还可以通过推理开始信令指示X个通信装置开始进行推理,通过推理结束信令指示X个通信装置停止推理,为推理任务的开始与结束提供一种可行性方案。
第五方面,本申请实施例提供了一种通信装置,通信装置可以实现上述第四方面或者第四方面可能的设计中第二通信装置所执行的功能,所述功能可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的模块。如,收发模块和处理模块。处理模块,用于生成第一指示信息;其中,第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备,第一通信装置为X个通信装置中的一个,X个通信装置中的通信装置x对应X个子模型中的第x个子模型,X个子模型是对模型进行拆分得到的,子模型用于对数据进行推理,x大于或等于1,x小于或等于X;收发模块,用于向第一通信装置发送第一指示信息。
一种可能的设计中,处理模块还用于,在生成第一指示信息之前,确定X个通信装置。
一种可能的设计中,处理模块确定X个通信装置,包括:收发模块接收来自第三通信装置的推理信息;处理模块根据推理信息,确定X个通信装置。
一种可能的设计中,推理信息包括下述一种或多种:数据量大小、数据精度、模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、模型的最大拆分个数、推理任务的类型、推理任务的优先级;其中,推理任务的类型包括模型类型和数据类型,模型类型为私有或公有,数据类型为私有或公有。
一种可能的设计中,收发模块,还用于向第三通信装置发送第二指示信息;其中,第二指示信息用于指示X个通信装置中的通信装置1和通信装置X。
一种可能的设计中,收发模块,还用于获取M个通信装置的状态信息;其中,状态信息用于指示第一通信装置是否支持推理,X大于或等于1,X小于或等于M;处理模块,用于根据M个通信装置的状态信息,选择X个通信装置。
一种可能的设计中,收发模块,还用于广播状态信息上报请求;其中,状态信息上报请求用于请求第一通信装置上报状态信息;收发模块,还用于接收来自M个通信装置的状态信息。
一种可能的设计中,第一通信装置的状态信息包括下述一种或多种:第一通信装置的存储空间大小、第一通信装置的最大算力、第一通信装置占用的资源信息、第一通信装置的设备邻接矩阵、第一通信装置的设备状态、第一通信装置是否同意参与推理、第一通信装置的状态信息的有效期;其中,第一通信装置的设备邻接矩阵用于指示第一通信装置与其他第一通信装置的连接关系。
一种可能的设计中,收发模块向第一通信装置发送第一指示信息,包括:收发模块广播设备选择结果;其中,设备选择结果用于指示X个通信装置;收发模块还用于接收第一通信装置对设备选择结果的确认;收发模块,还用于根据确认,向第一通信装置发送第一指示信息。
一种可能的设计中,处理模块,还用于对模型进行拆分,得到X个子模型;收发模块,还用于分别向X个通信装置发送通信装置对应的子模型。
一种可能的设计中,处理模块对模型进行拆分,得到X个子模型,包括:收发模块广播设备选择结果;其中,设备选择结果用于指示X个通信装置;收发模块还接收X个通信装置对设备选择结果的确认;处理模块根据确认对模型进行拆分,得到X个子模型。
一种可能的设计中,处理模块对模型进行拆分,得到X个子模型,包括:收发模块接收来自第三通信装置的模型;处理模块对模型进行拆分,得到X个子模型;或者,收发模块接收来自第三通信装置的模型的标识信息;处理模块根据模型的标识信息确定模型,并对模型进行拆分,得到X个子模型。
一种可能的设计中,收发模块,还用于向第三通信装置发送X个通信装置对应的子模型信息;其中,子模型信息包括子模型对应的模型层数。
一种可能的设计中,收发模块,还用于向X个通信装置中的通信装置1发送数据;还接收来自X个通信装置中的通信装置X的推理结果。
一种可能的设计中,收发模块,还用于接收来自第三通信装置的数据;并向X个通信装置中的通信装置1发送数据。
一种可能的设计中,收发模块,还用于向第一通信装置发送第一信息;其中,第一信息包括下述一种或多种:第一通信装置的上一跳通信装置占用的资源信息、第一通信装置的下一跳通信装置占用的资源信息、时间信息;其中,时间信息用于指示第一通信装置接收第一通信装置的上一跳通信装置的数据对应的时间范围。
一种可能的设计中,当第一通信装置的状态信息包括第一通信装置的状态信息的有效期时,当有效期超时的第一通信装置的状态信息的数量大于或等于第一阈值时,收发模块广播状态信息上报请求,并接收来自M个通信装置的状态信息。
一种可能的设计中,当收发模块接收到X个通信装置中至少一个通信装置对设备选择结果的拒绝时,重新选择X个通信装置并重新广播设备选择结果。
一种可能的设计中,收发模块,还用于广播推理开始信令;其中,推理开始信令用于指示第一通信装置开始根据子模型对接收到的数据进行推理。
一种可能的设计中,收发模块,还用于广播推理结束信令;其中,推理结束信令用于指示第一通信装置停止根据子模型对接收到的数据进行推理。
需要说明的是,第五方面中通信装置的具体实现方式可参考第四方面或第四方面的任一种可能的设计提供的拆分推理方法中第二通信装置的行为功能。
第六方面,本申请实施例提供了一种通信装置,该通信装置可以为第二通信装置中的芯片或者片上系统。该通信装置可以实现上述各方面或者各可能的设计中第二通信装置所执行的功能,所述功能可以通过硬件实现。一种可能的设计中,该通信装置可以包括:收发器和处理器。收发器和处理器可以用于支持通信装置实现上述第四方面或者第四方面的任一种可能的设计中所涉及的功能。例如:处理器可以用于生成第一指示信息;其中,第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备,第一通信装置为X个通信装置中的一个,X个通信装置中的通信装置x对应X个子模型中的第x个子模型,X个子模型是对模型进行拆分得到的,子模型用于对数据进行推理,x大于或等于1,x小于或等于X;收发器可以用于向第一通信装置发送第一指示信息。在又一种可能的设计中,所述通信装置还可以包括存储器,存储器,用于保存通信装置必要的计算机执行指令和数据。当该通信装置运行时,该收发器和处理器执行该存储器存储的该计算机执行指令,以使该通信装置执行如上述第四方面或者第四方面的任一种可能的设计所述的拆分推理方法。
其中,第六方面中通信装置的具体实现方式可参考第四方面或第四方面的任一种可能的设计提供的拆分推理方法中第二通信装置的行为功能。
第七方面,本申请实施例提供了一种拆分推理方法,该方法可以包括:第三通信装置向第二通信装置发送推理信息;第三通信装置接收来自第二通信装置的第二指示信息;其中,第二指示信息用于指示X个通信装置中的通信装置1和通信装置X,X个通信装置是第二通信装置根据推理信息确定的,X大于或等于1;第三通信装置向通信装置1发送数据;第三通信装置接收来自通信装置X的推理结果。
基于第七方面,当第三通信装置有推理任务时,第二通信装置可以调度X个通信装置执行第三通信装置的推理任务,由于第三通信装置和X个通信装置均为终端设备,各个终端设备可以直接从上一跳终端设备获取数据,并将自身推理得到的推理结果发送给下一跳终端设备,相比于终端设备从中心服务器获取数据,并将自身推理得到的推理结果发送给中心服务器,由中心服务器将推理结果发送给下一个终端设备,本申请实施例可以降低推理结果的传输次数,降低通信开销,由于是由X个通信装置根据X个子模型完成第三通信装置的推理任务,可以降低第三通信装置的算力需求,同时,可以降低第三通信装置的原始数据泄漏到中心服务器的风险。
一种可能的设计中,推理信息包括下述一种或多种:数据量大小、数据精度、模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、推理任务的类型、推理任务的优先级、模型的最大拆分个数;其中,推理任务的类型包括模型类型和数据类型,模型类型为私有或公有,数据类型为私有或公有。
一种可能的设计中,第三通信装置向第二通信装置发送推理信息,包括:第三通信装置向第二通信装置发送推理请求;其中,推理请求包括推理任务的类型,推理请求用于请求第二通信装置执行推理任务;第三通信装置接收第二通信装置对推理请求的确认;第三通信装置根据确认,向第二通信装置发送第二数据对应的推理信息。
基于上述两种可能的设计,第三通信装置可以向第二通信装置发送推理请求,当接收到第二通信装置的确认后,向第二通信装置发送推理信息,由第二通信装置调度X个通信装置完成第三通信装置的推理任务。
一种可能的设计中,第三通信装置向通信装置1发送数据之前,方法还包括:第三通信装置接收来自第二通信装置的X个通信装置对应的子模型信息;其中,子模型信息用于指示子模型对应的模型层数;第三通信装置根据子模型信息,对模型进行拆分,得到X个子模型;其中,通信装置x对应第x个子模型,第一通信装置对应的子模型用于第一通信装置对接收到的数据进行推理,x大于或等于1,x小于或等于X;第三通信装置向通信装置x发送通信装置x对应的子模型。
一种可能的设计中,第三通信装置向第二通信装置发送模型或模型的标识信息。
基于上述两种可能的设计,第三通信装置可以根据第二通信装置发送的子模型信息对模型进行拆分,得到各个通信装置对应的子模型并发送。第三通信装置也可以向第二通信装置发送模型,由第二通信装置对模型进行拆分,得到各个通信装置对应的子模型并发送。
一种可能的设计中,第三通信装置向通信装置x发送通信装置x对应的子模型,包括:第三通信装置对通信装置x对应的子模型进行加密;第三通信装置向通信装置x发送加密后的子模型。
基于该可能的设计,可以通过对子模型进行加密,提高子模型的安全保护性,降低子模型的泄露风险。
一种可能的设计中,第三通信装置向通信装置1发送数据,包括:第三通信装置对数据进行加密;第三通信装置向通信装置1发送加密后的数据。
基于该可能的设计,可以通过对数据进行加密,提高数据的安全保护性,降低数据的泄露风险。
一种可能的设计中,第三通信装置向通信装置1发送数据,包括:第三通信装置通过第二通信装置向通信装置1发送数据。
基于该可能的设计,第三通信装置可以直接向通信装置1发送数据,也可以通过第二通信装置向通信装置1发送数据,不予限制。
第八方面,本申请实施例提供了一种通信装置,通信装置可以实现上述第七方面或者第七方面可能的设计中第三通信装置所执行的功能,所述功能可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的模块。如,收发模块和处理模块。收发模块,用于向第二通信装置发送推理信息;还用于接收来自第二通信装置的第二指示信息;其中,第二指示信息用于指示X个通信装置中的通信装置1和通信装置X,X个通信装置是第二通信装置根据推理信息确定的,X大于或等于1;收发模块,还用于向通信装置1发送数据;并接收来自通信装置X的推理结果。
一种可能的设计中,推理信息包括下述一种或多种:数据量大小、数据精度、模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、推理任务的类型、推理任务的优先级、模型的最大拆分个数;其中,推理任务的类型包括模型类型和数据类型,模型类型为私有或公有,数据类型为私有或公有。
一种可能的设计中,收发模块向第二通信装置发送推理信息,包括:收发模块向第二通信装置发送推理请求;其中,推理请求包括推理任务的类型,推理请求用于请求第二通信装置执行推理任务;收发模块还接收第二通信装置对推理请求的确认;并根据确认,向第二通信装置发送第二数据对应的推理信息。
一种可能的设计中,收发模块还用于,在向通信装置1发送数据之前,接收来自第二通信装置的X个通信装置对应的子模型信息;其中,子模型信息用于指示子模型对应的模型层数;处理模块,用于根据子模型信息,对模型进行拆分,得到X个子模型;其中,通信装置x对应第x个子模型,第一通信装置对应的子模型用于第一通信装置对接收到的数据进行推理,x大于或等于1,x小于或等于X;收发模块,还用于向通信装置x发送通信装置x对应的子模型。
一种可能的设计中,收发模块向通信装置x发送通信装置x对应的子模型,包括:处理模块对通信装置x对应的子模型进行加密;收发模块向通信装置x发送加密后的子模型。
一种可能的设计中,收发模块,还用于向第二通信装置发送模型或模型的标识信息。
一种可能的设计中,收发模块向通信装置1发送数据,包括:处理模块对数据进行加密;收发模块向通信装置1发送加密后的数据。
一种可能的设计中,收发模块向通信装置1发送数据,包括:收发模块通过第二通信装置向通信装置1发送数据。
需要说明的是,第八方面中通信装置的具体实现方式可参考第七方面或第七方面的任一种可能的设计提供的拆分推理方法中第三通信装置的行为功能。
第九方面,本申请实施例提供一种通信装置,该通信装置可以为第三通信装置或者第三通信装置中的芯片或者片上系统。该通信装置可以实现上述各方面或者各可能的设计中第三通信装置所执行的功能,所述功能可以通过硬件实现。一种可能的设计中,该通信装置可以包括:收发器和处理器。收发器和处理器可以用于支持通信装置实现上述第七方面或者第七方面的任一种可能的设计中所涉及的功能。例如:收发器可以用于向第二通信装置发送推理信息;还用于接收来自第二通信装置的第二指示信息;其中,第二指示信息用于指示X个通信装置中的通信装置1和通信装置X,X个通信装置是第二通信装置根据推理信息确定的,X大于或等于1;收发器还可以用于向通信装置1发送数据;并接收来自通信装置X的推理结果。在又一种可能的设计中,所述通信装置还可以包括存储器,存储器,用于保存通信装置必要的计算机执行指令和数据。当该通信装置运行时,该收发器和处理器执行该存储器存储的该计算机执行指令,以使该通信装置执行如上述第七方面或者第七方面的任一种可能的设计所述的拆分推理方法。
其中,第九方面中通信装置的具体实现方式可参考第七方面或第七方面的任一种可能的设计提供的拆分推理方法中第三通信装置的行为功能。
第十方面,提供了一种通信装置,该通信装置包括一个或多个处理器;一个或多个处理器,用于运行计算机程序或指令,当一个或多个处理器执行计算机指令或指令时,使得通信装置执行如第一方面或者第一方面的任一可能的设计所述的拆分推理方法,或者执行如第四方面或者第四方面的任一可能的设计所述的拆分推理方法,或者执行如第七方面或者第七方面的任一可能的设计所述的拆分推理方法。
一种可能的设计中,该通信装置还包括一个或多个存储器,一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储上述计算机程序或指令。在一种可能的实现方式中,存储器位于所述通信装置之外。在另一种可能的实现方式中,存储器位于所述通信装置之内。本申请实施例中,处理器和存储器还可能集成于一个器件中,即处理器和存储器还可以被集成在一起。在一种可能的实现方式中,所述通信装置还包括收发器,所述收发器,用于接收信息和/或发送信息。
一种可能的设计中,该通信装置还包括一个或多个通信接口,一个或多个通信接口和一个或多个处理器耦合,一个或多个通信接口用于与通信装置之外的其它模块进行通信。
第十一方面,提供了一种通信装置,该通信装置包括输入输出接口和逻辑电路;输入输出接口,用于输入和/或输出信息;逻辑电路用于执行如第一方面或者第一方面的任一可能的设计所述的拆分推理方法,或者执行如第四方面或者第四方面的任一可能的设计所述的拆分推理方法,或者执行如第七方面或者第七方面的任一可能的设计所述的拆分推理方法,根据信息进行处理和/或生成信息。
第十二方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令或程序,当计算机指令或程序在计算机上运行时,使得如第一方面或者第一方面的任一可能的设计所述的拆分推理方法被执行,或者如第四方面或者第四方面的任一可能的设计所述的拆分推理方法被执行,或者如第七方面或者第七方面的任一可能的设计所述的拆分推理方法被执行。
第十三方面,提供了一种包含计算机指令的计算机程序产品,当其在计算机上运行时,使得如第一方面或者第一方面的任一可能的设计所述的拆分推理方法被执行,或者如第四方面或者第四方面的任一可能的设计所述的拆分推理方法被执行,或者如第七方面或者第七方面的任一可能的设计所述的拆分推理方法被执行。
第十四方面,本申请实施例提供一种计算机程序,当其在计算机上运行时,使得如第一方面或者第一方面的任一可能的设计所述的拆分推理方法被执行,或者如第四方面或者第四方面的任一可能的设计所述的拆分推理方法被执行,或者如第七方面或者第七方面的任一可能的设计所述的拆分推理方法被执行。
其中,第十方面至第十四方面中任一种设计方式所带来的技术效果可参见上述第一方面的任一种可能的设计所带来的技术效果,或者参见上述第四方面的任一种可能的设计所带来的技术效果,或者参见上述第七方面的任一种可能的设计所带来的技术效果。
第十五方面,提供了一种通信系统,该通信系统包括如第二方面至第三方面的任一方面所述的通信装置和如第五方面至第六方面的任一方面所述的通信装置,或者包括如第二方面至第三方面的任一方面所述的通信装置和如第五方面至第六方面的任一方面所述的通信装置和如第八方面至第九方面的任一方面所述的通信装置。
附图说明
图1为本申请实施例提供的一种推理过程的示意图;
图2为本申请实施例提供的一种推理过程的示意图;
图3为本申请实施例提供的一种通信系统的示意图;
图4为本申请实施例提供的一种通信装置的组成示意图;
图5为本申请实施例提供的一种拆分推理方法的交互示意图;
图6为本申请实施例提供的一种拆分推理方法的示意图;
图7为本申请实施例提供的一种确定X个通信装置并进行模型拆分的方法的交互示意图;
图8为本申请实施例提供的一种设备邻接矩阵的更新方法的交互示意图;
图9为本申请实施例提供的一种确定X个通信装置并进行模型拆分的方法的交互示意图;
图10为本申请实施例提供的一种对子模型进行加密的方法的交互示意图;
图11为本申请实施例提供的一种对数据进行加密的方法的交互示意图;
图12为本申请实施例提供的一种数据传输方法的交互示意图;
图13为本申请实施例提供的一种推理方法的交互示意图;
图14为本申请实施例提供的一种拆分推理方法的交互示意图;
图15为本申请实施例提供的一种推理请求方法的交互示意图;
图16为本申请实施例提供的一种推理请求方法的交互示意图;
图17为本申请实施例提供的一种拆分推理方法的示意图;
图18为本申请实施例提供的一种第一通信装置的组成示意图;
图19为本申请实施例提供的一种第二通信装置的组成示意图;
图20为本申请实施例提供的一种第三通信装置的组成示意图。
具体实施方式
在描述本申请实施例之前,对本申请实施例涉及的技术术语进行描述。
模型:随着大模型时代的到来,拥有海量参数的深度学习模型如BERT模型、GPT模型等能完成越来越复杂的任务,并能达到较好的性能。对于大模型来说,由于模型的推理过程会受到设备容量的限制,大模型一般存放于云端中心服务器上。
网络中的通信装置每天会产生海量的原始数据,通信装置可以将原始数据发送给中心服务器,中心服务器可以调用相应模型对原始数据进行推理,得到推理结果,并将推理结果发送给通信装置,从而完成对原始数据的推理。
但是,由于原始数据的数据量较大,会导致在对原始数据进行处理时,需要大量的通信资源传输原始数据,通信开销较大,同时由于通信装置将原始数据发送给中心服务器,会导致用户的隐私存在泄露风险。
基于此,提出了深度神经网络的分布式推理技术,该分布式推理技术中,可以利用通信装置本地的算力将通信装置参与到推理过程中。具体的,中心服务器可以对用于对原始数据进行推理的模型进行拆分,将拆分后的部分模型发送给通信装置,通信装置根据该部分模型对原始数据进行推理,得到中间推理结果,将中间推理结果发送给中心服务器,中心服务器根据剩余部分模型对中间推理结果进行推理,得到推理结果并发送给通信装置,从而避免通信装置将原始数据发送给中心服务器,降低通信开销。
示例性的,如图1所示,以模型包括n层为例,中心服务器可以将模型拆分成子模型1和子模型2,其中,子模型1可以包括模型的第一层至第n1层,子模型2可以包括模型的第n1+1层至第n层,中心服务器可以向通信装置发送子模型1,通信装置可以根据子模型1对原始数据进行推理,得到中间推理结果,将中间推理结果发送给中心服务器,中心服务器根据子模型2对接收到的中间推理结果进行推理,得到推理结果,将推理结果发送给通信装置。
上述方案可以避免通信装置将原始数据发送给中心服务器,降低通信开销。但是,由于通信装置通常不具备很大的存储空间或者算力,中心服务器对模型进行拆分时,通信装置对应的子模型占用模型的层数一般较少,导致通信装置在推理过程中的参与程度有限,同时,即使通信装置不将原始数据发送给中心服务器,中心服务器仍可能根据接收到的中间推理结果反推出原始数据,用户的隐私仍存在泄露风险。
基于此,提出可以由中心服务器将模型拆分成多个子模型,并发送给多个通信装置,每个通信装置对应一个子模型。多个通信装置可以根据多个子模型对原始数据进行推理,得到推理结果,从而提高通信装置在推理过程中的参与程度。
示例性的,如图2所示,以模型包括n层为例,中心服务器可以将模型拆分成子模型1、子模型2和子模型3,其中,子模型1可以包括模型的第一层至第n1层,子模型2可以包括模型的第n1+1层至第n2层,子模型3可以包括模型的第n2+1层至第n层。中心服务器可以向通信装置1发送子模型1,向通信装置2发送子模型2,向通信装置3发送子模型3。通信装置1可以根据子模型1对原始数据进行推理,得到中间推理结果1,并将中间推理结果1发送给中心服务器。中心服务器将中间推理结果1发送给通信装置2,通信装置2根据子模型2对中间推理结果1进行推理,得到中间推理结果2,并将中间推理结果2发送给中心服务器。中心服务器将中间推理结果2发送给通信装置3,通信装置3根据子模型3对中间推理结果2进行推理,得到推理结果,并将推理结果发送给中心服务器。中心服务器将推理结果发送给通信装置1,完成推理。
上述方案中,中心服务器不参与具体的推理过程,仅参与中间推理结果或推理结果的转发,多个通信装置参与推理过程可以提高通信装置的参与程度,同时,相比于传输海量的原始数据,传输中间推理结果可以降低通信开销。
但是,随着中间推理结果的传输次数的增加,通信开销不断增加,同时,由于通信装置将中间推理结果发送给中心服务器,中心服务器仍可能根据接收到的中间推理结果反推出原始数据,用户的隐私仍存在泄露风险。
综上,在采用模型对原始数据进行推理时,如何降低通信开销,同时降低原始数据泄漏到中心服务器的风险成为亟待解决的技术问题。
为解决该技术问题,本申请实施例提供了一种拆分推理方法,该方法中,第一通信装置可以接收来自第二通信装置的第一指示信息;其中,第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备;第一通信装置接收来自第一通信装置的上一跳通信装置的数据;第一通信装置根据第一通信装置对应的子模型对数据进行推理,得到推理结果;其中,第一通信装置对应的子模型为根据X个通信装置对模型进行拆分得到的X个子模型中的一个,X个通信装置中的通信装置x对应第x个子模型,X个通信装置包括第一通信装置,x大于或等于1,x小于或等于X;第一通信装置向第一通信装置的下一跳通信装置发送推理结果。
本申请实施例中,第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备,即第一通信装置可以从终端设备获取数据,或者第一通信装置可以向终端设备发送推理结果,相比于通信装置从中心服务器获取数据,并将推理结果发送给中心服务器,由中心服务器将推理结果发送给下一个通信装置,本申请可以降低推理结果的传输次数,降低通信开销,同时,第一通信装置将从终端设备处获取数据,或者将推理结果发送给终端设备,可以降低数据泄露到中心服务器的风险,降低用户隐私的泄露风险。
下面结合说明书附图对本申请实施例的实施方式进行详细描述。
本申请实施例提供的拆分推理方法可用于任一通信系统,该通信系统可以为第三代合作伙伴计划(third generation partnership project,3GPP)通信系统,例如,长期演进(long term evolution,LTE)通信系统,又可以为第五代(fifth generation,5G)移动通信系统、新空口(new radio,NR)通信系统、车联网(vehicle to everything,V2X)系统,还可以应用于LTE和5G混合组网的系统中,或者设备到设备(device-to-device,D2D)通信系统、机器到机器(machine to machine,M2M)通信系统、物联网(internet of things,IoT)、窄带物联网(narrow band-internet of things,NB-IoT)、以及5G之后演进的通信系统,也可以为无线保真(wireless fidelity,WiFi)等非3GPP通信系统,不予限制。
本申请实施例提供的拆分推理方法可以应用于各种通信场景,例如,可以应用于以下通信场景中的一种或多种:增强移动宽带(enhanced mobile broadband,eMBB)、超可靠低时延通信(ultra reliable low latency communication,URLLC)、机器类型通信(machine type communication,MTC)、大规模机器类型通信(massive machine typecommunications,mMTC)、D2D、车联网(vehicle to X,V2X)、IoT等通信场景。
下面以图3为例,对本申请实施例提供的通信系统进行描述。
图3为本申请实施例提供的一种通信系统的示意图,如图3所示,该通信系统可以包括网络设备和终端设备。
其中,网络设备可以包括中心服务器,中心服务器可以保存有用于对数据进行推理的模型。终端设备和网络设备可以通过信息交互,训练机器学习模型完成给定机器学习任务,交互的信息可以包括终端设备或网络设备采集的原始数据、中间推理结果、推理结果等信息。可选的,终端设备或网络设备可以包括数据采集模块,该数据采集模块可以用于采集原始数据。
其中,如图3所示,终端设备可以位于网络设备的波束/小区覆盖范围内。其中,终端设备可以通过上行链路(uplink,UL)或下行链路(downlink,DL)与网络设备进行空口通信。例如:终端设备在UL方向上可以通过物理上行共享信道(physical uplink sharedchannel,PUSCH)向网络设备发送上行数据;网络设备在DL方向上可以通过物理下行共享信道(physical downlink shared channel,PDSCH)向终端设备发送下行数据。
图3中的终端设备可以是支持新空口的终端设备,可以通过空口接入通信系统,并发起呼叫、上网等业务。终端设备还可以称为用户设备(user equipment,UE)或者移动台(mobile station,MS)或者移动终端(mobile terminal,MT)等。具体的,图3中的终端设备可以是蜂窝电话(cellular phone)、手机(mobile phone)、智能手机(smart phone)、无线数据卡、个人数字助理(personal digital assistant,PDA)电脑、平板型电脑、无线调制解调器(modem)、膝上型电脑(laptop computer)、MTC终端或带无线收发功能的电脑。还可以是虚拟现实(virtual reality,VR)终端、增强现实(augmented reality,AR)终端、工业控制中的无线终端、无人驾驶中的无线终端、远程医疗中的无线终端、智能电网中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、车载终端、具有无线通信功能的手持设备(handset)、可穿戴设备、计算设备、连接到无线调制解调器的其他处理设备、具有车对车(vehicle-to-vehicle,V2V)通信能力的车辆、智能网联车、有无人机对无人机(UAV to UAV,U2U)通信能力的无人机等等,不予限制。
其中,图3中的网络设备可以是任意一种具有无线收发功能的设备,主要用于实现无线物理控制功能、资源调度和无线资源管理、无线接入控制以及移动性管理等功能,提供可靠的无线传输协议和数据加密协议等。网络设备可以是一种部署在无线接入网中为终端设备提供无线通信功能的设备。
图3中的网络设备可以为支持有线接入的设备,也可以为支持无线接入的设备。示例性的,该网络设备可以为接入网(access network,AN)/无线接入网(radio accessnetwork,RAN)设备,由多个AN/RAN节点组成。AN/RAN节点可以为:接入点(access point,AP)、基站(nodeB,NB)、增强型基站(enhance nodeB,eNB)、下一代基站(NR nodeB,gNB)、传输接收点(transmission reception point,TRP)、传输点(transmission point,TP)或某种其它接入节点等,其中,基站可以包括各种形式的宏基站、微基站、中继站等,还可以为设备到设备(device-to-device,D2D)、车辆外联(vehicle-to-everything,V2X)、机器到机器(machine-to-machine,M2M)通信中承担基站功能的设备等,还可以包括云接入网(cloudradio access network,C-RAN)系统中的集中式单元(centralized unit,CU)和分布式单元(distributed unit,DU)、非陆地通信网络(non-terrestrial network,NTN)通信系统中的网络设备,即可以部署于高空平台或者卫星。本申请实施例对此不作具体限定。。
具体实现时,图3所示,如:各个终端设备、网络设备均可以采用图4所示的组成结构,或者包括图4所示的部件。图4为本申请实施例提供的一种通信装置400的组成示意图,该通信装置400可以为终端设备或者终端设备中的芯片或者片上系统;也可以为网络设备或者网络设备中的芯片或者片上系统。如图4所示,该通信装置400包括处理器401,收发器402以及通信线路403。
进一步的,该通信装置400还可以包括存储器404。其中,处理器401,存储器404以及收发器402之间可以通过通信线路403连接。
其中,处理器401是中央处理器(central processing unit,CPU)、通用处理器网络处理器(network processor,NP)、数字信号处理器(digital signal processing,DSP)、微处理器、微控制器、可编程逻辑器件(programmable logic device,PLD)或它们的任意组合。处理器401还可以是其它具有处理功能的装置,例如电路、器件或软件模块,不予限制。
收发器402,用于与其他设备或其它通信网络进行通信。该其它通信网络可以为以太网,RAN,无线局域网(wireless local area networks,WLAN)等。收发器402可以是模块、电路、收发器或者任何能够实现通信的装置。
通信线路403,用于在通信装置400所包括的各部件之间传送信息。
存储器404,用于存储指令。其中,指令可以是计算机程序。
其中,存储器404可以是只读存储器(read-only memory,ROM)或可存储静态信息和/或指令的其他类型的静态存储设备,也可以是随机存取存储器(random accessmemory,RAM)或可存储信息和/或指令的其他类型的动态存储设备,还可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或其他磁存储设备等,不予限制。
需要指出的是,存储器404可以独立于处理器401存在,也可以和处理器401集成在一起。存储器404可以用于存储指令或者程序代码或者一些数据等。存储器404可以位于通信装置400内,也可以位于通信装置400外,不予限制。处理器401,用于执行存储器404中存储的指令,以实现本申请下述实施例提供的拆分推理方法。
在一种示例中,处理器401可以包括一个或多个CPU,例如图4中的CPU0和CPU1。
作为一种可选的实现方式,通信装置400包括多个处理器,例如,除图4中的处理器401之外,还可以包括处理器407。
作为一种可选的实现方式,通信装置400还包括输出设备405和输入设备406。示例性地,输入设备406是触摸屏、键盘、鼠标、麦克风或操作杆等设备,输出设备405是显示屏、扬声器(speaker)等设备。
需要指出的是,通信装置400可以是台式机、便携式电脑、网络服务器、移动手机、平板电脑、无线终端、嵌入式设备、芯片系统或有图4中类似结构的设备。此外,图4中示出的组成结构并不构成对该通信装置的限定,除图4所示部件之外,该通信装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本申请实施例中,芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。
此外,本申请的各实施例之间涉及的动作、术语等均可以相互参考,不予限制。本申请的实施例中各个设备之间交互的消息名称或消息中的参数名称等只是一个示例,具体实现中也可以采用其他的名称,不予限制。
下面结合图3所示通信系统,参照下述图5,以网络设备有推理任务,网络设备可以调度多个终端设备一起完成该推理任务为例,对本申请实施例提供的拆分推理方法进行描述,其中,第一通信装置可以为图3所示通信系统中被有推理任务的网络设备调度的任一终端设备,第二通信装置可以为图3所示通信系统中有推理任务的网络设备。下述实施例所述的第一通信装置、第二通信装置均可以具备图4所示部件。本申请实施例中示出的单个执行主体(终端设备或网络设备)所执行的处理也可以被划分为由多个执行主体执行,这些执行主体可以在逻辑上和/或在物理上分离,例如,网络设备所执行的处理可以被划分为由中央单元(central unit,CU)、分布单元(distributed unit,DU)和无线电单元(radio unit,RU)中的至少一个执行,不予限制。
图5为本申请实施例提供的一种拆分推理方法的交互示意图,如图5所示,该方法可以包括:
步骤501、第二通信装置生成第一指示信息。
步骤502、第二通信装置向第一通信装置发送第一指示信息,相应的,第一通信装置接收来自第二通信装置的第一指示信息。
当第二通信装置有推理任务时,即表示需要采用某一模型对第二通信装置的数据进行推理,得到推理结果,该模型可以由第二通信装置提供。可选的,该模型可以存储于第二通信装置中。此时,第二通信装置可以调度X个通信装置利用该模型共同完成推理任务,其中,X大于或等于1,X个通信装置可以是X个终端设备,X个通信装置中的任一个通信装置都可以描述为本申请实施例所述的第一通信装置。
具体的,第二通信装置可以选择X个通信装置并进行排序,第二通信装置还可以根据X个通信装置将模型拆分成X个子模型,并将X个子模型分别发送给X个通信装置。即排序后的X个通信装置中的通信装置x可以对应X个子模型中的第x个子模型(或者也可以描述为子模型x),其中,x大于或等于1,x小于或等于X,第x-1个子模型的最后一层与第x个子模型的第一层在模型中为相邻层,第x个子模型的最后一层与第x+1个子模型的第一层在模型中为相邻层。X个通信装置可以根据接收到的子模型共同完成第二通信装置的推理任务。
可选的,第二通信装置包括模型服务器和控制服务器,其中,模型服务器的存储空间较大,可以用于存储模型;控制服务器的算力较高,可以用于进行通信装置选择和模型拆分。
第二通信装置还可以根据排序结果确定X个通信装置中每个通信装置的上一跳通信装置和下一跳通信装置,并向X个通信装置中的每个通信装置发送第一指示信息,以指示各个通信装置的上一跳通信装置和下一跳通信装置;其中,各个通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备。
示例性的,第一指示信息可以包括上一跳通信装置的标识信息和下一跳通信装置的标识信息。
例如,标识信息可以为通信装置的身份信息(identity,ID)、互联网协议(internet protocol,IP)地址、媒体接入控制(media access control,MAC)地址、国际移动用户识别码(international mobile subscriber identity,IMSI)、全球唯一临时标识(globally unique temporary UE identity,GUTI)、用户永久标识符(subscriptionpermanent identifier,SUPI)或者通用公共用户标识符(generic public subscriptionidentifier,GPSI)等,不予限制。
需要说明的是,由于第一通信装置可以是X个通信装置中的任一个通信装置,第二通信装置向各个通信装置发送第一指示信息也可以描述为第二通信装置向第一通信装置发送第一指示信息,其中,第一指示信息可以用于指示第一通信装置的上一跳通信装置和下一跳通信装置。
第一种可能的设计中,第二通信装置可以基于动态规划,在确定X个通信装置的同时进行模型拆分,并确定X个通信装置的排序结果和每个通信装置对应的子模型,根据排序结果确定X个通信装置中每个通信装置的上一跳通信装置和下一跳通信装置,并向X个通信装置中的每个通信装置发送通信装置对应的子模型和第一指示信息。
其中,对第一种可能的设计的具体描述可以参照下述图7至图8的相关描述,在此不予赘述。
第二种可能的设计中,第二通信装置也可以先确定X个通信装置,然后根据X个通信装置完成模型拆分并确定X个通信装置的排序结果,根据排序结果确定X个通信装置中的每个通信装置的上一跳通信装置和下一跳通信装置,并向X个通信装置中的每个通信装置发送通信装置对应的子模型和第一指示信息。
其中,对第二种可能的设计的具体描述可以参照下述图9的相关描述,在此不予赘述。
基于上述第一种可能的设计或者第二种可能的设计,第二通信装置在确定X个通信装置并对其进行排序后,可以确定:
当第一通信装置为X个通信装置中的通信装置1时,第一通信装置的上一跳通信装置为第二通信装置,第一通信装置的下一跳通信装置为X个通信装置中的通信装置2。
当第一通信装置为X个通信装置中的通信装置k时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置k-1,第一通信装置的下一跳通信装置为X个通信装置中的通信装置k+1;k大于或等于2,k小于或等于X-1。
当第一通信装置为X个通信装置中的通信装置X时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置X-1,第一通信装置的下一跳通信装置为第二通信装置。
步骤503、第一通信装置接收来自第一通信装置的上一跳通信装置的数据。
步骤504、第一通信装置根据第一通信装置对应的子模型对数据进行推理,得到推理结果。
步骤505、第一通信装置向第一通信装置的下一跳通信装置发送推理结果。
其中,如图6所示,当第一通信装置是X个通信装置中的通信装置1时,通信装置1可以接收第二通信装置发送的数据,通信装置1可以根据通信装置1对应的子模型(如子模型1)对第二通信装置发送的数据进行推理,得到推理结果,并将推理结果发送给X个通信装置中的通信装置2。
需要说明的是,第二通信装置向通信装置1发送的数据即第二通信装置中需要进行推理的数据。通信装置1对数据进行推理后得到的推理结果本质上也是数据,所以通信装置1向通信装置2发送的推理结果也可以称为通信装置1向通信装置2发送的数据。
如图6所示,当第一通信装置是X个通信装置中的通信装置k时,通信装置k可以接收X个通信装置中的通信装置k-1发送的数据,并根据通信装置k对应的子模型(如子模型k)对通信装置k-1发送的数据进行推理,得到推理结果,并将推理结果发送给X个通信装置中的通信装置k+1。
需要说明的是,通信装置k-1向通信装置k发送的数据即通信装置k-1根据通信装置k-1对应的子模型(如子模型k-1)进行推理得到的推理结果。通信装置k对接收到的数据进行推理后得到的推理结果本质上也是数据,所以通信装置k向通信装置k+1发送的推理结果也可以称为通信装置k向通信装置k+1发送的数据。
如图6所示,当第一通信装置是X个通信装置中的通信装置X时,通信装置X可以接收X个通信装置中的通信装置X-1发送的数据,并根据通信装置X对应的子模型(如子模型X)对通信装置X-1发送的数据进行推理,得到推理结果,并将推理结果发送给第二通信装置。
需要说明的是,通信装置X-1向通信装置X发送的数据即通信装置X-1根据通信装置X-1对应的子模型(如子模型X-1)进行推理后得到的推理结果。由于此时通信装置X是X个通信装置中的最后一个通信装置,通信装置X对接收到的数据进行推理,得到的推理结果便是最终的推理结果。通信装置X将最终的推理结果发送给第二通信装置,完成推理。
综上,对于X个通信装置中的前X-1个通信装置而言,根据子模型推理得到的推理结果可以认为是整个推理任务过程中产生的中间推理结果,最后一个通信装置(即通信装置X)根据子模型推理得到的推理结果可以认为是整个推理任务过程的最终推理结果。
基于上述图5所示的方法,第二通信装置在调度X个通信装置执行第二通信装置的推理任务时,由于X个通信装置均为终端设备,即通信装置1的下一跳通信装置是终端设备,通信装置k的上一跳通信装置和下一跳通信装置均为终端设备,通信装置X的上一跳通信装置是终端设备,终端设备可以直接从上一跳终端设备获取数据,并将自身推理得到的推理结果发送给下一跳终端设备,相比于终端设备从中心服务器获取数据,并将自身推理得到的推理结果发送给中心服务器,由中心服务器将推理结果发送给下一个终端设备,本申请实施例可以降低推理结果的传输次数,降低通信开销,同时,由于是由X个通信装置根据X个子模型完成第二通信装置的推理任务,可以降低第二通信装置的算力需求。
上述图5所示的方法中,对于步骤502中第一种可能的设计,第二通信装置可以采用下述图7所示的方法,根据通信装置的状态信息在确定X个通信装置的排序结果的同时完成模型拆分。
图7为本申请实施例提供的一种确定X个通信装置并进行模型拆分的方法,如图7所示,该方法可以包括:
步骤701、第二通信装置获取M个通信装置的状态信息;相应的,M个通信装置向第二通信装置发送自身的状态信息。
其中,X大于或等于1,X小于或等于M,通信装置的状态信息可以用于指示通信装置是否支持推理,M个通信装置可以为M个终端设备,本申请实施例中,除了第二通信装置可以为网络设备之外,其余通信装置均可以为终端设备。
示例性的,通信装置的状态信息可以包括下述一种或多种:通信装置的存储空间大小、通信装置的最大算力、通信装置占用的资源信息、通信装置的设备邻接矩阵、通信装置的设备状态、通信装置是否同意参与推理、通信装置的状态信息的有效期。
其中,通信装置占用的资源信息可以包括通信装置占用的频段、带宽等信息。
其中,通信装置的设备状态可以为空闲或繁忙。当通信装置的设备状态为空闲时,该通信装置可以支持推理,当通信装置的设备状态为繁忙时,该通信装置无法支持推理。
其中,通信装置的状态信息的有效期表示通信装置的状态信息在该有效期内可用。
其中,通信装置的设备邻接矩阵可以用于指示通信装置与其他通信装置的连接关系,设备邻接矩阵还可以用于指示通信装置与其他通信装置之间的信道状态或通信质量。
由于通信装置可以移动,通信装置与其他通信装置之间的连接关系(或信道状态、或通信质量)也在不断发生变化,通信装置可以通过与其他通信装置之间建立的通信连接,更新设备邻接矩阵。
可选的,通信装置周期性更新设备邻接矩阵,或者通信装置根据第二通信装置发送的信令触发更新设备邻接矩阵。
例如,通信装置可以根据第二通信装置发送的状态信息上报请求触发更新设备邻接矩阵。其中,状态信息上报请求可以用于请求通信装置上报通信装置的状态信息。通信装置可以在接收到第二通信装置发送的状态信息上报请求后,更新设备邻接矩阵,将更新后的设备邻接矩阵携带在状态信息中发送给第二通信装置。
示例性的,以对第一通信装置的设备邻接矩阵进行更新为例,参照下述图8,对设备邻接矩阵的更新过程进行描述。
图8为本申请实施例提供的一种设备邻接矩阵的更新方法,如图8所示,该方法可以包括:
步骤801、第一通信装置向与第一通信装置通信连接的通信装置发送信道测量配置信息;相应的,与第一通信装置通信连接的通信装置接收来自第一通信装置的信道测量配置信息。
其中,信道测量配置信息可以包括下述一种或多种:第一通信装置占用的频带、参考信号配置信息、信道状态反馈方式、信道状态反馈占用的时频资源。
其中,信道状态反馈方式可以包括下述一种或多种:宽带信道状态信息(channelstate information,CSI)反馈、子带CSI反馈、神经网络提取的特征反馈。
例如,通信装置可以通过神经网络对信道状态信息进行特征提取,将提取的特征发送给第一通信装置。
步骤802、第一通信装置广播第一通信装置特定参考信号;相应的,与第一通信装置通信连接的通信装置接收第一通信装置特定参考信号。
其中,第一通信装置特定参考信号可以为第一通信装置的用户特定(UE-specific)参考信号。
步骤803、与第一通信装置通信连接的通信装置根据第一通信装置特定参考信号,进行信道测量,生成信道状态信息。
其中,与第一通信装置通信连接的通信装置可以基于第一通信装置发送的信道测量配置信息,根据第一通信装置特定参考信号,进行信道测量,生成信道状态信息。
步骤804、与第一通信装置通信连接的通信装置向第一通信装置发送信道状态信息;相应的,第一通信装置接收来自与第一通信装置通信连接的通信装置的信道状态信息。
其中,与第一通信装置通信连接的通信装置可以根据第一通信装置发送的信道测量配置信息,向第一通信装置发送信道状态信息。
步骤805、第一通信装置根据信道状态信息,对第一通信装置的设备邻接矩阵进行更新。
基于上述图8所示的方法,各个通信装置可以参照上述图8所示的方法更新设备邻接矩阵,并在向第二通信装置发送状态信息时携带更新后的设备邻接矩阵,便于第二通信装置根据接收到的状态信息选择更为合适的通信装置参与到推理任务中,提高推理效率。
可选的,在各个通信装置向第二通信装置发送状态信息之前(即步骤701之前),如图7所示,第二通信装置还可以执行下述步骤701a。
步骤701a、第二通信装置广播状态信息上报请求。
其中,状态信息上报请求可以用于请求通信装置上报通信装置的状态信息。
具体的,当第二通信装置有推理任务,需要调度多个通信装置共同完成该推理任务时,第二通信装置可以采用广播的形式发送状态信息上报请求,接收到状态信息上报请求的通信装置可以将自身的状态信息上报给第二通信装置,即执行上述步骤701。
当第二通信装置接收到的通信装置的状态信息包括通信装置的状态信息的有效期时,如果有效期超时的通信装置的状态信息的数量大于或等于第一阈值时,第二通信装置可以重新广播状态信息上报请求,以重新获取各个通信装置的状态信息,进而根据重新获取的通信装置的状态信息选择更为合适的通信装置参与到推理任务中,提高推理效率。
其中,第一阈值可以是协议预先规定的,也可以是第二通信装置自定义的,不予限制。
步骤702、第二通信装置根据M个通信装置的状态信息,选择X个通信装置并进行模型拆分。
其中,第二通信装置可以采用动态规划的方式在选择X个通信装置的同时完成模型拆分。
示例性的,第二通信装置可以采用下述状态转移方程选择X个通信装置并完成模型拆分:
其中,f[i][j]表示路径上选取当前通信装置为通信装置i,前i-1个通信装置已经分了模型的前j层,通信装置i还没有子模型时,前i-1个通信装置利用模型的前j层推理到通信装置i时所需要的最小时间,i大于或等于1,i小于或等于X。表示通信装置x将第j层推理结果发送给通信装置i所需要的时间。
其中,g[i][j]表示路径上选取当前通信装置为通信装置i,前i个通信装置已经分了模型的前j层,且通信装置i对应的子模型的最后一层为第j层时,前i个通信装置利用模型的前j层进行推理时所需要的最小时间。ti,x+1,j表示通信装置i从第x+1层推理到第j层所需要的时间。
第二通信装置根据上述公式(1)和公式(2),在每次选择通信装置时通过选择推理所需时间最小的通信装置,在可控时间内尽可能获得最优解,便可从M个通信装置中确定X个通信装置,同时确定每个通信装置对应的子模型,从而完成对X个通信装置的排序和对模型的拆分。
第二通信装置在确定X个通信装置中各个通信装置对应的子模型,以及各个通信装置的上一跳通信装置和下一跳通信装置之后,可以直接向X个通信装置发送各个通信装置对应的子模型和第一指示信息,也可以采用下述步骤703至步骤705的方式,先发送设备选择结果,当接收到通信装置对设备选择结果的确认之后,再向通信装置发送通信装置对应的子模型和第一指示信息。
步骤703、第二通信装置广播设备选择结果;相应的,X个通信装置接收来自第二通信装置的设备选择结果。
其中,设备选择结果可以用于指示X个通信装置。
步骤704、X个通信装置向第二通信装置发送通信装置对设备选择结果的确认;相应的,第二通信装置接收来自X个通信装置中的每个通信装置对设备选择结果的确认。
其中,X个通信装置中的每个通信装置在接收到设备选择结果之后,可以确定自身是否参与推理任务,如果参与,则向第二通信装置发送对设备选择结果的确认,如果不参与,则可以向第二通信装置发送对设备选择结果的拒绝。
示例性的,X个通信装置中的每个通信装置可以通过向第二通信装置发送确认(acknowledgement,ACK)信令以指示对设备选择结果的确认,通过向第二通信装置发送不确认(non-ACK,NACK)信令以指示对设备选择结果的拒绝。
当第二通信装置接收到X个通信装置中至少一个通信装置对设备选择结果的拒绝时,第二通信装置可以重新选择X个通信装置并重新广播设备选择结果,当第二通信装置接收到重新选择的X个通信装置对设备选择结果的确认时,第二通信装置可以执行下述步骤705。
步骤705、第二通信装置根据确认,向X个通信装置中的每个通信装置发送第一指示信息和通信装置对应的子模型。
其中,第二通信装置向通信装置发送通信装置对应的子模型和第一指示信息时,第二通信装置可以在一次通信中向通信装置发送通信装置对应的子模型和第一指示信息,也可以分别向通信装置发送通信装置对应的子模型和第一指示信息,不予限制。
可选的,第二通信装置还向X个通信装置中的每个通信装置发送第一信息。
其中,第一信息可以包括下述一种或多种:通信装置的上一跳通信装置占用的资源信息、通信装置的下一跳通信装置占用的资源信息、时间信息。
可选的,第一信息还包括X个通信装置的排序结果、最大重传次数。
其中,占用的资源信息可以包括占用的频段、带宽等资源信息。
其中,时间信息可以用于指示通信装置接收通信装置的上一跳通信装置的数据对应的时间范围。
示例性的,时间信息可以是相对时间信息,相对时间信息可以用于指示通信装置接收通信装置的上一跳通信装置的数据相对推理开始的时间范围。
例如,相对时间信息可以包括下述一种或多种:最小相对时间、最大相对时间。
其中,最小相对时间可以为从推理开始到推理到当前通信装置所需要的最小时间,最大相对时间可以为从推理开始到推理到当前通信装置所需要的最大时间。
X个通信装置中的每个通信装置可以根据时间信息确定接收上一跳通信装置发送的数据的时间范围,通过在该时间范围内进行信道检测,可以根据信道检测结果确定上一跳通信装置发送的数据,降低通信装置因进行信道检测而带来的功耗。
可选的,第二通信装置向X个通信装置中的每个通信装置发送第一指示信息和通信装置对应的子模型后,X个通信装置中的每个通信装置还可以执行下述步骤706。
步骤706、X个通信装置中的每个通信装置向第二通信装置发送对第一指示信息和通信装置对应的子模型的确认;相应的,第二通信装置接收来自X个通信装置中的每个通信装置对第一指示信息和通信装置对应的子模型的确认。
其中,X个通信装置中的每个通信装置可以在接收到第一指示信息和通信装置对应的子模型后,向第二通信装置发送对第一指示信息和通信装置对应的子模型的确认,也可以在接收到第一指示信息后,向第二通信装置发送对第一指示信息的确认,在接收到通信装置对应的子模型后,向第二通信装置发送对通信装置对应的子模型的确认。
可选的,当第二通信装置向X个通信装置中的每个通信装置发送第一信息时,接收到第一信息的通信装置也可以向第二通信装置发送对第一信息的确认。
与上述图7至图8对步骤502中第一种可能的设计的描述不同的是,对于步骤502中第二种可能的设计,第二通信装置也可以采用下述图9所示的方法,先根据通信装置的状态信息确定X个通信装置,然后根据X个通信装置确定X个通信装置的排序结果并完成模型拆分。
图9为本申请实施例提供的一种确定X个通信装置并进行模型拆分的方法,如图9所示,该方法可以包括:
步骤901、第二通信装置获取M个通信装置的状态信息;相应的,M个通信装置向第二通信装置发送自身的状态信息。
其中,对步骤901的描述和对通信装置的状态信息的描述可以参照上述对步骤701的相关描述和对通信装置的状态信息的相关描述,不予赘述。
可选的,在各个通信装置向第二通信装置发送状态信息之前(即步骤901之前),如图9所示,第二通信装置还可以执行下述步骤901a。
步骤901a、第二通信装置广播状态信息上报请求。
其中,对步骤901a的描述可以参照上述对步骤701a的相关描述,不予赘述。
步骤902、第二通信装置根据M个通信装置的状态信息,选择X个通信装置。
其中,第二通信装置可以采用随机算法,从M个通信装置随机选择X个通信装置。
示例性的,第二通信装置可以根据通信装置的状态信息对通信装置进行优先级划分,通信装置的优先级越高,该通信装置被选中的概率越大。
步骤903、第二通信装置广播设备选择结果;相应的,X个通信装置接收来自第二通信装置的设备选择结果。
其中,设备选择结果可以用于指示第二通信装置选中的X个通信装置。
步骤904、X个通信装置中的每个通信装置向第二通信装置发送通信装置对设备选择结果的确认;相应的,第二通信装置接收X个通信装置对设备选择结果的确认。
其中,对步骤904的描述可以参照上述步骤704的相关描述,不予赘述。
步骤905、第二通信装置基于确认,根据X个通信装置的状态信息完成模型拆分。
其中,第二通信装置可以根据X个通信装置的状态信息,对模型进行拆分,得到每个通信装置对应的子模型,并确定每个通信装置的上一跳通信装置和下一跳通信装置。
步骤906、第二通信装置向X个通信装置中的每个通信装置发送第一指示信息和通信装置对应的子模型。
其中,对步骤906的描述可以参照上述步骤705的相关描述,不予赘述。
可选的,第二通信装置还向X个通信装置中的每个通信装置发送第一信息。
其中,对第一信息的描述可以参照上述步骤705中对第一信息的相关描述,不予赘述。
可选的,第二通信装置向X个通信装置中的每个通信装置发送第一指示信息和通信装置对应的子模型后,X个通信装置中的每个通信装置还可以执行下述步骤907。
步骤907、X个通信装置中的每个通信装置向第二通信装置发送对第一指示信息和通信装置对应的子模型的确认;相应的,第二通信装置接收来自X个通信装置中的每个通信装置对第一指示信息和通信装置对应的子模型的确认。
其中,对步骤907的描述可以参照上述步骤706的相关描述,不予赘述。
基于上述图7至图8对步骤502中第一种可能的设计的描述以及上述图9对步骤502中第二种可能的设计的描述,第二通信装置向X个通信装置发送通信装置对应的子模型时,可以对子模型进行加密,以提高子模型的传输安全性。
示例性的,以采用密钥对的形式对子模型进行加密为例,第二通信装置可以采用下述图10所示的方法对子模型进行加密。
图10中以第二通信装置向第一通信装置发送加密后的子模型为例,对本申请实施例提供的一种对子模型进行加密的方法进行描述,如图10所示,该方法可以包括:
步骤1001、第二通信装置向第一通信装置发送模型发送请求;相应的,第一通信装置接收来自第二通信装置的模型发送请求。
其中,第一通信装置可以是X个通信装置中的任一个通信装置;模型发送请求可以用于请求发送通信装置对应的子模型。
步骤1002、第一通信装置根据模型发送请求,生成密钥对。
其中,第一通信装置生成的密钥对可以包括第一通信装置的公钥和第一通信装置的私钥。
步骤1003、第一通信装置向第二通信装置发送第一通信装置的公钥;相应的,第二通信装置接收来自第一通信装置的公钥。
步骤1004、第二通信装置根据第一通信装置的公钥,对第一通信装置对应的子模型进行加密。
步骤1005、第二通信装置向第一通信装置发送加密后的子模型;相应的,第一通信装置接收来自第二通信装置的加密后的子模型。
步骤1006、第一通信装置根据第一通信装置的私钥对加密后的子模型进行解密,得到第一通信装置对应的子模型。
步骤1007、第一通信装置向第二通信装置发送对第一通信装置对应的子模型的确认;相应的,第二通信装置接收来自第一通信装置的对第一通信装置对应的子模型的确认。
当第二通信装置向X个通信装置发送各个通信装置对应的子模型和第一指示信息后,第二通信装置和X个通信装置便可执行上述图5中的步骤503至步骤505,对第二通信装置的数据进行推理。
可选的,在推理任务过程中,第二通信装置与第二通信装置的下一跳通信装置进行数据交互、以及X个通信装置中每个通信装置与自身的下一跳通信装置进行数据交互时,均可以对数据进行加密,以提高数据的传输安全性。
示例性的,以采用密钥对的形式对数据进行加密为例,可以采用下述图11所示的方法对数据进行加密。
图11中以第一通信装置向第一通信装置的下一跳通信装置发送加密后的数据为例,对本申请实施例提供的一种对数据进行加密的方法进行描述,其中,第一通信装置可以是X个通信装置中的任一个通信装置,可以理解的是,第二通信装置向第二通信装置的下一跳通信装置发送数据时的加密方式,可以参照第一通信装置向第一通信装置的下一跳通信装置发送数据时的加密方式,如图11所示,该方法可以包括:
步骤1101、第一通信装置向第一通信装置的下一跳通信装置发送数据发送请求;相应的,第一通信装置的下一跳通信装置接收来自第一通信装置的数据发送请求。
其中,数据发送请求可以用于请求发送数据。
步骤1102、第一通信装置的下一跳通信装置根据数据发送请求,生成密钥对。
其中,第一通信装置的下一跳通信装置生成的密钥对可以包括第一通信装置的下一跳通信装置的公钥和第一通信装置的下一跳通信装置的私钥。
步骤1103、第一通信装置的下一跳通信装置向第一通信装置发送第一通信装置的下一跳通信装置的公钥;相应的,第一通信装置接收来自第一通信装置的下一跳通信装置的公钥。
步骤1104、第一通信装置根据第一通信装置的下一跳通信装置的公钥,对数据进行加密。
其中,数据可以为第一通信装置根据第一通信装置对应的子模型进行推理后得到的推理结果。
步骤1105、第一通信装置向第一通信装置的下一跳通信装置发送加密后的数据;相应的,第一通信装置的下一跳通信装置接收来自第一通信装置的加密后的数据。
步骤1106、第一通信装置的下一跳通信装置根据第一通信装置的下一跳通信装置的私钥对加密后的数据进行解密,得到数据。
步骤1107、第一通信装置的下一跳通信装置向第一通信装置发送对数据的确认;相应的,第一通信装置接收来自第一通信装置的对数据的确认。
可选的,在推理任务过程中,第二通信装置与第二通信装置的下一跳通信装置进行数据交互、以及X个通信装置中每个通信装置与自身的下一跳通信装置进行数据交互时,当通信装置向通信装置的下一跳通信装置发送数据后,下一跳通信装置可以在数据接收成功后向通信装置发送对数据的确认,也可以在数据接收失败后向通信装置请求对数据进行重传。
图12中以第一通信装置向第一通信装置的下一跳通信装置发送数据为例,对本申请实施例提供的一种数据传输方法进行描述,其中,第一通信装置可以是X个通信装置中的任一个通信装置,可以理解的是,第二通信装置与第二通信装置的下一跳通信装置之间的数据传输方式,可以参照第一通信装置与第一通信装置的下一跳通信装置之间的数据传输方式,如图12所示,该方法可以包括:
步骤1201、第一通信装置向第一通信装置的下一跳通信装置发送发送请求;相应的,第一通信装置的下一跳通信装置接收来自第一通信装置的发送请求。
其中,发送请求可以用于请求发送数据,该数据实质上可以是第一通信装置根据第一通信装置对应的子模型进行推理后得到的推理结果。
步骤1202、第一通信装置的下一跳通信装置向第一通信装置发送对发送请求的确认;相应的,第一通信装置接收来自第一通信装置的下一跳通信装置对发送请求的确认。
其中,第一通信装置的下一跳通信装置接收到第一通信装置的发送请求后,如果第一通信装置的下一跳通信装置确定接收第一通信装置的数据,则可以向第一通信装置发送对发送请求的确认,如果拒绝接收第一通信装置的数据,则可以向第一通信装置发送对发送请求的拒绝。
步骤1203、第一通信装置根据确认向第一通信装置的下一跳通信装置发送数据;相应的,第一通信装置的下一跳通信装置接收来自第一通信装置的数据。
其中,第一通信装置发送的数据实质上是第一通信装置根据第一通信装置对应的子模型进行推理后得到的推理结果,第一通信装置发送的数据也可以描述为第一通信装置发送的推理结果。
步骤1204、第一通信装置的下一跳通信装置根据数据,确定数据的度量值(metric)。
其中,度量值可以包括下述一种或多种:循环冗余校验(cyclic redundancycheck,CRC)、数据鲁棒性、失真度。
第一通信装置的下一跳通信装置可以根据数据的度量值,确定数据是否接收成功,如果接收成功,可以执行下述步骤1205,如果接收失败,可以执行下述步骤1206和步骤1207。
步骤1205、第一通信装置的下一跳通信装置向第一通信装置发送对数据的确认;相应的,第一通信装置接收来自第一通信装置的下一跳通信装置对数据的确认。
步骤1206、第一通信装置的下一跳通信装置向第一通信装置发送重传请求;相应的,第一通信装置接收来自第一通信装置的下一跳通信装置的重传请求。
其中,重传请求可以用于请求第一通信装置重新发送数据。
步骤1207、第一通信装置根据重传请求,向第一通信装置的下一跳通信装置发送数据。
其中,第一通信装置根据重传请求,向第一通信装置的下一跳通信装置发送数据时,可以根据重传次数确定是否根据重传请求发送数据,如果重传次数小于或等于预定重传次数,则第一通信装置可以根据重传请求发送数据,如果重传次数大于预定重传次数,则第一通信装置无法根据重传请求发送数据。
可选的,对于上述图5中步骤503至步骤505所示的对第二通信装置的数据进行推理的过程,如下述图13所示,第二通信装置向X个通信装置中的通信装置1发送数据之前,还可以广播推理开始信令,以指示推理开始,在接收到X个通信装置中的通信装置X发送的推理结果之后,还可以广播推理结束信令,以指示推理结束。
图13为本申请实施例提供的一种推理方法,如图13所示,该方法可以包括:
步骤1301、第二通信装置广播推理开始信令,相应的,X个通信装置接收来自第二通信装置的推理开始信令。
其中,推理开始信令可以用于指示通信装置开始根据通信装置对应的子模型对接收到的数据进行推理。
需要说明的是,通信装置接收到推理开始信令后,可以先进行信道检测,在检测到通信装置的上一跳通信装置发送的数据后,开始根据通信装置对应的子模型对接收到的数据进行推理。
可选的,当第二通信装置向X个通信装置中的每个通信装置发送第一信息时,如果第一信息包括时间信息,通信装置可以根据接收到的第一信息中的时间信息进行信道检测,避免因过早开始进行信道检测而产生较大的功耗。
其中,对第一信息的描述可以参照上述步骤705中对第一信息的相关描述,不予赘述。
步骤1302、第二通信装置向X个通信装置中的通信装置1发送数据;相应的,通信装置1接收来自第二通信装置的数据。
其中,第二通信装置向通信装置1发送的数据即第二通信装置中需要推理的数据。
通信装置1接收到数据后,可以根据通信装置1对应的子模型对接收到的数据进行推理,得到推理结果并发送给通信装置2;通信装置2可以根据通信装置2对应的子模型对接收到的数据(即通信装置1的推理结果)进行推理,得到推理结果并发送给通信装置3;……;通信装置X-1可以根据通信装置X-1对应的子模型对接收到的数据(即通信装置X-2的推理结果)进行推理,得到推理结果并发送给通信装置X;通信装置X可以根据通信装置X对应的子模型对接收到的数据(即通信装置X-1的推理结果)进行推理,得到推理结果并执行下述步骤1303。
步骤1303、X个通信装置中的通信装置X向第二通信装置发送推理结果;相应的,第二通信装置接收来自通信装置X的推理结果。
其中,由于通信装置X是X个通信装置中的最后一个通信装置,通信装置X向第二通信装置发送的推理结果即最终的推理结果。
步骤1304、第二通信装置广播推理结束信令;相应的,X个通信装置接收来自第二通信装置的推理结束信令。
其中,推理结束信令可以用于指示通信装置停止根据通信装置对应的子模型对接收到的数据进行推理。
X个通信装置接收到推理结束信令时,可以根据该推理结束信令停止根据通信装置对应的子模型对接收到的数据进行推理。
需要说明的是,当存在多轮数据时,第二通信装置可以在接收到多轮数据的推理结果后广播推理结束信令。
上述图5至图13所示的方法适用于网络设备有推理任务时,网络设备调度多个终端设备共同完成网络设备的推理任务的应用场景,当终端设备有推理任务时,参照下述图14,终端设备可以通过网络设备调度X个终端设备共同完成该终端设备的推理任务。
其中,图14中的第三通信装置可以为图3所示通信系统中有推理任务的终端设备,第二通信装置可以为图3所示通信系统中协助第三通信装置完成推理任务的网络设备,第一通信装置可以为图3所示通信系统中被网络设备调度用于协助第三通信装置完成推理任务的终端设备,第一通信装置可以是X个终端设备中的任一个,X个终端设备也可以称为X个通信装置。
图14为本申请实施例提供的一种拆分推理方法,如图14所示,该方法可以包括:
步骤1401、第三通信装置向第二通信装置发送推理信息;相应的,第二通信装置接收来自第三通信装置的推理信息。
其中,第三通信装置可以直接向第二通信装置发送推理信息,也可以采用如下述图15所示的方法,在获取第二通信装置的确认后向第二通信装置发送推理信息。
图15是本申请实施例提供的一种推理请求方法的交互示意图,如图15所示,该方法可以包括:
步骤1501、第三通信装置向第二通信装置发送推理请求;相应的,第二通信装置接收来自第三通信装置的推理请求。
其中,推理请求可以包括推理任务的类型,推理请求可以用于请求第二通信装置执行推理任务。
示例性的,推理任务的类型可以包括模型类型和数据类型,模型类型可以为私有或公有,数据类型为私有或公有。
例如,如下述表1所示,对于推理任务0,数据可以为私有,模型可以为私有。对于推理任务1,数据可以为私有,模型可以为公有。对于推理任务2,数据可以为公有,模型可以为私有。对于推理任务3,数据可以为公有,模型可以为公有。
表1
推理任务 | 数据 | 模型 |
0 | 私有 | 私有 |
1 | 私有 | 公有 |
2 | 公有 | 私有 |
3 | 公有 | 公有 |
需要说明的是,当第三通信装置有推理任务时,即表示需要采用某一模型对第三通信装置的数据进行推理,得到推理结果,该模型可以由第三通信装置提供。
步骤1502、第二通信装置向第三通信装置发送对推理请求的确认;相应的,第三通信装置接收来自第二通信装置的对推理请求的确认。
当第二通信装置确定执行第三通信装置的推理任务时,第二通信装置可以向第三通信装置发送对推理任务的确认,否则,第二通信装置可以向第三通信装置发送对推理任务的拒绝。
步骤1503、第三通信装置根据确认向第二通信装置发送推理信息;相应的,第二通信装置接收来自第三装置的推理信息。
其中,推理信息可以包括下述一种或多种:数据量大小、数据精度、模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、推理任务的类型、推理任务的优先级、模型的最大拆分个数。
其中,对于推理任务的优先级,可以通过推理任务的截止时间来指示推理任务的优先级,也可以采用其他参数来指示推理任务的优先级,不予限制。
例如,推理任务的截止时间越早,该推理任务的优先级越高。
第一种可能的设计中,如图16中的(a)所示,对于推理任务0,由于数据和模型都是私有的,第三通信装置可以向第二通信装置发送推理信息,而不用向第二通信装置发送数据和模型,提高第三通信装置的数据和模型的安全隐私性。
此时,第二通信装置可以根据推理信息中的模型的相关信息(如模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、模型的最大拆分个数等)确定各个通信装置对应的子模型信息,并将确定的各个通信装置对应的子模型信息发送给第三通信装置,第三通信装置根据子模型信息对模型进行拆分,得到各个通信装置对应的子模型,并将拆分后的子模型发送给X个通信装置。
其中,子模型信息可以包括子模型对应的层数。
可选的,第三通信装置向第二通信装置发送的子模型信息还包括各个子模型之间的连接关系、各个子模型之间的先后顺序。
另外,由于数据是私有的,第三通信装置可以将数据发送给X个通信装置中的通信装置1,以避免数据泄露到第二通信装置,提高数据的安全隐私性。
第二种可能的设计中,如图16中的(b)所示,对于推理任务1,由于数据是私有的,模型是公有的,第三通信装置可以向第二通信装置发送推理信息和模型,而不用向第二通信装置发送数据,提高第三通信装置的数据的安全隐私性。
其中,第三通信装置向第二通信装置发送模型时,可以发送模型的结构和参数,如果模型是通用预训练模型,第三通信装置可以发送模型的标识信息,降低通信开销,第二通信装置可以根据模型的标识信息,确定模型的结构和参数。
此时,第二通信装置可以根据推理信息和模型,对模型进行拆分,并将拆分后的子模型发送给X个通信装置,避免第三通信装置因对模型进行拆分而带来的功耗。
可以理解的是,第三通信装置也可以不向第二通信装置发送模型,此时,第二通信装置可以根据推理信息中的模型的相关信息(如模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、模型的最大拆分个数等)确定子模型信息,并将确定的子模型发送给第三通信装置,第三通信装置根据子模型信息对模型进行拆分,并将拆分后的子模型发送给X个通信装置。
其中,子模型信息可以包括子模型对应的层数。
另外,由于数据是私有的,当对数据进行推理时,第三通信装置可以将数据发送给X个通信装置中的通信装置1,以避免数据泄露到第二通信装置,提高数据的安全隐私性。
第三种可能的设计中,如图16中的(c)所示,对于推理任务2,由于数据是公有的,模型是私有的,第三通信装置可以向第二通信装置发送推理信息和数据,而不用向第二通信装置发送模型,提高第三通信装置的模型的安全隐私性。
此时,第二通信装置可以根据推理信息中的模型的相关信息(如模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、模型的最大拆分个数等)确定子模型信息,并将确定的子模型发送给第三通信装置,第三通信装置根据子模型信息对模型进行拆分,并将拆分后的子模型发送给X个通信装置。
其中,子模型信息可以包括子模型对应的层数。
另外,由于数据是公有的,当对数据进行推理时,第三通信装置可以向第二通信装置发送数据,由第二通信装置将数据发送给X个通信装置中的通信装置1,第三通信装置也可以直接将数据发送给X个通信装置中的通信装置1。
当第三通信装置直接将数据发送给X个通信装置中的通信装置1时,可以避免数据泄露到第二通信装置,提高数据的安全隐私性。
第四种可能的设计中,如图16中的(d)所示,对于推理任务3,由于数据和模型均为公有的,第三通信装置可以向第二通信装置发送推理信息、数据和模型。
其中,第三通信装置向第二通信装置发送模型时,可以发送模型的结构和参数,如果模型是通用预训练模型,第三通信装置可以发送模型的标识信息,降低通信开销,第二通信装置可以根据模型的标识信息,确定模型的结构和参数,
此时,第二通信装置可以根据推理信息和模型,对模型进行拆分,并将拆分后的子模型发送给X个通信装置,避免第三通信装置因对模型进行拆分而带来的功耗。
可以理解的是,第三通信装置也可以不向第二通信装置发送模型,此时,第二通信装置可以根据推理信息中的模型的相关信息(如模型的层数、模型的输入输出维度、模型的各个层的浮点计算数、模型的最大拆分个数等)确定子模型信息,并将确定的子模型发送给第三通信装置,第三通信装置根据子模型信息对模型进行拆分,并将拆分后的子模型发送给X个通信装置。
其中,子模型信息可以包括子模型对应的层数。
另外,由于数据是公有的,当对数据进行推理时,第三通信装置可以向第二通信装置发送数据,由第二通信装置将数据发送给X个通信装置中的通信装置1,第三通信装置也可以直接将数据发送给X个通信装置中的通信装置1。
当第三通信装置直接将数据发送给X个通信装置中的通信装置1时,可以避免数据泄露到第二通信装置,提高数据的安全隐私性。
基于上述四种可能的设计,第三通信装置可以向第二通信装置发送推理信息,第二通信装置可以根据推理信息调度X个通信装置完成第三通信装置的推理任务。
步骤1402、第二通信装置根据推理信息,确定X个通信装置。
其中,X个装置可以包括第三通信装置,即第三通信装置也可以参与推理。
第一种可能的设计中,如果模型是公有的且第三通信装置将模型发送给第二通信装置,则第二通信装置可以参照上述对图7和图8的描述,基于动态规划,根据第三通信装置发送的模型和通信装置的状态信息,在确定X个通信装置的同时进行模型拆分,并确定X个通信装置的排序结果和每个通信装置对应的子模型,根据排序结果确定X个通信装置中每个通信装置的上一跳通信装置和下一跳通信装置,并向X个通信装置中的每个通信装置发送通信装置对应的子模型和第一指示信息。
其中,第一指示信息用于指示通信装置的上一跳通信装置和下一跳通信装置。
如果模型是公有的但第三通信装置没有将模型发送给第二通信装置,或者如果模型是私有的,第二通信装置可以根据推理信息中模型的相关信息和通信装置的状态信息,在确定X个通信装置的同时进行模型处理,确定X个通信装置的排序结果和每个通信装置对应的子模型信息,根据排序结果确定X个通信装置中每个通信装置的上一跳通信装置和下一跳通信装置,并向X个通信装置中的每个通信装置发送第一指示信息,向第三通信装置发送每个通信装置对应的子模型信息。
其中,对第一种可能的设计的具体描述可以参照上述图7和图8的相关描述,不予赘述。
第二种可能的设计中,如果模型是公有的且第三通信装置将模型发送给第二通信装置,则第二通信装置可以参照上述对图9的描述,根据第三通信装置发送的模型和通信装置的状态信息,先确定X个通信装置,然后根据X个通信装置完成模型拆分并确定X个通信装置的排序结果,根据排序结果确定X个通信装置中的每个通信装置的上一跳通信装置和下一跳通信装置,并向X个通信装置中的每个通信装置发送通信装置对应的子模型和第一指示信息。
如果模型是公有的但第三通信装置没有将模型发送给第二通信装置,或者如果模型是私有的,第二通信装置可以根据推理信息中模型的相关信息和通信装置的状态信息,先确定X个通信装置,然后根据X个通信装置完成模型处理并确定X个通信装置的排序结果,根据排序结果确定X个通信装置中的每个通信装置的上一跳通信装置和下一跳通信装置,并向X个通信装置中的每个通信装置发送第一指示信息,向第三通信装置发送每个通信装置对应的子模型信息。
其中,对第二种可能的设计的具体描述可以参照上述图9的相关描述,不予赘述。
基于上述第一种可能的设计或者第二种可能的设计,第二通信装置在确定X个通信装置并对其进行排序后,可以确定:
当第一通信装置为X个通信装置中的通信装置1时,第一通信装置的上一跳通信装置为第三通信装置,第一通信装置的下一跳通信装置为X个通信装置中的通信装置2。
当第一通信装置为X个通信装置中的通信装置k时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置k-1,第一通信装置的下一跳通信装置为X个通信装置中的通信装置k+1;k大于或等于2,k小于或等于X-1。
当第一通信装置为X个通信装置中的通信装置X时,第一通信装置的上一跳通信装置为X个通信装置中的通信装置X-1,第一通信装置的下一跳通信装置为第三通信装置。
步骤1403、第二通信装置向第一通信装置发送第一指示信息。
其中,第一通信装置可以是X个通信装置中的任一个通信装置,第一指示信息可以用于指示通信装置的上一跳通信装置和下一跳装置。
步骤1404、第二通信装置向第三通信装置发送第二指示信息。
其中,第二指示信息可以用于指示X个通信装置中的通信装置1和通信装置X,X大于或等于1。
其中,第三通信装置根据第二指示信息,可以确定将数据发送给通信装置1,从通信装置X接收推理结果。
需要说明的是,上述步骤1403和步骤1404的执行没有先后顺序的限定,可以先执行步骤1403,再执行步骤1404;也可以先执行步骤1404,再执行步骤1403;也可以同时执行步骤1403和步骤1404,不予限制。
步骤1405、第一通信装置获取第一通信装置对应的子模型。
其中,如果模型是公开的且第三通信装置将模型发送给第二通信装置,则第二通信装置可以对模型进行拆分,得到各个通信装置对应的子模型,并向各个通信装置发送通信装置对应的子模型。
如果模型是公开的,但是第三通信装置没有将模型发送给第二通信装置,第二通信装置可以根据推理信息中模型的相关信息对模型进行处理,得到每个通信装置对应的子模型信息并发送给第三通信装置,第三通信装置可以根据每个通信装置对应的子模型信息对模型进行拆分,得到每个通信装置对应的子模型,并向各个通信装置发送通信装置对应的子模型。
可选的,如果由第三通信装置向各个通信装置发送通信装置对应的子模型,在第三通信装置发送通信装置对应的子模型之前,第二通信装置可以向第三通信装置发送模型发送指示,第三通信装置根据模型发送指示向各个通信装置发送通信装置对应的子模型,在第三通信装置发送完各个通信装置对应的子模型之后,第三通信装置还可以向第二通信装置发送模型发送完成的确认。
步骤1406、第一通信装置从第一通信装置的上一跳装置接收数据。
步骤1407、第一装置根据第一通信装置对应的子模型对接收到的数据进行推理,得到推理结果。
步骤1408、第一通信装置向第一通信装置的下一跳通信装置发送推理结果。
其中,如图17所示,当第一通信装置是X个通信装置中的通信装置1时,通信装置1可以接收第三通信装置发送的数据,通信装置1可以根据通信装置1对应的子模型(如子模型1)对第三通信装置发送的数据进行推理,得到推理结果,并将推理结果发送给X个通信装置中的通信装置2。
需要说明的是,第三通信装置向通信装置1发送的数据即第三通信装置中需要进行推理的数据。通信装置1对数据进行推理后得到的推理结果本质上也是数据,所以通信装置1向通信装置2发送的推理结果也可以称为通信装置1向通信装置2发送的数据。
另外,当数据是公有时,第三通信装置可以通过第二通信装置向通信装置1发送数据,不予限制。
如图17所示,当第一通信装置是X个通信装置中的通信装置k时,通信装置k可以接收X个通信装置中的通信装置k-1发送的数据,并根据通信装置k对应的子模型(如子模型k)对通信装置k-1发送的数据进行推理,得到推理结果,并将推理结果发送给X个通信装置中的通信装置k+1。
需要说明的是,通信装置k-1向通信装置k发送的数据即通信装置k-1根据通信装置k-1对应的子模型(如子模型k-1)进行推理得到的推理结果。通信装置k对接收到的数据进行推理后得到的推理结果本质上也是数据,所以通信装置k向通信装置k+1发送的推理结果也可以称为通信装置k向通信装置k+1发送的数据。
如图17所示,当第一通信装置是X个通信装置中的通信装置X时,通信装置X可以接收X个通信装置中的通信装置X-1发送的数据,并根据通信装置X对应的子模型(如子模型X)对通信装置X-1发送的数据进行推理,得到推理结果,并将推理结果发送给第三通信装置。
需要说明的是,通信装置X-1向通信装置X发送的数据即通信装置X-1根据通信装置X-1对应的子模型(如子模型X-1)进行推理后得到的推理结果。由于此时通信装置X是X个通信装置中的最后一个通信装置,通信装置X对接收到的数据进行推理,得到的推理结果便是最终的推理结果。通信装置X将最终的推理结果发送给第三通信装置,完成推理。
综上,对于X个通信装置中的前X-1个通信装置而言,根据子模型推理得到的推理结果可以认为是整个推理任务过程中产生的中间推理结果,最后一个通信装置(即通信装置X)根据子模型推理得到的推理结果可以认为是整个推理任务过程的最终推理结果。
基于上述图14所示的方法,第二通信装置在调度X个通信装置执行第三通信装置的推理任务时,由于第三通信装置和X个通信装置均为终端设备,各个终端设备可以直接从上一跳终端设备获取数据,并将自身推理得到的推理结果发送给下一跳终端设备,相比于终端设备从中心服务器获取数据,并将自身推理得到的推理结果发送给中心服务器,由中心服务器将推理结果发送给下一个终端设备,本申请实施例可以降低推理结果的传输次数,降低通信开销,由于是由X个通信装置根据X个子模型完成第三通信装置的推理任务,可以降低第三通信装置的算力需求,同时,可以降低第三通信装置的原始数据泄漏到中心服务器的风险。
基于上述图14至图17的描述,第二通信装置或第三通信装置向X个通信装置发送通信装置对应的子模型时,可以对子模型进行加密,以提高子模型的传输安全性。
其中,对第二通信装置采用加密的方式向X个通信装置发送通信装置对应的子模型的具体描述可以参照上述图10中第二通信装置向第一通信装置发送加密后的子模型的相关描述,不予赘述。
对第三通信装置采用加密的方式向X个通信装置发送通信装置对应的子模型的具体描述也可以参照上述图10中第二通信装置向第一通信装置发送加密后的子模型的相关描述,不予赘述。
可选的,在推理任务过程中,第三通信装置与第三通信装置的下一跳通信装置进行数据交互、以及X个通信装置中每个通信装置与自身的下一跳通信装置进行数据交互时,均可以对数据进行加密,以提高数据的传输安全性。
其中,对第三通信装置采用加密的方式向第三通信装置的下一跳通信装置发送数据的具体描述可以参照上述图11中第一通信装置向第一通信装置的下一跳通信装置发送加密后的数据的相关描述,不予赘述。
对X个通信装置中每个通信装置向自身的下一跳通信装置发送数据的具体描述也可以参照上述图11中第一通信装置向第一通信装置的下一跳通信装置发送加密后的数据的相关描述,不予赘述。
可选的,在推理任务过程中,第三通信装置与第三通信装置的下一跳通信装置进行数据交互、以及X个通信装置中每个通信装置与自身的下一跳通信装置进行数据交互时,当通信装置向通信装置的下一跳通信装置发送数据后,下一跳通信装置可以在数据接收成功后向通信装置发送对数据的确认,也可以在数据接收失败后向通信装置请求对数据进行重传。
其中,对第三通信装置向第三通信装置的下一跳通信装置发送数据的具体描述可以参照上述图12中第一通信装置向第一通信装置的下一跳通信装置发送数据的相关描述,不予赘述。
对X个通信装置中每个通信装置向自身的下一跳通信装置发送数据的具体描述也可以参照上述图12中第一通信装置向第一通信装置的下一跳通信装置发送数据的相关描述,不予赘述。
可选的,在推理任务过程中,第三通信装置向X个通信装置中的通信装置1发送数据之前,第二通信装置可以广播推理开始信令,以指示推理开始,在第三通信装置接收到X个通信装置中的通信装置X发送的推理结果之后,第二通信装置还可以广播推理结束信令,以指示推理结束。
其中,对推理开始信令和推理结束信令的描述可以参照上述图13的相关描述,不予赘述。
上述主要从设备之间交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是,各个设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对各个设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图18示出了一种第一通信装置180,第一通信装置180可以执行上述图5至图17中第一通信装置执行的动作。
其中,第一通信装置180可以包括收发模块1801和处理模块1802。示例性地,第一通信装置180可以是第一通信装置,也可以是应用于第一通信装置中的芯片或者其他具有上述第一通信装置功能的组合器件、部件等。当第一通信装置180是第一通信装置时,收发模块1801可以是收发器,收发器可以包括天线和射频电路等;处理模块1802可以是处理器(或者,处理电路),例如基带处理器,基带处理器中可以包括一个或多个CPU。当第一通信装置180是具有上述第一通信装置功能的部件时,收发模块1801可以是射频单元;处理模块1802可以是处理器(或者,处理电路),例如基带处理器。当第一通信装置180是芯片系统时,收发模块1801可以是芯片(例如基带芯片)的输入输出接口;处理模块1802可以是芯片系统的处理器(或者,处理电路),可以包括一个或多个中央处理单元。应理解,本申请实施例中的收发模块1801可以由收发器或收发器相关电路组件实现;处理模块1802可以由处理器或处理器相关电路组件(或者,称为处理电路)实现。
例如,收发模块1801可以用于执行图5至图17所示的实施例中由第一通信装置所执行的全部收发操作,和/或用于支持本文所描述的技术的其它过程;处理模块1802可以用于执行图5至图17所示的实施例中由第一通信装置所执行的除了收发操作之外的全部操作,和/或用于支持本文所描述的技术的其它过程。
作为又一种可实现方式,图18中的收发模块1801可以由收发器代替,该收发器可以集成收发模块1801的功能;处理模块1802可以由处理器代替,该处理器可以集成处理模块1802的功能。进一步的,图18所示第一通信装置180还可以包括存储器。
在采用对应各个功能划分各个功能模块的情况下,图19示出了一种第二通信装置190,第二通信装置190可以执行上述图5至图17中第二通信装置执行的动作。
其中,第二通信装置190可以包括收发模块1901和处理模块1902。示例性地,第二通信装置190可以是第二通信装置,也可以是应用于第二通信装置中的芯片或者其他具有上述第二通信装置功能的组合器件、部件等。当第二通信装置190是第二通信装置时,收发模块1901可以是收发器,收发器可以包括天线和射频电路等;处理模块1902可以是处理器(或者,处理电路),例如基带处理器,基带处理器中可以包括一个或多个CPU。当第二通信装置190是具有上述第二通信装置功能的部件时,收发模块1901可以是射频单元;处理模块1902可以是处理器(或者,处理电路),例如基带处理器。当第二通信装置190是芯片系统时,收发模块1901可以是芯片(例如基带芯片)的输入输出接口;处理模块1902可以是芯片系统的处理器(或者,处理电路),可以包括一个或多个中央处理单元。应理解,本申请实施例中的收发模块1901可以由收发器或收发器相关电路组件实现;处理模块1902可以由处理器或处理器相关电路组件(或者,称为处理电路)实现。
例如,收发模块1901可以用于执行图5至图17所示的实施例中由第二通信装置所执行的全部收发操作,和/或用于支持本文所描述的技术的其它过程;处理模块1902可以用于执行图5至图17所示的实施例中由第二通信装置所执行的除了收发操作之外的全部操作,和/或用于支持本文所描述的技术的其它过程。
作为又一种可实现方式,图19中的收发模块1901可以由收发器代替,该收发器可以集成收发模块1901的功能;处理模块1902可以由处理器代替,该处理器可以集成处理模块1902的功能。进一步的,图19所示第二通信装置190还可以包括存储器。
在采用对应各个功能划分各个功能模块的情况下,图20示出了一种第三通信装置200,第三通信装置200可以执行上述图5至图17中第三通信装置执行的动作。
其中,第三通信装置200可以包括收发模块2001和处理模块2002。示例性地,第三通信装置200可以是第三通信装置,也可以是应用于第三通信装置中的芯片或者其他具有上述第三通信装置功能的组合器件、部件等。当第三通信装置200是第三通信装置时,收发模块2001可以是收发器,收发器可以包括天线和射频电路等;处理模块2002可以是处理器(或者,处理电路),例如基带处理器,基带处理器中可以包括一个或多个CPU。当第三通信装置200是具有上述第三通信装置功能的部件时,收发模块2001可以是射频单元;处理模块2002可以是处理器(或者,处理电路),例如基带处理器。当第三通信装置200是芯片系统时,收发模块2001可以是芯片(例如基带芯片)的输入输出接口;处理模块2002可以是芯片系统的处理器(或者,处理电路),可以包括一个或多个中央处理单元。应理解,本申请实施例中的收发模块2001可以由收发器或收发器相关电路组件实现;处理模块2002可以由处理器或处理器相关电路组件(或者,称为处理电路)实现。
例如,收发模块2001可以用于执行图5至图17所示的实施例中由第三通信装置所执行的全部收发操作,和/或用于支持本文所描述的技术的其它过程;处理模块2002可以用于执行图5至图17所示的实施例中由第三通信装置所执行的除了收发操作之外的全部操作,和/或用于支持本文所描述的技术的其它过程。
作为又一种可实现方式,图20中的收发模块2001可以由收发器代替,该收发器可以集成收发模块2001的功能;处理模块2002可以由处理器代替,该处理器可以集成处理模块2002的功能。进一步的,图20所示第三通信装置200还可以包括存储器。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品被计算机执行时可以实现上述任一方法实施例的功能。
本申请实施例还提供了一种计算机程序,该计算机程序被计算机执行时可以实现上述任一方法实施例的功能。
本申请实施例还提供了一种计算机可读存储介质。上述方法实施例中的全部或者部分流程可以由计算机程序来指令相关的硬件完成,该程序可存储于上述计算机可读存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。计算机可读存储介质可以是前述任一实施例的终端(包括数据发送端和/或数据接收端)的内部存储单元,例如终端的硬盘或内存。上述计算机可读存储介质也可以是上述终端的外部存储设备,例如上述终端上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,上述计算机可读存储介质还可以既包括上述终端的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述终端所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
需要说明的是,本申请的说明书、权利要求书及附图中的术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上,“至少两个(项)”是指两个或三个及三个以上,“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (30)
1.一种拆分推理方法,其特征在于,包括:
第一通信装置接收来自第二通信装置的第一指示信息;其中,所述第一指示信息用于指示所述第一通信装置的上一跳通信装置和下一跳通信装置,所述第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备;
所述第一通信装置接收来自所述第一通信装置的上一跳通信装置的数据;
所述第一通信装置根据所述第一通信装置对应的子模型对所述数据进行推理,得到推理结果;其中,所述第一通信装置对应的子模型为根据X个通信装置对模型进行拆分得到的X个子模型中的一个,所述X个通信装置中的通信装置x对应第x个子模型,所述X个通信装置包括所述第一通信装置,x大于或等于1,x小于或等于X;
所述第一通信装置向所述第一通信装置的下一跳通信装置发送所述推理结果。
2.根据权利要求1所述的方法,其特征在于,
当所述第一通信装置为所述X个通信装置中的通信装置k时,所述第一通信装置的上一跳通信装置为所述X个通信装置中的通信装置k-1,所述第一通信装置的下一跳通信装置为所述X个通信装置中的通信装置k+1;k大于或等于2,k小于或等于X-1;或者
当所述第一通信装置为所述X个通信装置中的通信装置1时,所述第一通信装置的上一跳通信装置为所述第二通信装置,所述第一通信装置的下一跳通信装置为所述X个通信装置中的通信装置2;
当所述第一通信装置为所述X个通信装置中的通信装置X时,所述第一通信装置的上一跳通信装置为所述X个通信装置中的通信装置X-1,所述第一通信装置的下一跳通信装置为所述第二通信装置;或者
当所述第一通信装置为所述X个通信装置中的通信装置1时,所述第一通信装置的上一跳通信装置为第三通信装置,所述第一通信装置的下一跳通信装置为所述X个通信装置中的通信装置2;
当所述第一通信装置为所述X个通信装置中的通信装置X时,所述第一通信装置的上一跳通信装置为所述X个通信装置中的通信装置X-1,所述第一通信装置的下一跳通信装置为所述第三通信装置。
3.根据权利要求2所述的方法,其特征在于,所述第一通信装置根据所述第一通信装置对应的子模型对所述数据进行推理,得到所述推理结果之前,所述方法还包括:
所述第一通信装置接收来自第三通信装置的所述第一通信装置对应的子模型。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第一通信装置根据所述第一通信装置对应的子模型对所述数据进行推理,得到所述推理结果之前,所述方法还包括:
所述第一通信装置接收来自所述第二通信装置的所述第一通信装置对应的子模型。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一通信装置接收来自所述第二通信装置的所述第一指示信息之前,所述方法还包括:
所述第一通信装置向所述第二通信装置发送所述第一通信装置的状态信息。
6.根据权利要求5所述的方法,其特征在于,
所述第一通信装置的状态信息包括下述一种或多种:所述第一通信装置的存储空间大小、所述第一通信装置的最大算力、所述第一通信装置占用的资源信息、所述第一通信装置的设备邻接矩阵、所述第一通信装置的设备状态、所述第一通信装置是否同意参与推理、所述第一通信装置的状态信息的有效期;
其中,所述第一通信装置的设备邻接矩阵用于指示所述第一通信装置与其他第一通信装置的连接关系。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一通信装置接收来自所述第二通信装置的所述第一指示信息之前,所述方法还包括:
所述第一通信装置接收来自所述第二通信装置的设备选择结果;其中,所述设备选择结果用于指示所述第一通信装置被选择;
所述第一通信装置向所述第二通信装置发送所述第一通信装置对所述设备选择结果的确认。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述第一通信装置接收来自所述第一通信装置的上一跳通信装置的数据之前,所述方法还包括:
所述第一通信装置接收来自所述第二通信装置的第一信息;其中,所述第一信息包括下述一种或多种:所述第一通信装置的上一跳通信装置占用的资源信息、所述第一通信装置的下一跳通信装置占用的资源信息、时间信息;其中,所述时间信息用于指示所述第一通信装置接收所述第一通信装置的上一跳通信装置的数据对应的时间范围。
9.一种拆分推理方法,其特征在于,包括:
第二通信装置生成第一指示信息;其中,所述第一指示信息用于指示第一通信装置的上一跳通信装置和下一跳通信装置,所述第一通信装置的上一跳通信装置和下一跳通信装置中包括至少一个终端设备,所述第一通信装置为X个通信装置中的一个,所述X个通信装置中的通信装置x对应X个子模型中的第x个子模型,所述X个子模型是对模型进行拆分得到的,所述子模型用于对数据进行推理,x大于或等于1,x小于或等于X;
第二通信装置向所述第一通信装置发送所述第一指示信息。
10.根据权利要求9所述的方法,其特征在于,所述第二通信装置生成所述第一指示信息之前,所述方法还包括:
所述第二通信装置确定所述X个通信装置。
11.根据权利要求10所述的方法,其特征在于,所述第二通信装置确定所述X个通信装置,包括:
所述第二通信装置获取M个通信装置的状态信息;其中,所述状态信息用于指示所述第一通信装置是否支持推理,X大于或等于1,X小于或等于M;
所述第二通信装置根据所述M个通信装置的状态信息,选择所述X个通信装置。
12.根据权利要求11所述的方法,其特征在于,所述第二通信装置获取所述M个通信装置的状态信息,包括:
所述第二通信装置广播状态信息上报请求;其中,所述状态信息上报请求用于请求第一通信装置上报状态信息;
所述第二通信装置接收来自所述M个通信装置的状态信息。
13.根据权利要求11或12所述的方法,其特征在于,
所述第一通信装置的状态信息包括下述一种或多种:所述第一通信装置的存储空间大小、所述第一通信装置的最大算力、所述第一通信装置占用的资源信息、所述第一通信装置的设备邻接矩阵、所述第一通信装置的设备状态、所述第一通信装置是否同意参与推理、所述第一通信装置的状态信息的有效期;
其中,所述第一通信装置的设备邻接矩阵用于指示所述第一通信装置与其他第一通信装置的连接关系。
14.根据权利要求9-13任一项所述的方法,其特征在于,所述第二通信装置向所述第一通信装置发送所述第一指示信息,包括:
所述第二通信装置广播设备选择结果;其中,所述设备选择结果用于指示所述X个通信装置;
所述第二通信装置接收所述第一通信装置对所述设备选择结果的确认;
所述第二通信装置根据所述确认,向所述第一通信装置发送所述第一指示信息。
15.根据权利要求9-14任一项所述的方法,其特征在于,所述方法还包括:
所述第二通信装置对所述模型进行拆分,得到所述X个子模型;
所述第二通信装置分别向所述X个通信装置发送所述通信装置对应的子模型。
16.根据权利要求15所述的方法,其特征在于,所述第二通信装置对所述模型进行拆分,得到所述X个子模型,包括:
所述第二通信装置广播设备选择结果;其中,所述设备选择结果用于指示所述X个通信装置;
所述第二通信装置接收所述X个通信装置对所述设备选择结果的确认;
所述第二通信装置根据所述确认对所述模型进行拆分,得到所述X个子模型。
17.根据权利要求10-16任一项所述的方法,其特征在于,所述第二通信装置确定所述X个通信装置,包括:
所述第二通信装置接收来自第三通信装置的推理信息;
所述第二通信装置根据所述推理信息,确定所述X个通信装置。
18.根据权利要求17所述的方法,其特征在于,
所述推理信息包括下述一种或多种:数据量大小、数据精度、所述模型的层数、所述模型的输入输出维度、所述模型的各个层的浮点计算数、所述模型的最大拆分个数、推理任务的类型、所述推理任务的优先级;
其中,所述推理任务的类型包括模型类型和数据类型,所述模型类型包括私有或公有,所述数据类型包括私有或公有。
19.根据权利要求17或18所述的方法,其特征在于,所述方法还包括:
所述第二通信装置向所述第三通信装置发送第二指示信息;其中,所述第二指示信息用于指示所述X个通信装置中的通信装置1和通信装置X。
20.根据权利要求17-19任一项所述的方法,其特征在于,所述第二通信装置对所述模型进行拆分,得到所述X个子模型,包括:
所述第二通信装置接收来自所述第三通信装置的模型;
所述第二通信装置对所述模型进行拆分,得到所述X个子模型;或者
所述第二通信装置接收来自所述第三通信装置的模型的标识信息;
所述第二通信装置根据所述模型的标识信息确定所述模型;
所述第二通信装置对所述模型进行拆分,得到所述X个子模型。
21.根据权利要求9-20任一项所述的方法,其特征在于,所述方法还包括:
所述第二通信装置向第三通信装置发送所述X个通信装置对应的子模型信息;其中,所述子模型信息包括所述子模型对应的模型层数。
22.根据权利要求9-21任一项所述的方法,其特征在于,所述方法还包括:
所述第二通信装置向所述X个通信装置中的通信装置1发送数据;
所述第二通信装置接收来自所述X个通信装置中的通信装置X的推理结果。
23.根据权利要求22所述的方法,其特征在于,所述第二通信装置向所述X个通信装置中的通信装置1发送所述数据,包括:
所述第二通信装置接收来自第三通信装置的数据;
所述第二通信装置向所述X个通信装置中的通信装置1发送所述数据。
24.根据权利要求9-23任一项所述的方法,其特征在于,所述方法还包括:
所述第二通信装置向所述第一通信装置发送第一信息;其中,所述第一信息包括下述一种或多种:所述第一通信装置的上一跳通信装置占用的资源信息、所述第一通信装置的下一跳通信装置占用的资源信息、时间信息;其中,所述时间信息用于指示所述第一通信装置接收所述第一通信装置的上一跳通信装置的数据对应的时间范围。
25.一种通信装置,其特征在于,包括用于执行权利要求1-8任一项所述的方法的模块或单元。
26.一种通信装置,其特征在于,包括用于执行权利要求9-24任一项所述的方法的模块或单元。
27.一种通信装置,其特征在于,所述通信装置包括处理器;所述处理器,用于运行计算机程序或指令,以使所述通信装置执行如权利要求1-8任一项所述的拆分推理方法,或者执行如权利要求9-24任一项所述的拆分推理方法。
28.一种通信装置,其特征在于,所述通信装置包括输入输出接口和逻辑电路;所述输入输出接口,用于输入和/或输出信息;所述逻辑电路用于执行如权利要求1-8任一项所述的拆分推理方法,或者执行如权利要求9-24任一项所述的拆分推理方法,根据所述信息进行处理和/或生成所述信息。
29.一种计算机可读存储介质,其特征在于,计算机可读存储介质存储有计算机指令或程序,当计算机指令或程序在计算机上运行时,使得如权利要求1-8任一项所述的拆分推理方法被执行,或者如权利要求9-24任一项所述的拆分推理方法被执行。
30.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令;当部分或全部所述计算机指令在计算机上运行时,使得如权利要求1-8任一项所述的拆分推理方法被执行,或者如权利要求9-24任一项所述的拆分推理方法被执行。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210220494.9A CN116776976A (zh) | 2022-03-08 | 2022-03-08 | 拆分推理方法及装置 |
PCT/CN2023/080103 WO2023169423A1 (zh) | 2022-03-08 | 2023-03-07 | 拆分推理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210220494.9A CN116776976A (zh) | 2022-03-08 | 2022-03-08 | 拆分推理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116776976A true CN116776976A (zh) | 2023-09-19 |
Family
ID=87936015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210220494.9A Pending CN116776976A (zh) | 2022-03-08 | 2022-03-08 | 拆分推理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116776976A (zh) |
WO (1) | WO2023169423A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274034B (zh) * | 2020-01-19 | 2023-06-30 | 北京奇艺世纪科技有限公司 | 模型推理的资源分配方法、装置、计算机设备和存储介质 |
CN111340237B (zh) * | 2020-03-05 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 数据处理和模型运行方法、装置和计算机设备 |
WO2022033804A1 (en) * | 2020-08-10 | 2022-02-17 | Interdigital Ce Patent Holdings, Sas | Slice by slice ai/ml model inference over communication networks |
CN114091672B (zh) * | 2021-11-29 | 2022-09-27 | 北京百度网讯科技有限公司 | 分布式模型推理方法及装置、电子设备和介质 |
-
2022
- 2022-03-08 CN CN202210220494.9A patent/CN116776976A/zh active Pending
-
2023
- 2023-03-07 WO PCT/CN2023/080103 patent/WO2023169423A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023169423A1 (zh) | 2023-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10425915B2 (en) | Resource pool access for device to device communications | |
JP2020014234A (ja) | 無線通信システムにおける装置及び方法 | |
CN105519223B (zh) | 终端设备能力上报方法和装置 | |
JP7390507B2 (ja) | データ伝送方法、装置及び読み取り可能な記憶媒体 | |
US10069883B2 (en) | Apparatus, system and method of communicating in a multicast group | |
EP3026971A1 (en) | Device and method for managing spectrum resources, and wireless communication device and method | |
CN110622545A (zh) | 资源配置的方法、终端设备和网络设备 | |
CN109547168A (zh) | 数据传输方法、终端设备和网络设备 | |
CN106612166B (zh) | 一种窄带传输的方法和装置 | |
CN114079902A (zh) | 联邦学习的方法和装置 | |
CN109479232B (zh) | 信息传输方法、装置以及通信系统 | |
CN113875269A (zh) | 无线通信的方法、终端设备和网络设备 | |
CN112702102B (zh) | 中继网络双工协调的方法和中继节点设备 | |
CN114902703A (zh) | D2d通信方法、装置及系统 | |
WO2022205070A1 (en) | Radio link failure handling in sidelink relay | |
WO2022077332A1 (en) | Methods and apparatus for inter-ue coordinated resource allocation in wireless communication | |
CN114916037A (zh) | 通信方法及装置 | |
JP2020526056A (ja) | 無線通信方法及び無線通信装置 | |
WO2015180017A1 (zh) | 设备到设备临近服务中传输信号的方法、基站和用户设备 | |
EP4033683A1 (en) | Data transmission method and apparatus | |
CN116776976A (zh) | 拆分推理方法及装置 | |
WO2022048344A1 (zh) | 一种通信方法及设备 | |
WO2022077435A1 (en) | Systems and methods for resource allocation and encoding of inter-ue coordination messages | |
JP2023546885A (ja) | サイドリンクの伝送方法及び端末 | |
CN116776977A (zh) | 拆分推理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |