CN116438546A - 模型蒸馏训练的方法及相关装置和设备、可读存储介质 - Google Patents

模型蒸馏训练的方法及相关装置和设备、可读存储介质 Download PDF

Info

Publication number
CN116438546A
CN116438546A CN202080106943.6A CN202080106943A CN116438546A CN 116438546 A CN116438546 A CN 116438546A CN 202080106943 A CN202080106943 A CN 202080106943A CN 116438546 A CN116438546 A CN 116438546A
Authority
CN
China
Prior art keywords
neural network
training
network model
information
distillation
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
CN202080106943.6A
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
Publication of CN116438546A publication Critical patent/CN116438546A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Feedback Control In General (AREA)

Abstract

一种模型蒸馏训练的方法,包括:第一设备蒸馏训练神经网络模型之前,要和第二设备建立蒸馏训练的通信连接,通过第一设备和第二设备之间蒸馏训练信息的交互,第二设备使用第一设备发送的第一配置信息,配置第一参考神经网络模型。第二设备配置好第一参考神经网络模型后,使用第一数据信息,将第一数据信息中的第一样本数据通过已配置好的第一参考神经网络模型进行运算处理后,得到第一指示信息,并发送给第一设备。第一设备使用第一指示信息训练其设计的第一神经网络模型。通过这种方式,实现了第二设备通过迁移“知识”来指导第一设备进行蒸馏训练。

Description

模型蒸馏训练的方法及相关装置和设备、可读存储介质 技术领域
本申请涉及模型蒸馏训练的技术领域,尤其涉及一种模型蒸馏训练的方法及相关装置和设备、可读存储介质。
背景技术
在信息技术中,中心网元和边缘网元是网络中常见的一种应用场景,例如,在无线场景下,无线接入网(Radio Access Network,RAN)可作为中心网元,用户设备(User Equipment,UE)可作为边缘网元。类似的,在3GPP中,引入标准化网络数据分析功能(Network Data Analytics Function,NWDAF),也有中心NWDAF和边缘NWDAF的部署场景。中心网元可向边缘网元发送训练好的神经网络模型。图1是中心网元和边缘网元部署神经网络示意图,如图1所示,由于中心网元具有强大的计算能力以及存储有大量的数据资源,因此中心网元通常针对全类别的场景部署大的神经网络(大网络),并训练所述神经网络。边缘网元存储资源和计算资源受限,且边缘网元通常只关注几个特定的类别,因此边缘网元通常部署小的神经网络(小网络)。
目前,边缘网元部署神经网络的方式主要有两种:一种方式是,中心网元直接将大网络下发给边缘网元,边缘网元部署所述大网络。由于边缘网元的存储资源和计算资源受限,边缘网元通过这种方式部署神经网络,会占用边缘网元受限的存储资源。另一种方式是,中心网元做网络模型蒸馏,得到统一的小网络,并将小网络下发给边缘网元,边缘网元部署所述小网络。由于中心网元不知道每个边缘网元的存储资源、计算能力以及边缘网元关注的类别,因此,无法蒸馏得到适配每个边缘网元的小网络模型。中心网元统一蒸馏训练得到的小网络模型与边缘网元的不适配所带来的问题为:所述小网络模型所支持的类别为全类别,而边缘网元所关注的类别只有特定几个,当所述全类别的小网络模型要求的计算能力以及存储资源超出边缘网元的能力时,所述小网络模型会占用边缘网元的存储空间和运行空间,影响边缘网元完成其他工作,进而降低边缘网元的工作性能;另外,由于边缘网元的计算能力以及存储资源有限,边缘网元可能无法完全运行所述全类别的小网络模型,使得小网络模型执行如人像识别、流量识别等功能时,完成度和精准度不高。
发明内容
本申请提供了一种模型蒸馏训练的方法,解决了边缘网元部署中心网元下发的大网络而占用其受限的存储资源的问题,也解决了边缘网元部署中心网元下发的统一蒸馏训练而得到的小网络与边缘网元不适配的问题。
第一方面,本申请实施例提供了一种模型蒸馏训练的方法,包括:
若第二设备支持第一设备蒸馏训练神经网络模型,所述第一设备设计第一神经网络模型;
所述第一设备向所述第二设备发送第一配置信息;其中,所述第一配置信息用于所述 第二设备配置所述第一参考神经网络模型;
所述第一设备向所述第二设备发送第一数据信息;其中,所述第一数据信息包括所述第一参考神经网络模型用于蒸馏训练的第一样本数据;
所述第一设备接收所述第二设备返回的第一指示信息,并使用所述第一指示信息训练所述第一神经网络模型;所述第一指示信息为所述第一样本数据输入到所述第一参考神经网络模型得到的信息。
本申请实施例,第一设备设计第一神经网络模型,以及向第二设备发送第一配置信息和第一数据信息,使得第一设备可对第一神经网络模型进行个性化地设计和训练,实现第一神经网络模型大小和第一神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的、统一蒸馏训练得到的小网络而与第一设备不适配的问题。也就是说,可以解决现有技术中由中心网元统一蒸馏训练得到的小神经网络模型与边缘网元的不适配所带来的问题,包括:所述小神经网络模型所支持的类别为全类别,而边缘网元所关注的类别只有特定几个,当所述全类别的小神经网络模型要求的计算能力以及存储资源超出边缘网元的能力时,所述小神经网络模型会占用边缘网元的存储空间和运行空间,影响边缘网元完成其他工作,进而降低边缘网元的工作性能的技术问题;另外,由于边缘网元的计算能力以及存储资源有限,边缘网元可能无法完全运行所述全类别的小神经网络模型,使得小神经网络模型执行如人像识别、流量识别等功能时,完成度和精准度不高的技术问题。
在一种可能的实现方式中,所述第一设备设计第一神经网络模型之前,还包括:
所述第一设备向所述第二设备发送第一训练请求;其中,所述第一训练请求包括第一训练类型ID,所述第一训练类型ID用于指示所述第一设备待蒸馏训练的神经网络模型的功能类型;
若第二训练类型ID与所述第一训练类型ID一致,所述第一设备接收所述第二设备发送的第一响应;其中,所述第一响应包括第一存储信息;所述第一存储信息用于指示所述第一参考神经网络模型所占存储空间的大小;所述第二训练类型ID用于指示所述第二设备支持蒸馏训练的神经网络模型的功能类型;
所述第一设备基于所述第一存储信息向所述第二设备发送第一询问信息;其中,所述第一询问信息包括第一蒸馏询问信息和第一蒸馏能力信息;所述第一蒸馏询问信息用于所述第一设备询问所述第二设备是否支持蒸馏训练神经网络模型以及在支持所述第一设备蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式;所述第一蒸馏能力信息包括所述第一设备对神经网络模型的设计能力、对神经网络模型的蒸馏训练能力、是否存在蒸馏训练数据中的一项或多项;
所述第一设备接收所述第二设备的第二响应;其中,所述第二响应用于指示所述第二设备是否支持所述第一设备蒸馏训练神经网络模型以及在支持所述第一设备蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式。
本申请实施例,第一设备向第二设备发送第一训练请求,第二设备根据第一训练请求向第一设备提供相应的参考神经网络模型,有利于第一设备设计第一神经网络模型。进而, 实现了第一神经网络模型大小和第一神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第一设备向所述第二设备发送第一配置信息之前,还包括:
所述第一设备向所述第二设备发送第一关注类别列表;其中,所述第一关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第一关注类别列表中第一设备蒸馏训练所关注类别的集合为第一类别列表中类别集合的子集;所述第一类别列表包括所述第一参考神经网络模型预设类别的集合。
本申请实施例,第一设备向第二设备发送第一关注类别列表,有利于第二设备基于第一设备发送的第一数据信息获取蒸馏训练的数据后,根据所述第一关注类别列表中类别对蒸馏训练后获取的数据进行筛选,得到第一指示信息,所述第一指示信息与所述第一关注类别列表中类别相对应,有利于第一设备基于所述第一指示信息蒸馏训练出适配的第一神经网络模型,也在不影响第一神经网络模型训练效果下进一步减少了通信开销,节省了分离式蒸馏训练的网络资源。
在一种可能的实现方式中,所述第一指示信息为所述第二设备将所述第一样本数据通过所述第一参考神经网络模型计算处理,并将处理后的第一样本数据基于所述第一关注类别列表进行筛选所得到的。
本申请实施例,第二设备根据所述第一关注类别列表中类别对蒸馏训练后获取的数据进行筛选,得到第一指示信息,所述第一指示信息与所述第一关注类别列表中类别相对应,有利于第一设备基于所述第一指示信息蒸馏训练出适配的第一神经网络模型,也在不影响第一神经网络模型训练效果下进一步减少了通信开销,节省了分离式蒸馏训练的网络资源。
在一种可能的实现方式中,所述第一设备设计第一神经网络模型,包括:
所述第一设备向所述第二设备发送第一网络结构请求;其中,所述第一网络结构请求用于所述第一设备向所述第二设备获取所述第一参考神经网络模型的结构信息;
所述第一设备接收所述第二设备发送的第一结构请求响应;其中,所述第一结构请求响应包括所述第一参考神经网络模型的结构信息;
所述第一设备基于所述第一参考神经网络模型的结构信息设计第一神经网络模型。
本申请实施例,第一设备向第二设备发送第一网络结构请求后,接收第二设备发送的第一结构请求响应,获取了第一参考神经网络模型的结构信息。有利于第一设备根据所述第一参考神经网络模型的结构信息设计第一神经网络模型,实现了第一神经网络模型大小和第一神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第一设备向所述第二设备发送第一数据信息之后,还包括:
所述第一设备向所述第二设备发送第一训练结果通知;其中,所述第一训练结果通知包括所述第一设备蒸馏训练第一神经网络模型的完成度信息、蒸馏训练的所述第一神经网络模型的反馈信息。
本申请实施例,第一设备向第二设备发送第一训练结果通知,所述第一训练结果通知用于告知第二设备第一神经网络模型是否训练完成以及向第二设备反馈对训练的第一神经网络模型的信息。第二设备根据第一训练结果通知判断是否释放第一设备与第二设备之间的蒸馏训练的通信资源,避免占用第一设备与第二设备的其它信道资源。
第二方面,本申请实施例提供了一种模型蒸馏训练的方法,包括:
第二设备接收第一设备发送的第一配置信息,并使用所述第一配置信息配置第一参考神经网络模型;
所述第二设备接收所述第一设备发送的第一数据信息;其中,所述第一数据信息包括所述第一参考神经网络模型用于蒸馏训练的第一样本数据;
所述第二设备向所述第一设备发送第一指示信息;其中所述第一指示信息用于所述第一设备训练第一神经网络模型;所述第一指示信息为所述第一样本数据输入到所述第一参考神经网络模型得到的信息。
本申请实施例,第二设备接收第一设备发送的第一配置信息和第一数据信息,有利于第二设备基于第一设备发送的第一配置信息和第一数据信息获得第一指示信息,以便第一设备使用第一指示信息训练第一神经网络模型。从而实现了第一神经网络模型大小和第一神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二设备接收第一设备发送的第一配置信息,使用所述第一配置信息配置第一参考神经网络模型之前,还包括:
所述第二设备接收所述第一设备发送的第一训练请求;其中,所述第一训练请求包括第一训练类型ID,所述第一训练类型ID用于指示第一设备待蒸馏训练的神经网络模型的功能类型;
若第二训练类型ID与所述第一训练类型ID一致,所述第二设备基于所述第一训练请求,生成第一响应,并将所述第一响应发送给所述第一设备;其中,所述第二训练类型ID用于指示所述第二设备支持蒸馏训练神经网络模型的功能类型;所述第一响应包括第一存储信息;所述第一存储信息用于指示所述第一参考神经网络模型所占存储空间的大小;
所述第二设备接收所述第一设备发送的第一询问信息;其中,所述第一询问信息包括第一蒸馏询问信息和第一蒸馏能力信息;所述第一蒸馏询问信息用于所述第一设备询问所述第二设备是否支持蒸馏训练神经网络模型以及在支持所述第一设备蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式;所述第一蒸馏能力信息包括所述第一设 备对神经网络模型的设计能力、对神经网络模型的蒸馏训练能力、是否存在蒸馏训练数据中的一项或多项;
所述第二设备基于所述第一蒸馏询问信息生成第二响应,并将所述第二响应发送给所述第一设备;其中,所述第二响应用于指示所述第二设备是否支持所述第一设备蒸馏训练神经网络模型以及在支持所述第一设备蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式。
本申请实施例,第二设备接收第一设备发送的第一训练请求和第一询问信息,并向第一设备发送对应的响应,有利于第一设备进行第一神经网络模型的设计。进而,实现了第一神经网络模型大小和第一神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二设备接收所述第一设备发送的第一配置信息之前,还包括:
所述第二设备接收所述第一设备发送的第一关注类别列表;其中,所述第一关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第一关注类别列表中,所述第一设备蒸馏训练所关注类别的集合为第一类别列表中类别集合的子集;所述第一类别列表包括所述第一参考神经网络模型预设类别的集合。
本申请实施例,第二设备接收第一设备发送的第一关注类别列表,有利于第二设备基于所述第一关注类别列表获得第一指示信息,所述第一指示信息包括与第一设备关注类别相关的指示信息,第一设备使用第一指示信息训练第一神经网络模型,训练完成后的第一神经网络模型为与所述第一设备相适配的神经网络模型,实现第一神经网络模型大小和第一神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的、统一蒸馏训练得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第一指示信息为所述第二设备将所述第一样本数据通过所述第一参考神经网络模型计算处理,并将处理后的第一样本数据基于所述第一关注类别列表进行筛选所得到的。
本申请实施例,第二设备基于所述第一关注类别列表所得到的第一指示信息发送给第一设备,有利于第一设备基于所述第一指示信息得到更加适配的第一神经网络模型,进而解决第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二设备接收所述第一设备发送的第一配置信息之前,还包括:
所述第二设备接收所述第一设备发送的第一网络结构请求;其中,所述第一网络结构请求用于所述第一设备向所述第二设备获取所述第一参考神经网络模型的结构信息;
所述第二设备基于所述第一网络结构请求向所述第一设备发送第一结构请求响应;其中,所述第一结构请求响应包括所述第一参考神经网络模型的结构信息。
本申请实施例,第二设备向第一设备发送第一参考神经网络模型的结构信息,有利于第一网络根据所述第一参考神经网络模型的结构信息设计第一神经网络模型,实现了第一神经网络模型大小和第一神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二设备接收所述第一设备发送的第一数据信息之后,还包括:
所述第二设备接收所述第一设备发送的第一训练结果通知;其中,所述第一训练结果通知包括所述第一设备蒸馏训练第一神经网络模型的完成度信息、蒸馏训练的所述第一神经网络模型的反馈信息。
本申请实施例,第二设备接收第一结果通知,有利于第二设备根据第一训练结果通知判断是否释放第一设备与第二设备之间的蒸馏训练通信资源,避免占用第一设备与第二设备的其它信道资源。
第三方面,本申请实施例提供了一种模型蒸馏训练的方法,包括:
第三设备接收第二设备发送的注册信息;其中,所述注册信息包括第三训练类型ID、第三神经网络模型ID、第二存储信息、第二类别列表、训练响应信息;所述训练响应信息用于指示所述第二设备是否支持蒸馏训练神经网络模型以及在支持蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式;所述第三训练类型ID用于指示所述第二设备支持蒸馏训练神经网络模型的功能类型;
所述第三设备接收所述第一设备发送的第二训练请求;其中,所述第二训练请求包括第四训练类型ID、第二蒸馏询问信息和第二蒸馏能力信息;所述第四训练类型ID用于指示所述第一设备待蒸馏训练神经网络模型的功能类型;
若第四训练类型ID与所述第三训练类型ID一致,所述第三设备基于所述第二训练请求生成第三响应,并将所述第三响应发送给所述第一设备;其中,所述第三响应包括训练响应信息、第三神经网络模型ID、第二存储信息和第二类别列表;
所述第三设备接收所述第一设备发送的蒸馏通知;其中,所述蒸馏结果通知用于指示所述第一设备与所述第二设备是否匹配成功。
本申请实施例,第三设备接收第二设备发送的注册信息以及第三设备接收第一设备发送的第二训练请求,有利于第三设备通过分析所述注册信息与所述第二训练请求,为第一设备和第二设备建立蒸馏训练通信连接,进而实现第二神经网络模型大小和第二神经网络模型精度的平衡,从而提高蒸馏训练效率。
第四方面,本申请实施例提供了一种模型蒸馏训练的方法,包括:
第一设备向第三设备发送第二训练请求;其中,所述第二训练请求包括第四训练类型 ID、第二蒸馏询问信息和第二蒸馏能力信息;其中,所述第四训练类型ID用于指示第一设备待蒸馏训练的神经网络模型的功能类型;
若所述第四训练类型ID与所述第三训练类型ID一致,所述第一设备接收所述第三设备发送的第三响应;其中,所述第三响应包括训练响应信息、第三神经网络模型ID、第二存储信息和第二类别列表;所述第三训练类型ID用于指示所述第二设备支持蒸馏训练神经网络模型的功能类型;
所述第一设备向所述第三设备发送蒸馏通知;其中,所述蒸馏结果通知用于指示所述第一设备与所述第二设备是否匹配成功。
本申请实施例,第一设备向第三设备发送第二训练请求,第三设备基于所述第二训练请求向第一设备发送第三响应,有利于第三设备为第一设备和第二设备建立蒸馏训练通信连接,从而提高蒸馏训练效率。
在一种可能的实现方式中,所述第一设备向所述第三设备发送蒸馏通知之后,还包括:
所述第一设备设计第二神经网络模型;
所述第一设备向第二设备发送第二配置信息;其中,所述第二配置信息用于所述第二设备配置所述第二参考神经网络模型;
所述第一设备向所述第二设备发送第二数据信息;其中,所述第二数据信息包括所述第二参考神经网络模型用于蒸馏训练的第二样本数据;
所述第一设备接收所述第二设备返回的第二指示信息,并使用所述第二指示信息训练所述第二神经网络模型;所述第二指示信息为所述第二样本数据输入到所述第二参考神经网络模型得到的信息。
本申请实施例,第一设备和第二设备建立蒸馏训练通信连接之后,第一设备设计第二神经网络模型,第一设备和第二设备进行第二配置信息和第二数据信息的发送、接收的这种蒸馏训练通信过程。有利于第二设备获取与第一设备相适配的第二指示信息,从而有利于第一设备使用第二指示信息训练出与其相适配的第二神经网络模型。
在一种可能的实现方式中,所述第一设备向第二设备发送第二配置信息之前,还包括:
所述第一设备向所述第二设备发送第二关注类别列表;其中,所述第二关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第二关注类别列表中,第一设备蒸馏训练所关注类别的集合为第二类别列表中类别集合的子集;所述第二类别列表包括所述第二参考神经网络模型预设类别的集合。
本申请实施例,第一设备向第二设备发送第二关注类别列表,有利于第二设备基于所述第二关注类别列表获得第二指示信息,所述第二指示信息与第二关注类别列表中的类别相对应,第一设备使用第二指示信息训练第二神经网络模型,可以得到与所述第一设备相适配的神经网络模型,实现第二神经网络模型大小和第二神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的、统一蒸馏训练得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二指示信息为所述第二设备将所述第二样本数据通过所述第二参考神经网络模型计算处理,并将处理后的第二样本数据基于所述第二关注类别列表进行筛选所得到的。
本申请实施例,第二设备基于所述第二关注类别列表获得第二指示信息,所述第二指示信息与第二关注类别列表中的类别相对应,第一设备使用第二指示信息训练第二神经网络模型,可以得到与所述第一设备相适配的神经网络模型,实现第二神经网络模型大小和第二神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的、统一蒸馏训练得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第一设备设计第二神经网络模型,包括:
所述第一设备向所述第二设备发送第二网络结构请求;其中,所述第二网络结构请求用于所述第一设备向所述第二设备获取第二参考神经网络模型的结构信息;
所述第一设备接收所述第二设备发送的第二结构请求响应;其中,所述第二结构请求响应包括所述第二参考神经网络模型的结构信息;
所述第一设备基于第二参考神经网络模型的结构信息设计第二神经网络模型。
本申请实施例,第一设备向第二设备发送第二网络结构请求后,接收第二设备发送的第二结构请求响应,获取了第二参考神经网络模型的结构信息。有利于第一设备根据所述第一参考神经网络模型的结构信息设计第二神经网络模型,实现了第二神经网络模型大小和第二神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第一设备向所述第二设备发送的第二数据信息之后,还包括:
所述第一设备向所述第二设备发送第二训练结果通知;其中,所述第二训练结果通知包括所述第一设备蒸馏训练第二神经网络模型的完成度信息、蒸馏训练所述第二神经网络模型的反馈信息。
本申请实施例,第一设备向第二设备发送第二训练结果通知,所述第二训练结果通知用于告知第二设备第二神经网络模型是否训练完成以及向第二设备反馈对训练的第二神经网络模型的信息。第二设备根据第二训练结果通知判断是否释放第一设备与第二设备之间的蒸馏训练通信资源,避免占用第一设备与第二设备的其它信道资源。
第五方面,本申请实施例提供了一种模型蒸馏训练的方法,包括:
第二设备向第三设备发送注册信息;其中,所述注册信息包括第三训练类型ID、第三神经网络模型ID、第二存储信息、第二类别列表、训练响应信息;所述训练响应信息用于指示所述第二设备是否支持蒸馏训练神经网络模型以及在支持蒸馏训练神经网络模型的情 况下,支持蒸馏训练神经网络模型的方式;
所述第二设备接收第一设备发送的第二配置信息;其中,所述第二配置信息用于所述第二设备配置所述第二参考神经网络模型;
所述第二设备接收所述第一设备发送的第二数据信息;其中,所述第二数据信息包括所述第二参考神经网络模型用于蒸馏训练的第二样本数据;
所述第二设备向所述第一设备发送第二指示信息;其中所述第二指示信息用于所述第一设备训练第二神经网络模型;所述第二指示信息为所述第二本数据输入到所述第二参考神经网络模型得到的信息。
本申请实施例,第二设备向第三设备发送注册信息,有利于第三设备可以快速有效地建立第一设备和第二设备的蒸馏训练连接,提升蒸馏训练的效率。第二设备接收第一设备发送的第二配置信息和第二数据信息,有利于第二设备基于第二配置信息和第二数据信息获得第二指示信息,使得第一设备使用第二指示信息训练第二神经网络模型。从而实现了第二神经网络模型大小和第二神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二设备接收第一设备发送的第二配置信息之前,还包括:
所述第二设备接收所述第一设备发送的第二关注类别列表;其中,所述第二关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第二关注类别列表中,第一设备蒸馏训练所关注类别的集合为第二类别列表中类别集合的子集;所述第二类别列表包括所述第二参考神经网络模型预设类别的集合。
本申请实施例,第二设备接收第一设备发送的第二关注类别列表,有利于第二设备基于所述第二关注类别列表获得第二指示信息,所述第二指示信息包括与第一设备关注类别相关的指示信息,第一设备使用第二指示信息训练第一神经网络模型,训练完成后的第一神经网络模型为与所述第一设备相适配的神经网络模型,实现第一神经网络模型大小和第二神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的、统一蒸馏训练得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二指示信息为所述第二设备将所述第二样本数据通过所述第二参考神经网络模型计算处理,并将处理后的第二样本数据基于所述第二关注类别列表进行筛选所得到的。
本申请实施例,第二设备基于所述第二关注类别列表所得到的第二指示信息发送给第一设备,有利于第一设备基于所述第二指示信息得到更加适配的第二神经网络模型,进而解决第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二设备接收第一设备发送的第二配置信息之前,还包括:
所述第二设备接收所述第一设备发送的第二网络结构请求;其中,所述第二网络结构请求用于所述第一设备向所述第二设备获取所述第二参考神经网络模型的结构信息;
所述第二设备基于所述第二网络结构请求向所述第一设备发送第二结构请求响应;其中,所述第二结构请求响应包括所述第二参考神经网络模型的结构信息。
本申请实施例,第二设备向第一设备发送第二参考神经网络模型的结构信息,有利于第二网络根据所述第二参考神经网络模型的结构信息设计第二神经网络模型,实现了第二神经网络模型大小和第二神经网络模型精度的平衡,提高了蒸馏训练效率,解决了第一设备因其有限的存储资源而无法存储第二设备下发的大网络的问题,也解决了第一设备部署第二设备下发的统一蒸馏训练所得到的小网络而与第一设备不适配的问题。
在一种可能的实现方式中,所述第二设备接收所述第一设备发送的第二数据信息之后,还包括:
所述第二设备接收所述第一设备发送的第二训练结果通知;其中,所述第二训练结果通知包括所述第一设备蒸馏训练第二神经网络模型的完成度信息、蒸馏训练所述第二神经网络模型的反馈信息。
本申请实施例,第二设备接收第二结果通知,有利于第二设备根据第二训练结果通知判断是否释放第一设备与第二设备之间的蒸馏训练通信资源,避免占用第一设备与第二设备的其它信道资源。
第六方面,本申请实施例提供了一种模型蒸馏训练装置,所述模型蒸馏训练装置为第一设备,包括:
第一神经网络模型设计单元,用于若第二设备支持所述第一设备蒸馏训练神经网络模型,设计第一神经网络模型;
第一配置信息发送单元,用于向所述第二设备发送第一配置信息;
第一数据信息发送单元,用于向所述第二设备发送第一数据信息;
第一指示信息接收单元,用于接收所述第二设备返回的第一指示信息;
第一神经网络模型训练单元,用于使用所述第一指示信息训练所述第一神经网络模型。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第一训练请求发送单元,用于所述第一神经网络模型设计单元设计第一神经网络模型之前,向所述第二设备发送第一训练请求;
第一响应接收单元,用于第一训练请求发送单元向所述第二设备发送第一训练请求之后,若第二训练类型ID与所述第一训练类型ID一致,接收所述第二设备发送的第一响应;
第一询问信息发送单元,用于基于所述第一存储信息向所述第二设备发送第一询问信息;
第二响应接收单元,用于所述第一询问信息发送单元向所述第二设备发送第一询问信 息之后,接收所述第二设备的第二响应。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第一关注类别列表发送单元,用于所述第一配置信息发送单元向所述第二设备发送第一配置信息之前,向所述第二设备发送第一关注类别列表。
在一种可能实现的方式中,所述第一神经网络模型设计单元,还包括:
第一网络结构请求发送单元,用于所述第一神经网络模型设计单元设计第一神经网络模型之前,向所述第二设备发送第一网络结构请求;
第一结构请求响应接收单元,用于所述第一网络结构请求发送单元向所述第二设备发送第一网络结构请求之后,接收所述第二设备发送的第一结构请求响应。
第七方面,本申请实施例提供了一种模型蒸馏训练装置,所述模型蒸馏训练装置为第二设备,包括:
第一配置信息接收单元,用于接收所述第一设备发送的第一配置信息;
第一配置单元,用于使用所述第一配置信息配置所述第一参考神经网络模型;
第一数据信息接收单元,用于接收所述第一设备发送的第一数据信息;
第一指示信息发送单元,用于向所述第一设备发送第一指示信息。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第一训练请求接收单元,用于所述第一参数配置单元配置所述第一参考神经网络模型之前,接收所述第一设备发送的第一训练请求;
第一响应发送单元,用于若第二训练类型ID与所述第一训练类型ID一致,基于所述第一训练请求,生成第一响应,并将所述第一响应发送给所述第一设备;
第一询问信息接收单元,用于接收所述第一设备发送的第一询问信息;
第二响应发送单元,用于所述第一询问信息接收单元接收所述第一设备发送的第一询问信息后,将所述第二响应发送给所述第一设备。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第一关注类别列表接收单元,用于所述第一配置信息接收单元接收所述第一设备发送的第一配置信息之前,接收所述第一设备发送的第一关注类别列表。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第一网络结构请求接收单元,用于所述第一配置信息接收单元接收所述第一设备发送的第一配置信息之前,接收所述第一设备发送的第一网络结构请求;
第一结构请求响应发送单元,用于向所述第一设备发送第一结构请求响应。
第八方面,本申请实施例提供了一种模型蒸馏训练装置,所述模型蒸馏训练装置为第 三设备,包括:
注册信息接收单元,用于接收第二设备发送的注册信息;
第二训练请求接收单元,用于接收所述第一设备发送的第二训练请求;
第三响应发送单元,用于若所述第四训练类型ID与所述第三训练类型ID一致,基于所述第二训练请求生成第三响应,并将所述第三响应发送给所述第一设备;
蒸馏通知接收单元,用于接收所述第一设备发送的蒸馏通知。
第九方面,本申请实施例提供了一种模型蒸馏训练装置,所述模型蒸馏训练装置为第一设备,包括:
第二训练请求发送单元,用于向第三设备发送第二训练请求;
第三响应接收单元,用于若所述第四训练类型ID与所述第三训练类型ID一致,接收所述第三设备发送的第三响应;
蒸馏通知发送单元,用于向所述第三设备发送蒸馏通知。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第二神经网络模型设计单元,用于所述蒸馏通知发送单元向所述第三设备发送蒸馏通知之后,设计第二神经网络模型;
第二配置信息发送单元,用于向第二设备发送第二配置信息;
第二数据信息发送单元,用于向所述第二设备发送第二数据信息;
第二指示信息接收单元,用于接收所述第二设备返回的第二指示信息。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第二关注类别列表发送单元,用于所述第二配置信息发送单元向第二设备发送第二配置信息之后,向所述第二设备发送第二关注类别列表。
在一种可能的实现方式中,所述第二神经网络模型设计单元,还包括:
第二网络结构请求发送单元,用于向所述第二设备发送第二网络结构请求;
第二结构请求响应接收单元,用于接收所述第二设备发送的第二结构请求响应。
第十方面,本申请实施例提供了一种模型蒸馏训练装置,所述模型蒸馏训练装置为第二设备,包括:
注册信息发送单元,用于向第三设备发送注册信息;
第二配置信息接收单元,用于接收第一设备发送的第二配置信息;
第二数据信息接收单元,用于接收所述第一设备发送的第二数据信息;
第二指示信息发送单元,用于向所述第一设备发送第二指示信息。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第二关注类别列表接收单元,用于所述第二配置信息接收单元接收第一设备发送的第 二配置信息之前,接收所述第一设备发送的第二关注类别列表。
在一种可能实现的方式中,所述模型蒸馏训练装置,还包括:
第二网络结构请求接收单元,用于第二配置信息接收单元接收第一设备发送的第二配置信息之前,接收所述第一设备发送的第二网络结构请求;
第二结构请求响应发送单元,用于基于所述第二网络结构请求向所述第一设备发送第二结构请求响应。
第十一方面,本申请实施例提供了一种模型蒸馏训练设备,包括处理器和存储器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代码,执行上述第一方面及其各种可能的实现方式中的模型蒸馏训练方法。
第十二方面,本申请实施例提供了一种模型蒸馏训练设备,包括处理器和存储器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代码,执行上述第二方面及其各种可能的实现方式中的模型蒸馏训练方法。
第十三方面,本申请实施例提供了一种模型蒸馏训练设备,包括处理器和存储器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代码,执行上述第三方面及其各种可能的实现方式中的模型蒸馏训练方法。
第十四方面,本申请实施例提供了一种模型蒸馏训练设备,包括处理器和存储器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代码,执行上述第四方面及其各种可能的实现方式中的模型蒸馏训练方法。
第十五方面,本申请实施例提供了一种模型蒸馏训练设备,包括处理器和存储器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代码,执行上述第五方面及其各种可能的实现方式中的模型蒸馏训练方法。
第十六方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时,使得第一设备实现上述第一方面和第四方面及其各种可能的实现方式中的模型蒸馏训练的方法、或第二设备实现上述第二方面和第五方面及其各种可能的实现方式中的模型蒸馏训练的方法、或第三设备实现上述第三方面及其各种可能的实现方式中的模型蒸馏训练的方法。
第十七方面,本申请实施例提供了一种计算机程序,该计算机程序包括指令,当所述计算机程序被计算机执行时,使得第一设备可以执行上述第一方面和第四方面及其各种可能的实现方式中第一设备所执行的流程、或第二设备可以执行上述第二方面和第五方面及其各种可能的实现方式中第二设备所执行的流程、或使得第三设备可以执行上述第三方面 及其各种可能的实现方式中第三设备所执行的流程。
附图说明
图1是本申请实施例提供的中心网元和边缘网元部署神经网络的示意图;
图2是本申请实施例提供的一种模型蒸馏示意图;
图3是本申请实施例提供的一种模型蒸馏训练系统架构示意图;
图4是本申请实施例提供的一种模型蒸馏训练的流程示意图;
图5是本申请实施例提供的另外一种模型蒸馏训练的流程示意图;
图6是本申请实施例提供的另外一种模型蒸馏训练的流程示意图;
图7是本申请实施例提供的另外一种模型蒸馏训练的流程示意图;
图8是本申请实施例提供的一种模型蒸馏训练装置的结构示意图;
图9是本申请实施例提供的另外一种模型蒸馏训练装置的结构示意图;
图10是本申请实施例提供的另外一种模型蒸馏训练装置的结构示意图;
图11是本申请实施例提供的另外一种模型蒸馏训练装置的结构示意图;
图12是本申请实施例提供的另外一种模型蒸馏训练装置的结构示意图;
图13是本申请实施例提供的另外一种模型蒸馏训练设备的结构示意图;
图14是本申请实施例提供的另外一种模型蒸馏训练设备的结构示意图;
图15是本申请实施例提供的另外一种模型蒸馏训练设备的结构示意图;
图16是本申请实施例提供的另外一种模型蒸馏训练设备的结构示意图;
图17是本申请实施例提供的另外一种模型蒸馏训练设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例进行描述。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个 或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。
本申请权利要求书以及说明书中所述的第一设备和第二设备为支持AI模型训练和神经模型蒸馏训练的网络设备或用户设备,所述第三设备为支持设备间通信进程,接收设备注册信息的交换设备。
请参见图2,图2是本申请实施例提供的一种模型蒸馏示意图。如图2所示,所述模型蒸馏示意图包括教师网络和学生网络。所述教师网络是一个是训练好的神经网络,网络结构复杂,通常具有更多的节点和层数,具有强大的计算处理能力和大量的数据资源。所述学生网络是待训练的神经网络,是一个小网络,网络结构较简单,通常具有更少的节点和层数。教师网络和学生网络输入相同的X,所述X通过教师网络处理和计算,并经过归一化指数函数Softmax 1函数处理后,得到蒸馏训练的指示信息,在本实施例中,所述蒸馏训练的指示信息为教师网络输出的软目标1,也可以理解为教师网络处理X所获得的“知识”。所述X通过学生网络处理和计算,并经过Softmax2函数处理后,会输出软目标2。学生网络将软目标1和软目标2进行对比分析,得到损失函数Fn1。所述X通过学生网络处理和计算,并经过Softmax3函数处理后,会输出硬目标1,学生网络将硬目标1与硬目标2进行对比分析,得到损失函数Fn2;其中所述硬目标2为X的预设输出结果。所述损失函数Fn1和Fn2用于指示软目标1和软目标2、硬目标1和硬目标2的偏差程度。所述学生网络根据损失函数Fn1和Fn2调整所述学生网络,使得所述学生网络处理和计算X后,损失函数Fn1和Fn2降低到某一预设值,从而使得输入相同X,学生网络的输出与教师网络的输出接近,达到教师模型蒸馏训练学生网络的目的。通过这种方式,教师网络培养了学生网络的泛化能力,实现了教师网络对学生网络“知识”的迁移。教师网络对学生网络进行某一功能类型的神经网络训练过程如下:
教师网络是一个训练好的神经网络,能够实现图像识别、流量识别等多种功能。本实施例以教师网络能够实现图像识别,并进行模型蒸馏,使得学生网络能够实现图像识别的功能为例,本实施例以教师网络和学生网络的输入X是汽车图片进行举例说明。向教师网络输入X,所述X经过所述教师网络内各网络层进行相关的算法处理,处理过程主要是将X与所述教师网络中预设的各个类别进行比对。其中,所述预设的各个类别可以是与输入X不同种类的事物,可以是与输入X外观形状差异较大的事物,也可以是与输入X属性不同的事物等其他类别。本实施例以教师网络预设类别为与输入X为不同种类的事物为例,在所述教师网络中的预设类别有车辆、火车、飞机、船只四种类别,所述教师网络中的预设类别分别记为X 1、X 2、X 3和X 4。教师网络将输入的X分别与预设类别X 1、X 2、X 3和X 4进行比对,然后分别输出X与X 1、X与X 2、X与X 3和X与X 4的相似度Y 1、Y 2、Y 3和Y 4。由于所述教师网络是已经训练好了的神经网络,因此所述教师网络会判断出X与X 1属于同类别(对应汽车与车辆属于同类别)。因此,所述教师网络输出的X与X 1的相似度最高,即Y 1的数值最高(接近于100%);所述教师网络输出的X与X 2、X与X 3和X与X 4的相似度很低,即Y 2、Y 3和Y 4数值极低(接近于0%),所述Y 1与所述Y 2、Y 3和Y 4的数值差距过大,所述教师 网络输出的信息几乎只有Y 1的信息,Y 2、Y 3和Y 4的信息几乎为0,因此,教师网络输出的信息量较少。为了提高教师网络输出的信息量,将所述Y 1、Y 2、Y 3和Y 4通过Softmax 1函数处理,缩小Y 1与Y 2、Y 3和Y 4的数值差距。其中,所述Softmax 1函数的表达式为:
Figure PCTCN2020129478-APPB-000001
其中,Z i是Y i经过Softmax 1函数处理后,教师网络的输出信息;T是蒸馏温度信息(T越大,则输出的Z i分布越平缓,相当于平滑的一个作用,起到保留相似信息的作用;如果T趋近无穷,就是一个均匀分布),T的取值是基于教师网络与学生网络的网络结构差异所得到的。
所述Y 1、Y 2、Y 3和Y 4通过Softmax 1函数处理后,分别输出Z 1、Z 2、Z 3和Z 4,所述Z 1、Z 2、Z 3和Z 4的分布较为平缓(Z 1的数值是最高的,Z 2、Z 3和Z 4的数值与Z 1数值的差距缩小)。通过将Y 1、Y 2、Y 3和Y 4经过Softmax 1函数进行处理的方式,提高了Y 2、Y 3和Y 4的信息量,进而,提高了教师网络输出的信息量,所述Z 1、Z 2、Z 3和Z 4为教师网络输出的软目标1。
需要说明的是,教师网络是一个已训练好的神经网络,教师网络输出X与其相似类别的相似度有一个很高的置信度(本实施例中汽车与车辆有很高的相似度),从而使得Y 1与Y 2、Y 3、Y 4有极大的数值差距。例如,在本实施例中,对于汽车图片的输入,所述教师网络会判定所述汽车图片与车辆类别的相似度很高,所述教师网络输出Y 1可能为95%;所述教师网络判定所述汽车图片与火车、飞机和船只的相似度很低,所述教师网络输出Y 2、Y 3和Y 4可能分别为3%、1%、1%,在这种情况下,教师网络输入X与X 1、X 2、X 3和X 4类别比对的“知识”很难迁移学生网络,因为它们的相似度几乎接近0,具备很少的信息量。通过这种方式训练学生网络,不利于强化学生网络的泛化能力,影响蒸馏训练的效果。因此,教师网络将Y 1、Y 2、Y 3和Y 4通过Softmax 1函数进行处理,可以使Y 1、Y 2、Y 3和Y 4数值分布更加平缓,增加Y 2、Y 3和Y 4的信息量,使得教师网络学习X与X 1、X 2、X 3和X 4比对的“知识”迁移到学生网络,进而加强学生网络的泛化能力。
同样的,向学生网络输入X,所述X经过所述学生网络内各个网络层进行相关的算法处理,与所述学生网络中预设的各个类别进行比对。学生网络将输入的X分别与预设类别X 1、X 2、X 3和X 4进行比对,然后分别输出X与X 1、X与X 2、X与X 3和X与X 4的相似度H 1、H 2、H 3和H 4。由于学生网络是待训练的神经网络,学生网络对输入X与其预设类别的对比能力不够,使得学生网络输出的X与其预设类别的相似度与预设的结果差别大(例如,H 4的数值极大,接近于100%;H 2、H 3和H 1的数值极小,接近于0)。与教师网络类似,由于,H 4和H 2、H 3和H 1的数值差距过大,使得所述学生网络输出的信息几乎只有H 4的信息,H 2、H 3和H 1的信息量几乎为0。为了增加所述学生网络输出的信息量,将H 1、H 2、H 3和H 4通过Softmax 2函数处理,缩小H 4与H 2、H 3和H 1的数值差距,进而提高所述学生网络输出的信息量;其中,蒸馏温度信息T与教师网络使用相同。所述H 1、H 2、H 3和H 4通过Softmax 2函数处理后,分别输出M 1、M 2、M 3和M 4,所述M 1、M 2、M 3和M 4的分布较为平缓(M 4的数值是最高的,但是M 2、M 3和M 1的数值与M 4数值的差距缩小了),所述M 1、M 2、M 3和M 4为学生网络输出的软目标2。
学生网络将其输出的软目标2与教师网络输出的软目标1进行比对,基于所述软目标 2与所述软目标1的偏差程度得到损失函数Fn1。另外,学生网络将其输出的H 1、H 2、H 3和H 4通过Softmax 3函数处理得到B 4。其中,Softmax 3中使用的蒸馏温度信息T=1,所述H 1、H 2、H 3和H 4通过Softmax 3函数处理得到的B 4只含有H 4的信息,所述B 4为学生网络输出的硬目标1。学生网络将其输出的硬目标1与硬目标2进行比对分析,基于所述硬目标1与所述硬目标2的偏差程度得到损失函数Fn2。其中,所述硬目标2为输入X后应该得到的一个预设结果,X-硬目标2的预设关系作为本地数据存储在学生网络中。
学生网络基于损失函数Fn1和Fn2对其神经网络模型进行调整,降低学生网络与教师网络输出信息的偏差程度,从而减小损失函数Fn1和Fn2的数值,进而加强学生网络的泛化能力,实现教师网络的“知识”迁移。
请参见图3,图3是本申请实施例提供的一种模型蒸馏训练系统架构示意图。图3表示在无线场景下,第二设备为无线接入网(Radio Access Network,RAN),第一设备为用户设备(User Equipment,UE),所述RAN接入多个用户设备。其中,所述RAN部署的大网络为第一参考神经网络模型,所述第一参考神经网络模型为全类别的模型,第一参考神经网络模型中的类别包括:3D视频、高清视频传输和增强现实(Augmented Reality,AR)/虚拟现实(Virtual Reality,VR);UE1部署的小网络为第一神经网络模型,所述第一神经网络模型中的类别为所述第一参考神经网络模型所包含类别的子集,包括:3D视频和高清视频传输。本实施例以UE1蒸馏训练第一神经网络模型,使得第一神经网络模型具备流量识别的功能为例。UE1蒸馏训练第一神经网络模型的步骤如下:
1、UE1向RAN发送第一训练请求,所述第一训练请求包括第一训练类型ID,所述第一训练类型ID用于指示UE1蒸馏训练的第一神经网络模型的功能类型为流量识别。
2、RAN接收所述第一训练请求,并将所述第一训练类型ID与RAN中的第二训练类型ID相比较,若二者相一致,则RAN支持UE1蒸馏训练第一神经网络模型,并根据所述第二训练类型ID,向UE1发送第一响应。所述第一响应包括第一存储信息,所述第一存储信息为具备流量识别功能的第一参考神经网络模型所占的内存或存储空间的大小。
3、UE1根据第一响应向RAN发送第一询问信息,询问RAN是否支持UE1对第一神经网络模型进行蒸馏训练,使得所述第一神经网络模型具备流量识别功能,并上报UE1的蒸馏训练能力。
4、RAN基于所述第一询问信息,向UE1发送第二响应,用于告知UE1:RAN支持UE1蒸馏训练第一神经网络模型,使其获得流量识别功能;支持蒸馏训练的方式为RAN向UE1发送第一指示信息来指导UE1蒸馏训练第一神经网络模型。
5、UE1设计第一神经网络模型。
6、UE1向RAN发送第一配置信息,RAN基于所述第一配置信息配置第一参考神经网络模型。其中,所述第一配置信息包括蒸馏温度信息T、知识类型KnowledgeType;所述蒸馏温度信息T根据RAN部署的第一参考神经网络模型和UE1设计部署的第一神经网络模型而得到的,也可根据经验库或其它方式得到,所述T用于蒸馏出第一参考神经网络模型对待识别的流量数据与所述第一参考神经网络模型中预设流量类别对比分析所得到的信息。RAN根据所述第一配置信息中的蒸馏温度信息T配置归一化Softmax(T)函数,通过所 述知识类型KnowledgeType获知第一指示信息的类型为第一参考神经网络模型进行流量识别后输出的软目标。然后,将第一指示信息发送给UE1(本实施例以知识类型KnowledgeType为第一参考神经网络模型输出的软目标Soft target为例)。
7、UE1向RAN发送第一数据信息,所述第一数据信息包括第一样本数据;所述第一样本数据为UE1对所述第一神经网络模型进行流量识别的蒸馏训练所需的训练数据。此外,所述第一样本数据中包括索引Index用于指示每条流量数据。例如,所述第一样本数据包括:3D电影的流量数据、电影传输的流量数据以及人机交互的流量数据,其索引Index分别为1、2、3,用于指示3D电影的流量数据、电影传输的流量数据以及人机交互的流量数据。
8、RAN将所述第一样本数据通过第一参考神经网络模型进行处理,得到第一指示信息,并将所述第一指示信息发送给UE1;所述第一指示信息为所述第一参考神经网络模型基于第一样本数据进行流量识别的过程中所得到的信息。RAN得到第一指示信息的过程为:RAN将所述第一样本数据信息(3D电影的流量数据、电影传输的流量数据以及人机交互的流量数据)输入第一参考神经网络模型中,所述第一参考神经网络模型会将3D电影的流量数据、电影传输的流量数据以及人机交互的流量数据分别与第一参考神经网络模型中的3D视频、高清视频传输、AR/VR这三个预设类别进行对比分析,并输出3D电影的流量数据与3D视频、高清视频传输、AR/VR这三个预设类别流量的相似度A1、A2和A3;电影传输的流量数据与3D视频、高清视频传输、AR/VR这四个预设类别流量的相似度B1、B2和B3;人机交互的流量数据与3D视频、高清视频传输、AR/VR这三个预设类别流量的相似度C1、C2和C3。由于第一参考神经网络模型是已经训练好的神经网络模型,能够准确识别输入的流量数据与哪个预设类别的相似度最高,因此,在A1、A2和A3中,A1的数值最高接近于100%,A2和A3的数值很小,接近于0;在B1、B2和B3中,B2的数值最高接近于100%,B1和B3的数值很小,接近于0;在C1、C2和C3中,C3的数值最高接近于100%,C1和C2的数值很小,接近于0。为了提高第一参考神经网络模型输出的信息量,使得每一条样本数据信息中的流量数据与预设类别的相似度的数值分布更加平缓,将A1、A2和A3作为归一化Softmax(T)函数的输入,输出a1、a2和a3,所述a1、a2和a3为第一参考神经网络模型输出的软目标1,并使用索引Index 1用于指示软目标1(软目标的索引Index与第一样本数据信息中的流量数据的索引Index相对应)。同理,使用相同的方法处理B1~B3、C1~C3,得到软目标2(b1~b3)和软目标3(c1~c3),用索引Index 2和3分别指示软目标2和软目标3。所述软目标1、软目标2和软目标3为第一指示信息。然后,RAN将所述第一指示信息发送给UE1。
9、UE1接收第一指示信息,并使用所述第一指示信息蒸馏训练第一神经网络模型对于其包含的各类别的流量识别功能。UE1使用所述第一指示信息对所述第一神经网络模型进行蒸馏训练的具体过程为:UE1将所述第一样本数据信息(3D电影的流量数据、电影传输的流量数据以及人机交互的流量数据)输入第一神经网络模型中,所述第一神经网络模型会将3D电影的流量数据、电影传输的流量数据以及人机交互的流量数据分别与第一神经网络模型中的3D视频和高清视频传输这两个预设类别进行对比分析,并输出3D电影的流量数据与3D视频和高清视频传输这两个预设类别流量的相似度D1和D2;电影传输的流 量数据与3D视频和高清视频传输这两个预设类别流量的相似度E1和E2;人机交互的流量数据与3D视频和高清视频传输这两个预设类别流量的相似度F1和F2。由于第一神经网络模型是一个蒸馏训练的神经网络模型,对于流量识别的输出的结果置信度很低。例如,第一神经网络模型可能认为3D电影的流量数据与高清视频传输类别的流量数据相似度高,电影传输的流量数据与3D视频类别的流量数据相似度高,人机交互的流量数据与高清视频传输类别的流量数据相似度高。因此,D2的值很高,接近于100%,D1的值很低,接近于0;E1的值很高,接近于100%,E2的值很低,接近于0;F2的值很高,接近于100%,F1的值很低,接近于0。为了提高第一神经网络模型输出的信息量,使得每一条样本数据信息中的流量数据与预设类别的相似度的数值分布更加平缓,将D1和D2作为归一化Softmax(T)函数的输入(Softmax函数中的蒸馏温度信息T与第一参考神经网络模型所用的T一致),输出d1和d2,所述d1和d2为第一神经网络模型输出的软目标4,并使用索引Index 1用于指示软目标4(软目标的索引Index与第一样本数据信息中的流量数据的索引Index相对应)。同理,使用相同的方法处理E1~E2、F1~F2,得到软目标5(e1~e2)和软目标6(f1~f2),用索引Index 2和3分别指示软目标5和软目标6。然后UE1将软目标4与所述第一指示信息中的软目标1进行对比分析,将软目标5与所述第一指示信息中的软目标2进行对比分析,将软目标6与所述第一指示信息中的软目标3进行对比分析,以此获知第一神经网络模型进行流量识别输出的结果与第一参考神经网络模型进行流量识别输出结果的差异,得到损失函数Fn1。另外,边缘网元将D1~D2、E1~E2和F1~F2分别作为Softmax(T=1)的输入,得到D2′、E1′和F2′(D2′只含有D2的信息,E1′只含有E1的信息,F3′只含有F3的信息),所述D2′、E1′和F3′分别为第一神经网络模型输出的硬目标1、硬目标2和硬目标3。然后将所述硬目标1与预设结果1进行对比分析,将所述硬目标2与预设结果2进行对比分析,将所述硬目标3与预设结果3进行对比分析得到损失函数Fn2。其中,所述预设结果1、预设结果2和预设结果3是存储在UE1中的第一数据信息内的流量数据信息对应的预设类别的流量数据。例如,预设结果1为3D电影的流量数据识别属于3D视频流量类别,预设结果2为电影传输的流量数据属于高清视频传输的流量类别,预设结果3为人机交互的流量数据属于AR/VR的流量类别。预设结果用于第一神经网络模型进行流量识别任务时,对其输出结果进行比对,判断所述第一神经网络模型输出的结果是否正确。例如,当第一神经网络模型的输出结果为:将3D电影的流量数据识别为AR/VR类别的流量,显然是不正确的,因为按照预设结果1,3D电影的流量数据识别属于3D视频流量类别。然后UE1基于损失函数Fn1和Fn2调整第一神经网络模型,以降低损失函数Fn1和Fn2的数值,从而强化所述第一神经网络模型对于流量识别的泛化能力,实现UE1对第一神经网络模型的蒸馏训练。
10、UE1向RAN发送第一训练结果通知,用于通知RAN第一神经网络模型的蒸馏训练完成,反馈蒸馏训练完成的第一神经网络模型的信息。
11、RAN释放与UE1之间的蒸馏训练通信连接的信道资源。
在本实施例中,UE1蒸馏训练神经网络模型之前,要和RAN建立蒸馏训练的通信连接,通过UE1和RAN之间蒸馏训练信息的交互,RAN使用UE1发送的第一配置信息,配置第一参考神经网络模型;其中,所述第一参考神经网络模型是已经训练好的神经网络模型。 RAN配置好第一参考神经网络模型后,使用第一数据信息,将所述第一数据信息中的第一样本数据通过已配置好的第一参考神经网络模型进行运算处理后,得到第一指示信息,所述第一指示信息为第一参考神经网络模型蒸馏训练所得到的“知识”。RAN将第一指示信息发送给UE1,UE1使用所述第一指示信息训练其设计的第一神经网络模型。通过这种方式,实现了RAN通过迁移“知识”来指导UE1的蒸馏训练。该方法使得RAN和UE1进行分离式蒸馏训练,令UE1可进行个性化小网络的设计和训练,实现神经网络模型大小和神经网络模型精度的平衡,提升了蒸馏训练的效率,节省了UE1的存储空间。
请参见图4,图4是本申请实施例提供的一种模型蒸馏训练的流程示意图。第一设备对神经网络模型进行蒸馏训练之前与第二设备建立蒸馏训练的通信连接,通过与第二设备进行相关蒸馏训练信息的交互,实现第二设备“知识”的迁移,从而指导第一设备对神经网络模型进行蒸馏训练。在图4中,以第一设备为边缘网元,第二设备为中心网元为例,边缘网元对神经网络模型进行蒸馏训练的步骤如下:
步骤S401:边缘网元向中心网元发送第一训练请求。
具体地,边缘网元在蒸馏训练神经网络模型之前,要和中心网元建立蒸馏通信连接。边缘网元首先向中心网元发送第一训练请求,所述第一训练请求用于边缘网元向中心网元告知边缘网元有蒸馏训练某一功能类型的神经网络模型的需求。另外,第一训练请求包括第一训练类型ID,所述第一训练ID用于指示边缘网元蒸馏训练神经网络模型的功能类型;所述功能类型有图像识别、人脸识别等。
步骤S402:中心网元向边缘网元发送第一响应。
具体地,中心网元接收到边缘网元发送的第一训练请求之后,将第一训练类型ID与中心网元的第二训练类型ID进行对比,若第一训练类型ID与第二训练类型ID一致,则说明中心网元有支持边缘网元蒸馏训练的参考神经网络模型,所述参考神经网络模型具备第一训练类型ID所指示的功能类型。其中,所述第二训练类型ID为中心网元支持蒸馏训练的功能类型。中心网元基于第二训练类型ID从中心网元部署的多个参考神经网络模型中找到第一参考神经网络模型,所述第一参考神经网络模型具备第二训练类型ID所指示的功能类型。中心网元向边缘网元发送第一响应,所述第一响应包括第一参考神经网络模型的ID以及第一存储信息。其中,所述第一存储信息用于指示第一参考神经网络模型所占的存储空间的大小。
若第一训练类型ID与第二训练类型ID不一致,则说明中心网元没有与第一训练类型ID相对应的参考神经网络模型。那么,中心网元不能根据边缘网元发送的第一数据信息通过参考神经网络模型进行蒸馏,得到第一指示信息,由于边缘网元缺少第一指示信息,边缘网元不能使用第一指示信息蒸馏训练神经网络模型,进而,不能实现中心网元指导边缘网元蒸馏训练神经网络模型。本申请实施例以第一训练类型ID与第二训练类型ID一致为例。
步骤S403:边缘网元基于第一存储信息向中心网元发送第一询问信息。
具体地,所述第一询问信息包括第一蒸馏询问信息和第一蒸馏能力信息。所述第一蒸馏询问信息是边缘网元基于第一存储信息向中心网元发送的,具体为:当边缘网元的资源 存储等能力超过某一阈值,所述阈值比所述第一存储信息所指示的第一参考神经网络模型所占的存储空间大时,所述第一蒸馏询问信息用于询问中心网元是否支持以向边缘网元发送第一指示信息的方式支持边缘网元的蒸馏训练;当边缘网元的资源存储能力低于所述第一存储信息所指示的第一参考神经网络模型所占的存储空间时,所述第一蒸馏询问信息用于询问中心网元是否支持以中心网元蒸馏训练得到小网络,并将所述小网络下发给边缘网元的方式支持边缘网元的蒸馏训练。本实施例以当边缘网元的资源存储等能力超过某一阈值,能够进行小网络的设计为例。因此,所述第一蒸馏询问信息用于询问中心网元是否支持边缘网元的蒸馏训练,以及用何种方式支持训练。
第一蒸馏能力信息用于指示边缘网元蒸馏训练的能力,包括以下一项或多项:神经网络模型的设计能力、神经网络模型的蒸馏训练能力以及边缘网元是否具有蒸馏训练数据信息。神经网络模型的设计能力用于指示边缘网元是否具备独立设计小神经网络模型的能力。神经网络模型的蒸馏训练能力用于指示在边缘网元能够独立设计第一神经网络模型的情况下,是否具有蒸馏训练第一神经网络模型的能力。所述神经网络模型的蒸馏训练能力包括以下一项或多项:边缘网元是否支持算法训练的训练包、是否具有GPU芯片以及GPU芯片的张量核心、每秒浮点运算次数、显存带宽、CPU的主频大小、CPU的缓存大小、架构类别以及存储空间等硬件能力。蒸馏训练数据为边缘网元的第一数据信息,用于中心网元基于所述第一数据信息中的第一采样数据得到第一指示信息,指导边缘网元进行蒸馏训练。本申请实施例以边缘网元具备神经网络模型设计能力、神经网络模型的蒸馏训练能力和蒸馏训练数据信息为例。
步骤S404:中心网元基于第一蒸馏询问信息生成第二响应,并将第二响应发送给边缘网元。
具体地,中心网元接收到所述第一蒸馏询问信息后,根据自身的存储资源、硬件性能等参数向边缘网元发送第二响应,所述第二响应,用于指示中心网元支持对边缘网元的蒸馏训练,并以向边缘网元发送第一指示信息的方式支持边缘网元进行蒸馏训练。
步骤S405:边缘网元设计第一神经网络模型。
具体地,若边缘网元设计第一神经网络模型需要参考第一参考神经网络模型的结构信息且已加载第一参考神经网络模型的结构信息时,边缘网元以所述第一参考神经网络模型的结构信息为参考,设计小网络,所述小网络为第一神经网络模型。
在一种可能的实现方式中,若边缘网元设计第一神经网络模型需要参考第一参考神经网络模型的结构信息,未加载第一参神经网络模型的结构信息时,边缘网元向中心网元发送第一网络结构请求,所述第一网络结构请求用于边缘网元请求中心网元提供第一参考网络结构模型的结构信息。中心网元基于所述第一网络结构请求向边缘网元发送第一结构请求响应,所述第一结构请求响应包含第一参考神经网络模型的结构信息。边缘网元以第一参考神经网络模型的结构信息为参考,设计小网络,所述小网络为第一神经网络模型。
步骤S406:边缘网元向中心网元发送第一配置信息。
具体地,边缘网元向中心网元发送的第一配置信息用于中心网元配置第一参考神经网络模型,所述第一配置信息包括第一蒸馏温度信息,所述第一蒸馏温度信息为归一化指数函数Softmax的温度参数T,温度参数T是根据第一神经网络模型与第一参考神经网络模 型的大小差异所得到的,用于提高第一参考神经网络模型蒸馏后输出的信息量。第一配置信息还包括知识类型KnowledgeType和第一参考神经网络模型的ID,所述知识类型KnowledgeType用于指示边缘网元所需要的第一指示信息的类型,其中,第一指示信息的类型包括:第一参考神经网络模型输出的软目标、第一参考神经网络模型中间输出特征信息以及第一参考神经网络模型内网络层之间的关系等。第一参考神经网络模型的ID用于将所述第一配置信息与第一参考神经网络模型进行关联,避免与中心网元的其它神经网络模型混淆。
步骤S407:边缘网元向中心网元发送第一数据信息。
具体地,边缘网元向中心网元发送的第一数据信息用于中心网元将所述第一数据信息通过第一参考神经网络模型进行处理,得到第一指示信息。所述第一数据信息包括第一样本数据,所述第一样本数据为第一参考神经网络模型用于蒸馏训练的样本数据;所述第一样本信息还包括样本数据索引Index和第一参考神经网络模型的ID。其中,所述样本数据索引Index为每条第一样本数据的标签,用于指示第一样本数据;第一参考神经网络模型的ID用于将所述第一配置信息与第一参考神经网络模型进行关联,避免与中心网元的其它神经网络模型混淆。
步骤S408:中心网元将第一样本数据通过第一参考神经网络模型进行计算处理,得到第一指示信息,并将所述第一指示信息发送给边缘网元。
具体地,第一指示信息包括蒸馏知识DistillationKnowledge和第一参考神经网络模型的ID,所述第一指示信息用于指导边缘网元训练第一神经网络模型。中心网元将第一样本数据按照Index逐条输入到第一参考神经网络模型中进行计算和处理,具体过程如下:输入的第一样本数据分别与第一参考神经网络模型中的预设类别进行对比分析,得到第一指示信息,并将所述样本数据索引Index与所述蒸馏知识DistillationKnowledge。然后,将第一指示信息发送给边缘网元。第一参考神经网络模型的ID用于将所述蒸馏知识DistillationKnowledge与第一参考神经网络模型进行关联,避免与中心网元的其它神经网络模型混淆。
步骤S409:边缘网元使用第一指示信息对第一神经网络模型进行蒸馏训练。
具体地,若边缘网元收到的第一指示信息的类型为第一参考神经网络模型输出的软目标时,即所述第一指示信息为第一样本数据与第一参考神经网络模型预设类别的相似度时,边缘网元使用第一指示信息对第一神经网络模型进行蒸馏训练的过程为:边缘网元将第一样本数据按照Index逐条输入到第一神经网络模型中,然后将第一样本数据分别与第一神经网络模型中的预设类别进行对比分析,得到第一样本数据与所述预设类别的相似度。然后,边缘网元将所述相似度通过Softmax函数(第一神经网络模型Softmax函数配置的温度参数T与第一参考神经网络模型Softmax配置的温度参数T是相同的)输出软目标,将所述软目标与第一参考神经网络模型输出的软目标进行对比分析,得到损失函数Fn1。此外,边缘网元将第一样本数据与所述预设类别的相似度通过另一个Softmax函数(配置的温度参数T=1)进行处理得到一个硬目标,将所述硬目标与第一样本数据的预设结果进行对比分析,得到损失函数Fn2。边缘网元基于Fn1和Fn2调整第一神经网络模型,以降低损失函数Fn1和Fn2的数值,增强第一神经网络模型的泛化能力,实现边缘网元对第一神 经网络模型的蒸馏训练。
在一种可能的实现方式中,若边缘网元收到的第一指示信息的类型为第一参考神经网络模型中间输出特征信息时,即所述第一指示信息为第一样本数据与第一参考神经网络模型预设类别进行对比分析时,第一参考神经网络模型的中间网络层输出的第一特征信息,边缘网元使用第一指示信息对第一神经网络模型进行蒸馏训练的过程为:边缘网元将第一样本数据按照Index逐条输入到第一神经网络模型中,得到所述第一样本数据与第一神经网络模型预设类别进行对比分析时,第一神经网络模型中间层输出的第二特征信息。然后将所述第二特征信息与第一特征信息进行对比分析,得到损失函数Fn3,边缘网元基于Fn3调整第一神经网络模型的参数,以降低损失函数Fn3的数值,增强第一神经网络模型的泛化能力,实现边缘网元对第一神经网络模型的蒸馏训练。
在一种可能的实现方式中,若边缘网元收到的第一指示信息的类型为第一参考神经网络模型网络层之间的关系时,边缘网元使用第一指示信息对第一神经网络模型进行蒸馏训练的过程为:边缘网元将第一样本数据按照Index逐条输入到第一神经网络模型中,然后将第一样本数据分别与第一神经网络模型中的预设类别进行对比分析,得到第一神经网络模型中各个网络层的关系,并将所述第一神经网络模型中各个网络层的关系与所述第一指示信息进行对比分析,得到损失函数Fn4。边缘网元基于Fn4调整第一神经网络模型的参数,以降低损失函数Fn4的数值,增强第一神经网络模型的泛化能力,实现边缘网元对第一神经网络模型的蒸馏训练。
步骤S410:边缘网元向中心网元发送第一训练结果通知。
具体地,边缘网元对第一神经网络模型的蒸馏训练完成后,向中心网元发送第一训练结果通知,所述第一训练结果通知用于告知中心网元蒸馏训练是否完成;在边缘网元的蒸馏训练已经完成的情况下,向中心网元反馈边缘网元对训练好的第一神经网络模型的信息(例如,边缘网元对蒸馏训练好的第一神经网络模型是否接收等)。
需要说明的是,由于对蒸馏训练的神经网络模型有精度、泛化能力的指标等其它要求,边缘网元对第一神经网络模型的训练不是训练一次就能完成的,往往需要重复步骤S407~S409。边缘网元的蒸馏训练是否完成是由边缘网元在蒸馏训练中的损失函数Fn的收敛情况或者达到预设最大的迭代次数所决定的。例如,当边缘网元在蒸馏训练中的损失函数Fn达到预设的数值y时,可认为边缘网元蒸馏训练的第一神经网络模型达到需求的精度,那么,边缘网元的蒸馏训练已经完成。或者,当蒸馏训练已经达到边缘网元的预设次数后,结束蒸馏训练。
步骤S411:中心网元释放与边缘网元之间的蒸馏训练通信连接的信道资源。
具体地,中心网元接收所述第一训练结果通知后,判断边缘网元的蒸馏训练是否已经完成;在边缘网元的蒸馏训练已经完成的情况下,释放中心网元与边缘网元之间蒸馏训练的通信连接资源,避免占用中心网元和边缘网元的其他信道资源。
本实施例,边缘网元蒸馏训练神经网络模型之前,要和中心网元建立蒸馏训练的通信连接,通过边缘网元和中心网元之间蒸馏训练信息的交互,中心网元使用边缘网元发送的第一配置信息,配置第一参考神经网络模型;其中,所述第一参考神经网络模型是已经训练好的神经网络模型。中心网元配置好第一参考神经网络模型后,使用第一数据信息,将 所述第一数据信息中的第一样本数据通过已配置好的第一参考神经网络模型进行运算处理后,得到第一指示信息,所述第一指示信息为第一参考神经网络模型蒸馏训练所得到的“知识”。中心网元将第一指示信息发送给边缘网元,边缘网元使用所述第一指示信息训练其设计的第一神经网络模型。通过这种方式,实现了中心网元通过迁移“知识”来指导边缘网元的蒸馏训练。该方法使得中心网元和边缘网元进行分离式蒸馏训练,令边缘网元可进行个性化小网络的设计和训练,实现神经网络模型大小和神经网络模型精度的平衡,提升了蒸馏训练的效率,节省了边缘网元的存储空间。
请参见图5,图5是本申请实施例提供的另外一种模型蒸馏训练的流程示意图。当第一设备向第二设备发送第一配置信息之前,要向第二设备发送第一关注类别列表,第一设备接收的第一指示信息为第二设备基于所述第一关注类别列表所筛选出的信息。在图5中,以第一设备为边缘网元,第二设备为中心网元为例,边缘网元对神经网络模型进行蒸馏训练的步骤如下:
步骤S501~步骤S505请参考步骤S401~步骤S405,此处不再赘述。
步骤S506:边缘网元向中心网元发送第一关注类别列表。
具体地,边缘网元向中心网元发送的第一关注类别列表包括边缘网元蒸馏训练所关注的类别的集合;其中,所述边缘网元蒸馏训练所关注的类别的集合是第一类别列表中类别集合的子集;其中,所述第一类别列表包括第一参考神经网络模型预设类别的集合。边缘网元通过向中心网元发送第一关注类别列表,可以获取与边缘网元蒸馏训练所关注的类别所对应的第一指示信息,有利于实现边缘网元个性化地训练第一神经网络模型。
步骤S507~步骤S508请参考步骤S406~步骤S407,此处不再赘述。
步骤S509:中心网元将第一样本数据通过第一参考神经网络模型进行计算处理,并将处理后的第一样本数据基于第一关注类别列表进行筛选,得到第一指示信息,并将第一指示信息发送给边缘网元。
具体地,与步骤S408类似,中心网元将第一样本数据按照Index逐条输入到第一参考神经网络模型中,所述第一样本数据与第一参考神经网络模型中的预设类别进行对比分析得到指示信息,中心网元基于第一关注类别列表中的类别,从所述指示信息中筛选出与所述第一关注类别列表中类别对应的指示信息,得到第一指示信息,然后,中心网元将所述第一指示信息发送给边缘网元。
步骤S510~步骤S512请参见步骤S409~步骤S411,此处不再赘述。
本实施例,边缘网元在中心网元发送第一指示信息之前,向中心网元发送第一关注类别列表,用于指示中心网元将第一样本数据经过第一参考神经网络模型所得到的指示信息基于第一关注类别列表中的关注类别进行筛选。通过向中心网元发送第一关注类别列表的方式,中心网元将第一样本数据与第一参考神经网络模型中的预设类别进行对比分析所得到指示信息进行筛选,所得到的第一指示信息更加符合边缘网元蒸馏训练的需求,在不影响第一神经网络模型蒸馏训练的效果下进一步减少通信开销,节省分离式蒸馏训练的网络资源,节省边缘网元的存储空间。
请参见图6,图6是本申请实施例提供的另外一种模型蒸馏训练的流程示意图。第二设备指导第一设备进行神经网络模型的蒸馏训练之前,要通过第三设备建立第一设备与第二设备之间的蒸馏训练通信连接。在图6中,以第一设备为边缘NWDAF,第二设备为中心NWDAF,第三设备为网络存储功能装置(Network Repository Function,NRF)为例。边缘NWDAF对神经网络模型进行蒸馏训练的步骤如下:
步骤S601:中心NWDAF向NRF发送注册信息。
具体地,所述注册信息包括第三训练类型ID,用于指示所述中心NWDAF支持蒸馏训练的神经网络模型的功能类型;第三神经网络模型ID,用于指示与所述第三训练类型ID相对应的第二参考神经网络模型,所述第二参考神经网络模型具有第三训练类型ID所指示的功能;第二存储信息,用于指示所述第二参考神经网络模型所占存储空间的大小;训练响应信息,用于指示所述中心NWDAF是否支持蒸馏训练神经网络模型以及在支持蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式。所述注册信息还包括第二类别列表,所述第二类别列表包括中心NWDAF预设类别的集合;中心NWDAF的ID,用于指示所述中心NWDAF的设备号,避免多个中心NWDAF向NRF注册产生混淆。中心NWDAF向NRF发送注册信息,有利于NRF基于注册信息,匹配中心NWDAF和边缘NWDAF,进而建立起中心NWDAF和边缘NWDAF之间的蒸馏训练通信连接。
步骤S602:边缘NWDAF向网络NRF发送第二训练请求。
具体地,所述第二训练请求包括第四训练类型ID,用于指示边缘NWDAF待蒸馏训练的神经网络模型的功能类型;第二询问信息,用于边缘NWDAF询问NRF,中心NWDAF是否支持蒸馏训练,以及在支持蒸馏训练的情况下,支持蒸馏训练的方式;第二蒸馏能力信息,用于指示边缘NWDAF蒸馏训练的能力,所述第二蒸馏能力信息包括以下一项或多项:边缘NWDAF神经网络模型的设计能力、神经网络模型的训练能力、是否具有蒸馏训练数据。所述第二训练请求还包括排除集,所述排除集包括与边缘NWDAF建立蒸馏训练通信连接失败的中心NWDAF的ID,当NRF包含的注册信息中存在排除集中的中心NWDAF的ID时,NRF不再为所述中心NWDAF和边缘NWDAF建立蒸馏训练的通信连接。
步骤S603:NRF基于第二训练请求生成第三响应,并将第三响应发送给边缘NWDAF。
具体地,NRF接收到第二训练请求后,判断第三训练类型ID与第四训练类型ID是否一致,若一致则生成第三响应(本实施例以第三训练类型ID与第四训练类型ID一致为例),并将所述第三响应发送给边缘NWDAF。所述第三响应包括训练响应信息、第三神经网络模型ID、第二存储信息和第二类别列表,还包括中心NWDAF的ID。
步骤S604:边缘NWDAF向NRF发送蒸馏通知。
具体地,所述边缘NEDAF接收到第三响应后,根据所述第三响应中的训练响应信息(本实施例以所述训练响应信息指示所述中心NWDAF支持边缘NWDAF蒸馏训练神经网络模型,并以用向边缘NWDAF发送指示信息的方式指导边缘NWDAF蒸馏训练神经网络模型为例)获知所述中心NWDAF支持蒸馏训练以及蒸馏训练的方式;根据所述第三神经网络模型ID和第二存储信息获知第二参考神经网络模型的信息以及所述第二参考神经网络模型所占存储空间的大小。所述边缘NWDAF基于第三响应所获取的中心NWDAF的信 息,根据中心NWDAF的ID与中心NWDAF建立蒸馏训练的通信连接,通信连接建立完成后,向NRF发送蒸馏通知。所述蒸馏通知用于告知NRF,边缘NWDAF与中心NWDAF连接成功。然后,NRF根据所述蒸馏通知释放NRF与边缘NWDAF和中心NWDAF的通信资源。
步骤S605~步骤S611请参见步骤S405~步骤S411,此处不再赘述。
本实施例,通过中心NWDAF在NRF上注册训练类型ID以及训练响应等信息,边缘NWDAF向NRF发送训练请求,NRF可以快速有效地建立边缘NWDAF和中心NWDAF之间的蒸馏通信连接,从而提高蒸馏训练的效率,有利于边缘NWDAF蒸馏训练神经网络模型,接收边缘NWDAF的存储空间。
请参见图7,图7是本申请实施例提供的另外一种模型蒸馏训练的流程示意图。当第一设备向第二设备发送第二配置信息之前,向第二设备发送第二关注类别列表,第一设备接收的第二指示信息为第二设备基于所述第二关注类别列表所筛选出的信息。在图7中,以第一设备为边缘NWDAF,第二设备为中心NWDAF,第三设备为NRF为例,边缘NWDAF对神经网络模型进行蒸馏训练的步骤如下:
步骤S701~步骤S705请参考步骤S601~步骤S605,此处不再赘述。
步骤S706:边缘NWDAF向中心NWDAF发送第二关注类别列表。
具体地,边缘NWDAF向中心NWDAF发送的第二关注类别列表包括边缘NWDAF蒸馏训练所关注的类别的集合;其中,所述边缘NWDAF蒸馏训练所关注的类别的集合是第二类别列表中类别集合的子集;其中,所述第二类别列表包括第二参考神经网络模型预设类别的集合。边缘NWDAF通过向中心NWDAF发送第二关注类别列表,可以获取与边缘NWDAF蒸馏训练所关注的类别所对应的第二指示信息,有利于实现边缘NWDAF个性化地训练第二神经网络模型。
步骤S707~步骤S708请参考步骤S606~步骤S607,此处不再赘述。
步骤S709:中心NWDAF将第二样本数据通过第二参考神经网络模型进行计算处理,并将处理后的第二样本数据基于第二关注类别列表进行筛选,得到第二指示信息,并将第二指示信息发送给边缘NWDAF。
中心NWDAF将第二数据信息中的第二样本数据按照Index逐条输入到第二参考神经网络模型中,所述第二样本数据与第二参考神经网络模型中的预设类别进行对比分析得到指示信息,中心NWDAF基于第二关注类别列表中的类别,从所述指示信息中筛选出与所述第二关注类别列表中类别相关的指示信息,得到第二指示信息,然后,中心NWDAF将所述第二指示信息发送给边缘NWDAF。
步骤S710~步骤S712请参考步骤S609~步骤S611,此处不再赘述。
本实施例,边缘NWDAF在中心NWDAF发送第二指示信息之前,向中心NWDAF发送第二关注类别列表,用于指示中心NWDAF将第二样本数据经过第二参考神经网络模型所得到的指示信息基于第二关注类别列表中的关注类别进行筛选。通过向中心NWDAF发送第二关注类别列表的方式,中心NWDAF将第二样本数据与第二参考神经网络模型中的预设类别进行对比分析所得到指示信息进行筛选,所得到的第二指示信息更加符合边缘 NWDAF蒸馏训练的需求,在不影响第二神经网络模型蒸馏训练的效果下进一步减少通信开销,节省分离式蒸馏训练的网络资源,进而节省NWDAF的存储空间。
上述详细阐述了本申请实施例的方法,下面提供本实施例的相关装置。
请参见图8,图8是本申请实施例提供的一种模型蒸馏训练装置的结构示意图,所述模型蒸馏训练装置8可以为上述方法实施例中的第一设备,所述模型蒸馏训练装置8可以包括第一神经网络模型设计单元801、第一配置信息发送单元802、第一数据信息发送单元803、第一指示信息接收单元804以及第一蒸馏训练单元805,其中,各个单元的详细描述如下:
第一神经网络模型设计单元801,用于若第二设备支持第一设备蒸馏训练神经网络模型,设计第一神经网络模型;
第一配置信息发送单元802,用于向所述第二设备发送第一配置信息;
第一数据信息发送单元803,用于向所述第二设备发送第一数据信息;
第一指示信息接收单元804,用于接收所述第二设备返回的第一指示信息;
第一蒸馏训练单元805,用于使用所述第一指示信息训练所述第一神经网络模型。
在一种可能的实现方式中,所述模型蒸馏训练装置8还包括:
第一训练请求发送单元,用于所述第一神经网络模型设计单元801设计第一神经网络模型之前,向所述第二设备发送第一训练请求;
第一响应接收单元,用于第一训练请求发送单元向所述第二设备发送第一训练请求之后,若第二训练类型ID与所述第一训练类型ID一致,接收所述第二设备发送的第一响应;
第一询问信息发送单元,用于基于所述第一存储信息向所述第二设备发送第一询问信息;
第二响应接收单元,用于所述第一询问信息发送单元向所述第二设备发送第一询问信息之后,接收所述第二设备的第二响应。
在一种可能实现的方式中,所述模型蒸馏训练装置8,还包括:
第一关注类别列表发送单元,用于所述第一配置信息发送单元802向所述第二设备发送第一配置信息之前,向所述第二设备发送第一关注类别列表。
在一种可能实现的方式中,所述模型蒸馏训练装置8,还包括:
第一网络结构请求发送单元,用于所述第一神经网络模型设计单元801设计第一神经网络模型之前,向所述第二设备发送第一网络结构请求;
第一结构请求响应接收单元,用于所述第一网络结构请求发送单元向所述第二设备发送第一网络结构请求之后,接收所述第二设备发送的第一结构请求响应。
请参见图9,图9是本申请实施例提供的一种模型蒸馏训练装置的结构示意图,所述模型蒸馏训练装置9可以为上述方法实施例中的第二设备,所述模型蒸馏训练装置9可以 包括第一配置信息接收单元901、第一参数配置单元902、第一数据信息接收单元903和第一指示信息发送单元904,其中,各个单元的详细描述如下:
第一配置信息接收单元901,用于接收第一设备发送的第一配置信息;
第一参数配置单元902,用于使用所述第一配置信息配置第一参考神经网络模型;
第一数据信息接收单元903,用于接收所述第一设备发送的第一数据信息;
第一指示信息发送单元904,用于向所述第一设备发送第一指示信息。
在一种可能实现的方式中,所述模型蒸馏训练装置9,还包括:
第一训练请求接收单元,用于所述第一参数配置单元902配置所述第一参考神经网络模型之前,接收所述第一设备发送的第一训练请求;
第一响应发送单元,用于若第二训练类型ID与第一训练类型ID一致,基于所述第一训练请求,生成第一响应,并将所述第一响应发送给所述第一设备;
第一询问信息接收单元,用于接收所述第一设备发送的第一询问信息;
第二响应发送单元,用于所述第一询问信息接收单元接收所述第一设备发送的第一询问信息后,将所述第二响应发送给所述第一设备。
在一种可能实现的方式中,所述模型蒸馏训练装置9,还包括:
第一关注类别列表接收单元,用于所述第一配置信息接收单元接收所述第一设备发送的第一配置信息之前,接收所述第一设备发送的第一关注类别列表。
在一种可能实现的方式中,所述模型蒸馏训练装置9,还包括:
第一网络结构请求接收单元,用于所述第一配置信息接收单元901接收所述第一设备发送的第一配置信息之前,接收所述第一设备发送的第一网络结构请求;
第一结构请求响应发送单元,用于向所述第一设备发送第一结构请求响应。
请参见图10,图10是本申请实施例提供的一种模型蒸馏训练装置的结构示意图,所述模型蒸馏训练装置10可以为上述方法实施例中的第三设备,所述模型蒸馏训练装置10可以包括注册信息接收单元1001、第二训练请求接收单元1002、第三响应发送单元1003和蒸馏通知接收单元1004,其中,各个单元的详细描述如下:
注册信息接收单元1001,用于接收第二设备发送的注册信息;
第二训练请求接收单元1002,用于接收所述第一设备发送的第二训练请求;
第三响应发送单元1003,用于若第四训练类型ID与第三训练类型ID一致,基于所述第二训练请求生成第三响应,并将所述第三响应发送给所述第一设备;
蒸馏通知接收单元1004,用于接收所述第一设备发送的蒸馏通知。
请参见图11,图11是本申请实施例提供的一种模型蒸馏训练装置的结构示意图,所述模型蒸馏训练装置11可以为上述方法实施例中的第一设备,所述模型蒸馏训练装置11可以包括第二训练请求发送单元1101、第三响应接收单元1102和蒸馏通知发送单元1103, 其中,各个单元的详细描述如下:
第二训练请求发送单元1101,用于向第三设备发送第二训练请求;
第三响应接收单元1102,用于若第四训练类型ID与第三训练类型ID一致,接收所述第三设备发送的第三响应;
蒸馏通知发送单元1103,用于向所述第三设备发送蒸馏通知。
在一种可能实现的方式中,所述模型蒸馏训练装置11,还包括:
第二神经网络模型设计单元,用于所述蒸馏通知发送单元1103向所述第三设备发送蒸馏通知之后,基于第二参考神经网络模型的结构信息设计第二神经网络模型;
第二配置信息发送单元,用于向第二设备发送第二配置信息;
第二数据信息发送单元,用于向所述第二设备发送第二数据信息;
第二指示信息接收单元,用于接收所述第二设备返回的第二指示信息;
第二蒸馏训练单元,用于使用所述第二指示信息对所述第二神经网络模型进行蒸馏训练。
在一种可能实现的方式中,所述模型蒸馏训练装置11,还包括:
第二关注类别列表发送单元,用于所述第二配置信息发送单元向第二设备发送第二配置信息之后,向所述第二设备发送第二关注类别列表。
请参见图12,图12是本申请实施例提供的一种模型蒸馏训练装置的结构示意图,所述模型蒸馏训练装置12可以为上述方法实施例中的第二设备,所述模型蒸馏训练装置12可以包括注册信息发送单元1201、第二配置信息接收单元1202、第二数据信息接收单元1203和第二指示信息发送单元1204,其中,各个单元的详细描述如下:
注册信息发送单元1201,用于向第三设备发送注册信息;
第二配置信息接收单元1202,用于接收第一设备发送的第二配置信息;
第二数据信息接收单元1203,用于接收所述第一设备发送的第二数据信息;
第二指示信息发送单元1204,用于向所述第一设备发送第二指示信息。
在一种可能实现的方式中,所述模型蒸馏训练装置12,还包括:
第二关注类别列表接收单元,用于所述第二配置信息接收单元1202接收第一设备发送的第二配置信息之前,接收所述第一设备发送的第二关注类别列表。
在一种可能实现的方式中,所述模型蒸馏训练装置12,还包括:
第二网络结构请求接收单元,用于第二配置信息接收单元1202接收第一设备发送的第二配置信息之前,接收所述第一设备发送的第二网络结构请求;
第二结构请求响应发送单元,用于基于所述第二网络结构请求向所述第一设备发送第二结构请求响应。
请参见图13,图13是本申请实施例提供的一种模型蒸馏训练设备的结构示意图,所述模型蒸馏训练设备13可以为上述方法实施例中的第一设备,所述模型蒸馏训练设备13可以包括存储器1301、通信模块1302和处理器1303,其中,各个单元的详细描述如下:
存储器1301用于存储程序代码。
处理器1303用于调用存储器存储的程序代码执行如下步骤:
若所述第二设备支持所述第一设备蒸馏训练神经网络模型,设计第一神经网络模型;
通过通信模块1302向第二设备发送第一配置信息;
通过通信模块1302向第二设备发送第一数据信息;
通过通信模块1302接收所述第二设备返回的第一指示信息;
使用所述第一指示信息训练所述第一神经网络模型。
在一种可能的实现方式中,处理器1303还用于:在设计第一神经网络模型之前,通过通信模块1302向第二设备发送第一训练请求;
若第二训练类型ID与所述第一训练类型ID一致,通过通信模块1302接收所述第二设备发送的第一响应;
通过通信模块1302向所述第二设备发送第一询问信息;
通过通信模块1302接收所述第二设备的第二响应。
在一种可能的实现方式中,处理器1303还用于:通过通信模块1302向所述第二设备发送第一关注类别列表。
在一种可能的实现方式中,处理器1303还用于:在设计所述第一神经网络模型之前,通过通信模块1302向所述第二设备发送第一网络结构请求;
通过通信模块1302接收所述第二设备发送的第一结构请求响应。
请参见图14,图14是本申请实施例提供的一种模型蒸馏训练设备的结构示意图,所述模型蒸馏训练设备14可以为上述方法实施例中的第二设备,所述模型蒸馏训练设备14可以包括存储器1401、通信模块1402和处理器1403,其中,各个单元的详细描述如下:
存储器1401用于存储程序代码。
处理器1403用于调用存储器存储的程序代码执行如下步骤:
通过通信模块1402接收第一设备发送的第一配置信息;
通过通信模块1402接收第一设备发送的第一数据信息;
通过通信模块1402向所述第一设备发送第一指示信息。
在一种可能的实现方式中,处理器1403,还用于:通过通信模块1402接收所述第一设备发送的第一训练请求;
生成第一响应;
通过通信模块1402将所述第一响应发送给所述第一设备;
通过通信模块1402接收所述第一设备发送的第一询问信息;
生成第二响应;
通过通信模块1402将所述第二响应发送给所述第一设备。
在一种可能的实现方式中,处理器1403,还用于:通过通信模块1402接收所述第一 设备发送的第一配置信息之前,通过通信模块1402接收所述第一设备发送的第一关注类别列表。
在一种可能的实现方式中,处理器1403,还用于:通过通信模块1402接收所述第一设备发送的第一配置信息之前,通过通信模块1402接收所述第一设备发送的第一网络结构请求;通过通信模块1402向所述第一设备发送第一结构请求响应。
请参见图15,图15是本申请实施例提供的一种模型蒸馏训练设备的结构示意图,所述模型蒸馏训练设备15可以为上述方法实施例中的第三设备,所述模型蒸馏训练设备15可以包括存储器1501、通信模块1502和处理器1503,其中,各个单元的详细描述如下:
存储器1501用于存储程序代码。
处理器1503用于调用存储器存储的程序代码执行如下步骤:
通过通信模块1502接收第二设备发送的注册信息;
通过通信模块1502接收第一设备发送的第二训练请求;
生成第三响应;
通过通信模块1502将所述第三响应发送给所述第一设备;
通过通信模块1502接收所述第一设备发送的蒸馏通知。
请参见图16,图16是本申请实施例提供的一种模型蒸馏训练设备的结构示意图,所述模型蒸馏训练设备16可以为上述方法实施例中的第一设备,所述模型蒸馏训练设备16可以包括存储器1601、通信模块1602和处理器1603,其中,各个单元的详细描述如下:
存储器1601用于存储程序代码。
处理器1603用于调用存储器存储的程序代码执行如下步骤:通过通信模块1602向第三设备发送第二训练请求;若第四训练类型ID与第三训练类型ID一致,通过通信模块1602接收所述第三设备发送的第三响应;
通过通信模块1602向所述第三设备发送蒸馏通知。
在一种可能的实现方式中,处理器1603还用于:通过通信模块1602向所述第三设备发送蒸馏通知之后,设计第二神经网络模型;
通过通信模块1602向第二设备发送第二配置信息;
通过通信模块1602向第二设备发送第二数据信息;
接收所述第二设备返回的第二指示信息;
使用所述第二指示信息训练所述第二神经网络模型。
在一种可能的实现方式中,处理器1603还用于:通过通信模块1602向第二设备发送第二配置信息之前,通过通信模块1602向所述第二设备发送第二关注类别列表。
使用所述第二指示信息对所述第二神经网络模型进行蒸馏训练。
在一种可能的实现方式中,处理器1603还用于:设计第二神经网络模型之前,通过通信模块1602向所述第二设备发送第二网络结构请求;
通过通信模块1602接收所述第二设备发送的第二结构请求响应。
请参见图17,图17是本申请实施例提供的一种模型蒸馏训练设备的结构示意图,所述模型蒸馏训练设备17可以为上述方法实施例中的第二设备,所述模型蒸馏训练设备17可以包括存储器1701、通信模块1702和处理器1703,其中,各个单元的详细描述如下:
存储器1701用于存储程序代码。
处理器1703用于调用存储器存储的程序代码执行如下步骤:
通过通信模块1702向第三设备发送注册信息;
通过通信模块1702接收第一设备发送的第二配置信息;
通过通信模块1702接收所述第一设备发送的第二数据信息;
通过通信模块1702向所述第一设备发送第二指示信息。
在一种可能的实现方式中,处理器1703,还用于:通过通信模块1702接收第一设备发送的第二配置信息之前,通过通信模块1702接收所述第一设备发送的第二关注类别列表。
在一种可能的实现方式中,处理器1703,还用于:通过通信模块1702接收第一设备发送的第二配置信息之前,通过通信模块1702接收所述第一设备发送的第二网络结构请求;
通过通信模块1702向所述第一设备发送第二结构请求响应。
本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时,实现上述实施例及其各种可能的实现方式中的模型蒸馏训练方法。
本申请实施例提供了一种计算机程序,该计算机程序包括指令,当所述计算机程序被计算机执行时,使得第一设备可以执行上述实施例及其各种可能的实现方式中第一设备所执行的流程、或第二设备可以执行上述实施例及其各种可能的实现方式中第二设备所执行的流程、使得第三设备可以执行上述实施例及其各种可能的实现方式中第三设备所执行的流程。
本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持第一设备实现上述实施例及其各种可能方式中的方法所涉及的功能、或第二设备实现上述实施例及其各种可能方式中的方法所涉及的功能、或第三设备实现上述实施例及其各种可能方式中的方法所涉及的功能。
在一种可能的设计中,所述芯片系统还包括存储器,所述存储器用于保存第一设备或第二设备或第三设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其它分立器件。
可以理解,本领域普通技术人员可以意识到,结合本申请各个实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域技术人员能够领会,结合本申请各个实施例中公开描述的各种说明性逻辑框、模块和算法步骤所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,那么各种说明性逻辑框、模块、和步骤描述的功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包括任何促进将计算机程序从一处传送到另一处的媒体(例如,根据通信协议)的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本申请中描述的技术的指令、代码和/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (27)

  1. 一种模型蒸馏训练的方法,其特征在于,包括:
    若第二设备支持第一设备蒸馏训练神经网络模型,所述第一设备设计第一神经网络模型;
    所述第一设备向所述第二设备发送第一配置信息;其中,所述第一配置信息用于所述第二设备配置所述第一参考神经网络模型;
    所述第一设备向所述第二设备发送第一数据信息;其中,所述第一数据信息包括所述第一参考神经网络模型用于蒸馏训练的第一样本数据;
    所述第一设备接收所述第二设备返回的第一指示信息,并使用所述第一指示信息训练所述第一神经网络模型;所述第一指示信息为所述第一样本数据输入到所述第一参考神经网络模型得到的信息。
  2. 如权利要求1所述的方法,其特征在于,所述第一设备设计第一神经网络模型之前,还包括:
    所述第一设备向所述第二设备发送第一训练请求;其中,所述第一训练请求包括第一训练类型ID,所述第一训练类型ID用于指示所述第一设备待蒸馏训练的神经网络模型的功能类型;
    若第二训练类型ID与所述第一训练类型ID一致,所述第一设备接收所述第二设备发送的第一响应;其中,所述第一响应包括第一存储信息;所述第一存储信息用于指示所述第一参考神经网络模型所占存储空间的大小;所述第二训练类型ID用于指示所述第二设备支持蒸馏训练的神经网络模型的功能类型;
    所述第一设备基于所述第一存储信息向所述第二设备发送第一询问信息;其中,所述第一询问信息包括第一蒸馏询问信息;所述第一蒸馏询问信息用于所述第一设备询问所述第二设备是否支持蒸馏训练神经网络模型以及在支持所述第一设备蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式;
    所述第一设备接收所述第二设备的第二响应。
  3. 如权利要求1-2任一项所述的方法,其特征在于,所述第一设备向所述第二设备发送第一配置信息之前,还包括:
    所述第一设备向所述第二设备发送第一关注类别列表;其中,所述第一关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第一关注类别列表中第一设备蒸馏训练所关注类别的集合为第一类别列表中类别集合的子集;所述第一类别列表包括所述第一参考神经网络模型预设类别的集合。
  4. 如权利要求3所述的方法,其特征在于,所述第一指示信息为所述第二设备将所述第一样本数据通过所述第一参考神经网络模型计算处理,并将处理后的第一样本数据基于所述第一关注类别列表进行筛选所得到的。
  5. 如权利要求1-4任一项所述的方法,其特征在于,所述第一设备设计第一神经网络模型,包括:
    所述第一设备向所述第二设备发送第一网络结构请求;其中,所述第一网络结构请求用于所述第一设备向所述第二设备获取第一参考神经网络模型的结构信息;
    所述第一设备接收所述第二设备发送的第一结构请求响应;其中,所述第一结构请求响应包括所述第一参考神经网络模型的结构信息;
    所述第一设备基于所述第一参考神经网络模型的结构信息设计第一神经网络模型。
  6. 一种模型蒸馏训练的方法,其特征在于,包括:
    第二设备接收第一设备发送的第一配置信息,并使用所述第一配置信息配置第一参考神经网络模型;
    所述第二设备接收所述第一设备发送的第一数据信息;其中,所述第一数据信息包括所述第一参考神经网络模型用于蒸馏训练的第一样本数据;
    所述第二设备向所述第一设备发送第一指示信息;其中所述第一指示信息用于所述第一设备训练第一神经网络模型;所述第一指示信息为所述第一样本数据输入到所述第一参考神经网络模型得到的信息。
  7. 如权利要求6所述的方法,其特征在于,所述第二设备接收第一设备发送的第一配置信息,使用所述第一配置信息配置第一参考神经网络模型之前,还包括:
    所述第二设备接收所述第一设备发送的第一训练请求;其中,所述第一训练请求包括第一训练类型ID,所述第一训练类型ID用于指示第一设备待蒸馏训练的神经网络模型的功能类型;
    若第二训练类型ID与所述第一训练类型ID一致,所述第二设备基于所述第一训练请求,生成第一响应,并将所述第一响应发送给所述第一设备;其中,所述第二训练类型ID用于指示所述第二设备支持蒸馏训练神经网络模型的功能类型;所述第一响应包括第一存储信息;所述第一存储信息用于指示所述第一参考神经网络模型所占存储空间的大小;
    所述第二设备接收所述第一设备发送的第一询问信息;其中,所述第一询问信息包括第一蒸馏询问信息;所述第一蒸馏询问信息用于所述第一设备询问所述第二设备是否支持蒸馏训练神经网络模型以及在支持所述第一设备蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式;
    所述第二设备基于所述第一蒸馏询问信息生成第二响应,并将所述第二响应发送给所述第一设备。
  8. 如权利要求6-7任一项所述的方法,其特征在于,所述第二设备接收所述第一设备发送的第一配置信息之前,还包括:
    所述第二设备接收所述第一设备发送的第一关注类别列表;其中,所述第一关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第一关注类别列表中,所述第一 设备蒸馏训练所关注类别的集合为第一类别列表中类别集合的子集;所述第一类别列表包括所述第一参考神经网络模型预设类别的集合。
  9. 如权利要求8所述的方法,其特征在于,所述第一指示信息为所述第二设备将所述第一样本数据通过所述第一参考神经网络模型计算处理,并将处理后的第一样本数据基于所述第一关注类别列表进行筛选所得到的。
  10. 如权利要求6-9任一项所述的方法,其特征在于,所述第二设备接收所述第一设备发送的第一配置信息之前,还包括:
    所述第二设备接收所述第一设备发送的第一网络结构请求;其中,所述第一网络结构请求用于所述第一设备向所述第二设备获取所述第一参考神经网络模型的结构信息;
    所述第二设备基于所述第一网络结构请求向所述第一设备发送第一结构请求响应;其中,所述第一结构请求响应包括所述第一参考神经网络模型的结构信息。
  11. 一种模型蒸馏训练的方法,其特征在于,包括:
    第三设备接收第二设备发送的注册信息;其中,所述注册信息包括第三训练类型ID、第三神经网络模型ID、第二存储信息、第二类别列表、训练响应信息;其中,所述训练响应信息用于指示所述第二设备是否支持蒸馏训练神经网络模型以及在支持蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式;所述第三训练类型ID用于指示所述第二设备支持蒸馏训练神经网络模型的功能类型;
    所述第三设备接收第一设备发送的第二训练请求;其中,所述第二训练请求包括第四训练类型ID、第二蒸馏询问信息和第二蒸馏能力信息;所述第四训练类型ID用于指示所述第一设备待蒸馏训练神经网络模型的功能类型;
    若第四训练类型ID与所述第三训练类型ID一致,所述第三设备基于所述第二训练请求生成第三响应,并将所述第三响应发送给所述第一设备;其中,所述第三响应包括训练响应信息、第三神经网络模型ID、第二存储信息和第二类别列表;
    所述第三设备接收所述第一设备发送的蒸馏通知;其中,所述蒸馏结果通知用于指示所述第一设备与所述第二设备是否匹配成功。
  12. 一种模型蒸馏训练的方法,其特征在于,包括:
    第一设备向第三设备发送第二训练请求;其中,所述第二训练请求包括第四训练类型ID、第二蒸馏询问信息和第二蒸馏能力信息;其中,所述第四训练类型ID用于指示第一设备待蒸馏训练的神经网络模型的功能类型;
    若所述第四训练类型ID与第三训练类型ID一致,所述第一设备接收所述第三设备发送的第三响应;其中,所述第三响应包括训练响应信息、第三神经网络模型ID、第二存储信息和第二类别列表;所述第三训练类型ID用于指示所述第二设备支持蒸馏训练神经网络模型的功能类型;
    所述第一设备向所述第三设备发送蒸馏通知;其中,所述蒸馏结果通知用于指示所述 第一设备与所述第二设备是否匹配成功。
  13. 如权利要求12所述的方法,其特征在于,所述第一设备向所述第三设备发送蒸馏通知之后,还包括:
    所述第一设备设计第二神经网络模型;
    所述第一设备向第二设备发送第二配置信息;其中,所述第二配置信息用于所述第二设备配置所述第二参考神经网络模型;
    所述第一设备向所述第二设备发送第二数据信息;其中,所述第二数据信息包括所述第二参考神经网络模型用于蒸馏训练的第二样本数据;
    所述第一设备接收所述第二设备返回的第二指示信息,并使用所述第二指示信息训练所述第二神经网络模型;所述第二指示信息为所述第二样本数据输入到所述第二参考神经网络模型得到的信息。
  14. 如权利要求13所述的方法,其特征在于,所述第一设备向第二设备发送第二配置信息之前,还包括:
    所述第一设备向所述第二设备发送第二关注类别列表;其中,所述第二关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第二关注类别列表中,第一设备蒸馏训练所关注类别的集合为第二类别列表中类别集合的子集;所述第二类别列表包括所述第二参考神经网络模型预设类别的集合。
  15. 如权利要求14所述的方法,其特征在于,所述第二指示信息为所述第二设备将所述第二样本数据通过所述第二参考神经网络模型计算处理,并将处理后的第二样本数据基于所述第二关注类别列表进行筛选所得到的。
  16. 如权利要求13-15任一项所述的方法,其特征在于,所述第一设备设计第二神经网络模型,包括:
    所述第一设备向所述第二设备发送第二网络结构请求;其中,所述第二网络结构请求用于所述第一设备向所述第二设备获取所述第二参考神经网络模型的结构信息;
    所述第一设备接收所述第二设备发送的第二结构请求响应;其中,所述第二结构请求响应包括所述第二参考神经网络模型的结构信息;
    所述第一设备基于所述第二参考神经网络模型的结构信息设计第二神经网络模型。
  17. 一种模型蒸馏训练的方法,其特征在于,包括:
    第二设备向第三设备发送注册信息;其中,所述注册信息包括第三训练类型ID、第三神经网络模型ID、第二存储信息、第二类别列表、训练响应信息;所述训练响应信息用于指示所述第二设备是否支持蒸馏训练神经网络模型以及在支持蒸馏训练神经网络模型的情况下,支持蒸馏训练神经网络模型的方式;
    所述第二设备接收第一设备发送的第二配置信息;其中,所述第二配置信息用于所述 第二设备配置所述第二参考神经网络模型;
    所述第二设备接收所述第一设备发送的第二数据信息;其中,所述第二数据信息包括所述第二参考神经网络模型用于蒸馏训练的第二样本数据;
    所述第二设备向所述第一设备发送第二指示信息;其中所述第二指示信息用于所述第一设备训练第二神经网络模型;所述第二指示信息为所述第二本数据输入到所述第二参考神经网络模型得到的信息。
  18. 如权利要求17所述的方法,其特征在于,所述第二设备接收第一设备发送的第二配置信息之前,还包括:
    所述第二设备接收所述第一设备发送的第二关注类别列表;其中,所述第二关注类别列表包括所述第一设备蒸馏训练所关注类别的集合;所述第二关注类别列表中,第一设备蒸馏训练所关注类别的集合为第二类别列表中类别集合的子集;所述第二类别列表包括所述第二参考神经网络模型预设类别的集合。
  19. 如权利要求18所述的方法,其特征在于,所述第二指示信息为所述第二设备将所述第二样本数据通过所述第二参考神经网络模型计算处理,并将处理后的第二样本数据基于所述第二关注类别列表进行筛选所得到的。
  20. 如权利要求17-19任一项所述的方法,其特征在于,所述第二设备接收第一设备发送的第二配置信息之前,还包括:
    所述第二设备接收所述第一设备发送的第二网络结构请求;其中,所述第二网络结构请求用于所述第一设备向所述第二设备获取第二参考神经网络模型的结构信息;
    所述第二设备基于所述第二网络结构请求向所述第一设备发送第二结构请求响应;其中,所述第二结构请求响应包括所述第二参考神经网络模型的结构信息。
  21. 一种模型蒸馏训练装置,其特征在于,所述模型蒸馏训练装置为第一设备,包括执行如权利要求1-5或12-16任意一项所述方法的单元。
  22. 一种模型蒸馏训练装置,其特征在于,所述模型蒸馏训练装置为第二设备,包括执行如权利要求6-10或17-20任意一项所述方法的单元。
  23. 一种模型蒸馏训练装置,其特征在于,所述模型蒸馏训练装置为第三设备,包括执行如权利要求11所述方法的单元。
  24. 一种模型蒸馏训练设备,其特征在于,所述模型蒸馏训练设备为第一设备,包括处理器和存储器;
    其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代 码,执行如权利要求1-5或12-16任意一项所述模型蒸馏训练的方法。
  25. 一种模型蒸馏训练设备,其特征在于,所述模型蒸馏训练设备为第二设备,包括处理器和存储器;
    其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代码,执行如权利要求6-10或17-20任意一项所述模型蒸馏训练的方法。
  26. 一种模型蒸馏训练设备,其特征在于,所述模型蒸馏训练设备为第三设备,包括处理器和存储器;
    其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器存储的程序代码,执行如权利要求11所述模型蒸馏训练的方法。
  27. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时,实现如权利要求1-20任意一项所述方法。
CN202080106943.6A 2020-11-17 2020-11-17 模型蒸馏训练的方法及相关装置和设备、可读存储介质 Pending CN116438546A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/129478 WO2022104550A1 (zh) 2020-11-17 2020-11-17 模型蒸馏训练的方法及相关装置和设备、可读存储介质

Publications (1)

Publication Number Publication Date
CN116438546A true CN116438546A (zh) 2023-07-14

Family

ID=81707980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080106943.6A Pending CN116438546A (zh) 2020-11-17 2020-11-17 模型蒸馏训练的方法及相关装置和设备、可读存储介质

Country Status (4)

Country Link
US (1) US20230289600A1 (zh)
EP (1) EP4227857A4 (zh)
CN (1) CN116438546A (zh)
WO (1) WO2022104550A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115578613B (zh) * 2022-10-18 2024-03-08 北京百度网讯科技有限公司 目标再识别模型的训练方法和目标再识别方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180268292A1 (en) * 2017-03-17 2018-09-20 Nec Laboratories America, Inc. Learning efficient object detection models with knowledge distillation
US11410029B2 (en) * 2018-01-02 2022-08-09 International Business Machines Corporation Soft label generation for knowledge distillation
CN110163236B (zh) * 2018-10-15 2023-08-29 腾讯科技(深圳)有限公司 模型的训练方法和装置、存储介质、电子装置
CN111105008A (zh) * 2018-10-29 2020-05-05 富士通株式会社 模型训练方法、数据识别方法和数据识别装置
CN109711544A (zh) * 2018-12-04 2019-05-03 北京市商汤科技开发有限公司 模型压缩的方法、装置、电子设备及计算机存储介质
CN110311900A (zh) * 2019-06-19 2019-10-08 微梦创科网络科技(中国)有限公司 一种服务调用方法、装置、电子设备及存储介质
CN111709476A (zh) * 2020-06-17 2020-09-25 浪潮集团有限公司 一种基于知识蒸馏的小分类模型训练方法及装置

Also Published As

Publication number Publication date
WO2022104550A1 (zh) 2022-05-27
US20230289600A1 (en) 2023-09-14
EP4227857A4 (en) 2023-12-20
EP4227857A1 (en) 2023-08-16

Similar Documents

Publication Publication Date Title
US11895577B2 (en) Network slice selection method and apparatus
JP6888078B2 (ja) ネットワーク機能nf管理方法及びnf管理装置
KR20190020073A (ko) 가속 자원 처리 방법 및 장치, 및 네트워크 기능 가상화 시스템
US10404616B2 (en) Virtual resource automatic selection system and method
HUE034840T2 (en) Channel State Information Feedback Scheme for Cooperative Multipoint Transmission and Aggregation Scenario
WO2018167537A1 (en) Method and system for assisted automatic network service request and delivery in a network environment
CN110084317B (zh) 用于识别图像的方法和装置
US20220053348A1 (en) Method, apparatus, and computer program product for enhanced data analytics in multiple nwdaf deployments
CN115152191B (zh) 移动网络中的分析生成和使用
US20200158810A1 (en) Partial phase vectors as network sensors
WO2019032186A1 (en) FACILITATING A COMPACT SIGNALING DESIGN FOR RESERVED RESOURCE CONFIGURATION IN WIRELESS COMMUNICATION SYSTEMS
CN116438546A (zh) 模型蒸馏训练的方法及相关装置和设备、可读存储介质
LinI Toward an AI-enabled O-RAN-based and SDN/NFV-driven 5G& IoT network era
EP3890312A1 (en) Distributed image analysis method and system, and storage medium
JP2020510338A (ja) 送信ビーム特定方法、送信側および受信側
CN114513850A (zh) 定位方法、装置、计算机设备、介质和程序产品
US11636386B2 (en) Determining data representative of bias within a model
CN115066698A (zh) 用于主分量载波的使用信道测量数据的装置、方法和计算机程序
WO2022206305A1 (zh) 增强的csi-rs传输、发送反馈信息的方法、装置、设备及介质
CN112314003A (zh) 包括多个网络切片的蜂窝电信网络
CN110796200B (zh) 数据分类方法、终端、装置及存储介质
CN113259145B (zh) 网络切片的端到端组网方法、组网装置及网络切片设备
US20210151049A1 (en) Method for processing user input of voice assistant
CN105515724B (zh) 一种网络辅助终端盲检的方法、装置、系统及相关设备
US20210103830A1 (en) Machine learning based clustering and patterning system and method for network traffic data and its application

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination