数据处理系统、方法和电子设备转让专利

申请号 : CN202211092426.5

文献号 : CN115170840B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 吴飞吕喆奇王峰杨红霞况琨

申请人 : 阿里巴巴(中国)有限公司

摘要 :

本申请提供一种数据处理系统、方法和电子设备。系统中云侧设备上部署有参数生成模型,端侧设备上部署有轻量级模型。端侧设备向云侧设备端侧设备实时采集的发送样本数据,样本数据包括图像样本或行为数据样本。云侧设备将样本数据输入参数生成模型,得到轻量级模型的第一参数,并向端侧设备发送第一参数,以使端侧设备基于轻量级模型的模型参数对样本数据进行图像识别或行为预测,轻量级模型的模型参数包括第一参数。在上述数据处理系统中,云侧的参数生成模型可根据端侧设备实时输入的样本数据,动态地更新端侧设备上轻量级模型的动态参数,使得端侧设备可根据端侧场景数据的变化及时调整端侧轻量级模型,提升端侧设备的轻量级模型的泛化能力。

权利要求 :

1.一种数据处理系统,其特征在于,包括:云侧设备和端侧设备,所述云侧设备上部署有参数生成模型,所述端侧设备上部署有轻量级模型;

所述端侧设备,用于向所述云侧设备发送所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;

所述云侧设备,用于将所述样本数据输入所述参数生成模型,得到多路第一参数,每一路第一参数对应所述端侧设备的所述轻量级模型的一个动态参数层;所述云侧设备还用于将所述多路第一参数发送至所述端侧设备;所述参数生成模型包括多路数据处理通路,每一路数据处理通路用于输出一路第一参数,所述数据处理通路的数量与所述轻量级模型的动态参数层的数量相同;

所述端侧设备,还用于基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测;

其中,所述轻量级模型的模型参数包括所述多路第一参数和第二参数,所述第一参数为所述轻量级模型的动态参数,所述第二参数为所述轻量级模型的固定参数。

2.根据权利要求1所述的系统,其特征在于,若所述样本数据为图像样本,所述图像样本为所述端侧设备采集的连续图像帧的第一帧;

所述轻量级模型包括第一轻量级模型,所述第一轻量级模型用于图像识别;所述参数生成模型包括第一参数生成模型,所述第一参数生成模型用于生成所述第一轻量级模型的第一参数;

所述云侧设备将所述样本数据输入所述参数生成模型,得到对所述轻量级模型的第一参数,具体包括:将所述图像样本输入所述第一参数生成模型,得到所述第一轻量级模型的第一参数。

3.根据权利要求2所述的系统,其特征在于,所述第一参数生成模型包括编码器头部、第一多层感知机MLP以及第二MLP;所述云侧设备将所述图像样本输入所述第一参数生成模型,得到所述第一轻量级模型的第一参数,具体包括:将所述图像样本输入所述第一参数生成模型的编码器头部,再依次通过第一MLP、第二MLP的数据处理,得到所述第一轻量级模型的第一参数。

4.根据权利要求3所述的系统,其特征在于,所述第一轻量级模型的模型参数包括P1层的第一参数以及M1‑P1层的第二参数,所述第二参数为静态参数,P1和M1‑P1均为正整数,M1为大于P1的正整数;

相应的,所述第一MLP包括P1个第一MLP,所述第二MLP包括P1个第二MLP。

5.根据权利要求1所述的系统,其特征在于,若所述样本数据为行为数据样本,所述行为数据样本为用户在所述端侧设备的目标应用程序的一系列行为数据;

所述轻量级模型包括第二轻量级模型,所述第二轻量级模型用于行为预测;所述参数生成模型包括第二参数生成模型,所述第二参数生成模型用于生成所述第二轻量级模型的第一参数;

所述云侧设备将所述样本数据输入所述参数生成模型,得到对所述轻量级模型的第一参数,具体包括:将所述行为数据样本输入所述第二参数生成模型,得到所述第二轻量级模型的第一参数。

6.根据权利要求5所述的系统,其特征在于,所述第二参数生成模型包括门控循环神经网络GRU以及第三MLP;所述云侧设备将所述行为数据样本输入所述第二参数生成模型,得到所述第二轻量级模型的第一参数,具体包括:将所述行为数据样本输入所述第二参数生成模型的GRU,再通过所述第三MLP的数据处理,得到所述第二轻量级模型的第一参数。

7.根据权利要求6所述的系统,其特征在于,所述第二轻量级模型的模型参数包括 P2层的第一参数以及M2‑P2层的第二参数,P2和M2‑P2为正整数,M2为大于P2的正整数;

相应的,所述GRU包括P2个GRU,所述第三MLP包括P2个第三MLP。

8.根据权利要求1至7任一项所述的系统,其特征在于,所述云侧设备上还部署有参数稳定器,所述参数稳定器用于对所述参数生成模型中的目标MLP的目标层参数进行优化;

所述云侧设备的参数稳定器对所述目标MLP的目标层参数的优化过程,包括:获取多个子MLP的目标层参数,所述多个子MLP用于构建所述目标MLP;

通过对所述多个子MLP的目标层参数进行相似度计算和加权求和处理,得到所述目标MLP的目标层参数;

其中,所述目标层参数包括目标层的权重参数。

9.根据权利要求8所述的系统,其特征在于,所述云侧设备的参数稳定器通过对所述多个子MLP的目标层参数进行相似度计算和加权求和处理,得到所述目标MLP的目标层参数,具体包括:根据所述多个子MLP的目标层参数生成第一矩阵;

对所述第一矩阵进行转置,得到第二矩阵;

对所述第一矩阵和所述第二矩阵的参数进行相似度计算和加权求和,确定所述多个子MLP的目标层参数的权重;

基于所述多个子MLP的目标层参数的权重以及所述多个子MLP的目标层参数,得到所述目标MLP的目标层参数。

10.一种数据处理方法,其特征在于,应用于云侧设备,所述云侧设备上部署有参数生成模型,所述参数生成模型用于生成轻量级模型的第一参数,所述第一参数为动态参数,所述轻量级模型部署在端侧设备,所述轻量级模型用于图像识别或行为预测;

所述方法包括:

接收来自所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;

将所述样本数据输入所述参数生成模型,得到多路第一参数,每一路第一参数对应所述端侧设备的所述轻量级模型的一个动态参数层;所述参数生成模型包括多路数据处理通路,每一路数据处理通路用于输出一路第一参数,所述数据处理通路的数量与所述轻量级模型的动态参数层的数量相同;

将所述多路第一参数发送至所述端侧设备,以使所述端侧设备基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述多路第一参数和第二参数,所述第二参数为所述轻量级模型的固定参数。

11.根据权利要求10所述的方法,其特征在于,若所述样本数据为图像样本,所述图像样本为所述端侧设备采集的连续图像帧的第一帧;

所述轻量级模型包括第一轻量级模型,所述第一轻量级模型用于图像识别;所述参数生成模型包括第一参数生成模型,所述第一参数生成模型用于生成所述第一轻量级模型的第一参数;

将所述样本数据输入所述参数生成模型,得到对所述轻量级模型的第一参数,包括:将所述图像样本输入所述第一参数生成模型,得到所述第一轻量级模型的第一参数。

12.根据权利要求11所述的方法,其特征在于,所述第一参数生成模型包括编码器头部、第一多层感知机MLP以及第二MLP;将所述图像样本输入所述第一参数生成模型,得到所述第一轻量级模型的第一参数,包括:将所述图像样本输入所述第一参数生成模型的编码器头部,再依次通过第一MLP、第二MLP的数据处理,得到所述第一轻量级模型的第一参数。

13.根据权利要求12所述的方法,其特征在于,所述第一轻量级模型的模型参数包括P1层的第一参数以及M1‑P1层的第二参数,所述第二参数为静态参数,P1和M1‑P1均为正整数,M1为大于P1的正整数;

相应的,所述第一MLP包括P1个第一MLP,所述第二MLP包括P1个第二MLP。

14.根据权利要求10所述的方法,其特征在于,若所述样本数据为行为数据样本,所述行为数据样本为用户在所述端侧设备的目标应用程序的一系列行为数据;

所述轻量级模型包括第二轻量级模型,所述第二轻量级模型用于行为预测;所述参数生成模型包括第二参数生成模型,所述第二参数生成模型用于生成所述第二轻量级模型的第一参数;

将所述样本数据输入所述参数生成模型,得到对所述轻量级模型的第一参数,包括:将所述行为数据样本输入所述第二参数生成模型,得到所述第二轻量级模型的第一参数。

15.根据权利要求14所述的方法,其特征在于,所述第二参数生成模型包括门控循环神经网络GRU以及第三MLP;将所述行为数据样本输入所述第二参数生成模型,得到所述第二轻量级模型的第一参数,包括:将所述行为数据样本输入所述第二参数生成模型的GRU,再通过所述第三MLP的数据处理,得到所述第二轻量级模型的第一参数。

16.根据权利要求15所述的方法,其特征在于,所述第二轻量级模型的模型参数包括 P2层的第一参数以及M2‑P2层的第二参数,P2和M2‑P2为正整数,M2为大于P2的正整数;

相应的,所述GRU包括P2个GRU,所述第三MLP包括P2个第三MLP。

17.根据权利要求10至16任一项所述的方法,其特征在于,所述云侧设备上还部署有参数稳定器,所述参数稳定器用于对所述参数生成模型中的目标MLP的目标层参数进行优化;

所述参数稳定器对所述目标MLP的目标层参数的优化过程,包括:

获取多个子MLP的目标层参数,所述多个子MLP用于构建所述目标MLP;

通过对所述多个子MLP的目标层参数进行相似度计算和加权求和处理,得到所述目标MLP的目标层参数;

其中,所述目标层参数包括目标层的权重参数。

18.根据权利要求17所述的方法,其特征在于,所述通过对所述多个子MLP的目标层参数进行相似度计算和加权求和处理,得到所述目标MLP的目标层参数,包括:根据所述多个子MLP的目标层参数生成第一矩阵;

对所述第一矩阵进行转置,得到第二矩阵;

对所述第一矩阵和所述第二矩阵的参数进行相似度计算和加权求和,确定所述多个子MLP的目标层参数的权重;

基于所述多个子MLP的目标层参数的权重以及所述多个子MLP的目标层参数,得到所述目标MLP的目标层参数。

19.一种数据处理方法,其特征在于,应用于端侧设备,所述端侧设备上部署有轻量级模型,所述轻量级模型用于图像识别或行为预测;所述方法包括:向云侧设备发送所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;

接收来自所述云侧设备的多路第一参数,所述多路第一参数是部署在所述云侧设备的参数生成模型基于所述样本数据生成的所述轻量级模型的动态参数;每一路第一参数对应所述端侧设备的所述轻量级模型的一个动态参数层,所述参数生成模型包括多路数据处理通路,每一路数据处理通路用于输出一路第一参数,所述数据处理通路的数量与所述轻量级模型的动态参数层的数量相同;

基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述多路第一参数和第二参数,所述第二参数为所述轻量级模型的固定参数。

20.一种电子设备,其特征在于,包括:存储器和处理器;

所述存储器用于存储程序指令;

所述处理器用于调用所述存储器中的程序指令执行如权利要求10至19中任一项所述的数据处理方法。

说明书 :

数据处理系统、方法和电子设备

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种数据处理系统、方法和电子设备。

背景技术

[0002] 近年来,随着移动端设备和轻量级神经网络的进步发展,在移动端设备上部署深度学习模型已成为现实。例如,可以在智能安防摄像头上部署轻量级计算机视觉模型,用于面部识别。又例如,可以在智能手机上部署轻量级推荐模型,用于电商产品推荐。
[0003] 上述轻量级模型理论上可以在移动端设备上实现良好的性能,但是当这些模型在实际应用中部署后,存在如下问题:在数据快速变化的场景下模型性能下降。例如,在计算机视觉任务中输入到安防摄像头的图像的光线和角度不断变化,又例如,在推荐任务中,用户可能在短时间内产生不同的偏好。

发明内容

[0004] 本申请的多个方面提供一种数据处理系统、方法和电子设备,用以解决目前部署在移动端设备的轻量级模型在数据快速变化场景下性能下降的问题。
[0005] 第一方面,本申请实施例提供一种数据处理系统,包括:云侧设备和端侧设备,所述云侧设备上部署有参数生成模型,所述端侧设备上部署有轻量级模型;
[0006] 所述端侧设备,用于向所述云侧设备发送所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;
[0007] 所述云侧设备,用于将所述样本数据输入所述参数生成模型,得到所述轻量级模型的第一参数;将所述第一参数发送至所述端侧设备;
[0008] 所述端侧设备,还用于基于所述轻量级模型的模型参数对所述样本书数据进行图像识别或行为预测;
[0009] 其中,所述轻量级模型的模型参数包括所述第一参数,所述第一参数为动态参数。
[0010] 第二方面,本申请实施例提供一种数据处理方法,应用于云侧设备,所述云侧设备上部署有参数生成模型,所述参数生成模型用于生成轻量级模型的第一参数,所述第一参数为动态参数,所述轻量级模型部署在端侧设备,所述轻量级模型用于图像识别或行为预测;所述方法包括:
[0011] 接收来自所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;
[0012] 将所述样本数据输入所述参数生成模型,得到所述轻量级模型的第一参数;
[0013] 将所述第一参数发送至所述端侧设备,以使所述端侧设备基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述第一参数。
[0014] 第三方面,本申请实施例提供一种数据处理方法,应用于端侧设备,所述端侧设备上部署有轻量级模型,所述轻量级模型用于图像识别或行为预测;所述方法包括:
[0015] 向云侧设备发送所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;
[0016] 接收来自所述云侧设备的第一参数,所述第一参数是部署在所述云侧设备的参数生成模型基于所述样本数据生成的所述轻量级模型的动态参数;
[0017] 基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述第一参数。
[0018] 第四方面,本申请实施例提供一种数据处理装置,包括:
[0019] 接收模块,用于接收来自端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;
[0020] 处理模块,用于将所述样本数据输入参数生成模型,得到轻量级模型的第一参数;
[0021] 发送模块,用于将所述第一参数发送至所述端侧设备,以使所述端侧设备基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述第一参数。
[0022] 第五方面,本申请实施例提供一种数据处理装置,包括:
[0023] 发送模块,用于向云侧设备发送所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;
[0024] 接收模块,用于接收来自所述云侧设备的第一参数,所述第一参数是部署在云侧设备的参数生成模型基于所述样本数据生成的轻量级模型的动态参数;
[0025] 处理模块,用于基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述第一参数。
[0026] 第六方面,本申请实施例提供一种电子设备,包括:存储器和处理器;存储器用于存储程序指令;处理器用于调用存储器中的程序指令执行如第二方面所述的数据处理方法,或者,执行如第三方面所述的数据处理方法。
[0027] 第七方面,本申请实施例提供一种存储有计算机程序的计算机可读存储介质,当计算机程序/指令被处理器执行时,以使处理器执行如第二方面所述的数据处理方法,或者,执行如第三方面所述的数据处理方法。
[0028] 第八方面,本申请实施例提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,以使处理器执行如第二方面所述的数据处理方法,或者,执行如第三方面所述的数据处理方法。
[0029] 在本申请实施例提供的数据处理系统中,云侧设备上部署有参数生成模型,端侧设备上部署有轻量级模型。端侧设备向云侧设备发送端侧设备实时采集的样本数据,样本数据包括图像样本或行为数据样本。云侧设备将样本数据输入参数生成模型,得到轻量级模型的第一参数,并向端侧设备发送第一参数,以使端侧设备基于轻量级模型的模型参数对样本数据进行图像识别或行为预测,其中轻量级模型的模型参数包括第一参数,第一参数为动态参数。在上述数据处理系统中,云侧的参数生成模型可根据端侧设备实时输入的样本数据,动态地更新端侧设备上轻量级模型的动态参数,使得端侧设备可根据端侧场景数据的变化及时调整端侧轻量级模型,提升端侧设备的轻量级模型的泛化能力。

附图说明

[0030] 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0031] 图1为本申请实施例提供的一种数据处理系统的示意图;
[0032] 图2为本申请实施例提供的一种数据处理系统的示意图;
[0033] 图3为本申请实施例提供的一种数据处理系统的示意图;
[0034] 图4为本申请实施例提供的一种数据处理系统的示意图;
[0035] 图5为本申请实施例提供的一种数据处理系统的示意图;
[0036] 图6为本申请实施例提供的一种数据处理系统的示意图;
[0037] 图7为本申请实施例提供的一种参数稳定器的数据处理示意图;
[0038] 图8为本申请实施例提供的一种数据处理方法的流程示意图;
[0039] 图9为本申请实施例提供的一种数据处理装置的结构示意图;
[0040] 图10为本申请实施例提供的一种数据处理装置的结构示意图;
[0041] 图11为本申请实施例提供的一种电子设备的结构示意图;
[0042] 图12为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

[0043] 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0044] 下面首先对本申请实施例涉及到的专业术语进行简要说明。
[0045] 第一,多层感知机(Multi‑Layer  Perceptron,MLP)是由感知机学习算法(Perceptron Learning Algorithm,PLA)推广而来,其最主要的特点是有多个神经元层,因此也叫深度神经网络(Deep Neural Networks,DNN)。多层感知机具有至少三层,包括输入层、中间层(隐藏层)和输出层,每层中的每个节点都连接到相邻层中的每个节点。
[0046] 第二,门控循环单元(gated recurrent unit,GRU)是一种常用的门控循环神经网络,它引入了重置门(reset gate)和更新门(update gate)的概念,修改循环神经网络中隐藏层重点计算方式。重置门有助于捕捉时间序列里短期的依赖关系,更新门有助于捕捉时间序列里长期的依赖关系。门控制单元的加入,使得门控制循环神经网络可以更好地捕捉时间序列中时间步距离较大的依赖关系。
[0047] 第三,蒸馏(distillation),是将复杂模型压缩成小模型,可先在训练阶段花费大精力训练一个复杂模型,然后在部署阶段以较小的计算代价来产生一个较小的模型,同时保持一定的网络预测表现。
[0048] 第四,轻量级模型,是一种能够在移动终端侧使用的网络模型,相较于部署在云端的网络模型,模型的运算量和参数数量减小。轻量级计算机视觉模型包括例如MobileNet、EfficientNet、GhostNet等,轻量级推荐模型包括例如DIN、SASRec、GRU4Rec。轻量级目标检测模型包括例如Yolox‑nano等。本申请实施例中,部署在端侧的轻量级模型主要包括上述的计算机视觉模型和推荐模型。
[0049] 第五,元网络(MetaNetwork,MN),是一种端云协同框架。
[0050] 第六,元生成器(MetaGenerator,MG),是一种部署在云上的可以为端上轻量级模型生成动态模型参数的网络。在本申请实施例中,元生成器也称为参数生成模型,元生成器包括MLP,MLP可用于生成端上轻量级模型的模型参数。
[0051] 第七,元稳定器(MetaStabilizer,MS),是一种部署在云上的可以稳定MG训练并提升MG性能的模块。在本申请实施例中,元稳定器也称为参数稳定器,云稳定器通过训练多个子MLP,最终确定元生成器中的MLP,具体原理参见后文。
[0052] 第八,前馈运算,即模型预测过程。本申请实施例中,端侧设备上的轻量级模型参数包括静态参数和动态参数,在云端协同框架下,通过训练过程可得端侧设备上的轻量级模型最优的静态参数,以及云侧设备上参数生成模型(即元生成器)最优的模型参数。在推理/预测过程中,端侧设备将获取的测试数据上传至云侧,云侧通过参数生成模型获得轻量级模型的动态参数。随后端侧设备更新轻量级模型,基于轻量级模型的静态参数以及最新的动态参数,对端侧当前测试数据做前馈运算,输出预测结果。
[0053] 目前,对深度神经网络的常规研究主要集中在使用更大的模型来提高模型性能。然而,由于存储空间和算力的限制,在移动端设备上部署这些大模型是不切实际的。随着轻量级神经网络的不断发展,将轻量级模型部署在移动终端成为必然趋势。然而,端侧设备上的轻量级模型很难适应数据快速变化的场景。例如,智能安防摄像头在不同照明条件和不同角度下获取图像输入。或者,在推荐系统任务中,用户可能在短时间内有不同类型的偏好。
[0054] 对此,可以考虑使用本地样本数据在端侧设备对轻量级模型进行实时训练、实时模型蒸馏或其他知识迁移方法,但是由于数据量有限,端上的轻量级模型很容易陷入过拟合。而且,在计算机视觉应用等场景中,每个端侧设备甚至无法在短时间内获得带有标签的数据。此外,端侧设备训练需要进行反向传播,这会消耗端侧更多的计算资源和能量,使其难以实际应用。综上分析,在端侧设备上训练轻量级模型在实际应用中是不可行的。
[0055] 基于上述分析,考虑基于MN的端云协同框架,在云侧设备部署一个参数生成模型,该参数生成模型的输入可以是端侧设备基于应用场景实时采集的一部分数据,例如模型的输入可以是相机在几分钟或几十分钟内捕捉到的第一帧图像,也可以是用户最近在电商应用程序App上点击的几十个产品序列。该参数生成模型的输出是端侧设备上轻量级模型的模型参数。端侧设备在接收到云侧设备发送的轻量级模型的模型参数后,及时更新该轻量级模型,以便在未来的短时间内负责端侧设备上的推理。上述方案实现了云侧基于端侧动态变化的场景数据,实时更新端侧轻量级模型参数,使得端侧轻量级模型在应对数据快速变化场景时,能够具备良好的预测或识别效果。
[0056] 需要说明的是,端侧设备上部署的轻量级模型的模型参数(具体是轻量级模型的动态参数)可由参数生成模型通过前馈运算生成的,这种计算效率很高,并且可以实现近乎实时的模型更新。
[0057] 进一步的,为了提高参数生成模型的稳定性,还考虑在云侧设备上部署一个参数稳定器,该参数稳定器的功能原理为:通过训练多个参数生成器(对应后文实施例中参数生成模型中的MLP部分),对这多个参数生成器进行自相似加权,得到一个自校正的参数生成器,使用这个新的参数生成器来预测端侧设备上的轻量级模型的模型参数。
[0058] 需要说明的是,云侧设备预测端侧设备上的轻量级模型的模型参数,该模型参数为轻量级模型中的动态参数,可以是轻量级模型的最后几层的参数。
[0059] 下面首先对本申请技术方案的系统架构进行说明。
[0060] 图1为本申请实施例提供的一种数据处理系统的示意图。如图1所示,本实施例提供一种数据处理系统包括:云侧设备101和端侧设备102,云侧设备101通过端云链路与端侧设备102通信连接。
[0061] 本实施例中,端侧设备102具体是指数据生产设备,包括但不限于智能手机、便携式电脑、平板电脑、可穿戴设备、智能家电设备、智能安防设备等。端侧设备102负责各类数据的生产、采集以及上传。
[0062] 本实施例中,云侧设备101可以是分布式架构的中心云设备,也可以是分布式架构的边缘云设备。云侧设备101提供超强的计算和存储能力,可基于端侧设备102上传的样本数据,生成端侧设备102上的轻量级模型的模型参数,以使端侧设备102实时更新轻量级模型的模型参数,提升端侧设备102上轻量级模型的性能。
[0063] 为了便于理解本实施例系统架构中设备间的执行交互,下面结合几个具体应用场景对设备间的执行交互过程进行说明。
[0064] 在一种可能的场景中,云侧设备为电商平台的中心云设备或者边缘云设备。云侧设备可从端侧设备(例如,智能手机)获取用户在电商平台的行为数据,例如用户在一定时间内浏览多个产品。云侧设备基于这些行为数据生成端侧设备上的轻量级模型的模型参数,并将模型参数及时同步给端侧设备,以便端侧设备更新其轻量级模型,提升端侧轻量级模型对用户行为的预测效果。
[0065] 应理解,用户的行为数据在实时变化,云侧设备接收端侧设备实时采集的一系列行为数据,基于该行为数据生成端侧轻量级模型的模型参数,并将其下发给端侧设备,提高端侧轻量级模型对当前用户行为的预测效果。
[0066] 在一种可能的场景中,云侧设备为智能安防平台的中心云设备或边缘云设备。云侧设备可从端侧设备(例如,安防摄像头)获取监控场景的图像数据,例如摄像头采集到一组图像序列,该组图像序列包括多个图像帧,摄像头将图像序列中的第一帧图像发送给云侧设备。云侧设备基于第一帧图像数据生成端侧设备上的轻量级模型的模型参数,并将模型参数及时同步给端侧设备,以便端侧设备更新其轻量级模型,提升端侧轻量级模型对图像中目标对象(例如,车辆)的检测效果。
[0067] 应理解,监控场景的光照和天气条件在实时变化,云侧设备接收端侧设备发送的实时图像,基于该实时图像生成端侧轻量级模型的模型参数,并将其下发给端侧设备,提高端侧轻量级模型对当前图像中目标对象的检测效果。
[0068] 在一种可能的场景中,云侧设备为图像处理平台的中心云设备或边缘云设备。云侧设备可从端侧设备(例如,智能手机)获取用户拍摄的图像数据,例如手机摄像头采集到一组图像序列,该组图像序列包括多个图像帧,手机将图像序列中的第一帧图像发送给云侧设备。云侧设备基于第一帧图像生成端侧设备上的轻量级模型的模型参数,并将模型参数及时同步给端侧设备,以便端侧设备更新其轻量级模型,提升端侧轻量级模型对图像中目标对象(例如,人物面部)的识别效果(例如,表情识别)。
[0069] 应理解,用户的拍摄环境在实时变化,云侧设备接收端侧设备发送的实时图像,基于该实时图像生成端侧轻量级模型的模型参数,并将其下发给端侧设备,提高端侧轻量级模型对当前图像中目标对象的识别效果。
[0070] 需要指出的是,对于上述任一种场景,云侧设备在完成模型参数生成后,向端侧设备发送端侧模型参数后,出于隐私保护,云侧设备应及时删除涉及用户的个人数据和隐私数据。
[0071] 需要说明的是,本申请实施例对于端侧设备的轻量级模型的功能不作具体限定,除了上述场景中列举模型具有行为预测、车辆检测、面部识别等功能,还可以是其他功能的轻量级模型。
[0072] 下面通过具体实施例对本申请实施例提供的技术方案进行详细说明。需要说明的是,本申请实施例提供的技术方案可以包括以下内容中的部分或全部,下面几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
[0073] 图2为本申请实施例提供的一种数据处理系统的示意图。如图2所示,该数据处理系统包括:云侧设备和端侧设备,云侧设备上部署有参数生成模型,端侧设备上部署有轻量级模型。其中,端侧设备向云侧设备发送端侧设备实时采集的样本数据,样本数据包括图像样本或行为数据样本。云侧设备将样本数据输入参数生成模型,得到轻量级模型的第一参数。轻量级模型的第一参数为轻量级模型的动态参数,也称为可变参数。云侧设备将第一参数发送至端侧设备,以使端侧设备更新轻量级模型的第一参数,端侧设备可基于更新后的轻量级模型对样本数据进行图像识别或行为预测。可选的,端侧设备可基于更新后的轻量级模型,对样本数据以及短时段内(预设的一定时段内)端侧设备采集的其他样本数据,进行图像识别或行为预测。
[0074] 需要指出的是,轻量级模型的模型参数除了第一参数外,还包括第二参数,第二参数为轻量级模型的静态参数,也称为固定参数。
[0075] 需要说明的是,模型压缩策略获得的端侧模型参数通常是云侧设备基于不同端侧设备样本数据训练得到的模型参数,即云侧设备用全量数据训练得到的。对于某一特定端侧设备而言,在未来的一段时间内,端侧的数据发布很可能发生变化,这将导致端侧模型的预测性能下降。由于端侧设备上无法获取实时的训练数据,因此现有的模型压缩策略并不能解决这一问题。
[0076] 本实施例提供的技术方案不同于端云协同下的模型压缩策略,云侧设备接收端侧设备发送的样本数据,该样本数据是端侧设备实时获取的测试数据,如图像序列的第一帧或者点击序列等,云侧设备基于预训练的参数生成模型,动态更新该端侧设备的轻量级模型的模型参数,提升该端侧设备的轻量级模型在每个时间段内的表现,从而弥补该端侧设备的轻量级模型由于参数量限制导致的模型泛化能力不足的缺点。上述处理过程中,端侧设备仅需要向云侧设备提供样本数据,云侧设备为其预测最新的第一参数(具体是指当前端侧设备的数据分布下最优的第一参数),以便端侧设备基于端侧模型参数(包括第二参数以及最新的第一参数),对当前测试数据进行图像识别或行为预测。
[0077] 基于图2所示的数据处理系统,下面结合端侧不同的轻量级模型,对数据处理系统进行更为详细的介绍。
[0078] 在一个实施例中,端侧设备上部署的轻量级模型包括第一轻量级模型,第一轻量级模型用于图像识别。相应的,云侧设备上部署的参数生成模型包括第一参数生成模型,第一参数生成模型用于生成第一轻量级模型的第一参数。第一轻量级模型的第一参数为该模型的动态参数。
[0079] 示例性的,图3为本申请实施例提供的一种数据处理系统的示意图。如图3所示,本实施例的数据处理系统中:
[0080] 端侧设备向云侧设备发送样本数据,本实施例中,样本数据为图像样本。具体的,图像样本为端侧设备采集的连续图像帧中的第一帧图像,例如图3所示的图像序列x0至xn,端侧设备仅向云侧设备发送图像序列中的第一帧图像x0。
[0081] 需要说明的是,考虑到连续图像帧的拍摄环境和拍摄角度基本没有变化,因此端侧设备只需要发送连续图像帧的第一帧图像即可,降低云侧设备计算负担。
[0082] 云侧设备接收图像样本后,将图像样本输入云侧设备上部署的第一参数生成模型,得到第一轻量级模型的第一参数。云侧设备向端侧设备下发第一轻量级模型的第一参数,以使端侧设备更新第一轻量级模型的第一参数。
[0083] 端侧设备基于第一轻量级模型的模型参数,对输入第一轻量级模型的图像序列中的每一帧图像进行目标对象的识别或检测,输出图像识别或检测结果。其中,第一轻量级模型的模型参数包括接收来自云侧设备第一轻量级模型的第一参数,以及第一轻量级模型的第二参数。
[0084] 作为一种示例,参照图3,第一参数生成模型包括编码器头部(encoder neck)、第一多层感知机MLP(即图3的MLP1)以及第二MLP(即图3的MLP2)。编码器头部的输入端即为第一参数生成模型的输入端,编码器头部的输出端与第一MLP的输入端连接,第一MLP的输出端与第二MLP的输入端连接,第二MLP的输出即为第一参数生成模型的输出。具体的,云侧设备将图像样本输入第一参数生成模型的编码器头部,再依次通过第一MLP、第二MLP的数据处理,得到第一轻量级模型的第一参数。
[0085] 需要说明的是,第一MLP包括一个线性层,第一MLP可将一个嵌入向量线性映射到另一个同维度的嵌入向量。第二MLP与第一MLP不同,第二MLP包括两个线性层和非线性的激活函数,第二MLP可将嵌入向量转化为模型参数(如端侧轻量级模型的第一参数),其功能相当于一个解码器。
[0086] 在上述示例的基础上,第一参数生成模型的模型结构可作进一步扩展,这取决于端侧设备上第一轻量级模型的哪些层参数可变。作为一种示例,端侧设备可向云侧设备发送超参数 ,该超参数用于指示第一轻量级模型的动态参数的总层数。在多数时候,如果选择了合适的超参数 ,可提升第一参数生成模型的性能。
[0087] 示例性的,图4为本申请实施例提供的一种数据处理系统的示意图。如图4所示,端侧设备的第一轻量级模型包括1个输入层、2个隐藏层和1个输出层,其中第一轻量级模型的后3层,即2个隐藏层和1个输出层有动态参数,即动态参数的总层数为3。相应的,基于图3所示的第一参数生成模型,在云侧设备上可扩展总计3路MLP,每路MLP包括一个MLP1和一个MLP2,3路MLP共享一个编码器头部。
[0088] 图4所示的第1路MLP的MLP2输出的第一参数对应第一轻量级模型的第1个隐藏层,第2路MLP的MLP2输出的第一参数对应第一轻量级模型的第2个隐藏层,第3路MLP的MLP2输出的第一参数对应第一轻量级模型的输出层。即将第1路MLP的MLP2输出的第一参数作为第一轻量级模型的第1个隐藏层的参数,将第2路MLP的MLP2输出的第一参数作为第一轻量级模型的第2个隐藏层的参数,将第3路MLP的MLP2输出的第一参数作为第一轻量级模型的输出层的参数。
[0089] 综上示例可知,第一轻量级模型的模型参数包括P1层的第一参数以及M1‑P1层的第二参数,第二参数为静态参数,P1和M1‑P1均为正整数。相应的,第一MLP包括P1个第一MLP,第二MLP包括P1个第二MLP。参照图4,M1取4,P1取3。
[0090] 上述示例中,云侧设备的第一参数生成模型输出多路第一参数,每一路第一参数对应端侧设备的第一轻量级模型的一个动态参数层。
[0091] 在一个实施例中,端侧设备上部署的轻量级模型包括第二轻量级模型,第二轻量级模型用于行为预测。相应的,云侧设备上部署的参数生成模型包括第二参数生成模型,第二参数生成模型用于生成第二轻量级模型的第一参数。第二轻量级模型的第一参数为该模型的动态参数。
[0092] 示例性的,图5为本申请实施例提供的一种数据处理系统的示意图。如图5所示,本实施例的数据处理系统中:
[0093] 端侧设备向云侧设备发送样本数据,本实施例中,样本数据为行为数据样本。具体的,行为数据样本为用户在端侧设备的目标应用程序的一系列行为数据,例如图5所示的点击序列m0至mn,端侧设备向云侧设备发送该点击序列。
[0094] 云侧设备接收行为数据样本后,将行为数据样本输入云侧设备上部署的第二参数生成模型,得到第二轻量级模型的第一参数。云侧设备向端侧设备下发第二轻量级模型的第一参数,以使端侧设备更新第二轻量级模型的第一参数。
[0095] 需要说明的是,行为数据样本包括多个行为数据,如图5所示的多个点击行为,每个点击行为对应的行为数据包括例如用户点击浏览的产品信息等。
[0096] 云侧设备将行为数据样本输入第二参数生成模型,具体包括:云侧设备将多个行为数据一并输入第二参数生成模型。
[0097] 端侧设备基于第二轻量级模型的模型参数,以及输入第二轻量级模型的点击序列,对用户未来行为进行预测,输出行为预测结果。其中,第二轻量级模型的模型参数包括接收来自云侧设备的第二轻量级模型的第一参数,以及第二轻量级模型的第二参数。
[0098] 作为一种示例,参照图5,第二参数生成模型包括门控循环神经网络GRU以及第三MLP(即图5的MLP2)。GRU的输入端即为第二参数生成模型的输入端,GRU的输出端与第三MLP的输入端连接,第三MLP的输出端即为第二参数生成模型的输出端。具体的,云侧设备将行为数据样本输入第二参数生成模型的GRU,再通过第三MLP的数据处理,得到第二轻量级模型的第一参数。
[0099] 需要说明的是,本实施例的第三MLP与上文实施例的第二MLP类似,第三MLP同样包括两个线性层和非线性的激活函数,第三MLP可将嵌入向量转化为模型参数(如端侧轻量级模型的第一参数),其功能相当于一个解码器。
[0100] 在上述示例的基础上,第二参数生成模型的模型结构可作进一步扩展,这取决于端侧设备上第二轻量级模型的哪些层参数可变。作为一种示例,端侧设备可向云侧设备发送一个超参数,该超参数用于指示第二轻量级模型的动态参数的总层数。
[0101] 示例性的,图6为本申请实施例提供的一种数据处理系统的示意图。如图6所示,端侧设备的第二轻量级模型包括1个输入层、1个隐藏层和1个输出层,其中第二轻量级模型的后2层,即隐藏层和输出层有动态参数,即动态参数的总层数为2。相应的,基于图5所示的第二参数生成模型,在云侧设备上可扩展总计2路处理模块,每一路处理模块包括一个GRU和一个MLP2。
[0102] 图6所示的第1路处理模块中MLP2输出的第一参数对应第二轻量级模型的隐藏层,第2路处理模块中MLP2输出的第一参数对应第二轻量级模型的输出层。即将第1路处理模块中MLP2输出的第一参数作为第二轻量级模型的隐藏层的参数,将第2路处理模块中MLP2输出的第一参数作为第二轻量级模型的输出层的参数。
[0103] 综上示例可知,第二轻量级模型的模型参数包括 P2层的第一参数以及M2‑P2层的第二参数,P2和M2‑P2 为正整数。相应的,GRU包括P2个GRU,第三MLP包括P2个第三MLP。参照图6,M2取3,P2取1。
[0104] 上述示例中,云侧设备的第二参数生成模型输出多路第一参数,每一路第一参数对应端侧设备的第二轻量级模型的一个动态参数层。
[0105] 上述实施例示出的参数生成模型,如第一参数生成模型和第二参数生成模型,可根据端侧设备所处的不同环境的样本,动态地更新端侧设备上轻量级模型的模型参数,提升端侧设备的轻量级模型泛化能力,也即提升端侧设备上轻量级模型的性能。
[0106] 上述实施例示出的参数生成模型,其损失函数可以定义为:
[0107]
[0108] 式中, 表示输入参数生成模型的某一样本数据(如某一图像帧或者某一项行为数据),t取0至T,T表示图像序列或点击序列的时长,表示多个图像序列或多个点击序列。表示云侧的参数生成模型; 表示参数生成模型 输出的第一参数(即轻量级模型的第一参数); 表示轻量级模型的第二参数; 表示端侧的轻量级模型; 表示
将样本数据 输入轻量级模型后,轻量级模型输出的预测结果; 表示样本数据 对应的标注结果;是模型训练的损失函数,例如二分类交叉熵损失函数等,这里所述的模型训练包括训练云侧的参数生成模型的模型参数以及端侧的轻量级模型的第二参数;表示用于调节训练的超参数,为正数,例如取0.9、1、2等。
[0109] 需要说明的是,对于图像识别场景,通常可以将 设置为小于1的正数,例如0.9,这样设置的目的在于:对于时长为T的图像序列,随着时间的推移,图像序列中图像帧的重要程度递减。通过上述设置可提升参数生成模型对短时场景的轻量级模型参数的预测效果。
[0110] 考虑到上述参数生成模型在训练过程时经常产生较大振荡,且参数生成模型对端侧设备上轻量级模型的参数生成效果有时并不稳定,因此,设计了参数稳定器,将其部署在云侧设备,以提升云侧设备的参数生成模型的性能。
[0111] 在一个实施例中,云侧设备上还部署有参数稳定器,参数稳定器用于对参数生成模型中的目标MLP的目标层参数进行优化。目标MLP的目标层可以是目标MLP的任一层。
[0112] 云侧设备的参数稳定器对目标MLP的目标层参数的优化过程,具体包括:获取多个子MLP的目标层参数,多个子MLP用于构建目标MLP;通过对多个子MLP的目标层参数进行相似度计算和加权求和处理,得到目标MLP的目标层参数。其中,目标层参数包括目标层的权重参数。可选的,目标层参数还包括目标层的偏置参数。
[0113] 可选的,云侧设备的参数稳定器通过对多个子MLP的目标层参数进行相似度计算和加权求和处理,得到目标MLP的目标层参数,具体包括:
[0114] 根据多个子MLP的目标层参数生成第一矩阵;对第一矩阵进行转置,得到第二矩阵;对第一矩阵和第二矩阵的参数进行相似度计算和加权求和,确定多个子MLP的目标层参数的权重;基于多个子MLP的目标层参数的权重以及多个子MLP的目标层参数,得到目标MLP的目标层参数。
[0115] 为了更好的理解参数稳定器,下面结合一个具体示例对其处理过程进行详细说明。
[0116] 作为一种示例,参照图3,云侧设备上部署的参数稳定器用于对第一参数生成模型中的MLP2的目标层参数进行优化。目标层参数包括第一参数生成模型中MLP2的任一层参数。
[0117] 示例性的,图7为本申请实施例提供的一种参数稳定器的数据处理示意图。本实施例基于图3所述的云侧设备,云侧设备的第一参数生成模型包括编码器头部、MLP1和MLP2。优化第一参数生成模型中的MLP2的过程,包括:优化MLP2中每一层的参数。为了便于理解,图7以优化MLP2的第一层(图7中灰色层)参数为例进行方案说明。如图7所示,优化MLP2的第一层参数,具体包括:
[0118] 步骤1,首先构建n个子MLP2,如图7中的MLP21, MLP22,…, MLP2n,通过样本数据训练,获取n个子MLP2的第一层参数。
[0119] 步骤2、根据n个子MLP2的第一层参数生成第一矩阵 。
[0120] 其中, , 表示MLP21的第一层参数, 表示MLP22的第一层参数, 表示MLP2n的第一层参数。
[0121] 步骤3、对第一矩阵 进行转置,得到第二矩阵 。
[0122] 步骤4、对第一矩阵和第二矩阵的参数进行相似度计算和加权求和,确定n个子MLP2的第一层参数的权重。
[0123] 作为一种示例,步骤4,具体包括:
[0124] 步骤41、通过第一矩阵和第二矩阵相乘,得到一个n*n的自相似度矩阵,记为。
[0125] 步骤42、对 按行求和,得到n*1的权重向量p={p1,p2,…,pn}。
[0126] 其中,p1表示MLP21的第一层参数的权重值,p2表示MLP22的第一层参数的权重值,pn表示MLP2n的第一层参数的权重值。
[0127] 本步骤中,还需要对权重向量p进行归一化处理,可参照如下公式:
[0128]
[0129] 式中,i, j∈[1,n], 为正数,例如 取1。
[0130] 步骤5、基于n个子MLP2的第一层参数的权重以及n个子MLP2的第一层参数,确定MLP2的第一层参数。
[0131] 具体的,可通过如下公式确定MLP2的第一层参数 :
[0132]
[0133] 基于上述步骤,通过对n个子MLP2的第一层参数进行相似度计算和加权求和处理,得到MLP2的第一层参数。
[0134] 需要说明的是,本实施例中MLP2的第一层参数除了包括权重参数 之外,还包括偏置参数 。在一些实施例中,也可通过对n个子MLP2的偏置参数进行相似度计算和加权求和处理,得到MLP2的偏置参数。
[0135] 同理,可优化第一参数生成模型的MLP2中的其他层参数。
[0136] 作为一种示例,参照图5,云侧设备上部署的参数稳定器用于对第二参数生成模型中的MLP2的目标层参数进行优化。目标层参数包括第二参数生成模型中MLP2的任一层参数。
[0137] 对于第二参数生成模型中MLP2的任一层参数的优化过程与上述实施例类似,可参照上述实施例,此处不再展开。
[0138] 上述实施例示出的参数稳定器,可用来减小参数生成模型在训练期间的振荡,提升参数生成模型的性能。
[0139] 在本申请实施例中,除了提供一种数据处理系统之外,还提供一种数据处理方法,下面结合附图对数据处理方法进行说明。
[0140] 图8为本申请实施例提供的一种数据处理方法的流程示意图。本实施例提供的数据处理方法涉及云侧设备和端侧设备的交互过程。其中,云侧设备上部署有参数生成模型,端侧设备上部署有轻量级模型。参数生成模型用于生成轻量级模型的第一参数,第一参数为动态参数,轻量级模型用于图像识别或行为预测。
[0141] 如图8所示,该数据处理方法包括:
[0142] 步骤801、端侧设备向云侧设备发送端侧设备实时采集的样本数据。
[0143] 其中,样本数据包括图像样本或行为数据样本。
[0144] 步骤802、云侧设备将样本数据输入参数生成模型,得到轻量级模型的第一参数。
[0145] 步骤803、云侧设备向端侧设备发送第一参数。
[0146] 步骤804、端侧设备基于轻量级模型的模型参数对样本数据进行图像识别或行为预测。
[0147] 其中,轻量级模型的模型参数包括第一参数。
[0148] 在一个实施例中,端侧设备基于轻量级模型的第一参数和第二参数,对样本数据进行图像识别或行为预测。需要说明的是,此处的第一参数为云侧设备基于当前样本数据实时更新的第一参数。
[0149] 第一参数为轻量级模型的动态参数,第二参数为轻量级模型的静态参数。
[0150] 在一个实施例中,端侧设备可基于第二参数和更新后的第一参数,对样本数据以及短时段内(预设的一定时段内)端侧设备采集的其他样本数据,进行图像识别或行为预测。
[0151] 本实施例的一个可选实施例中,若样本数据为图像样本,图像样本为端侧设备采集的连续图像帧的第一帧;轻量级模型包括第一轻量级模型,第一轻量级模型用于图像识别;参数生成模型包括第一参数生成模型,第一参数生成模型用于生成第一轻量级模型的第一参数。将样本数据输入参数生成模型,得到对轻量级模型的第一参数,包括:将图像样本输入第一参数生成模型,得到第一轻量级模型的第一参数。
[0152] 本实施例的一个可选实施例中,第一参数生成模型包括编码器头部、第一多层感知机MLP以及第二MLP;将图像样本输入第一参数生成模型,得到第一轻量级模型的第一参数,包括:将图像样本输入第一参数生成模型的编码器头部,再依次通过第一MLP、第二MLP的数据处理,得到第一轻量级模型的第一参数。
[0153] 本实施例的一个可选实施例中,第一轻量级模型的模型参数包括P1层的第一参数以及M1‑P1层的第二参数,第二参数为静态参数,P1和M1‑P1均为正整数;相应的,第一MLP包括P1个第一MLP,第二MLP包括P1个第二MLP。
[0154] 本实施例的一个可选实施例中,若样本数据为行为数据样本,行为数据样本为用户在端侧设备的目标应用程序的一系列行为数据;轻量级模型包括第二轻量级模型,第二轻量级模型用于行为预测;参数生成模型包括第二参数生成模型,第二参数生成模型用于生成第二轻量级模型的第一参数;将样本数据输入参数生成模型,得到对轻量级模型的第一参数,包括:将行为数据样本输入第二参数生成模型,得到第二轻量级模型的第一参数。
[0155] 本实施例的一个可选实施例中,第二参数生成模型包括门控循环神经网络GRU以及第三MLP;将行为数据样本输入第二参数生成模型,得到第二轻量级模型的第一参数,包括:将行为数据样本输入第二参数生成模型的GRU,再通过第三MLP的数据处理,得到第二轻量级模型的第一参数。
[0156] 本实施例的一个可选实施例中,第二轻量级模型的模型参数包括 P2层的第一参数以及M2‑P2层的第二参数,P2和M2‑P2 为正整数;相应的,GRU包括P2个GRU,第三MLP包括P2个第三MLP。
[0157] 本实施例的一个可选实施例中,云侧设备上还部署有参数稳定器,参数稳定器用于对参数生成模型中的目标MLP的目标层参数进行优化;参数稳定器对目标MLP的目标层参数的优化过程,包括:获取多个子MLP的目标层参数,多个子MLP用于构建目标MLP;通过对多个子MLP的目标层参数进行相似度计算和加权求和处理,得到目标MLP的目标层参数;其中,目标层参数包括目标层的权重参数。
[0158] 本实施例的一个可选实施例中,通过对多个子MLP的目标层参数进行相似度计算和加权求和处理,得到目标MLP的目标层参数,包括:根据多个子MLP的目标层参数生成第一矩阵;对第一矩阵进行转置,得到第二矩阵;对第一矩阵和第二矩阵的参数进行相似度计算和加权求和,确定多个子MLP的目标层参数的权重;基于多个子MLP的目标层参数的权重以及多个子MLP的目标层参数,得到目标MLP的目标层参数。
[0159] 本申请实施例示出的数据处理方法中,云侧设备接收端侧设备发送的样本数据,样本数据可以时端侧设备实时采集的图像样本或行为数据样本。云侧设备将样本数据输入参数生成模型,生成轻量级模型的第一参数,并向端侧设备发送第一参数,以使端侧设备基于轻量级模型的模型参数,对样本数据进行图像识别或行为预测,轻量级模型的模型参数包括第一参数。上述方法适用于模型预测过程,云侧的参数生成模型可根据端侧设备实时输入的样本数据,动态地更新端侧设备上轻量级模型的动态参数,使得端侧设备可根据端侧场景数据的变化及时调整端侧轻量级模型,提升端侧设备的轻量级模型的泛化能力。
[0160] 在本申请实施例中,除了提供数据处理方法之外,还提供一种数据处理装置。图9为本申请实施例提供的一种数据处理装置的结构示意图。如图9所示,该数据处理装置900包括:接收模块901,处理模块902以及发送模块903。
[0161] 接收模块901,用于接收来自端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;
[0162] 处理模块902,用于将所述样本数据输入参数生成模型,得到轻量级模型的第一参数;
[0163] 发送模块903,用于将所述第一参数发送至所述端侧设备,以使所述端侧设备基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述第一参数。
[0164] 本实施例的一个可选实施例中,若所述样本数据为图像样本,所述图像样本为所述端侧设备采集的连续图像帧的第一帧;所述轻量级模型包括第一轻量级模型,所述第一轻量级模型用于图像识别;所述参数生成模型包括第一参数生成模型,所述第一参数生成模型用于生成所述第一轻量级模型的第一参数;
[0165] 处理模块902,具体用于将所述图像样本输入所述第一参数生成模型,得到所述第一轻量级模型的第一参数。
[0166] 本实施例的一个可选实施例中,所述第一参数生成模型包括编码器头部、第一多层感知机MLP以及第二MLP;处理模块902,具体用于将所述图像样本输入所述第一参数生成模型的编码器头部,再依次通过所述第一MLP、第二MLP的数据处理,得到所述第一轻量级模型的第一参数。
[0167] 本实施例的一个可选实施例中,所述第一轻量级模型的模型参数包括P1层的第一参数以及M1‑P1层的第二参数,所述第二参数为静态参数,P1和M1‑P1均为正整数;相应的,所述第一MLP包括P1个第一MLP,所述第二MLP包括P1个第二MLP。
[0168] 本实施例的一个可选实施例中,若所述样本数据为行为数据样本,所述行为数据样本为用户在所述端侧设备的目标应用程序的一系列行为数据;所述轻量级模型包括第二轻量级模型,所述第二轻量级模型用于行为预测;所述参数生成模型包括第二参数生成模型,所述第二参数生成模型用于生成所述第二轻量级模型的第一参数;
[0169] 处理模块902,具体用于将所述行为数据样本输入所述第二参数生成模型,得到所述第二轻量级模型的第一参数。
[0170] 本实施例的一个可选实施例中,所述第二参数生成模型包括门控循环神经网络GRU以及第三MLP;处理模块902,具体用于:
[0171] 将所述行为数据样本输入所述第二参数生成模型的GRU,再通过所述第三MLP的数据处理,得到所述第二轻量级模型的第一参数。
[0172] 本实施例的一个可选实施例中,所述第二轻量级模型的模型参数包括 P2层的第一参数以及M2‑P2层的第二参数,P2和M2‑P2 为正整数;相应的,所述GRU包括P2个GRU,所述第三MLP包括P2个第三MLP。
[0173] 本实施例的一个可选实施例中,所述云侧设备上还部署有参数稳定器,所述参数稳定器用于对所述参数生成模型中的目标MLP的目标层参数进行优化;
[0174] 所述参数稳定器对所述目标MLP的目标层参数的优化过程,包括:获取多个子MLP的目标层参数,所述多个子MLP用于构建所述目标MLP;通过对所述多个子MLP的目标层参数进行相似度计算和加权求和处理,得到所述目标MLP的目标层参数;其中,所述目标层参数包括目标层的权重参数。
[0175] 本实施例的一个可选实施例中,所述参数稳定器通过对所述多个子MLP的目标层参数进行相似度计算和加权求和处理,得到所述目标MLP的目标层参数,包括:根据所述多个子MLP的目标层参数生成第一矩阵;对所述第一矩阵进行转置,得到第二矩阵;对所述第一矩阵和所述第二矩阵的参数进行相似度计算和加权求和,确定所述多个子MLP的目标层参数的权重;基于所述多个子MLP的目标层参数的权重以及所述多个子MLP的目标层参数,得到所述目标MLP的目标层参数。
[0176] 本实施例的数据处理装置900可以部署在云侧设备或云服务器上,可根据端侧设备所处的不同环境的样本,动态地更新端侧设备上轻量级模型的模型参数,提升端侧设备的轻量级模型泛化能力。
[0177] 在本申请实施例中,还提供一种数据处理装置,图10为本申请实施例提供的一种数据处理装置的结构示意图。如图10所示,该数据处理装置1000包括:发送模块1001,接收模块1002以及处理模块1003。
[0178] 发送模块1001,用于向云侧设备发送所述端侧设备实时采集的样本数据,所述样本数据包括图像样本或行为数据样本;接收模块1002,用于接收来自所述云侧设备的第一参数,所述第一参数是部署在云侧设备的参数生成模型基于所述样本数据生成的轻量级模型的动态参数;处理模块1003,用于基于所述轻量级模型的模型参数对所述样本数据进行图像识别或行为预测,所述轻量级模型的模型参数包括所述第一参数。
[0179] 本实施例的数据处理装置1000可以部署在端侧设备上,可根据云侧设备发送的轻量级模型的第一参数,及时更新部署在本地的轻量级模型的第一参数,提升该模型的泛化能力。
[0180] 需要说明的是,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
[0181] 图11为本申请实施例提供的一种电子设备的结构示意图。如图11所示,该电子设备包括:存储器1101和处理器1102。存储器1101,用于存储计算机程序,并可被配置为存储其它各种数据以支持在云侧设备上的操作。处理器1102,与存储器1101耦合,用于执行存储器1101中的计算机程序,以实现前述方法实施例中云侧设备的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0182] 可选的,如图11所示,该电子设备还包括:防火墙1103、负载均衡器1104、通信组件1105、电源组件1106等其它组件。图11中仅示意性给出部分组件,并不意味着电子设备只包括图11所示组件。
[0183] 图12为本申请实施例提供的一种电子设备的结构示意图。如图12所示,该电子设备包括:存储器1201和处理器1202。存储器1201,用于存储计算机程序,并可被配置为存储其它各种数据以支持在端侧设备上的操作。处理器1202,与存储器1201耦合,用于执行存储器1201中的计算机程序,以实现前述方法实施例中端侧设备的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0184] 可选的,如图12所示,该电子设备还包括:防火墙1203、负载均衡器1204、通信组件1205、电源组件1206等其它组件。图12中仅示意性给出部分组件,并不意味着电子设备只包括图12所示组件。
[0185] 本申请实施例提供一种存储有计算机程序的计算机可读存储介质,当计算机程序/指令被处理器执行时,以使处理器实现如前述方法实施例中云侧设备的技术方案。
[0186] 本申请实施例提供一种存储有计算机程序的计算机可读存储介质,当计算机程序/指令被处理器执行时,以使处理器实现如前述方法实施例中端侧设备的技术方案。
[0187] 本申请实施例提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,以使处理器实现如前述方法实施例中云端设备的技术方案。
[0188] 本申请实施例提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,以使处理器实现如前述方法实施例中端侧设备的技术方案。
[0189] 本申请实施例提供一种芯片,包括:处理模块与通信接口,该处理模块能执行前述方法实施例中云端设备的技术方案。可选的,该芯片还包括存储模块(如,存储器),存储模块用于存储指令,处理模块用于执行存储模块存储的指令,并且对存储模块中存储的指令的执行使得处理模块执行前述方法实施例中云端设备的技术方案。
[0190] 本申请实施例提供一种芯片,包括:处理模块与通信接口,该处理模块能执行前述方法实施例中端侧设备的技术方案。可选的,该芯片还包括存储模块(如,存储器),存储模块用于存储指令,处理模块用于执行存储模块存储的指令,并且对存储模块中存储的指令的执行使得处理模块执行前述方法实施例中端侧设备的技术方案。
[0191] 上述存储器可以是对象存储(Object Storage Service,OSS)。
[0192] 上述存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
[0193] 上述通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
[0194] 上述电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
[0195] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产品的形式。
[0196] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0197] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0198] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0199] 在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
[0200] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
[0201] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器 (CD‑ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
[0202] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0203] 以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。