CN116419257A - 一种通信方法及装置 - Google Patents

一种通信方法及装置 Download PDF

Info

Publication number
CN116419257A
CN116419257A CN202111642343.4A CN202111642343A CN116419257A CN 116419257 A CN116419257 A CN 116419257A CN 202111642343 A CN202111642343 A CN 202111642343A CN 116419257 A CN116419257 A CN 116419257A
Authority
CN
China
Prior art keywords
model
ith
child node
learning model
federal learning
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
Application number
CN202111642343.4A
Other languages
English (en)
Inventor
孙雅琪
孙琰
柴晓萌
吴艺群
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202111642343.4A priority Critical patent/CN116419257A/zh
Priority to PCT/CN2022/142804 priority patent/WO2023125660A1/zh
Publication of CN116419257A publication Critical patent/CN116419257A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/06Testing, supervising or monitoring using simulated traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Error Detection And Correction (AREA)

Abstract

本公开提供一种通信方法及装置,能够提升联邦学习模型的性能。该方法包括:获取第i个第一信息,第i个第一信息用于指示多个子节点中每个子节点的第i个本地模型,i为正整数;根据第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定第k子节点的第i个联邦学习模型,k取遍1至K中的任意一个正整数,K为多个子节点的数量;其中,i大于1时,第k子节点的第i个联邦学习模型的类型由第k子节点的第i‑1个联邦学习模型的类型或性能确定;发送第i个第二信息,第i个第二信息用于指示多个子节点中每个子节点的第i个联邦学习模型。

Description

一种通信方法及装置
技术领域
本公开涉及通信技术领域,尤其涉及一种通信方法及装置。
背景技术
在无线通信网络中,例如在移动通信网络中,网络支持的业务越来越多样,因此需要满足的需求也越来越多样。例如,网络需要能够支持超高速率、超低时延、和/或超大连接,该特点使得网络规划、网络配置、和/或资源调度越来越复杂。此外,由于网络的功能越来越强大,例如支持的频谱越来越高、支持高阶多入多出(multiple input multipleoutput,MIMO)技术、支持波束赋形、和/或支持波束管理等新技术,使得网络节能成为了热门研究课题。这些新需求、新场景和新特性给网络规划、运维和高效运营带来了前所未有的挑战。为了迎接该挑战,可以将人工智能技术引入无线通信网络中,从而实现网络智能化。基于此,如何在网络中有效地实现人工智能是一个值得研究的问题。
发明内容
本公开提供一种通信方法及装置,能够提升联邦学习模型的性能。
第一方面,本公开提供一种通信方法,包括:获取第i个第一信息,所述第i个第一信息用于指示多个子节点中每个子节点的第i个本地模型,所述i为正整数;根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定所述第k子节点的第i个联邦学习模型,所述k取遍1至K中的任意一个正整数,所述K为所述多个子节点的数量;其中,所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定;发送第i个第二信息,所述第i个第二信息用于指示所述多个子节点中每个子节点的第i个联邦学习模型。
在此设计中,引入对历史联邦学习模型的性能或类型的考虑,针对参与联邦学习模型的子节点分别确定各自的联邦学习模型,实现个性化的联邦学习,有助于提升联邦学习模型的性能。
在一种可能的设计中,所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同或者不同。通过这样的设计,可以匹配子节点的数据分布情况,为数据分布与其他子节点差异较大的子节点提供不同的模型,实现个性化的联邦学习。
在一种可能的设计中,可以通过如下方式确定所述第k子节点的第i个联邦学习模型的类型:从所述第k子节点获取第一测试结果;所述第一测试结果用于指示所述第k子节点的所述第i-1个联邦学习模型的性能,所述i大于1;根据所述第一测试结果,确定所述第k子节点的第i个联邦学习模型的类型。在此设计中,针对一个子节点结合该子节点的历史联邦学习模型的性能,确定当前联邦学习模型的类型,有助于训练出匹配该子节点数据分布情况的联邦学习模型。
在另一种可能的设计中,可以通过如下方式确定所述第k子节点的第i个联邦学习模型的类型:向所述第k个子节点发送用于指示第一模型的信息,所述第一模型由第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重确定;其中,所述i大于1;从所述第k子节点获取第二测试结果;其中,所述第二测试结果用于指示所述第一模型的性能,或者,所述第二测试结果用于指示所述第一模型的性能和所述第k子节点的所述第i-1个联邦学习模型的性能;根据所述第二测试结果,确定所述第k子节点的第i个联邦学习模型的类型。在此设计中,结合第一模型即全局类型的历史联邦学习模型,确定当前联邦学习模型的类型,有助于训练出匹配该子节点数据分布情况的联邦学习模型。
在一种可能的设计中,所述根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定第k子节点的第i个联邦学习模型,包括:当所述第k子节点的第i个联邦学习模型的类型对应第一值时,根据所述第i个第一信息、以及所述多个子节点中每个子节点的第i个本地模型对应的权重,确定所述第k子节点的第i个联邦学习模型;或者,当所述第k子节点的第i个联邦学习模型的类型对应第二值时,根据所述第i个第一信息、以及所述第k子节点的第i个本地模型与所述多个子节点中每个子节点的第i个本地模型之间的相似度,确定所述第k子节点的第i个联邦学习模型。在此设计中,针对不同类型的联邦学习模型采用不同的模型计算方式,来确定相关子节点的联邦学习模型,能够提升联邦学习模型的性能。
在一种可能的设计中,所述多个子节点由第一组子节点和第二组子节点构成,所述第一组子节点中的各个子节点的第i个联邦学习模型均相同,所述第二组子节点中的各个子节点的第i个联邦学习模型均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型不同;所述发送第i个第二信息,包括:通过广播或组播的方式,向所述第一组子节点发送第一指示信息,所述第一指示信息用于指示所述第一组子节点中各个子节点的第i个联邦学习模型;通过单播的方式,向所述第二组子节点中的第p子节点发送第二指示信息,所述第二指示信息用于指示所述第p子节点的第i个联邦学习模型,所述p取遍1至P中的任意一个正整数,所述P为所述第二组子节点中包括的子节点数量。
在另一种可能的设计中,所述第i个联邦学习模型由第一部分参数信息和第二部分参数信息表示;所述多个子节点中每个子节点的第i个联邦学习模型的第一部分参数信息均相同;所述多个子节点由第一组子节点和第二组子节点构成,所述第一组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息均相同,所述第二组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息不同;
所述发送第i个第二信息,包括:通过广播或组播的方式,向所述多个子节点发送所述第i个联邦学习模型的第一部分参数信息;通过广播或组播的方式,向所述第一组子节点发送所述第一组子节点中各个子节点的第i个联邦学习模型的第二部分参数信息;通过单播的方式,向所述第二组子节点中第p子节点发送所述第p子节点的第i个联邦学习模型的第二部分参数信息,所述p取遍1至P中的任意一个正整数,所述P为所述第二组子节点中包括的子节点数量。
在上述发送第i个第二信息的设计中,采用广播或组播的方式,发送两个及两个以上的子节点对应的相同信息,能够节省发送第i个第二信息的资源。
在一种可能的设计中,所述方法还包括:向所述多个子节点发送用于指示第二模型的信息,所述用于指示第二模型的信息用于所述多个子节点中每个子节点确定第1个本地模型子节点。
第二方面,本公开提供一种通信方法,包括:发送用于指示第k子节点的第i个本地模型的信息;其中,所述k取遍1至K中的任意一个正整数,所述K为参与联邦学习的多个子节点的数量,所述i为正整数;获取用于指示所述第k子节点的第i个联邦学习模型的信息,所述第k子节点的第i个联邦学习模型由第i个第一信息和所述第k子节点的第i个联邦学习模型的类型确定;其中,所述第i个第一信息由用于指示所述多个子节点中各个子节点的第i个本地模型的信息构成;所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定。
在一种可能的设计中,所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同或者不同。
在一种可能的设计中,所述方法还包括:发送第一测试结果,所述第一测试结果用于指示所述第k子节点的所述第i-1个联邦学习模型的性能,所述i大于1;其中,所述第k子节点的第i个联邦学习模型的类型由所述第一测试结果确定。
在一种可能的设计中,所述方法还包括:获取用于指示第一模型的信息,所述第一模型由第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重确定;其中,所述i大于1;发送第二测试结果,所述第二测试结果用于指示所述第一模型的性能,或者,所述第二测试结果用于指示所述第一模型的性能和所述第k子节点的所述第i-1个联邦学习模型的性能;其中,所述第k子节点的第i个联邦学习模型的类型由所述第二测试结果确定。
在一种可能的设计中,当所述第k子节点的第i个联邦学习模型的类型对应第一值时,所述第k子节点的第i个联邦学习模型由所述第i个第一信息、以及所述多个子节点中每个子节点的第i个本地模型对应的权重确定;或者,当所述第k子节点的第i个联邦学习模型的类型对应第二值时,所述第k子节点的第i个联邦学习模型由所述第i个第一信息、以及所述第k子节点的第i个本地模型与所述多个子节点中每个子节点的第i个本地模型之间的相似度确定。
在一种可能的设计中,还包括:获取用于指示第二模型的信息;根据所述用于指示第二模型的信息,确定所述第k子节点的第1个本地模型。
第三方面,本公开提供一种通信装置,该通信装置可以是中心节点,也可以是中心节点中的装置,或者是能够和中心节点匹配使用的装置。一种设计中,该通信装置可以包括执行第一方面中所描述的方法/操作/步骤/动作所一一对应的模块,该模块可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。一种设计中,该通信装置可以包括处理模块和通信模块。
一种示例:通信模块,用于获取第i个第一信息,所述第i个第一信息用于指示多个子节点中每个子节点的第i个本地模型,所述i为正整数;
处理模块,用于根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定所述第k子节点的第i个联邦学习模型,所述k取遍1至K中的任意一个正整数,所述K为所述多个子节点的数量;其中,所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定;
所述通信模块,还用于发送第i个第二信息,所述第i个第二信息用于指示所述多个子节点中每个子节点的第i个联邦学习模型。
在一种可能的设计中,所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同或者不同。
在一种可能的设计中,所述通信模块,还用于从所述第k子节点获取第一测试结果;所述第一测试结果用于指示所述第k子节点的所述第i-1个联邦学习模型的性能,所述i大于1;所述处理模块,还用于根据所述第一测试结果,确定所述第k子节点的第i个联邦学习模型的类型。
在另一种可能的设计中,所述通信模块,还用于向所述第k个子节点发送用于指示第一模型的信息,所述第一模型由第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重确定;其中,所述i大于1;所述通信模块,还用于从所述第k子节点获取第二测试结果;其中,所述第二测试结果用于指示所述第一模型的性能,或者,所述第二测试结果用于指示所述第一模型的性能和所述第k子节点的所述第i-1个联邦学习模型的性能;所述处理模块,还用于根据所述第二测试结果,确定所述第k子节点的第i个联邦学习模型的类型。
在一种可能的设计中,所述处理模块,还用于:当所述第k子节点的第i个联邦学习模型的类型对应第一值时,根据所述第i个第一信息、以及所述多个子节点中每个子节点的第i个本地模型对应的权重,确定所述第k子节点的第i个联邦学习模型;或者,当所述第k子节点的第i个联邦学习模型的类型对应第二值时,根据所述第i个第一信息、以及所述第k子节点的第i个本地模型与所述多个子节点中每个子节点的第i个本地模型之间的相似度,确定所述第k子节点的第i个联邦学习模型。
在一种可能的设计中,所述多个子节点由第一组子节点和第二组子节点构成,所述第一组子节点中的各个子节点的第i个联邦学习模型均相同,所述第二组子节点中的各个子节点的第i个联邦学习模型均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型不同;所述通信模块,还用于:通过广播或组播的方式,向所述第一组子节点发送第一指示信息,所述第一指示信息用于指示所述第一组子节点中各个子节点的第i个联邦学习模型;通过单播的方式,向所述第二组子节点中的第p子节点发送第二指示信息,所述第二指示信息用于指示所述第p子节点的第i个联邦学习模型,所述p取遍1至P中的任意一个正整数,所述P为所述第二组子节点中包括的子节点数量。
在另一种可能的设计中,所述第i个联邦学习模型由第一部分参数信息和第二部分参数信息表示;所述多个子节点中每个子节点的第i个联邦学习模型的第一部分参数信息均相同;所述多个子节点由第一组子节点和第二组子节点构成,所述第一组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息均相同,所述第二组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息不同;
所述通信模块,还用于:通过广播或组播的方式,向所述多个子节点发送所述第i个联邦学习模型的第一部分参数信息;通过广播或组播的方式,向所述第一组子节点发送所述第一组子节点中各个子节点的第i个联邦学习模型的第二部分参数信息;通过单播的方式,向所述第二组子节点中第p子节点发送所述第p子节点的第i个联邦学习模型的第二部分参数信息,所述p取遍1至P中的任意一个正整数,所述P为所述第二组子节点中包括的子节点数量。
在一种可能的设计中,所述通信模块,还用于向所述多个子节点发送用于指示第二模型的信息,所述用于指示第二模型的信息用于所述多个子节点中每个子节点确定第1个本地模型子节点。
第四方面,本公开提供一种通信装置,该通信装置可以是第k子节点,也可以是第k子节点中的装置,或者是能够和第k子节点匹配使用的装置。一种设计中,该通信装置可以包括执行第一方面中所描述的方法/操作/步骤/动作所一一对应的模块,该模块可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。一种设计中,该通信装置可以包括处理模块和通信模块。
一种示例:处理模块,用于通过通信模块发送用于指示第k子节点的第i个本地模型的信息;其中,所述k取遍1至K中的任意一个正整数,所述K为参与联邦学习的多个子节点的数量,所述i为正整数;所述通信模块,还用于获取用于指示所述第k子节点的第i个联邦学习模型的信息,所述第k子节点的第i个联邦学习模型由第i个第一信息和所述第k子节点的第i个联邦学习模型的类型确定;其中,所述第i个第一信息由用于指示所述多个子节点中各个子节点的第i个本地模型的信息构成;所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定。
在一种可能的设计中,所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同或者不同。
在一种可能的设计中,所述处理模块,还用于通过通信模块发送第一测试结果,所述第一测试结果用于指示所述第k子节点的所述第i-1个联邦学习模型的性能,所述i大于1;其中,所述第k子节点的第i个联邦学习模型的类型由所述第一测试结果确定。
在一种可能的设计中,所述通信模块,还用于获取用于指示第一模型的信息,所述第一模型由第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重确定;其中,所述i大于1;所述处理模块,还用于通过通信模块发送第二测试结果,所述第二测试结果用于指示所述第一模型的性能,或者,所述第二测试结果用于指示所述第一模型的性能和所述第k子节点的所述第i-1个联邦学习模型的性能;其中,所述第k子节点的第i个联邦学习模型的类型由所述第二测试结果确定。
关于第k子节点的第i个联邦学习模型的类型的内容介绍请参见第二方面,此处不再赘述。
在一种可能的设计中,所述通信模块,还用于获取用于指示第二模型的信息;所述处理模块,还用于根据所述用于指示第二模型的信息,确定所述第k子节点的第1个本地模型。
在第一方面至第四方面任一方面的一种可能的设计中,1≤i≤I,I为正整数;所述第k子节点的第I个联邦学习模型满足模型收敛条件;其中,当i大于1时,所述第k子节点的第i个本地模型由所述第k子节点的第i-1个联邦学习模型确定。
第五方面,本公开提供一种通信装置,所述通信装置包括处理器,用于实现上述第一方面所描述的方法。所述通信装置还可以包括存储器,用于存储指令和数据。所述存储器与所述处理器耦合,所述处理器执行所述存储器中存储的指令时,可以实现上述第一方面描述的方法。所述通信装置还可以包括通信接口,所述通信接口用于该装置与其它设备进行通信,示例性的,通信接口可以是收发器、电路、总线、模块、管脚或其它类型的通信接口。在一种可能的设备中,该通信装置包括:
存储器,用于存储程序指令;
处理器,用于利用通信接口获取第i个第一信息,所述第i个第一信息用于指示多个子节点中每个子节点的第i个本地模型,所述i为正整数;
处理器,还用于根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定所述第k子节点的第i个联邦学习模型,所述k取遍1至K中的任意一个正整数,所述K为所述多个子节点的数量;其中,所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定;
处理器,还用于利用通信接口发送第i个第二信息,所述第i个第二信息用于指示所述多个子节点中每个子节点的第i个联邦学习模型。
第六方面,本公开提供一种通信装置,所述通信装置包括处理器,用于实现上述第二方面所描述的方法。所述通信装置还可以包括存储器,用于存储指令和数据。所述存储器与所述处理器耦合,所述处理器执行所述存储器中存储的指令时,可以实现上述第二方面描述的方法。所述通信装置还可以包括通信接口,所述通信接口用于该装置与其它设备进行通信,示例性的,通信接口可以是收发器、电路、总线、模块、管脚或其它类型的通信接口。在一种可能的设备中,该通信装置包括:
存储器,用于存储程序指令;
处理器,用于利用通信接口发送用于指示第k子节点的第i个本地模型的信息;其中,所述k取遍1至K中的任意一个正整数,所述K为参与联邦学习的多个子节点的数量,所述i为正整数;
处理器,还用于利用通信接口获取用于指示所述第k子节点的第i个联邦学习模型的信息,所述第k子节点的第i个联邦学习模型由第i个第一信息和所述第k子节点的第i个联邦学习模型的类型确定;其中,所述第i个第一信息由用于指示所述多个子节点中各个子节点的第i个本地模型的信息构成;所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定。
第七方面,本公开提供了一种通信系统,包括如第三方面或第五方面中所描述的通信装置;和,如第四方面或第六方面中所描述的通信装置。
第八方面,本公开还提供了一种计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行上述第一方面或第二方面提供的方法。
第九方面,本公开还提供了一种计算机程序产品,包括指令,当所述指令在计算机上运行时,使得计算机执行上述第一方面或第二方面提供的方法。
第十方面,本公开还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序或指令,当所述计算机程序或者指令在计算机上运行时,使得所述计算机执行上述第一方面或第二方面中提供的方法。
第十一方面,本公开还提供了一种芯片,所述芯片用于读取存储器中存储的计算机程序,执行上述第一方面或第二方面中提供的方法。
第十二方面,本公开还提供了一种芯片系统,该芯片系统包括处理器,用于支持计算机装置实现上述第一方面或第二方面中提供的方法。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器用于保存该计算机装置必要的程序和数据。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
附图说明
图1A为通信系统的结构示意图之一;
图1B为种通信系统的结构示意图之一;
图2A为神经元结构的一种示意图;
图2B为神经网络的层关系的一种示意图;
图3A为本公开中通信方法对应的网络结构示意图之一;
图3B为本公开中通信方法对应的网络结构示意图之一;
图4A为相关联邦学习技术的节点交互示意图;
图4B为本公开训练联邦学习模型的节点交互示意图;
图5为本公开提供的通信方法的流程示意图之一;
图6为一种模型结构划分示意图;
图7为本公开提供的通信方法的流程示意图之一;
图8A为本公开提供的决策模型类型的方法流程示意图之一;
图8B为本公开提供的决策模型类型的方法流程示意图之一;
图9为本公开提供的通信方法的流程示意图之一;
图10A为本公开提供的决策模型类型的方法流程示意图之一;
图10B为本公开提供的决策模型类型的方法流程示意图之一;
图11为本公开提供的通信方法的流程示意图之一;
图12为本公开提供的通信装置的结构示意图之一;
图13为本公开提供的通信装置的结构示意图之一。
具体实施方式
为了使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开作进一步地详细描述。
本公开如下涉及的至少一个,指示一个或多个。多个,是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,应当理解,尽管在本公开中可能采用术语第一、第二等来描述各对象、但这些对象不应限于这些术语。这些术语仅用来将各对象彼此区分开。
本公开如下描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。需要说明的是,本公开中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本公开中被描述为“示例性的”或者“例如”的任何方法或设计方案不应被解释为比其它方法或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本公开提供的技术可以应用于各种通信系统,例如,该通信系统可以是第三代(3thgeneration,3G)通信系统(例如通用移动通信系统(universal mobiletelecommunication system,UMTS))、第四代(4th generation,4G)通信系统(例如长期演进(long term evolution,LTE)系统)、第五代(5th generation,5G)通信系统、全球互联微波接入(worldwide interoperability for microwave access,WiMAX)或者无线局域网(wireless local area network,WLAN)系统、或者多种系统的融合系统,或者是未来的通信系统,例如6G通信系统等。其中,5G通信系统还可以称为新无线(new radio,NR)系统。
通信系统中的一个网元可以向另一个网元发送信号或从另一个网元接收信号。其中信号可以包括信息、配置信息或者数据等;网元也可以被称为实体、网络实体、设备、通信设备、通信模块、节点、通信节点等等,本公开中以网元为例进行描述。例如,通信系统可以包括至少一个终端设备和至少一个接入网设备。其中,配置信息的发送网元可以为接入网设备,配置信息的接收网元可以为终端设备。此外可以理解的是,若通信系统中包括多个终端设备,多个终端设备之间也可以互发信号,即配置信息的发送网元和配置信息的接收网元均可以是终端设备。
参见图1A示意一种通信系统100,作为示例,该通信系统100包括接入网设备110以及两个终端设备,即终端设备120和终端设备130。终端设备120和终端设备130中的至少一个可以发送上行数据给接入网设备110,接入网设备110可以接收该上行数据。接入网设备可以向终端设备120和终端设备130中的至少一个发送下行数据。
下面对图1A所涉及的终端设备和接入网设备进行详细说明。
(1)接入网设备
接入网设备可以为基站(base station,BS),接入网设备还可以称为网络设备、接入节点(access node,AN)、无线接入节点(radio access node,RAN)。接入网设备可以与核心网(如LTE的核心网或者5G的核心网等)连接,接入网设备可以为终端设备提供无线接入服务。接入网设备例如包括但不限于以下至少一个:基站、5G中的下一代节点B(generationnodeB,gNB)、开放无线接入网(open radio access network,O-RAN)中的接入网设备、演进型节点B(evolved node B,eNB)、无线网络控制器(radio network controller,RNC)、节点B(node B,NB)、基站控制器(base station controller,BSC)、基站收发台(basetransceiver station,BTS)、家庭基站(例如,home evolved nodeB,或home node B,HNB)、基带单元(base band unit,BBU)、收发点(transmitting and receiving point,TRP)、发射点(transmitting point,TP)、和/或移动交换中心等。或者,接入网设备还可以是集中单元(centralized unit,CU)、分布单元(distributed unit,DU)、集中单元控制面(CUcontrol plane,CU-CP)节点、或集中单元用户面(CU user plane,CU-UP)节点。或者,接入网设备可以为中继站、接入点、车载设备、可穿戴设备或者未来演进的公共陆地移动网络(public land mobile network,PLMN)中的接入网设备等。
本公开中,用于实现接入网设备功能的通信装置可以是接入网设备,也可以是具有接入网设备部分功能的网络设备,也可以是能够支持接入网设备实现该功能的装置,例如芯片系统,硬件电路、软件模块、或硬件电路加软件模块,该装置可以被安装在接入网设备中。本公开的方法中,以用于实现接入网设备功能的通信装置是接入网设备为例进行描述。
(2)终端设备
终端设备又称之为终端、用户设备(user equipment,UE)、移动台(mobilestation,MS)、移动终端(mobile terminal,MT)等,是一种向用户提供语音和/或数据连通性的设备。终端设备可通过接入网设备与一个或多个核心网进行通信。终端设备包括具有无线连接功能的手持式设备、连接到无线调制解调器的其他处理设备或车载设备等。终端设备可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。一些终端设备的举例为:个人通信业务(personal communication service,PCS)电话、无绳电话、会话发起协议(session initiation protocol,SIP)话机、无线本地环路(wireless local loop,WLL)站、个人数字助理(personal digital assistant,PDA)、无线网络摄像头、手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internetdevice,MID)、可穿戴设备如智能手表、虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线终端、车联网系统中的终端、无人驾驶(self driving)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端如智能加油器,高铁上的终端设备以及智慧家庭(smart home)中的无线终端,如智能音响、智能咖啡机、智能打印机等。
本公开中,用于实现终端设备功能的通信装置可以是终端设备,也可以是具有终端部分功能的终端设备,也可以是能够支持终端设备实现该功能的装置,例如芯片系统,该装置可以被安装在终端设备中。本公开中,芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。本公开提供的技术方案中,以用于实现终端设备功能的通信装置是终端设备或UE为例进行描述。
(3)接入网设备和终端设备之间的协议层结构
接入网设备和终端设备之间的通信遵循一定的协议层结构。该协议层结构可以包括控制面协议层结构和用户面协议层结构。例如,控制面协议层结构可以包括无线资源控制(radio resource control,RRC)层、分组数据汇聚层协议(packet data convergenceprotocol,PDCP)层、无线链路控制(radio link control,RLC)层、媒体接入控制(mediaaccess control,MAC)层和物理层等协议层的功能。例如,用户面协议层结构可以包括PDCP层、RLC层、MAC层和物理层等协议层的功能,在一种可能的实现中,PDCP层之上还可以包括业务数据适配协议(service data adaptation protocol,SDAP)层。
可选的,接入网设备和终端之间的协议层结构还可以包括人工智能(artificialintelligence,AI)层,用于传输AI功能相关的数据。
以接入网设备和终端设备之间的数据传输为例,数据传输需要经过用户面协议层,比如经过SDAP层、PDCP层、RLC层、MAC层、物理层。其中,SDAP层、PDCP层、RLC层、MAC层和物理层也可以统称为接入层。根据数据的传输方向分为发送或接收,上述每层又分为发送部分和接收部分。以下行数据传输为例,PDCP层自上层取得数据后,将数据传送到RLC层与MAC层,再由MAC层生成传输块,然后通过物理层进行无线传输。数据在各个层中进行相对应的封装。例如,某一层从该层的上层收到的数据视为该层的服务数据单元(service dataunit,SDU),经过该层封装后成为协议数据单元(protocol data unit,PDU),再传递给下一个层。
示例性的,终端设备还可以具有应用层和非接入层。其中,应用层可以用于向终端设备中所安装的应用程序提供服务,比如,终端设备接收到的下行数据可以由物理层依次传输到应用层,进而由应用层提供给应用程序;又比如,应用层可以获取应用程序产生的数据,并将数据依次传输到物理层,发送给其它通信装置。非接入层可以用于转发用户数据,比如将从应用层接收到的上行数据转发给SDAP层或者将从SDAP层接收到的下行数据转发给应用层。
(4)接入网设备的结构
接入网设备可以包括集中式单元(central unit,CU)和分布式单元(distributedunit,DU)。多个DU可以由一个CU集中控制。作为示例,CU和DU之间的接口可以称为F1接口。其中,控制面(control panel,CP)接口可以为F1-C,用户面(user panel,UP)接口可以为F1-U。CU和DU可以根据无线网络的协议层划分:比如,PDCP层及以上协议层的功能设置在CU,PDCP层以下协议层(例如RLC层和MAC层等)的功能设置在DU;又比如,PDCP层以上协议层的功能设置在CU,PDCP层及以下协议层的功能设置在DU。
可以理解的是,上述对CU和DU的处理功能按照协议层的划分仅仅是一种举例,也可以按照其他的方式进行划分,例如可以将CU或者DU划分为具有更多协议层的功能,又例如将CU或DU还可以划分为具有协议层的部分处理功能。在一种设计中,将RLC层的部分功能和RLC层以上的协议层的功能设置在CU,将RLC层的剩余功能和RLC层以下的协议层的功能设置在DU。在另一种设计中,还可以按照业务类型或者其他系统需求对CU或者DU的功能进行划分,例如按时延划分,将处理时间需要满足时延要求的功能设置在DU,不需要满足该时延要求的功能设置在CU。在另一种设计中,CU也可以具有核心网的一个或多个功能。示例性的,CU可以设置在网络侧方便集中管理。在另一种设计中,将DU的无线单元(radio unit,RU)拉远设置。其中,RU具有射频功能。
可选的,DU和RU可以在物理层(physical layer,PHY)进行划分。例如,DU可以实现PHY层中的高层功能,RU可以实现PHY层中的低层功能。其中,用于发送时,PHY层的功能可以包括添加循环冗余校验(cyclic redundancy check,CRC)码、信道编码、速率匹配、加扰、调制、层映射、预编码、资源映射、物理天线映射、和/或射频发送功能。用于接收时,PHY层的功能可以包括CRC、信道解码、解速率匹配、解扰、解调、解层映射、信道检测、资源解映射、物理天线解映射、和/或射频接收功能。其中,PHY层中的高层功能可以包括PHY层的一部分功能,例如该部分功能更加靠近MAC层,PHY层中的低层功能可以包括PHY层的另一部分功能,例如该部分功能更加靠近射频功能。例如,PHY层中的高层功能可以包括添加CRC码、信道编码、速率匹配、加扰、调制、和层映射,PHY层中的低层功能可以包括预编码、资源映射、物理天线映射、和射频发送功能;或者,PHY层中的高层功能可以包括添加CRC码、信道编码、速率匹配、加扰、调制、层映射和预编码,PHY层中的低层功能可以包括资源映射、物理天线映射、和射频发送功能。
示例性的,CU的功能可以由一个实体来实现,或者也可以由不同的实体来实现。例如,可以对CU的功能进行进一步划分,即将控制面和用户面分离并通过不同实体来实现,分别为控制面CU实体(即CU-CP实体)和用户面CU实体(即CU-UP实体)。该CU-CP实体和CU-UP实体可以与DU相耦合,共同完成接入网设备的功能。
上述架构中,CU产生的信令可以通过DU发送给终端设备,或者终端设备产生的信令可以通过DU发送给CU。例如,RRC或PDCP层的信令最终会处理为物理层的信令发送给终端设备,或者,由接收到的物理层的信令转变而来。在这种架构下,该RRC或PDCP层的信令,即可以认为是通过DU发送的,或者,通过DU和RU发送的。
可选的,上述DU、CU、CU-CP、CU-UP和RU中的任一个可以是软件模块、硬件结构、或者软件模块+硬件结构,不予限制。其中,不同实体的存在形式可以是不同的,不予限制。例如DU、CU、CU-CP、CU-UP是软件模块,RU是硬件结构。这些模块及其执行的方法也在本公开的保护范围内。
应理解,图1A所示的通信系统中各个设备的数量、类型仅作为示意,本公开并不限于此,实际应用中在通信系统中还可以包括更多的终端设备、更多的接入网设备,还可以包括其它网元,例如可以包括网管、核心网设备,和/或用于实现人工智能功能的网元。其中,网管可以根据运营商网络运营的实际需要,将网络的管理工作划分为3类:操作(Operation)、管理(Administration)、维护(Maintenance)。网管又可以称为操作维护管理(operation administration and maintenance,OAM)网元,简称OAM。操作主要完成日常网络和业务进行的分析、预测、规划和配置工作;维护主要是对网络及其业务的测试和故障管理等进行的日常操作活动,网管可以检测网络运行状态、优化网络连接和性能,提升网络运行稳定性,降低网络维护成本。
本公开提供的方法可以用于接入网设备和终端设备之间的通信,也可以用于其他通信设备之间的通信,例如无线回传链路中宏基站和微基站之间的通信,又如边链路(sidelink,SL)中两个终端设备之间的通信等,不予限制。
本公开提供的方法涉及到人工智能(artificial Intelligence,AI)。其中,AI可以通过各种可能的技术实现,例如通过机器学习(machine learning,ML)技术实现。在本公开中,前述通信系统也可以包括实现人工智能功能的网元。例如,可以在通信系统中已有网元内配置AI功能(如AI模块或者AI实体)来实现AI相关的操作。例如在5G新无线(newradio,NR)系统中,该已有网元可以是接入网设备(如gNB)、终端设备、核心网设备、或网管等。或者,也可以在通信系统中引入独立的网元来执行AI相关的操作。该独立的网元可以称为AI网元或者AI节点等,本公开对此名称不进行限制。在这种情况下,执行AI相关的操作的网元为内置AI功能(如AI模块或者AI实体)的网元。AI相关的操作还可以称为AI功能。AI功能的具体介绍请参见下文。AI网元可以和通信系统中的接入网设备之间直接连接,也可以通过第三方网元和接入网设备实现间接连接。其中,第三方网元可以是认证管理功能(authentication management function,AMF)网元、用户面功能(user plane function,UPF)网元等核心网网元。示例性的,参见图1B,在上述图1A所示的通信系统中引入了AI网元140。
为了便于理解,下面结合A1~A4,对本公开涉及的AI的部分用语进行介绍。可以理解的是,该介绍并不作为对本公开的限定。
A1,AI模型
AI模型是AI功能的具体实现,AI模型表征了模型的输入和输出之间的映射关系,可以指将某种维度的输入映射到某种维度的输出的函数模型。AI模型可以是神经网络或者其他机器学习模型,如决策树、支持向量机等。本公开中,可以将AI模型简称为模型。本公开中,AI功能可以包括以下至少一项:数据收集(收集训练数据和/或推理数据)、数据预处理、模型训练(或称,模型学习)、模型信息发布(配置模型信息)、模型推理、或推理结果发布。其中,推理又可以称为预测。本公开中,可以将AI模型简称为模型。
A2,机器学习
机器学习是实现人工智能的一种重要技术途径,如机器学习可以从原始数据中学习模型或规则,机器学习分为监督学习、非监督学习、强化学习。
监督学习依据已采集到的样本(或称样本值)和样本标签,利用机器学习算法学习样本到样本标签的映射关系,并用机器学习模型来表达学到的映射关系。训练机器学习模型的过程就是学习这种映射关系的过程。如信号检测中,样本为含噪声的接收信号,样本标签为该接收信号对应的真实星座点,机器学习期望通过训练学到样本与样本标签之间的映射关系。在训练时,通过计算模型的输出(即预测值)与样本标签的误差来优化模型参数。一旦映射关系学习完成,就可以利用学到的映射关系来预测每一个新样本的样本标签。监督学习学到的映射关系可以包括线性映射、非线性映射。根据样本标签的类型可将机器学习的任务分为分类任务和回归任务。
无监督学习依据采集到的样本,利用算法自行发掘样本的内在模式。无监督学习中有一类算法(如自编码器、对抗生成型网络等)可以将样本自身作为监督信号,模型学习从样本到样本的映射关系,训练时,通过计算模型的预测值与样本本身之间的误差来优化模型参数,实现自监督学习。自监督学习可用于信号压缩及解压恢复的应用场景。
强化学习是一类通过与环境交互来学习解决问题的策略的算法。与监督学习、无监督学习不同,强化学习并没有明确的样本标签,算法需要与环境进行交互,获取环境反馈的奖励信号,进而调整决策动作以获得更大的奖励信号数值。如在下行功率控制中,强化学习模型根据无线网络反馈的系统总吞吐率,调整各个终端的下行发送功率,进而期望获得更高的系统吞吐率。强化学习的目标也是学习环境状态与最优决策动作之间的映射关系。强化学习的训练是通过与环境的迭代交互而实现的。
A3,神经网络
神经网络是AI或机器学习技术的一种具体实现形式。根据通用近似定理,神经网络在理论上可以逼近任意连续函数,从而使得神经网络具备学习任意映射的能力。传统的通信系统需要借助丰富的专家知识来设计通信模块,而基于神经网络的深度学习通信系统可以从大量的数据集中自动发现隐含的模式结构,建立数据之间的映射关系,获得优于传统建模方法的性能。
神经网络的思想来源于大脑组织的神经元结构。例如,每个神经元都对其输入值进行加权求和运算,通过一个激活函数输出运算结果。如图2A所示,为神经元结构的一种示意图。假设神经元的输入为x=[x0,x1,…,xn],与各个输入对应的权值分别为w=[w,w1,…,wn],其中,wi作为xi的权值,用于对xi进行加权。根据权值对输入值进行加权求和的偏置例如为b。激活函数的形式可以有多种,假设一个神经元的激活函数为:y=f(z)=max(0,z),则该神经元的输出为:
Figure BDA0003444124430000131
Figure BDA0003444124430000132
再例如,一个神经元的激活函数为:y=f(z)=z,则该神经元的输出为:/>
Figure BDA0003444124430000133
Figure BDA0003444124430000134
其中,b可以是小数、整数(例如0、正整数或负整数)、或复数等各种可能的取值。神经网络中不同神经元的激活函数可以相同或不同。
神经网络一般包括多个层,每层可包括一个或多个神经元。通过增加神经网络的深度和/或宽度,能够提高该神经网络的表达能力或称函数拟合能力,为复杂系统提供更强大的信息提取和抽象建模能力。其中,神经网络的深度可以是指神经网络包括的层数,其中每层包括的神经元个数可以称为该层的宽度。在一种实现方式中,神经网络包括输入层和输出层。神经网络的输入层将接收到的输入信息经过神经元处理,将处理结果传递给输出层,由输出层得到神经网络的输出结果。在另一种实现方式中,神经网络包括输入层、隐藏层和输出层,神经网络的输入层将接收到的输入信息经过神经元处理,将处理结果传递给中间的隐藏层,隐藏层对接收的处理结果进行计算,得到计算结果,隐藏层将计算结果传递给输出层或者相邻的隐藏层,最终由输出层得到神经网络的输出结果。其中,一个神经网络可以包括一个隐藏层,或者包括多个依次连接的隐藏层,不予限制。
如上述已经介绍,每个神经元都对其输入值做加权求和运算,并加权求和结果通过一个非线性函数产生输出。将神经网络中神经元加权求和运算的权值以及非线性函数称作神经网络的参数。以max{0,x}为非线性函数的神经元为例,做
Figure BDA0003444124430000135
操作的神经元的参数为权值为w=[w,w1,…,wn],其中,加权求和的偏置为b。一个神经网络所有神经元的参数构成这个神经网络的参数。
本公开涉及的神经网络例如深度神经网络(deep neural network,DNN),DNN一般具有多个隐藏层,在DNN中每个神经元对应的权值即为DNN的模型参数。DNN可以使用监督学习或非监督学习策略来优化模型参数。根据网络的构建方式,DNN可以包括前馈神经网络(feedforward neural network,FNN)、卷积神经网络(convolutional neural networks,CNN)和递归神经网络(recurrent neural network,RNN)。以FNN为例,参见图2B示意一种神经网络结构,FNN的特点为相邻层的神经元两两之间完全相连。
CNN可以应用于处理具有类似网格结构的数据。其中,具有类似网格结构的数据可以包括时间序列数据(时间轴离散采样)和图像数据(二维离散采样)等。CNN的卷积层并不一次性利用全部的输入信息做卷积运算,而是设定一个或多个固定大小的窗,采用各个窗截取部分输入信息做卷积运算。这样的设计可以较大程度地降低模型参数的计算量。具体地,针对一个或多个固定大小的窗中的任意一个窗做卷积运算,可以理解为以该窗的系数(如加权系数)和该窗所截取的部分输入信息进行先乘后加运算。卷积运算后可以得到该窗对应的输出信息。其中,不同窗的系数可以是独立配置的。例如,不同窗可以配置不同的系数,这可以使得CNN更好的提取输入数据的特征。窗的系数可以包括卷积核。可选的,不同窗截取的部分输入信息的类型可以不同,示例性的,同一副图中的人和物可以理解为不同类型的信息,在设定两个固定大小的窗中一个窗可以截取该图中的人,另一个窗可以截取该图中的物。RNN是一种利用反馈时间序列信息的DNN网络。它的输入包括当前时刻的新的输入值和RNN在前一时刻的输出值中的部分,其中前一时刻的输出值可以由激活函数和前一时刻的输入所确定。RNN适合获取在时间上具有相关性的序列特征,适用于语音识别、信道编译码等应用场景。
另外,在神经网络的训练过程中,可以定义损失函数。损失函数描述了神经网络的输出值与理想目标值之间的差距或差异,本公开并不限制损失函数的具体形式。神经网络的训练过程就是通过调整神经网络的参数,使得损失函数的取值小于门限,或者使得损失函数的取值满足目标需求的过程。调整神经网络的参数,例如调整如下参数中的至少一种:神经网络的层数、宽度、神经元的权值、或、神经元的激活函数中的参数。
A4,联邦学习(federated learning,FL)
联邦学习是一种机器学习框架。在该框架中,节点之间无需涉及数据交互,而是传递训练中得到的中间结果,例如模型的参数或者梯度等能够表征模型的信息。即联邦学习可以在满足用户隐私保护、数据安全的要求,进行机器学习的建模,即训练AI模型。联邦学习作为分布式的机器学习范式,可以有效解决数据孤岛问题,让参与联邦学习的节点在不共享数据的基础上联合建模,从而在技术上打破数据孤岛,实现AI协作。
一般地,根据参与各方数据源分布的情况不同,联邦学习可以分为三类:横向联邦学习、纵向联邦学习、联邦迁移学习。其中,横向联邦学习指的是在多个数据集(或理解为样本集)的用户特征重叠较多而用户重叠较少的情况下,把数据集按照横向(即用户维度)切分,并依据用户特征相同而用户不完全相同的部分数据进行模型的训练。纵向联邦学习指的是在多个数据集的用户重叠较多而用户特征重叠较少的情况下,把数据集按照纵向(即特征维度)切分,依据用户相同而用户特征不完全相同的部分数据进行模型的训练。联邦迁移学习指的是在多个数据集的用户与用户特征重叠都较少的情况下,不对数据进行切分,而是利用迁移学习克服数据或样本标签不足的情况。
本公开具体涉及联邦学习在无线网络中的应用。在无线网络中,存在训练模型需求的数据分布在多个节点且数据涉及节点的隐私信息的情况,这类情况不适合直接传输数据。针对这类情况,可以利用联邦学习技术,使得多个节点参与联邦学习。
一种可能的设计中,多个节点训练本地模型,将各自训练的本地模型的参数信息发送给一个中心节点,该中心节点可以根据前述多个节点的本地模型参数,计算(或称训练)联邦学习模型,并将联邦学习模型发送给前述多个节点,多个节点继续更新本地模型,发送本地模型的参数信息给中心节点,如此进行迭代,直到收敛。如图3A示意一种通信架构,例如包括中心节点和3个参与联邦学习的子节点,即子节点1、子节点2和子节点3。其中,子节点1、子节点2和子节点3分别可以收集训练数据,训练各自的本地模型,以及将本地模型的参数信息发送给中心节点;中心节点可以训练联邦学习模型。
另一种可能的设计中,多个节点训练本地模型,将各自训练的本地模型的参数信息发送给一个中心节点,该中心节点可以将前述多个节点的本地模型参数转发至AI模型管理节点,由AI模型管理节点根据前述多个节点的本地模型参数,计算(或称训练)联邦学习模型,并将联邦学习模型发送给前述多个节点,多个节点继续更新本地模型,发送本地模型的参数信息通过中心节点发送给AI模型管理节点,如此进行迭代,直到收敛。此情况下。中心节点在AI模型管理节点和参与联邦学习的节点之间起到中继作用。如图3B示意一种通信架构,例如包括AI模型管理节点,中心节点和3个参与联邦学习的子节点,即子节点1、子节点2和子节点3。其中,子节点1、子节点2和子节点3分别可以收集训练数据,训练各自的本地模型,以及将本地模型的参数信息发送给中心节点。中心节点可以将来自参与联邦学习的节点的本地模型的参数信息转发给AI模型管理节点,由AI模型管理节点进行联邦学习模型的训练/更新操作,以及将联邦学习模型的参数信息发送给中心节点。进而中心节点转发联邦学习模型的参数信息给对应的子节点1、子节点2、子节点3。
可以理解的是,上述中心节点指的是用于训练联邦学习模型的节点,中心节点可以替换成其他名称;区别于中心节点,前述参与联邦学习,可以训练本地模型的多个节点也可以称为多个子节点,多个分布式节点或者其它名称。本公开对此名称并不进行限制。本公开下面以中心节点训练联邦学习模型和子节点训练本地模型为例进行描述。
具体地,多个参与联邦学习的节点可以接入中心节点,以与中心节点进行通信。示例性的,图3A/图3B中涉及的中心节点可以是接入网设备,参与联邦学习的节点即子节点1、子节点2和子节点3可以是终端设备,或者,中心节点可以是核心网设备,子节点1、子节点2和子节点3可以是接入网设备;中心节点以及子节点1、子节点2和子节点3均可以是AI网元/具备AI功能的模块。图3B涉及的AI模型管理节点可以是独立的AI网元或者具备AI功能的模块。
例如在定位问题中,终端设备可以收集到包含地理位置的数据,但是单个终端设备收集到的数据比较单一,无法遍历真实数据的所有可能的分布,并且单个终端设备收到的数据量较少,如果只依据单个终端设备收集的数据难以训练出满足性能要求的模型,但是如果让多个终端设备将数据发送给接入网设备或核心网设备如位置管理功能(locationmanagement function,LMF)网元,由接入网设备或LMF网元进行模型的训练。终端设备的地理位置涉及隐私,将数据发送给接入网设备或LMF网元会使终端设备的隐私泄露,且终端设备向接入网设备或LMF网元传输数据的开销较大。在这样的情况下可以利用联邦学习技术,如多个终端设备参与联邦学习,各个终端设备可以根据各自的数据训练本地模型,再将本地模型的参数信息发给接入网设备或LMF网元,由接入网设备或LMF网元训练联邦学习模型,并将联邦学习模型发送给前述多个终端设备,多个终端设备继续更新本地模型,发送本地模型的参数信息给接入网设备或LMF网元,如此进行迭代,直到收敛。
相关技术中,中心节点每次只训练一个联邦学习模型,即每次发送给多个子节点的联邦学习模型是相同的,如下将相同的联邦学习模型记作全局模型,对相关技术进行详细介绍。在无线通信场景中,需要不同终端设备对同一类型的数据进行分布式训练,适合使用横向联邦学习,横向联邦学习的主要流程如下:
S1,中心节点将全局模型下发给多个子节点。该多个子节点中的每个子节点可以根据本地数据(即节点自身获取的样本)和全局模型训练本地模型。在前述定位问题中,中心节点可以是基站或者LMF,多个子节点中的子节点可以是终端设备。
S2,多个子节点中每个利用本地数据训练本地模型,将本地模型的参数上传给中心节点,中心节点聚合各个节点的本地模型的参数更新全局模型参数,即对S1中的全局模型进行更新训练。
重复上述两个步骤直至模型收敛。
参见图4A示意,以前述多个子节点包括子节点1、子节点2、子节点3为例,首先中心节点向子节点1、2、3发送初始化模型,子节点1根据子节点1的本地数据(即图4A中的数据1)对初始化模型进行更新训练,得到本地模型M1,子节点2根据子节点2的本地数据(即图4A中的数据2)对初始模型进行更新训练,得到本地模型M2,子节点3根据子节点3的本地数据(即图4A中的数据3)对初始模型进行更新训练,得到本地模型M3。子节点1、2、3将各自的本地模型的参数发送给中心节点,中心节点将各个子节点的本地模型进行加权得到全局模型M0=α1M12M23M3,其中αi为前述多个子节点中第i个子节点的本地数据量占多个子节点的本地数据的总量的比例,Mi指示多个子节点中第i个子节点的本地模型或者可以理解为第i个子节点的本地模型的参数。这里i的取值为1、2或3。然后中心节点将M0发送给各个子节点,各个子节点根据收到的全局模型继续进行本地训练,再将训练后的本地模型的参数上传给中心节点,如此进行迭代,直到模型收敛。
实际应用时,前述各子节点的本地数据之间存在分布差异,例如在室内定位问题中,不同终端设备长期或频繁所处的区域不同。在这种情况下采用前述相关技术,多个子节点都采用同一个全局模型进行本地模型的更新训练,对于数据分布和其他子节点差异较大的子节点来说,本地模型的性能表现较差,从而会降低联邦学习模型的性能。
基于此,本公开提供一种通信方法,能够提升联邦学习模型的性能。在本公开中,中心节点在根据参与联邦学习的多个子节点的本地模型的参数信息训练联邦学习模型时,针对不同子节点个性化训练节点对应的联邦学习模型,可以避免多个子节点采用同一个全局模型进行本地模型的更新训练,以提升联邦学习模型的性能。
如参见图4B,以前述多个子节点包括子节点1、子节点2、子节点3为例,首先中心节点向子节点1、2、3发送初始化模型,子节点1根据子节点1的本地数据(即图4B中的数据1)对初始化模型进行更新训练,得到本地模型M1,子节点2根据子节点2的本地数据(即图4B中的数据2)对初始模型进行更新训练,得到本地模型M2,子节点3根据子节点3的本地数据(即图4B中的数据3)对初始模型进行更新训练,得到本地模型M3。子节点1、2、3将各自的本地模型的参数发送给中心节点。在本公开中,中心节点可以针对多个子节点中的至少两个子节点训练同一个全局模型,而针对其余的子节点训练其对应的联邦学习模型,如称为个性化模型。或者,中心节点也可以针对多个子节点中各个子节点训练个性化模型。作为示例,图4B示意出中心节点针对子节点1、2、3分别训练个性化模型。子节点1、2、3将各自的本地模型的参数发送给中心节点,中心节点针对不同子节点采用不同的加权,将各个子节点的本地模型加权得到各个子节点的个性化模型,如第k个子节点的个性化模型Pk=β1kM12kM23kM3,其中k的取值为1、2或3,不同的Pk所对应的β1k、β2k、β3k不同。然后中心节点向各个子节点指示对应的个性化模型,如将P1发送给子节点1,P2发送给子节点2,P3发送给子节点3,各个子节点根据收到的联邦学习模型继续进行本地训练,再将训练后的本地模型的参数上传给中心节点,如此进行迭代,直到模型收敛。
下面结合附图对本公开提供的通信方法进一步进行详细说明。
参见图5示意一种通信方法,该方法主要包括如下流程。
S501,中心节点向参与联邦学习的多个子节点发送用于指示第二模型的信息。
示例性的,图5中示意了3个参与联邦学习的子节点,即子节点1、子节点2和子节点3。中心节点和子节点的举例可参照前述图3A的描述,本公开对此不再进行赘述。
其中,所述用于指示第二模型的信息用于所述多个子节点中每个子节点确定其各自的第1个本地模型。第二模型也可以理解为初始化模型。示例性的,用于指示第二模型的信息可以是第二模型或者第二模型的参数信息,第二模型的参数信息可以表征第二模型;第二模型的参数信息可以指示如下的一个或多个参数:第二模型的结构类型、结构参数、模型参数。下面以中心节点发送第二模型的参数信息为例进行说明。
一些关于第二模型的参数信息的举例如下:
第二模型的结构类型,例如CNN、RNN、Transformer模型、随机森林、支持向量机等。
第二模型的结构参数,具体地,不同结构类型的模型所对应的结构参数可能不同,例如,第二模型为CNN模型时,其结构参数可以包括CNN中卷积层的个数、每个卷积层的通道数和卷积核的大小、全连接层的个数和/或神经元个数。第二模型为RNN模型时,其结构参数可以包括RNN的神经网络层数、每层结构中各个状态的计算方式;其中,状态可以为忘记门、输入门、输出门、更新门、或隐含状态等。第二模型为Transformer模型时,其结构参数可以包括Transformer模型中编码器和解码器的个数、每个编码器和解码器中内部元素的计算方式;其中,内部元素可以为查询向量、键向量、或值向量等。第二模型为随机森林时,其结构参数可以包括随机森林中树的个数、深度。第二模型为支持向量机时,其结构参数可以包括支持向量机中核函数的类型等。
第二模型的模型参数,可以理解为构建第二模型相关的参数。例如神经网络中各个神经元对应的权值和偏置,随机森林中各节点对应的判断准则和门限,支持向量机中对应的权值和偏置等。
可选的,可以由协议规定一些可选的模型结构,模型结构包括结构类型和结构参数,所述第二模型的参数信息包括用于指示第二模型的结构类型、结构参数属于前述协议规定的模型结构的信息,还包括用于指示模型参数的信息。或者,可以由协议规定一种模型结构,那么所述第二模型的参数信息仅指示第二模型的模型参数,参与联邦学习的节点可以根据协议规定,确定第二模型的结构类型和结构参数。又或者,可以由协议规定模型结构和模型参数的组合,中心节点可以在第二模型的参数信息中包括协议规定的一种模型结构和模型参数的组合的指示信息。此外可以理解的是,也可以由协议直接规定前述第二模型的结构类型和结构参数,在这种情况下,中心节点可以不用发送第二模型的参数信息,即在这种情况下无需执行S501,前述S501是一个可选的步骤。
具体地,中心节点可以基于预配置的资源向多个子节点发送第二模型的参数信息。例如,可以由中心节点或前述多个子节点配置中心节点发送模型(如第二模型)的参数信息;或者由另外的联邦学习管理节点(如第三方网元、独立的AI网元等)为中心节点和多个子节点配置中心节点发送模型的参数信息的资源。以中心节点是接入网设备,多个子节点为终端设备为例,中心节点发送第二模型的资源可以是下行资源,下行资源具体可以是控制信道资源,如物理下行控制信道(physical downlink control channel,PDCCH)资源,或者下行资源也可以是数据信道资源,如物理下行共享信道(physical downlink sharechannel,PDSCH)资源。具体的,资源可以理解为时频资源,包括时域资源如时隙、符号等,频域资源如频域资源块编号、子带号、跳频参数、调制编码方案等参数。
具体地,中心节点可以采用广播或者组播的方式发送前述第二模型的参数信息。例如,中心节点可以针对前述多个子节点所在的小区采用广播的方式发送第二模型的参数信息,可以理解多个子节点可能位于同一小区,或者多个子节点也可能位于不同的小区。多个子节点所在小区内其他未参与到联邦学习的节点也可以接收到中心节点广播的信息。又如,中心节点可以将参与联邦学习的多个子节点视为一组,同一组的多个子节点对应同一组号,中心节点采用组播的方式基于相同的资源向该组中的多个子节点发送第二模型的参数信息。又如,中心节点可以将多个子节点进行分组,如根据各个子节点的计算能力进行分组,同一组中的子节点计算能力相似。不同组对应配置不同的组号。中心节点可以针对不同组配置不同的资源,进而采用组播的方式基于一组对应的资源向该组中的子节点发送第二模型的参数信息以及该组的组号。
进一步可选的,中心节点还可以向前述多个子节点指示其各自训练本地模型的训练参数,该训练参数可以包括子节点训练本地模型所需的迭代次数、学习率、损失函数、以及批尺寸(Batch_Size)中的一个或多个。子节点可以按照该训练参数,进行本地模型的训练。
S502,重复I次执行如下步骤S21~S24,I指示训练联邦学习模型涉及的迭代次数,I为正整数。
S21,多个子节点中每个子节点训练本地模型。
具体地,各个子节点可以根据中心节点发送的模型的参数信息,分别进行本地模型的训练。其中,子节点训练本地模型的训练数据包括其收集的本地数据。可选的,各个子节点训练的本地模型的结构类型以及结构参数相同。示例性的,如果各个子节点最近一次接收的是S501中描述的用于指示第二模型的信息,则各个子节点可以根据用于指示第二模型的信息以及收集的本地数据,进行第1次(或称第1个)本地模型的训练。此外可选的,子节点训练本地模型的训练数据还可以包括标签数据。
其中,各个子节点可以针对不同的应用场景确定本地模型的训练数据。
例如在定位场景中,子节点收集的本地数据可以是信道响应,从而训练一个以信道响应为输入,以位置坐标为输出的本地模型。其中,子节点还可以获取前述信道响应对应的标签数据,即位置坐标。可选的,子节点可以基于到达时间差的定位方法来获取位置坐标。以子节点是终端设备,中心节点是LMF为例,终端设备接收来自多个接入网设备的定位参考信号(positioning Reference Signal,PRS),终端设备测量不同的接入网设备发送的PRS的到达时间差,并将前述到达时间差反馈给LMF,LMF通过到达时间差可以推断出不同接入网设备到终端设备之间的距离的差别,进一步确定终端设备的位置。进而LMF通过信令将终端设备的位置反馈给终端设备,则终端设备可以将该位置作为本地数据对应的标签数据。可选的,接入网设备可以重复发送PRS,LMF在较短时间内重复计算终端设备位置,若短时间内计算得到终端设备的多个位置较为稳定(即多个位置之间的差异较小,如小于设定阈值),则可以反映测试定位精度较高。LMF通过信令将终端设备的较为稳定的位置反馈给UE,UE将该位置作为本地数据的标签,可以提升本地模型的性能。
例如在波束管理场景中,子节点可以是接入网设备,中心节点可以是接入网设备可以接入的设备,如独立的AI网元、或允许其他接入网设备接入汇聚接入网设备,子节点可以收集的本地数据可以是信道测量值(例如接收信号的能量或质量等),训练一个以较少的信道测量值为输入、以最优波束的索引为输出的机器学习模型,其中最优波束索引是本地数据对应的标签数据。可选的,子节点(即接入网设备)可以通过全部可能的波束(或称波束方向)逐个发送信号给接入该子节点的终端设备,依靠终端设备的反馈来确定最优波束的索引。如终端设备可以确定接收信号质量最好对应的波束,记作(性能)最优波束。并将该最优波束的索引反馈给子节点。此外,子节点所收集的信道测量值也可以是从终端设备获取的,如终端设备在反馈前述最优波束的索引时,还可以反馈较少的信道测量值。
各个子节点可以根据收集的本地数据、应用场景或者本地模型的结构类型,确定训练本地模型所采用的损失函数。如在视距(line of sight,LOS)/非视距(non-line ofsight,NLOS)识别等分类问题中可以采用交叉熵函数作为损失函数,在信道估计等回归问题中可以采用均方误差(mean squared Error,MSE)或平均绝对误差(mean absoluteerror,MAE)作为损失函数。
S22,多个子节点中各个子节点向中心节点发送用于指示本地模型的信息。
其中,用于指示本地模型的信息可以是本地模型或者本地模型的参数信息。下面以子节点发送本地模型的参数信息为例进行说明。示例性的,在图5示意出了S22:子节点1、子节点2、子节点3分别向中心节点发送本地模型的参数信息。
具体地,关于本地模型的参数信息可以参照如下内容理解:
一种可选的实施方式中,针对I次中任意一次子节点训练本地模型后,子节点发送的本地模型的参数信息可以包括本地模型的模型参数。
示例性的,子节点每次训练本地模型后,将本次训练得到本地模型的所有模型参数组合作为一个向量发送给中心节点。假设本地模型共有G个模型参数,子节点每次训练本地模型后,都可以将本次训练得到本地模型的G个模型参数组合作为一个向量发送给中心节点,如多个子节点中第k子节点上报其本地模型的参数信息可以记作Mk=[mk,1,mk,2,…,mk,G],其中,mk,j表示第k子节点的本地模型的第j个模型参数,j为正整数,1≤j≤G。k取遍1至K的正整数,K为多个子节点的数量,前述第k子节点还可以描述为第k个子节点,表示多个子节点中的任意一个子节点。本公开下文有关j,G,k,K的定义均可参照此示例理解,在下文的内容中将不再进行赘述。
示例性的,子节点每次训练本地模型后,将本次训练得到本地模型的所有模型参数划分成多个组合,并将每个组合作为一个向量,发送多个组合对应的向量给中心节点。可选的,可以基于本地模型的结构,确定前述划分的多个组合。例如参见图6,可以将本地模型划分为全局层和可个性化层,前述划分的多个组合包括全局层的模型参数以及可个性化层的模型参数,本公开对此不进行限制。
另一种可选的实施方式中,针对I次中的第1次子节点训练本地模型后,子节点发送的本地模型的参数信息可以包括该本地模型的模型参数。而针对I中的第2~I次中的任意一次子节点训练本地模型后,子节点发送的本地模型的参数信息可以包括本次训练本地模型的参数信息与上一次训练本地模型的参数信息之间的差值,该差值还可以描述为本次训练本地模型的模型参数的梯度,或简称本次训练本地模型的梯度。
示例性的,假设本地模型有G个参数,子节点第1次训练本地模型后,可以将本次训练得到本地模型的G个参数组合作为一个向量发送给中心节点,具体可参照前述一种可选的实施方式理解,本公开对此不再进行赘述。子节点针对第2~I次中的任意一次训练本地模型后,可以将本次训练得到本地模型的G个参数与上一次训练得到本地模型的G个参数之间的差值集合,即各个参数的梯度作为一个向量发送给中心节点,如在第2~I次中的每一次,多个子节点中第k个子节点上报其本地模型的参数信息可以记作ΔMk=[Δmk,1,Δmk,2,…,Δmk,G],其中Δmk,j表示第k个子节点本次训练的本地模型的第j个参数与上一次训练的本地模型的第j个参数之间的差值,或可以理解为Δmk,j表示第k个子节点本次训练的本地模型的第j个参数的梯度。其中,j为正整数,1≤j≤G。
示例性的,子节点每次训练本地模型后,将本次训练得到本地模型的梯度划分成多个组合,并将每个组合作为一个向量,发送多个组合对应的向量给中心节点。可选的,可以基于本地模型的结构,确定前述划分的多个组合。例如参见图6,将本地模型划分为全局层和可个性化层,前述划分的多个组合包括全局层的梯度以及可个性化层的梯度,本公开对此不进行限制。
可选的,子节点可以按照中心节点的指示,确定本地模型的参数信息包括前述模型参数,模型参数的梯度,或者其他信息等。可选的,还可以由中心节点指示或者预先约定,在子节点将本地模型的参数信息划分为多个组合上报给中心节点的情况下,不同组合中的参数类型可以不同,这里的参数类型可以是模型参数或者模型参数的梯度。或者也可以设定多个组合中一部分组合的参数类型为模型参数,另一部分组合的参数类型为梯度。具体可以结合实际应用进行配置,本公开对此并不进行限制。
此外,子节点发送本地模型的参数信息还可以包括辅助信息,该辅助信息用于指示子节点收集的本地数据的样本数和/或本地模型的参数信息的参数类型。
具体地,子节点可以基于预配置的资源向中心节点发送本地模型的参数信息。例如,子节点可以通过预先配置的资源发送本地模型的参数信息。可以由中心节点为前述多个子节点配置子节点发送本地模型的参数信息的资源,或者由另外的联邦学习管理节点(如第三方网元、独立的AI网元等)为中心节点和多个子节点配置子节点发送本地模型的参数信息的资源。以中心节点是接入网设备,多个子节点为终端设备为例,子节点发送本地模型的参数信息的资源可以是上行资源,上行资源具体可以是控制信道资源,如物理上行控制信道(physical uplink control channel,PUCCH)资源,或者上行资源也可以是数据信道资源,如物理上行共享信道(physical uplink share channel,PUSCH)资源。具体的,资源可以理解为时频资源,包括时域资源如时隙、符号等,频域资源如频域资源块编号、子带号、跳频参数、调制编码方案等参数。
可选的,在子节点将本地模型的参数信息划分为多个组合上报给中心节点的情况下,上报不同组合中本地模型的参数信息所占的资源可以不同,或者在多个组合中,上报一部分组合的参数信息和另一部分组合的参数信息所占的资源不同。具体可以结合实际应用进行配置,本公开对此并不进行限制。
S23,中心节点根据用于指示各个子节点的本地模型的信息,进行联邦学习模型的训练。
具体地,以前述I次中的第i次为例,中心节点可以获取第i个第一信息,该第i个第一信息用于指示多个子节点中每个子节点的第i个本地模型。具体地,第i个第一信息可以由多个子节点中各个子节点发送用于指示第i个本地模型的信息构成。
具体地,以第k子节点表示多个子节点中的任意一个节点,中心节点可以根据该第i个第一信息以及第k子节点的联邦学习模型的类型,训练第k子节点的第i个联邦学习模型。其中,1≤i≤I,i为正整数。在图5中,第k子节点可以是子节点1、子节点2或者子节点3。
下面首先对第k子节点的第i个联邦学习模型的类型进行详细介绍。
在本公开中,第k子节点的第i个联邦学习模型的类型对应第一值或者第二值。其中,第一值对应的模型类型可以表示多个子节点中至少两个子节点对应同一个联邦学习模型,该同一个联邦学习模型也可以称作全局模型或者其他的模型名称,本公开对此不进行限制。第k子节点的第i个联邦学习模型的类型对应第一值时,可以表示所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同。其中,第k子节点的第i个联邦学习模型的类型对应第一值,还可以描述为第k子节点的第i个联邦学习模型的类型为全局模型类型。
第二值对应的模型类型表示针对单个子节点而言,与多个子节点中其他子节点的联邦学习模型均不同的联邦学习模型,这种不同于其他子节点的联邦学习模型也可以称作个性化模型或者其他能够与前述全局模型区分开的模型名称,本公开对此不进行限制。第k子节点的第i个联邦学习模型的类型对应第二值时,可以表示所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的其他子节点的第i个联邦学习模型不同。其中,第k子节点的第i个联邦学习模型的类型对应第二值,还可以描述为第k子节点的第i个联邦学习模型的类型为个性化模型类型。
可选的,针对i为取遍1~I的正整数时,由中心节点决策第k子节点的第i个联邦学习模型的类型对应第一值或第二值。或者,中心节点可以决策第k子节点对应的第1个联邦学习模型的类型对应第一值或第二值,而针对i取值为2~I的正整数时,默认第k子节点的第i个联邦学习模型与第k子节点的第i-1个联邦学习模型的类型保持一致。或者,针对I次中的部分轮次:中心节点可以在该部分轮次的每一轮次中,决策第k子节点对应的联邦学习模型对应第一值或第二值,而针对其余轮次:默认本次第k子节点的联邦学习模型与上一次第k子节点的联邦学习模型的类型保持一致,或者默认第k子节点的联邦学习模型对应第一值或第二值。
其中,前述部分轮次可以是周期性的,也可以是连续的,或者是由联邦学习管理节点或者子节点动态触发的。例如,针对I次中的部分轮次由中心节点决策一个子节点的联邦学习模型的类型,而其余轮次默认联邦学习模型的类型与上一轮次联邦学习模型的类型相同,或者当其余轮次包括第1轮次时,默认第1轮次的联邦学习模型的类型对应第一值。i可能的取值对应前述部分轮次中的一个或多个轮次,取值为对应轮次在I次中的编号。例如,I为10,部分轮次是周期性的,部分轮次的编号包括1、3、5、7、9时,则i的取值为1、3、5、7、9中的一个或多个;或者,部分轮次为连续性的,部分轮次的编号包括
Figure BDA0003444124430000211
到I之间的正整数;I为10时,部分轮次的编号包括6、7、8、9、10,则i的取值可能是6、7、8、9、10中的一个或多个。
其中,对于上述方式涉及中心节点决策第k子节点的联邦学习模型的类型,可以参照如下方式理解:中心节点可以自行确定第k子节点的联邦学习模型对应第一值或第二值;或者,中心节点可以结合历史训练得到联邦学习模型的性能,来确定本次训练联邦学习模型的类型,例如,在i大于1时,中心节点可以根据第k子节点的第i-1个联邦学习模型的性能,确定第k子节点的第i个联邦学习模型的类型。具体地,将在图7和图9对应的方案中详细说明中心节点如何结合历史联邦学习模型的性能,确定本次联邦学习模型的类型。
以第i轮次进行联邦学习模型的训练为例,对于第k子节点为多个子节点中的任意一个子节点而言,第k子节点的第i个联邦学习模型的类型,与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型的类型相同或者不同。或者可以理解,第k子节点的第i个联邦学习模型,与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同或者不同。
进一步,下面对中心节点确定第k子节点的第i个联邦学习模型的方案进行详细介绍。
(一)当第k子节点的第i个联邦学习模型的类型对应第一值时,中心节点可以根据所述第i个第一信息、以及所述多个子节点中每个子节点的第i个本地模型对应的权重,确定所述第k子节点的第i个联邦学习模型。
一种可选的实施方式,对应S22中多个子节点向中心节点上报的是各自训练得到的本地模型的模型参数。
示例性的,以
Figure BDA0003444124430000221
表示第k子节点的第i个本地模型对应的权重,/>
Figure BDA0003444124430000222
表示第k子节点的第i个本地模型的所有模型参数。对于第k子节点为多个子节点中的任意一个子节点而言,当第k子节点的第i个联邦学习模型的类型对应第一值时,中心节点可通过如下公式确定第k子节点的第i个联邦学习模型:/>
Figure BDA0003444124430000223
其中,/>
Figure BDA0003444124430000224
表示第k子节点的第i个联邦学习模型的所有模型参数。
上述
Figure BDA0003444124430000225
为第k子节点的第i个本地模型的权重,/>
Figure BDA0003444124430000226
可以由中心节点确定,也可以由多个子节点上报的辅助信息确定,如/>
Figure BDA0003444124430000227
nk表示第k子节点收集的本地数据的样本数。/>
Figure BDA0003444124430000228
表示第k子节点的第i个本地模型的所有模型参数。
示例性的,对应子节点将其本地模型的模型参数分为多个组合上报给中心节点,假设子节点上报本地模型的全局层的模型参数以及可个性化层的模型参数给中心节点。对于第k子节点为多个子节点中的任意一个子节点而言,当第k子节点的第i个联邦学习模型的类型对应第一值时,中心节点可通过如下方式确定第k子节点的第i个联邦学习模型:中心节点将多个子节点的第i个本地模型的全局层的模型参数进行加权得到第k子节点的第i个联邦学习模型的全局层的参数信息,中心节点将多个子节点的第i个本地模型的可个性化层的模型参数进行加权得到第k子节点的第i个联邦学习模型的可个性化层的参数信息
Figure BDA0003444124430000229
其中,/>
Figure BDA00034441244300002210
表示第k子节点训练的第i个本地模型的可个性化层对应的权重,/>
Figure BDA00034441244300002211
表示第k子节点的第i个本地模型的可个性化层的模型参数。进而中心节点可以结合前述全局层的模型参数和可个性化层的模型参数,确定第k子节点的第i个联邦学习模型。
上述
Figure BDA00034441244300002212
的取值可以由中心节点确定,也可以由多个子节点上报的辅助信息确定,如/>
Figure BDA00034441244300002213
Figure BDA00034441244300002214
表示第k个子节点收集的本地数据的样本数。另一种可选的实施方式,对应S22中多个子节点向中心节点上报的是各自训练得到的本地模型的梯度。
示例性的,对于第k子节点为多个子节点中的任意一个子节点而言,当第k子节点的第i个联邦学习模型的类型对应第一值时,中心节点可通过如下公式确定第k子节点的第i个联邦学习模型:
Figure BDA00034441244300002215
其中,/>
Figure BDA00034441244300002216
其中,/>
Figure BDA00034441244300002217
可参照前述定义理解,本公开对此不再进行赘述;/>
Figure BDA00034441244300002218
表示第k子节点的第i个联邦学习模型的梯度;/>
Figure BDA00034441244300002219
表示第k子节点的第i个本地模型的梯度。
示例性的,对应子节点上报本地模型的全局层的模型参数以及可个性化层的梯度给中心节点。对于第k子节点为多个子节点中的任意一个子节点而言,当第k子节点的第i个联邦学习模型的类型对应第一值时,中心节点可通过如下方式确定第k子节点的第i个联邦学习模型:中心节点将多个子节点的第i个本地模型的全局层的模型参数进行加权得到第k子节点的第i个联邦学习模型的全局层的模型参数,中心节点将第k子节点的第i个本地模型的可个性化层的梯度进行加权得到第k子节点的第i个联邦学习模型的可个性化层的梯度
Figure BDA0003444124430000231
其中,/>
Figure BDA0003444124430000232
表示第k子节点训练的第i个本地模型的可个性化层对应的权重,/>
Figure BDA0003444124430000233
的取值可参照前述定义理解,本公开对此不再进行赘述。/>
Figure BDA0003444124430000234
表示第k子节点的第i个本地模型的可个性化层的梯度。中心节点可以将第k子节点的第i个联邦学习模型的可个性化层的梯度/>
Figure BDA0003444124430000235
和第k子节点的第i-1个联邦学习模型的可个性化层的模型参数/>
Figure BDA0003444124430000236
加和,得到第k子节点的第i个联邦学习模型的可个性化层的模型参数/>
Figure BDA0003444124430000237
Figure BDA0003444124430000238
进而中心节点可以结合前述全局层的模型参数和可个性化层的模型参数,确定第k子节点的第i个联邦学习模型。
此外可选的,假设第i轮次,多个子节点中的第一组子节点的第i个联邦学习模型的类型对应第一值时,中心节点还可以配置多个子节点中除该第一组子节点之外的其他子节点对应的
Figure BDA0003444124430000239
小于第一组子节点对应的/>
Figure BDA00034441244300002310
或者例如中心节点还可以配置多个子节点中除该第一组子节点之外的其他子节点对应的/>
Figure BDA00034441244300002311
为0。可选的,前述第一组子节点中包括的子节点数量可以记作U,U可以取1到K的正整数。当U大于1时,第一组子节点中各个子节点的第i个联邦学习模型均相同。
(二)当第k子节点的第i个联邦学习模型的类型对应第二值时,中心节点可以根据所述第i个第一信息、以及所述第k子节点的第i个本地模型与所述多个子节点中每个子节点的第i个本地模型之间的相似度,确定所述第k子节点的第i个联邦学习模型。
一种可选的实施方式,对应S22中多个子节点向中心节点上报的是各自训练得到的本地模型的模型参数。
示例性的,假设多个子节点中第p子节点的第i个联邦学习模型的类型对应第二值,中心节点可通过如下公式确定第p子节点的第i个联邦学习模型:
Figure BDA00034441244300002312
Figure BDA00034441244300002313
表示第p子节点的第i个联邦学习模型的所有模型参数。其中,p的取值可以为1~K中的一个正整数,k为取遍1至K的正整数。可选的,在该公式中p可以等于k。
其中,
Figure BDA00034441244300002314
表示第p子节点的第i个本地模型与K个中任意一子节点k的第i个本地模型之间的相似度,相似度越大,对应/>
Figure BDA00034441244300002315
的取值越大。具体地,/>
Figure BDA00034441244300002316
的取值可以由第p子节点和第k子节点的本地模型的模型参数之间的余弦相似性、欧氏距离等确定,或者由中心节点输入相同的测试数据到第p子节点的本地模型以及第k子节点的本地模型,根据两个本地模型的输出结果之间的余弦相似性、欧式距离等确定/>
Figure BDA00034441244300002317
的取值。/>
Figure BDA00034441244300002318
表示第k子节点的第i个本地模型的所有模型参数。
示例性的,对应子节点将其本地模型的模型参数分为多个组合上报给中心节点,假设子节点上报本地模型的全局层的模型参数以及可个性化层的模型参数给中心节点。假设多个子节点中第p子节点的第i个联邦学习模型的类型对应第二值,中心节点根据多个子节点的第i个本地模型的参数信息,可通过如下方式确定第p子节点的第i个联邦学习模型:中心节点将多个子节点的第i个本地模型的全局层的模型参数进行加权得到第p子节点的第i个联邦学习模型的全局层的参数信息。中心节点根据第p子节点与K个子节点中任一子节点k的第i个本地模型的可个性化层的模型参数之间的相似度进行加权,可以得到第p子节点的第i个联邦学习模型的可个性化层的参数信息
Figure BDA00034441244300002319
其中,相似度越大的对应子节点的可个性化层的参数信息的权重越大,/>
Figure BDA00034441244300002320
p、k的定义和取值可参照前述示例中的定义理解,本公开对此不再进行赘述。/>
Figure BDA0003444124430000241
表示第p子节点的第i个本地模型的可个性化层的模型参数。
进而中心节点可以结合前述第一模型的全局层的模型参数和可个性化层的模型参数,确定第一模型。
另一种可选的实施方式,对应S22中多个子节点向中心节点上报的是各自训练得到的本地模型的梯度。
示例性的,假设多个子节点中第p子节点的第i个联邦学习模型的类型对应第二值,中心节点可通过如下公式确定第p子节点的第i个联邦学习模型:
Figure BDA0003444124430000242
其中,/>
Figure BDA0003444124430000243
表示第p子节点的第i-1个联邦学习模型的所有模型参数,/>
Figure BDA0003444124430000244
表示第p子节点的第i个联邦学习模型的梯度,p,k,K,/>
Figure BDA0003444124430000245
可参照前述定义理解,本公开对此不再进行赘述。
示例性的,对应子节点上报本地模型的全局层的模型参数以及可个性化层的梯度给中心节点。假设多个子节点中第p子节点的第i个联邦学习模型的类型对应第二值,中心节点可通过如下方式确定第p子节点的第i个联邦学习模型:中心节点将多个子节点的第i个本地模型的全局层的模型参数进行加权得到第p子节点的第i个联邦学习模型的全局层的模型参数,中心节点将第p子节点的第i个本地模型的可个性化层的梯度进行加权得到第p子节点的第i个联邦学习模型的可个性化层的模型参数
Figure BDA0003444124430000246
其中,/>
Figure BDA0003444124430000247
表示第p子节点与第k子节点的第i个本地模型的个性化层之间的相似度,/>
Figure BDA0003444124430000248
表示第k子节点的第i个本地模型的可个性化层的梯度。进而中心节点可以结合前述全局层的模型参数和可个性化层的模型参数,确定第p子节点的第i个联邦学习模型。
此外还可以理解的,多个子节点中的第二组子节点的第i个联邦学习模型的类型对应第二值时,前述第p子节点可以为第二组子节点中的任意一个。或者,记第二组子节点包括的子节点数量为P,在第二组子节点中,p取遍1至P中的任意一个正整数。其中,1≤P≤K。
综上所述,对于I次训练联邦学习模型的每次而言,训练得到多个子节点的联邦学习模型均可能满足如下三种结果中的一种。示例性的,以下三种结果以I次中第i次进行举例描述。
结果一:多个子节点的第i个联邦学习模型的类型均对应第一值;在该结果中,前述示例的第一组子节点包括的子节点数量U等于K;多个子节点的第i个联邦学习模型均相同。
结果二:多个子节点的第i个联邦学习模型的类型均对应第二值;在该结果中,前述示例的第二组子节点包括的子节点数量P等于K;多个子节点的第i个联邦学习模型均不相同。
结果三:多个子节点中第一组子节点的第i个联邦学习模型的类型均对应第一值,且第二组子节点的第i个联邦学习模型类型对应第二值;在该结果中,前述示例的第一组子节点包括的子节点数量U小于K,第二组子节点包括的子节点数量P小于K;K=U+P。所述第二组子节点中的各个子节点的第i个联邦学习模型均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型不同。当U大于1时,所述第一组子节点中的各个子节点的第i个联邦学习模型均相同。另外,对应前述示例中联邦学习模型划分全局层和可个性化层的方案,第i个联邦学习模型可以由第一部分参数信息(例如全局层的参数信息)和第二部分参数信息(如可个性化层参数)表示。所述多个子节点中每个子节点的第i个联邦学习模型的第一部分参数信息均相同。所述第二组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息不同。当U大于1时,所述第一组子节点中的各个子节点的第i个联邦学习模型均相同。
S24,中心节点向各个子节点发送用于指示对应的联邦学习模型的信息。
具体地,以前述I次中的第i次为例,中心节点可以发送第i个第二信息,所述第i个第二信息用于指示所述多个子节点中每个子节点的第i个联邦学习模型。例如,所述第i个第二信息包括用于指示所述各个子节点的第i个联邦学习模型的信息,其中,用于指示一个子节点的第i个联邦学习模型的信息,可以是该子节点的第i个联邦学习模型的参数信息。其中,一个子节点的联邦学习模型的参数信息可以包括该联邦学习模型的模型参数。或者,可以包括针对该子节点本次训练的联邦学习模型的参数信息与上一次训练联邦学习模型的参数信息之间的差值,该差值还可以描述为本次训练联邦学习模型的模型参数的梯度,简称本次训练联邦学习模型的梯度。1≤i≤I,i为正整数。
对应S23,在I次中任意一次,一个子节点的联邦学习模型的类型对应第一值或第二值联邦学习模型的类型对应第一值时,可以参照S23中(一)的描述理解该联邦学习模型的参数信息,联邦学习模型的类型对应第二值时,可以参照S23中(二)的描述理解该联邦学习模型的参数信息,本公开对此不再进行赘述。
其中,联邦学习模型的类型对应第一值时,中心节点发送用于该联邦学习模型的信息时,可以采用广播或者组播的方式;联邦学习模型的类型对应第二值时,中心节点发送用于该联邦学习模型的信息,可以采用单播的方式,将其发送至对应的子节点。以S23中描述的第i次训练多个子节点的联邦学习模型对应结果三进行举例,如下:
一种可选的方式中,不对联邦学习模型划分全局层和可个性化层,中心节点可按照以下步骤发送第i个第二信息:通过广播或组播的方式,向所述第一组子节点发送第一指示信息,所述第一指示信息用于指示所述第一组子节点中各个子节点的第i个联邦学习模型;通过单播的方式,向所述第二组子节点中的第p子节点发送第二指示信息,所述第二指示信息用于指示所述第p子节点的第i个联邦学习模型。
另一种可选的方式中,对联邦学习模型划分全局层和可个性化层,第i个联邦学习模型可以由第一部分参数信息(例如全局层的参数信息)和第二部分参数信息(如可个性化层参数)表示。中心节点可按照以下步骤发送第i个第二信息:通过广播或组播的方式,向所述多个子节点发送所述第i个联邦学习模型的第一部分参数信息;通过广播或组播的方式,向所述第一组子节点发送所述第一组子节点中各个子节点的第i个联邦学习模型的第二部分参数信息;通过单播的方式,向所述第二组子节点中第p子节点发送所述第p子节点的第i个联邦学习模型的第二部分参数信息,所述p取遍1至P中的任意一个正整数,所述P为所述第二组子节点中包括的子节点数量。
其中,中心节点通过广播或组播发送信息所用的资源可以是S501中心节点发送第二模型的资源,或者中心节点通过广播或组播发送信息所用的资源可以是由中心节点或联邦学习管理节点重新配置的资源。类似地,中心节点通过单播发送信息所用的资源可以是由中心节点或联邦学习管理节点配置的资源。广播或组播的资源与单播的资源可以不同,或者部分重叠,又或者相同,本公开对此不进行限制。
此外,中心节点还可以发送辅助信息,该辅助信息可以用于向各个子节点指示中心节点向各个子节点发送的联邦学习模型的类型对应第一值还是第二值。例如,第一值为1,第二值为0;或者,第一值为0,第二值为1;又或者第一值表示全局类型,第二值表示个性化类型。该辅助信息还可以包括用于辅助子节点进行本地模型训练的相关参数,如训练本地模型可用的损失函数等。
进一步地,对应S23理解,以第k子节点表示多个子节点中的任意一个子节点。对于i取值为1~I-1的正整数时,第k子节点获取到第i个联邦学习模型的参数信息,可以根据该第i个联邦学习模型的参数信息,确定第k子节点的第i+1个本地模型。或者可以理解i大于1时,第k子节点的第i-1个联邦学习模型的参数信息用于确定第k子节点的第i个本地模型。
可选的,i大于1时,第k子节点训练第i个本地模型时对应的损失函数除了与该第k子节点收集的本地数据有关之外,还可以由该第k子节点的第i-1个联邦学习模型的类型确定。
对于第k子节点的第i-1个联邦学习模型的类型对应第一值的情况,损失函数主要与第k子节点收集的本地数据集有关。例如第k子节点训练本地模型可应用MSE损失函数,记作
Figure BDA0003444124430000261
其中nk为第k子节点收集本地数据的样本数,yk,l为第l个样本的输出,/>
Figure BDA0003444124430000262
为第l个样本的标签。l为取遍1至nk的正整数。
对于第k子节点的第i-1个联邦学习模型的类型对应第二值的情况,第k子节点训练本地模型的损失函数一部分与其收集的本地数据有关,另一部分与训练后的本地模型的参数信息和第i-1个联邦学习模型的参数信息之间的差值有关,这个差值可以通过欧式距离、欧氏距离平方等参数体现。
示例性的,若第k子节点的第i-1个联邦学习模型的参数信息包括该模型的所有模型参数,则第k子节点的损失函数可以为
Figure BDA0003444124430000263
其中第一项/>
Figure BDA0003444124430000264
与本地数据有关,nk,yk,l,/>
Figure BDA0003444124430000265
l的定义可参照前述示例理解,本公开对此不再进行赘述。第二项/>
Figure BDA0003444124430000266
表示训练后的本地模型的模型参数和接收的第i-1个联邦学习模型的模型参数之间的欧式距离,/>
Figure BDA0003444124430000267
表示第i轮次训练后的本地模型的模型参数,/>
Figure BDA0003444124430000268
表示第i-1次接收到的第i-1个联邦学习模型的模型参数,参数μ为大于0的实数,用来调节第二项损失的比重,μ的取值可以由子节点决定,也可以由中心节点通过辅助信息指示给子节点。/>
示例性的,若第k子节点的第i-1个联邦学习模型的参数信息包括该模型的全局层的模型参数和可个性化层的模型参数,则第k子节点的损失函数可以为
Figure BDA0003444124430000269
Figure BDA00034441244300002610
其中第一项/>
Figure BDA00034441244300002611
与本地数据有关,nk,yk,l,/>
Figure BDA00034441244300002612
l的定义可参照前述示例理解,本公开对此不再进行赘述。第二项
Figure BDA00034441244300002613
表示训练后的本地模型的模型参数和接收的第i-1个联邦学习模型的模型参数之间的欧式距离,/>
Figure BDA00034441244300002614
示第i轮次训练后的本地模型的可个性化层的模型参数,/>
Figure BDA0003444124430000271
表示第i-1次接收到的第二模型的可个性化层的模型参数;参数μ的定义可参照前述示例理解,本公开对此不再进行赘述。
综上可以理解的是,S502中I的取值可以是预先配置的,或者I的取值是由模型收敛条件确定的,第k子节点对应的第I个联邦学习模型满足模型收敛条件,该模型收敛条件可以是第k子节点的第I个联邦学习模型的性能高于或等于预设性能阈值,或者第k子节点的第I个联邦学习模型与第k子节点的第I-1个联邦学习模型之间的差别小于第一阈值,或者第k子节点的第I个联邦学习模型、第k子节点的第I-1个联邦学习模型、以及第k子节点的第I-2个联邦学习模型之间的差别小于第一阈值,即模型之间的差异趋于稳定。
本公开提供的上述方案中,中心节点可以为各个子节点分别训练其对应的联邦学习模型,为数据分布与其他子节点差异较大的子节点提供个性化模型,有助于提升这些子节点本地模型的性能,从而能够提升联邦学习模型的性能。
下面以中心节点需要结合第k子节点的第i-1联邦学习模型的性能,确定该第k子节点的第i个联邦学习模型为例,对本公开中联邦学习模型的训练方式进一步进行详细说明。其中,这里i的取值可以是图5中示意2~I次中的任意一次,或者也可以是如S23描述的部分轮次中的一次。
参见图7示意一种通信方法,该方法包括如下流程。
S701,中心节点获取第i个第一信息。
具体地,可参照S22中的方案实施,本公开对此不再进行赘述。
S702,中心节点从第k子节点获取第一测试结果。
其中,第k子节点为多个子节点中的任意一个子节点。所述第一测试结果用于指示所述第k子节点的所述第i-1个联邦学习模型的性能,i大于1。
具体地,第k子节点可以测试第k子节点的第i-1个联邦学习模型的性能后,主动向中心节点发送第一测试结果。或者,第k子节点可以在中心节点的指示下,测试第i-1个联邦学习模型的性能。例如,中心节点向第k子节点发送测试信令;第k子节点可以根据该测试信令进行性能测试后,再向中心节点上报第一测试结果。其中,这里的测试信令用于指示第k子节点测试第k子节点的第i-1个联邦学习模型的性能。
具体地,第k子节点可以参照如下方式测试一个联邦学习模型的性能:第k子节点将本地数据作为输入数据,输入到待测试的联邦学习模型中,得到该联邦学习模型的输出即为测试结果,进而利用测试结果和本地数据的标签,计算该联邦学习模型的损失。损失越大表示第i-1个联邦学习模型的性能越差。
可选的,该第一测试结果可以包括如下至少一个参数:第i-1个联邦学习模型的类型;用于指示第i-1个联邦学习模型的损失是否大于损失阈值的信息,例如该信息可以为第一值或第二值,第一值指示损失大于损失阈值,表示损失大;第二值指示损失小于损失阈值,表示损失小;第i-1个联邦学习模型的损失。
此外可选的,第k子节点可以仅在第i-1个联邦学习模型的损失大时,在发送第一测试结果中包括第i-1个联邦学习模型的损失。在第i-1个联邦学习模型的损失小时,不在第一测试结果中包括第i-1个联邦学习模型的损失,但包括用于指示第i-1个联邦学习模型满足性能要求的信息;或者在第i-1个联邦学习模型的损失小时,不发送前述第一测试结果,此情况下中心节点未收到第一测试结果,则可默认第i-1个联邦学习模型的性能满足要求。当第k子节点未收到第一测试结果或者第一测试结果指示第i-1个联邦学习模型的损失小时,可以确定第i个联邦学习模型的类型与第i-1个联邦学习模型的类型保持一致。
具体地,中心节点可以向第k子节点发送测试信令,第k子节点根据该测试信令进行测试后,再向中心节点上报第一测试结果。下面进一步介绍一些中心节点发送测试信令的可选实施方式。
一种可选的实施方式中,中心节点可以周期性的向第k子节点发送测试信令,该测试信令用于指示第k子节点测试该第k子节点最近一次收到的联邦学习模型的性能。此外,该测试信令还可以包括损失阈值、损失函数类型。
其中,中心节点周期性发送测试信令,可以理解为:S23描述的部分轮次为周期性的,中心节点在这部分轮次中训练联邦学习模型之前发送测试信令,第i轮次可以是该部分轮次中的一次。基于此,中心节点从所述第k子节点获取第一测试结果,可以包括:中心节点在第i轮次向第k子节点发送测试信令,该测试信令可以用于指示第k子节点测试该第k子节点的第i-1个联邦学习模型的性能;第k子节点根据该测试信令,测试得到第i-1个联邦学习模型的性能;第k子节点向中心节点发送第一测试结果。
或者,中心节点周期性发送测试信令,可以理解为:配置中心节点向第k子节点发送信息的资源时,配置一个测试周期,第k子节点按照该测试周期测试收到的联邦学习模型的性能,包括对于第i-1个联邦学习模型的性能的测试操作。基于此,中心节点从所述第k子节点获取第一测试结果,可以包括:第k子节点在发送第i个本地模型的参数信息时,还要发送第一测试结果。
另一种可选的实施方式中,中心节点可以在第k子节点的触发下,向第k子节点发送测试信令,该测试信令用于指示第k子节点测试该第k子节点最近一次收到的联邦学习模型的性能。关于第k子节点测试联邦学习模型的性能的方式可参照前述实施方式理解,本公开对此不再进行赘述。此外,该测试信令还可以包括损失阈值、损失函数类型。
具体地,第k子节点可以是在确定第i-1个联邦学习模型的性能异常时,向中心节点上报用于指示性能异常的信息。其中,第k子节点可以将本地数据输入到第i-1个联邦学习模型,计算损失大于设定阈值时,确定第i-1个联邦学习模型的性能异常;或者,第k子节点可以结合环境信息或者其他干扰因素发现第i-1个联邦学习模型不适用时,可以确定第i-1个联邦学习模型的性能异常。示例性的,例如在定位问题中,子节点为终端设备。如果终端设备从一个环境移动到另一个环境中,这两个环境的信道信息差异很大,使用同样的联邦学习模型进行定位的结果会比较差,这种情况下终端设备发现定位的结果发生突变,则可以确定联邦学习模型的性能异常。
中心节点收到前述用于指示性能异常的信息,则在第i轮次向第k子节点发送测试信令,该测试信令可以用于指示第k子节点测试该第k子节点的第i-1个联邦学习模型的性能;第k子节点根据该测试信令,测试得到第i-1个联邦学习模型的性能;第k子节点向中心节点发送第一测试结果。
S703,中心节点根据所述第一测试结果,确定所述第k子节点的第i个联邦学习模型的类型。
首先,中心节点可以根据第一测试结果,确定第k子节点的第i个联邦学习模型的类型对应第一值还是第二值。
具体地,如果第一测试结果指示第k子节点的第i-1个联邦学习模型的性能差,则中心节点可以确定第k子节点的第i个联邦学习模型的类型与第i-1个联邦学习模型的类型不同;或者,如果第一测试结果指示第k子节点的第i-1个联邦学习模型的性能好,则中心节点可以确定第k子节点的第i个联邦学习模型的类型与第i-1个联邦学习模型的类型相同。此外,对于S702中一种情况假如第k子节点未上报第一测试结果,则中心节点可以默认第k子节点的第i个联邦学习模型的类型与第i-1个联邦学习模型的类型相同。
示例性的,参见图8A示意一种联邦学习模型类型的判断逻辑,第i-1个联邦学习模型的类型对应第一值时,如果第一测试结果指示损失小,即第i-1个联邦学习模型的性能好,则中心节点可以确定第i个联邦学习模型的类型对应第一值;或者如果第一测试结果指示损失大,即第i-1个联邦学习模型的性能差,则中心节点可以确定第i个联邦学习模型的类型对应第二值。
示例性的,参见图8B示意一种联邦学习模型类型的判断逻辑,第i-1个联邦学习模型的类型对应第二值时,如果第一测试结果指示损失小,即第i-1个联邦学习模型的性能好,则中心节点可以确定第i个联邦学习模型的类型对应第二值;或者如果第一测试结果指示损失大,即第i-1个联邦学习模型的性能差,则中心节点可以确定第i个联邦学习模型的类型对应第一值。
可以理解的是上述方式中,中心节点在确定任意一个子节点的i-1个联邦学习模型的性能差时,均可以对这样的子节点的第i个联邦学习模型的类型进行调整。此外,作为另一种可选的实施方式,也可以规定调整的子节点个数阈值。如果i-1个联邦学习模型的性能差的子节点个数超出该阈值时,可以优先针对该阈值以内损失较大的子节点,将第i个联邦学习模型的类型调整至与其第i-1个联邦学习模型的类型不相同。
S704,中心节点可以根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定所述第k子节点的第i个联邦学习模型。
具体地,可以参照S23中描述的方案实施,本公开对此不再进行赘述。
S705,中心节点发送第i个第二信息。
该步骤可参照S24中描述的方案理解,本公开对此不再进行赘述。
参见图9示意一种通信方法,该方法可以应用于第k子节点的第i-1个联邦学习模型的类型对应第二值的情况。该方法包括如下流程。
S901,中心节点获取第i个第一信息。
具体地,可参照S22中的方案实施,本公开对此不再进行赘述。
S902,中心节点向第k子节点发送用于指示第一模型的信息。
其中,所述第一模型由第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重确定;其中,所述i大于1。具体地,对于第k子节点为多个子节点中的任意一个子节点而言,如果中心节点在第i-1轮次中针对多个子节点中至少两个子节点训练的第i-1个联邦学习模型的类型对应第一值,那么中心节点在S902中发送的可以是该至少两个子节点的第i-1个联邦学习模型的参数信息。或者,中心节点可以根据获取的第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重,确定S902中发送第一模型的参数信息。其中,所述第i-1个第一信息包括多个子节点中每个子节点的第i-1个本地模型的参数信息。
S903,中心节点从第k子节点获取第二测试结果。
其中,所述第二测试结果用于指示所述第一模型的性能;或者,所述第二测试结果用于指示所述第一模型的性能和所述第k子节点的所述第i-1个联邦学习模型的性能;或者,第二测试结果用于指示第k子节点的所述第i-1个联邦学习模型的性能。
具体地,第k子节点可以测试S902中第一模型的性能和/或第k子节点的第i-1个联邦学习模型的性能后,主动向中心节点发送第二测试结果。或者,第k子节点可以在中心节点的指示下,进行性能测试。例如,中心节点向第k子节点发送测试信令;第k子节点可以根据该测试信令进行性能测试后,再向中心节点上报第二测试结果。其中,这里的测试信令用于指示第k子节点测试S902中第一模型的性能和/或第k子节点的第i-1个联邦学习模型的性能。中心节点发送测试信令相关的可选实施方式可参照S702执行,本公开对此不再进行赘述。
具体地,可参照S702中描述的方案,理解第k子节点测试第一模型或者第i-1个联邦模型的性能,本公开对此不再进行赘述。下面对第二测试结果包括的信息进行举例说明。
第一种方式中,第k子节点自行决策或者按照中心节点的测试信令,对第一模型的性能以及第i-1个联邦学习模型的性能进行测试。
示例性的,第k子节点可以测试第一模型的性能以及第i-1个联邦学习模型的性能,即计算第一模型的损失和第i-1个联邦学习模型的损失。然后第k子节点在第二测试结果中包括如下至少一种信息:第一模型的损失和第i-1个联邦学习模型的损失;第三指示信息,该第三指示信息用于指示第一模型的损失大于第i-1个联邦学习模型的损失,或者该第三指示信息用于指示第一模型的损失小于第i-1个联邦学习模型的损失;第四指示信息,该第四指示信息用于指示损失较大或者损失较小的模型类型,以及第一模型的损失和第i-1个联邦学习模型的损失之间的差值。
示例性的,参见图10A,第k子节点可以计算第一模型的损失和第i-1个联邦学习模型的损失之后,判断第i-1个联邦学习模型的损失是否大于第一模型的损失;如果是,第k子节点可以在第二测试结果中包括第五指示信息,该第五指示信息可以指示第一模型的性能比第i-1个联邦学习模型的性能好,隐含的指示第i个联邦学习模型的类型对应第一值。如果否,第k子节点继续判断第一模型的损失是否大于损失阈值,当第一模型的损失大于损失阈值时,第k子节点可以在第二测试结果中包括第六指示信息,该第六指示信息可以指示第i-1个联邦学习模型的性能比第一模型的性能好,隐含的指示第i个联邦学习模型的类型与第i-1个联邦学习模型的类型相同。当第一模型的损失小于或者等于设定阈值时,第k子节点可以在第二测试结果中包括第七指示信息,该第七指示信息可以指示第i-1个联邦学习模型比第一模型的性能好,但第一模型的损失小于或者等于损失阈值,第七指示信息可以隐含的指示第i个联邦学习模型的类型可以对应第一值也可以对应第二值。
示例性的,参见图10B,第k子节点可以先计算第i-1个联邦学习模型的损失,判断第i-1个联邦学习模型的损失是否大于损失阈值;如果是,第k子节点可以在第二测试结果中包括第八指示信息,该第八指示信息可以指示第i-1个联邦学习模型的损失大于损失阈值,隐含的指示第i个联邦学习模型的类型对应第一值。如果否,第k子节点继续计算第一模型的损失,并判断第i-1个联邦学习模型的损失是否大于第一模型的损失:如果是,第k子节点可以在第二测试结果中包括第五指示信息,该第五指示信息可以指示第一模型的性能比第i-1个联邦学习模型的性能好,隐含的指示第i个联邦学习模型的类型对应第一值。如果否,第k子节点可以在第二测试结果中包括第六指示信息,该第六指示信息可以指示第i-1个联邦学习模型的性能比第一模型的性能好,隐含的指示第i个联邦学习模型的类型与第i-1个联邦学习模型的类型相同。
此外可选的,对于图10B示意的流程来说,中心节点可以只在第i-1个联邦学习模型的损失小于或者等于损失阈值的情况下,发送第一模型。例如,中心节点可以在执行S901之后先执行S903获取第二测试结果,如果中心节点获取到的第二测试结果包括第八指示信息,则可以不发送第一模型即中心节点在执行S901和S903之后,直接执行S904~S906。又如,中心节点可以在执行S901之后且可以先获取第三测试结果,该第三测试结果指示第i-1个联邦学习模型的损失小于或者等于损失阈值,则中心节点可以根据该第三测试结果执行S902~S906。这样的设计可以减少中心节点发送第一模型的信令开销。
第二种方式中,第k子节点自行决策或者按照中心节点的测试信令,只对第一模型的性能进行测试。在该方式中,第二测试结果可以用于指示第一模型的性能。例如,第二测试结果可以包括第一模型的损失,或者用于指示第一模型的损失是否大于损失阈值的信息,其中该信息可以为第三值或第四值,第三值指示损失大于损失阈值,表示损失大,隐含的指示第i个联邦学习模型的类型与第i-1个联邦学习模型的类型相同;第四值指示损失小于或者等于损失阈值,表示损失小,隐含的指示第i个联邦学习模型的类型对应第一值。
第三种方式中,第k子节点自行决策或者按照中心节点的测试信令,只对第i-1个联邦学习模型的性能进行测试。在该方式中,第二测试结果可以用于指示第i-1个联邦学习模型的性能。例如,第二测试结果可以包括第i-1个联邦学习模型的损失,或者用于指示第i-1个联邦学习模型的损失是否大于损失阈值的信息,其中该信息可以为第五值或第六值,第五值指示损失大于损失阈值,表示损失大,隐含的指示第i个联邦学习模型的类型对应第一值;第六值指示损失小于或者等于损失阈值,表示损失小,隐含的指示第i个联邦学习模型的类型与第i-1个联邦学习模型的类型相同。
S904,中心节点根据所述第二测试结果,确定所述第k子节点的第i个联邦学习模型的类型。
具体地,中心节点可以根据第二测试结果,确定第k子节点的第i个联邦学习模型的类型对应第一值还是第二值。
例如对应S903的第一种方式:
第二测试结果包括第一模型的损失和第i-1个联邦学习模型的损失时,中心节点可以确定其中损失小的模型的类型为第i个联邦学习模型的类型。或者,第二测试结果包括第三指示信息时,第k子节点的第i个联邦学习模型的类型对应第二值。或者,第二测试结果包括第四指示信息时,差值大于设定的差值阈值时,确定损失较小的模型类型为第i个联邦学习模型的类型;或者,差值小于或者等于设定的差值阈值时,自行确定第i个联邦学习模型的类型对应第一值或者第二值。
第二测试结果包括第五指示信息时,第k子节点的第i个联邦学习模型的类型对应第一值;或者,第二测试结果包括第六指示信息时,第k子节点的第i个联邦学习模型的类型对应第二值;或者,第二测试结果包括第五指示信息时,自行确定第i个联邦学习模型的类型对应第一值或者第二值;或者,第二测试结果包括第六指示信息时,第k子节点的第i个联邦学习模型的类型对应第一值。
例如对应S903的第二种方式,中心节点根据第二测试结果判断第一模型的损失大于损失阈值时,确定第k子节点的第i个联邦学习模型的类型对应第二值;或者,判断第一模型的损失小于或者等于损失阈值时,确定第k子节点的第i个联邦学习模型的类型对应第一值。
例如对应S903的第三种方式,中心节点根据第二测试结果判断第i-1个联邦学习模型的损失大于损失阈值时,确定第k子节点的第i个联邦学习模型的类型对应第一值;或者,判断第i-1个联邦学习模型的损失小于或者等于损失阈值时,确定第k子节点的第i个联邦学习模型的类型对应第二值。
可以理解的是上述方式中,中心节点在确定任意一个子节点的第i-1个联邦学习模型的性能差时,均可以对这样的子节点的第i个联邦学习模型的类型进行调整。此外,作为另一种可选的实施方式,也可以规定调整的子节点个数阈值。如果第i-1个联邦学习模型的性能差的子节点个数超出该阈值时,可以优先针对该阈值以内损失较大的子节点,将第i个联邦学习模型的类型调整至与其第i-1个联邦学习模型的类型不相同。
S905,中心节点可以根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定所述第k子节点的第i个联邦学习模型。
具体地,可以参照S23中描述的方案实施,本公开对此不再进行赘述。
S906,中心节点发送第i个第二信息。
该步骤可参照S24中描述的方案理解,本公开对此不再进行赘述。
上述图7或图9的方案,结合历史训练的全局模型和/或个性化模型的性能,确定本次训练联邦学习模型的类型,进而根据联邦学习模型的类型进行相应的模型训练,能够提升模型的性能。
另外,本公开不对参与联邦学习的多个子节点进行限制,多个子节点可以是固定数量的子节点,也可以是动态变化,如在I次训练的过程中,允许新的子节点参与联邦学习。
参见图11示意一种通信方法,该方法包括如下流程。
S1101,新的子节点向中心节点发送第三信息,所述第三信息用于请求参与联邦学习。
S1102,中心节点为新的子节点发送资源配置信息。
其中,所述资源配置信息用于配置中心节点发送第三模型所用的资源。其中,第三模型可以理解为根据参与联邦学习的已有子节点的本地模型,最近一次训练得到的类型对应第一值的联邦学习模型。可选的,所述资源配置信息还用于为新的子节点配置该新的子节点发送本地模型的参数信息所用的资源。
或者,也可以由联邦学习管理节点配置中心节点向新的子节点发送第三模型所用的资源以及新的子节点发送本地模型的参数信息所用的资源。
S1103,中心节点向新的子节点发送用于指示第三模型的信息。
具体地,中心节点可以根据S1102的资源配置信息,通过广播或组播的方式向新的子节点发送第三模型的参数信息。第三模型的参数信息可以参照S501理解,本公开对此不再进行赘述。
此外,中心节点也可以同时指示新的子节点对前述第三模型进行性能测试。
S1104,新的子节点向中心节点发送第四测试结果,该第四测试结果用于指示第三模型的性能。
新的子节点可参照S702中的方案测试第三模型的性能,本公开对此不再进行赘述。第四测试结果包括第三模型的损失;或者,用于指示第三模型的损失是否大于损失阈值的信息。
S1105,中心节点根据第四测试结果,向新的子节点发送第四信息。
一种方式中,中心节点根据第四测试结果判断第三模型的损失大于损失阈值时,可以确定新的子节点适合的联邦学习模型的类型对应第二值,即新的子节点适合个性化类型的联邦学习模型。那么中心节点可以在第四信息中包括如下信息:用于指示新的子节点使用个性化类型的联邦学习模型的信息;以及该新的子节点训练本地模型的相关辅助信息,例如用于训练本地模型的初始化模型(即前述第二模型)的参数信息;当前训练本地模型的迭代次数;学习率;损失函数;批尺寸;上报本地模型的参数类型(模型参数或梯度)。
其中,当前训练本地模型的迭代次数由在新的子节点在接收到第四信息之前,其余已在参与联邦学习的子节点训练本地模型的迭代次数有关,例如前述I次训练联邦学习模型中每一轮次,对应子节点训练本地模型的迭代次数为20次,若在新的子节点在接收到第四信息之前已经进行了4个轮次联邦学习模型的训练,那么该新的子节点当前训练本地模型的迭代次数为80次。
另一种方式中,中心节点根据第四测试结果判断第三模型的损失小于或者等于损失阈值时,可以确定新的子节点适合的联邦学习模型的类型对应第一值,即新的子节点适合全局型的联邦学习模型。那么中心节点可以在第四信息中包括如下信息:以及该新的子节点基于第三模型训练本地模型的相关辅助信息,例如在训练联邦学习模型的每轮次中训练本地模型的迭代次数;学习率;损失函数;批尺寸;上报本地模型的参数类型(模型参数或梯度)。
此外,后续中心节点向新的子节点发送个性化模型采用单播方式下发,单播资源可以由中心节点或联邦学习管理节点配置;前述一种方式中新的子节点训练本地模型的相关辅助信息还可以包括配置的单播资源。或者,中心节点向新的子节点发送全局模型采用广播或组播下发,广播资源或者组播资源可以是S1103中分配的资源,也可以由中心节点或联邦学习管理节点重新配置。
S1106,新的子节点根据第四信息,进行本地模型的训练。
S1107,新的子节点向中心节点发送用于指示本地模型的信息。
该步骤可对应S21理解,本公开对此不再进行赘述。
此时可以认为新的子节点已成功参与到联邦学习中,后续的流程可以参照图5~图10B中一个或多个方案实施,本公开对此不再进行赘述。
上述图11的方案,支持新加入的子节点使用个性化类型的模型,可以避免联邦学习中新加入的子节点采用全局类型的模型性能表现较差的问题,能够提升模型性能。
基于同一构思,参见图12,本公开提供了一种通信装置1200,该通信装置1200包括处理模块1201和通信模块1202。该通信装置1200可以是第k子节点,也可以是应用于第k子节点或者和第k子节点匹配使用,能够实现第k子节点侧执行的通信方法的通信装置;或者,该通信装置1200可以是中心节点,也可以是应用于中心节点或者和中心节点匹配使用,能够实现中心节点侧执行的通信方法的通信装置。
其中,通信模块也可以称为收发模块、收发器、收发机、收发装置等。处理模块也可以称为处理器,处理单板,处理单元、处理装置等。可选的,可以将通信模块中用于实现接收功能的器件视为接收单元,应理解,通信模块用于执行上述方法实施例中第k子节点侧或中心节点侧的发送操作和接收操作,将通信模块中用于实现发送功能的器件视为发送单元,即通信模块包括接收单元和发送单元。
该通信装置1200应用于中心节点时,其通信模块1202包括的接收单元用于执行中心节点侧的接收操作,例如接收来自第k子节点的信息。其通信模块1202包括的发送单元用于执行中心节点侧的发送操作,例如向第k子节点发送信息。该通信装置1200应用于第k子节点时,其通信模块1202包括的接收单元用于执行第k子节点侧的接收操作,例如接收来自中心节点的信息;其通信模块1202包括的发送单元用于执行第k子节点侧的发送操作,例如向中心节点发送信息。该通信装置1200应用于中心节点时,其通信模块1202包括的接收单元用于执行中心节点侧的接收操作,例如接收来自中心节点的信息;其通信模块1202包括的发送单元用于执行中心节点侧的发送操作,例如向中心节点发送信息。
此外需要说明的是,若该装置采用芯片/芯片电路实现,所述通信模块可以是输入输出电路和/或通信接口,执行输入操作(对应前述接收操作)、输出操作(对应前述发送操作);处理模块为集成的处理器或者微处理器或者集成电路。
本公开中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本公开各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
基于相同的技术构思,本公开还提供了一种通信装置1300。该通信装置1300可以是芯片或者芯片系统。可选的,在本公开中芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
通信装置1300可用于实现图1A、图3A、图3B所示的通信系统中任一网元的功能。通信装置1300可以包括至少一个处理器1310,该处理器1310与存储器耦合,可选的,存储器可以位于该装置之内,存储器可以和处理器集成在一起,存储器也可以位于该装置之外。例如,通信装置1300还可以包括至少一个存储器1320。存储器1320保存实施上述任一实施例中必要计算机程序、配置信息、计算机程序或指令和/或数据;处理器1310可能执行存储器1320中存储的计算机程序,完成上述任一实施例中的方法。
通信装置1300中还可以包括通信接口1330,通信装置1300可以通过通信接口1330和其它设备进行信息交互。示例性的,所述通信接口1330可以是收发器、电路、总线、模块、管脚或其它类型的通信接口。当该通信装置1300为芯片类的装置或者电路时,该通信装置1300中的通信接口1330也可以是输入输出电路,可以输入信息(或称,接收信息)和输出信息(或称,发送信息),处理器为集成的处理器或者微处理器或者集成电路或则逻辑电路,处理器可以根据输入信息确定输出信息。
本公开中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器1310可能和存储器1320、通信接口1330协同操作。本公开中不限定上述处理器1310、存储器1320以及通信接口1330之间的具体连接介质。
可选的,参见图13,所述处理器1310、所述存储器1320以及所述通信接口1330之间通过总线1340相互连接。所述总线1340可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本公开中,处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本公开中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本公开所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
在本公开中,存储器可以是非易失性存储器,比如硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM)。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本公开中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
在一种可能的实施方式中,该通信装置1300可以应用于中心节点,具体通信装置1300可以是中心节点,也可以是能够支持中心节点,实现上述涉及的任一实施例中的中心节点的功能的装置。存储器1320保存实现上述任一实施例中的中心节点的功能的必要计算机程序、计算机程序或指令和/或数据。处理器1310可执行存储器1320存储的计算机程序,完成上述任一实施例中的中心节点执行的方法。应用于中心节点,该通信装置1300中的通信接口可用于与第k子节点进行交互,向第k子节点发送信息或者接收来自第k子节点的信息。
在另一种可能的实施方式中,该通信装置1300可以应用于第k子节点,具体通信装置1300可以是第k子节点,也可以是能够支持第k子节点,实现上述涉及的任一实施例中第k子节点的功能的装置。存储器1320保存实现上述任一实施例中的第k子节点的功能的必要计算机程序、计算机程序或指令和/或数据。处理器1310可执行存储器1320存储的计算机程序,完成上述任一实施例中第k子节点执行的方法。应用于第k子节点,该通信装置1300中的通信接口可用于与中心节点进行交互,向中心节点发送信息或者接收来自中心节点的信息。
由于本实施例提供的通信装置1300可应用于中心节点,完成上述中心节点执行的方法,或者应用于第k子节点,完成第k子节点执行的方法。因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
基于以上实施例,本公开还提供了一种计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机从中心节点侧或者第k子节点侧角度执行图5至图7、图8A和图8B、图9、图10A和图10B、图11所示的实施例中所提供的通信方法。
基于以上实施例,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被计算机执行时,使得计算机从中心节点侧或者第k子节点侧角度执行图5至图7、图8A和图8B、图9、图10A和图10B、图11所示的实施例中所提供的通信方法。其中,存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、只读存储器(read-only memory,ROM)、电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。
基于以上实施例,本公开提供了一种通信系统,包括中心节点和多个子节点,其中,所述中心节点和多个子节点中可以实现图5至图7、图8A和图8B、图9、图10A和图10B、图11所示的实施例中所提供的通信方法。
基于以上实施例,本公开还提供了一种芯片,所述芯片用于读取存储器中存储的计算机程序,从中心节点侧或者第k子节点侧角度实现图5至图7、图8A和图8B、图9、图10A和图10B、图11所示的实施例中所提供的通信方法。
基于以上实施例,本公开提供了一种芯片系统,该芯片系统包括处理器,用于支持计算机装置实现图5至图7、图8A和图8B、图9、图10A和图10B、图11所示的实施例中第k子节点或中心节点所涉及的功能。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器用于保存该计算机装置必要的程序和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
本公开提供的技术方案可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、第k子节点、中心节点或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机可以存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,DVD))、或者半导体介质等。
在本公开中,在无逻辑矛盾的前提下,各实施例之间可以相互引用,例如方法实施例之间的方法和/或术语可以相互引用,例如装置实施例之间的功能和/或术语可以相互引用,例如装置实施例和方法实施例之间的功能和/或术语可以相互引用。
显然,本领域的技术人员可以对本公开进行各种改动和变型而不脱离本公开的范围。这样,倘若本公开的这些修改和变型属于本公开权利要求及其等同技术的范围之内,则本公开也意图包含这些改动和变型在内。

Claims (20)

1.一种通信方法,其特征在于,包括:
获取第i个第一信息,所述第i个第一信息用于指示多个子节点中每个子节点的第i个本地模型,所述i为正整数;
根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定所述第k子节点的第i个联邦学习模型,所述k取遍1至K中的任意一个正整数,所述K为所述多个子节点的数量;其中,所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定;
发送第i个第二信息,所述第i个第二信息用于指示所述多个子节点中每个子节点的第i个联邦学习模型。
2.如权利要求1所述的方法,其特征在于,所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同或者不同。
3.如权利要求1或2所述的方法,其特征在于,还包括:
从所述第k子节点获取第一测试结果;所述第一测试结果用于指示所述第k子节点的所述第i-1个联邦学习模型的性能,所述i大于1;
根据所述第一测试结果,确定所述第k子节点的第i个联邦学习模型的类型。
4.如权利要求1或2所述的方法,其特征在于,还包括:
向所述第k个子节点发送用于指示第一模型的信息,所述第一模型由第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重确定;其中,所述i大于1;
从所述第k子节点获取第二测试结果;其中,所述第二测试结果用于指示所述第一模型的性能,或者,所述第二测试结果用于指示所述第一模型的性能和所述第k子节点的所述第i-1个联邦学习模型的性能;
根据所述第二测试结果,确定所述第k子节点的第i个联邦学习模型的类型。
5.如权利要求1-4任一项所述的方法,其特征在于,所述根据所述第i个第一信息和第k子节点的第i个联邦学习模型的类型,确定第k子节点的第i个联邦学习模型,包括:
当所述第k子节点的第i个联邦学习模型的类型对应第一值时,根据所述第i个第一信息、以及所述多个子节点中每个子节点的第i个本地模型对应的权重,确定所述第k子节点的第i个联邦学习模型;或者,
当所述第k子节点的第i个联邦学习模型的类型对应第二值时,根据所述第i个第一信息、以及所述第k子节点的第i个本地模型与所述多个子节点中每个子节点的第i个本地模型之间的相似度,确定所述第k子节点的第i个联邦学习模型。
6.如权利要求1-5任一项所述的方法,其特征在于,所述多个子节点由第一组子节点和第二组子节点构成,所述第一组子节点中的各个子节点的第i个联邦学习模型均相同,所述第二组子节点中的各个子节点的第i个联邦学习模型均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型不同;
所述发送第i个第二信息,包括:
通过广播或组播的方式,向所述第一组子节点发送第一指示信息,所述第一指示信息用于指示所述第一组子节点中各个子节点的第i个联邦学习模型;
通过单播的方式,向所述第二组子节点中的第p子节点发送第二指示信息,所述第二指示信息用于指示所述第p子节点的第i个联邦学习模型,所述p取遍1至P中的任意一个正整数,所述P为所述第二组子节点中包括的子节点数量。
7.如权利要求1-4任一项所述的方法,其特征在于,所述第i个联邦学习模型由第一部分参数信息和第二部分参数信息表示;所述多个子节点中每个子节点的第i个联邦学习模型的第一部分参数信息均相同;
所述多个子节点由第一组子节点和第二组子节点构成,所述第一组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息均相同,所述第二组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息均不相同、且与所述第一组子节点中的各个子节点的第i个联邦学习模型的第二部分参数信息不同;
所述发送第i个第二信息,包括:
通过广播或组播的方式,向所述多个子节点发送所述第i个联邦学习模型的第一部分参数信息;
通过广播或组播的方式,向所述第一组子节点发送所述第一组子节点中各个子节点的第i个联邦学习模型的第二部分参数信息;
通过单播的方式,向所述第二组子节点中第p子节点发送所述第p子节点的第i个联邦学习模型的第二部分参数信息,所述p取遍1至P中的任意一个正整数,所述P为所述第二组子节点中包括的子节点数量。
8.如权利要求1-6任一项所述的方法,其特征在于,还包括:
向所述多个子节点发送用于指示第二模型的信息,所述用于指示第二模型的信息用于所述多个子节点中每个子节点确定第1个本地模型子节点。
9.如权利要求1-7任一项所述的方法,其特征在于,1≤i≤I,I为正整数;所述第k子节点的第I个联邦学习模型满足模型收敛条件;其中,当i大于1时,所述第k子节点的第i个本地模型由所述第k子节点的第i-1个联邦学习模型确定。
10.一种通信方法,其特征在于,包括:
发送用于指示第k子节点的第i个本地模型的信息;其中,所述k取遍1至K中的任意一个正整数,所述K为参与联邦学习的多个子节点的数量,所述i为正整数;
获取用于指示所述第k子节点的第i个联邦学习模型的信息,所述第k子节点的第i个联邦学习模型由第i个第一信息和所述第k子节点的第i个联邦学习模型的类型确定;
其中,所述第i个第一信息由用于指示所述多个子节点中各个子节点的第i个本地模型的信息构成;所述i大于1时,所述第k子节点的第i个联邦学习模型的类型由所述第k子节点的第i-1个联邦学习模型的类型或性能确定。
11.如权利要求10所述的方法,其特征在于,所述第k子节点的第i个联邦学习模型与所述多个子节点中除所述第k子节点之外的至少一个子节点的第i个联邦学习模型相同或者不同。
12.如权利要求10或11所述的方法,其特征在于,还包括:
发送第一测试结果,所述第一测试结果用于指示所述第k子节点的所述第i-1个联邦学习模型的性能,所述i大于1;其中,所述第k子节点的第i个联邦学习模型的类型由所述第一测试结果确定。
13.如权利要求10或11所述的方法,其特征在于,还包括:
获取用于指示第一模型的信息,所述第一模型由第i-1个第一信息以及所述多个子节点中每个子节点的第i-1个本地模型对应的权重确定;其中,所述i大于1;
发送第二测试结果,所述第二测试结果用于指示所述第一模型的性能,或者,所述第二测试结果用于指示所述第一模型的性能和所述第k子节点的所述第i-1个联邦学习模型的性能;其中,所述第k子节点的第i个联邦学习模型的类型由所述第二测试结果确定。
14.如权利要求10-13任一项所述的方法,其特征在于,当所述第k子节点的第i个联邦学习模型的类型对应第一值时,所述第k子节点的第i个联邦学习模型由所述第i个第一信息、以及所述多个子节点中每个子节点的第i个本地模型对应的权重确定;或者,
当所述第k子节点的第i个联邦学习模型的类型对应第二值时,所述第k子节点的第i个联邦学习模型由所述第i个第一信息、以及所述第k子节点的第i个本地模型与所述多个子节点中每个子节点的第i个本地模型之间的相似度确定。
15.如权利要求10-14任一项所述的方法,其特征在于,还包括:
获取用于指示第二模型的信息;
根据所述用于指示第二模型的信息,确定所述第k子节点的第1个本地模型。
16.如权利要求10-15任一项所述的方法,其特征在于,1≤i≤I,I为正整数;所述第k子节点的第I个联邦学习模型满足模型收敛条件;其中,当i大于1时,所述第k子节点的第i个本地模型由所述第k子节点的第i-1个联邦学习模型确定。
17.一种通信装置,其特征在于,包括用于实现如权利要求1-9任一项所述的方法,或实现如10-16任一项所述的方法的模块或单元。
18.一种通信装置,其特征在于,包括:
处理器,所述处理器和存储器耦合,所述处理器用于执行所述存储器中的程序指令,以执行如权利要求1-9任一项所述的方法,或执行如权利要求10-16任一项所述的方法。
19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1-9任一项所述的方法或执行如权利要求10-16任一项所述的方法。
20.一种计算机程序产品,其特征在于,包括指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1-9任一项所述的方法或执行如权利要求10-16任一项所述的方法。
CN202111642343.4A 2021-12-29 2021-12-29 一种通信方法及装置 Pending CN116419257A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111642343.4A CN116419257A (zh) 2021-12-29 2021-12-29 一种通信方法及装置
PCT/CN2022/142804 WO2023125660A1 (zh) 2021-12-29 2022-12-28 一种通信方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111642343.4A CN116419257A (zh) 2021-12-29 2021-12-29 一种通信方法及装置

Publications (1)

Publication Number Publication Date
CN116419257A true CN116419257A (zh) 2023-07-11

Family

ID=86997987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111642343.4A Pending CN116419257A (zh) 2021-12-29 2021-12-29 一种通信方法及装置

Country Status (2)

Country Link
CN (1) CN116419257A (zh)
WO (1) WO2023125660A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117171628B (zh) * 2023-11-01 2024-03-26 之江实验室 异构联邦环境中的图结构数据节点分类方法和装置
CN118153666B (zh) * 2024-05-11 2024-07-12 山东第二医科大学 一种个性化联邦知识蒸馏模型构建方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112054863B (zh) * 2019-06-06 2021-12-21 华为技术有限公司 一种通信方法及装置
CN111310932A (zh) * 2020-02-10 2020-06-19 深圳前海微众银行股份有限公司 横向联邦学习系统优化方法、装置、设备及可读存储介质
CN113573331B (zh) * 2020-04-29 2023-09-01 华为技术有限公司 一种通信方法、装置及系统
CN113723620A (zh) * 2020-05-25 2021-11-30 株式会社日立制作所 无线联邦学习中的终端调度方法和装置
CN111898764A (zh) * 2020-06-23 2020-11-06 华为技术有限公司 联邦学习的方法、装置和芯片

Also Published As

Publication number Publication date
WO2023125660A1 (zh) 2023-07-06

Similar Documents

Publication Publication Date Title
Zhang et al. Trajectory optimization for UAV emergency communication with limited user equipment energy: A safe-DQN approach
US20230019669A1 (en) Systems and methods for enhanced feedback for cascaded federated machine learning
WO2023125660A1 (zh) 一种通信方法及装置
Huang et al. True-data testbed for 5G/B5G intelligent network
US11956031B2 (en) Communication of measurement results in coordinated multipoint
CN116940951A (zh) 通信系统中用于支持机器学习或人工智能技术的方法和装置
US20230342593A1 (en) Neural network training method and related apparatus
CN114219354A (zh) 一种基于联邦学习资源分配优化方法及系统
Bereyhi et al. Device scheduling in over-the-air federated learning via matching pursuit
CN115802370A (zh) 一种通信方法及装置
Elsayed et al. A deep reinforcement learning framework for data compression in uplink NOMA-SWIPT systems
WO2024008004A1 (zh) 一种通信方法及装置
WO2023006096A1 (zh) 一种通信方法及装置
WO2023024095A1 (en) Method and apparatus for power control and interference coordination
WO2023036323A1 (zh) 一种通信方法及装置
CN117639867A (zh) 一种通信方法及装置
WO2023039843A1 (en) Method and apparatus for beam management
CN117693021A (zh) 一种波束管理方法
WO2023283785A1 (zh) 信号处理的方法及接收机
WO2024046419A1 (zh) 一种通信方法及装置
WO2024131900A1 (zh) 一种通信的方法和通信装置
CN118118133A (zh) 一种通信方法及装置
WO2023147208A1 (en) Interference distribution compression and reconstruction
Stuwart et al. Artificial Intelligence-Empowered Mobile Healthcare: A Wireless Access Perspective
CN116709166A (zh) 一种通信方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication