CN111832701A - 模型的蒸馏方法、装置、电子设备及存储介质 - Google Patents
模型的蒸馏方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111832701A CN111832701A CN202010516895.XA CN202010516895A CN111832701A CN 111832701 A CN111832701 A CN 111832701A CN 202010516895 A CN202010516895 A CN 202010516895A CN 111832701 A CN111832701 A CN 111832701A
- Authority
- CN
- China
- Prior art keywords
- model
- connection layer
- training
- full connection
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Vaporization, Distillation, Condensation, Sublimation, And Cold Traps (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Organic Low-Molecular-Weight Compounds And Preparation Thereof (AREA)
- Feedback Control In General (AREA)
Abstract
本申请公开了模型的蒸馏方法、装置、电子设备及存储介质,涉及深度学习技术领域。具体实现方案为:首先,获取教师模型和学生模型;接着,根据教师模型第一中间全连接层的第一数据处理量和学生模型第二中间全连接层的第二数据处理量,将第二中间全连接层转换为放大全连接层和缩小全连接层,并用放大全连接层和缩小全连接层对第二中间全连接层进行替代以生成训练学生模型;之后,根据教师模型对训练学生模型进行蒸馏训练。该方法通过将第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练,由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。
Description
技术领域
本申请涉及人工智能技术领域,具体涉及深度学习技术领域,尤其涉及模型的蒸馏方法、装置、电子设备及计算机可读存储介质。
背景技术
目前,深度神经网络模型在人工智能领域具有广泛的应用。其中,大部分效果好的模型都需要复杂的计算量,在互联网场景中难以做到实时计算。
相关技术中,将复杂的大模型通过蒸馏计算获得一个计算量小的小模型以解决上述问题,主要有两种方式,第一种方式是,在神经网络的最后一层进行蒸馏,将大模型的预测结果作为软标签,辅助小模型进行训练;第二种方式是,在大模型和小模型的中间层进行蒸馏,由于大模型和小模型的隐藏层不同,在中间引入一个额外的全连接层进行过渡。但是,上述第一种方式,由于只在神经网络的最后一层进行蒸馏,蒸馏的效率低,总体效果较差;上述第二种方式,使用一个额外的全连接层进行蒸馏,存在部分参数浪费,蒸馏效果不理想。
发明内容
提供了一种模型的蒸馏方法、装置、电子设备及存储介质。
根据第一方面,提供了一种模型的蒸馏方法,通过将训练学生模型的第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练,由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。
本申请第二方面提出了一种模型的蒸馏装置。
本申请第三方面提出了一种电子设备。
本申请第四方面提出了一种存储有计算机指令的非瞬时计算机可读存储介质。
本申请第一方面实施例提出了一种模型的蒸馏方法,包括:获取教师模型和学生模型,其中,所述教师模型具有第一中间全连接层,所述学生模型具有第二中间全连接层,所述第一中间全连接层的输入和输出均为第一数据处理量M,所述第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;根据所述第一数据处理量M和所述第二数据处理量N将所述第二中间全连接层转换为放大全连接层和缩小全连接层,并用所述放大全连接层和所述缩小全连接层对所述第二中间全连接层进行替代以生成训练学生模型;以及根据所述教师模型对所述训练学生模型进行蒸馏训练。
本申请实施例的模型的蒸馏方法,通过获取教师模型和学生模型,其中,所述教师模型具有第一中间全连接层,所述学生模型具有第二中间全连接层,所述第一中间全连接层的输入和输出均为第一数据处理量M,所述第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;根据所述第一数据处理量M和所述第二数据处理量N将所述第二中间全连接层转换为放大全连接层和缩小全连接层,并用所述放大全连接层和所述缩小全连接层对所述第二中间全连接层进行替代以生成训练学生模型;以及根据所述教师模型对所述训练学生模型进行蒸馏训练,该方法通过将训练学生模型的第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练,由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。
本申请第二方面实施例提出了一种模型的蒸馏装置,包括:获取模块,用于获取教师模型和学生模型,其中,所述教师模型具有第一中间全连接层,所述学生模型具有第二中间全连接层,所述第一中间全连接层的输入和输出均为第一数据处理量M,所述第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;转换替代模块,用于根据所述第一数据处理量M和所述第二数据处理量N将所述第二中间全连接层转换为放大全连接层和缩小全连接层,并用所述放大全连接层和所述缩小全连接层对所述第二中间全连接层进行替代以生成训练学生模型;蒸馏模块,用于根据所述教师模型对所述训练学生模型进行蒸馏训练。
本申请第三方面实施例提出了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的模型的蒸馏方法。
本申请第四方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上所述的模型的蒸馏方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例的示意图;
图2是根据本申请第二实施例的示意图;
图3是根据本申请实施例的模型的蒸馏方法示意图。
图4是根据本申请第三实施例的示意图;
图5是根据本申请第四实施例的示意图;
图6是用来实现本申请实施例的模型的蒸馏方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
下面参考附图描述本申请实施例的模型的蒸馏方法、装置、电子设备及存储介质。
图1是根据本申请第一实施例的示意图。其中,需要说明的是,本申请实施例的执行主体为模型的蒸馏装置,模型的蒸馏装置具体可以为硬件设备,或者硬件设备中的软件等。
如图1所示,模型的蒸馏方法具体实现过程如下:
步骤101,获取教师模型和学生模型,其中,教师模型具有第一中间全连接层,学生模型具有第二中间全连接层,第一中间全连接层的输入和输出均为第一数据处理量M,第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N。
在本申请实施例中,可将预先训练好且具有良好性能的复杂神经网络模型作为教师模型,可将未训练的简单神经网络模型作为学生模型。其中,需要说明的是,教师模型具有第一中间全连接层,学生模型具有第二中间全连接层,第一中间全连接层的输入和输出均为第一数据处理量M,第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N。
步骤102,根据第一数据处理量M和第二数据处理量N将第二中间全连接层转换为放大全连接层和缩小全连接层,并用放大全连接层和缩小全连接层对第二中间全连接层进行替代以生成训练学生模型。
需要理解的是,由于学生模型的第二中间全连接层的输入和输出均为第二数据处理量N,因此,将第二中间全连接层转换为放大全连接层和缩小全连接层的输入和输出的数据量也为第二数据处理量N。
作为一种示例,预先设置放大全连接层的输入为N,放大全连接层的输出为M,缩小全连接层的输入为M,缩小全连接层的输出为N,由此,将第二中间全连接层转换为放大全连接层和缩小全连接层,用放大全连接层和缩小全连接层对第二中间全连接层进行替代以生成训练学生模型,可使替换后的全连接层输入和输出的数据量为第二数据处理量N。
需要说明的是,放大全连接层不具有激活函数,放大全连接层的数据量的输出和输入可保持线性组合,可使放大全连接层和缩小全连接层有效地融合在一起。
步骤103,根据教师模型对训练学生模型进行蒸馏训练。
可选地,获取蒸馏损失;根据蒸馏损失和教师模型对训练学生模型进行蒸馏训练。
也就是说,在根据教师模型对训练学生模型进行蒸馏训练时,可以通过深度学习的方式进行训练,相比于其他机器学习方法,深度学习在大数据集上的表现更好。作为一种示例,可将训练学生模型的放大全连接层和教师模型的第一中间全连接层,对于相同任务的输出结果的差异作为蒸馏损失(如,损失函数),根据教师模型对训练学生模型通过深度学习进行训练时,可调整训练学生模型的放大全连接层的参数至蒸馏损失最小,从而可使训练学生模型的训练效果与教师模型产生的效果更加接近。
综上,通过将训练学生模型的第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练,由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。
为了加快模型预测速度,在本申请实施例中,图2所示,图2是根据本申请第二实施例的示意图,可将训练学生模型在训练时拆分的放大全连接层和缩小全连接层在预测阶段组合在一起,使全连接层的规模变小,具体实现过程如下:
步骤201,获取教师模型和学生模型,其中,教师模型具有第一中间全连接层,学生模型具有第二中间全连接层,第一中间全连接层的输入和输出均为第一数据处理量M,第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N。
步骤202,根据第一数据处理量M和第二数据处理量N将第二中间全连接层转换为放大全连接层和缩小全连接层,并用放大全连接层和缩小全连接层对第二中间全连接层进行替代以生成训练学生模型。
步骤203,根据教师模型对训练学生模型进行蒸馏训练。
在本申请实施例中,步骤201-203可参见图1所述实施例的步骤101-103,本申请不再赘述。
步骤204,对训练之后的训练学生模型进行转换以生成预测模型。
可选地,将训练之后的训练学生模型之中的放大全连接层和缩小全连接层合并为第三中间全连接层,以生成预测模型。
也就是说,由于放大全连接层输出不带激活函数,因此,可以把放大全连接层和缩小全连接层转化为等价的输入输出均为第二数据处理量N的小型化全连接层。作为一种示例,训练之后的训练学生模型之中的放大全连接层和缩小全连接层合并为第三中间全连接层,比如,把放大全连接层和缩小全连接层的参数提前预乘到一起,将预乘后的参数作为第三中间全连接层的参数。接着,将具有第三中间全连接层的模型作为预测模型,并使用该模型进行预测。
综上,通过将训练学生模型的第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练,并将训练之后的训练学生模型进行转换以生成预测模型。由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。同时,在预测阶段将训练时拆分的放大全连接层和缩小全连接层组合为第三全连接层,可使预测模型的规模变小,加快了模型的预测速度。
为了更加清楚地说明上述实施例,现举例进行说明。
举例而言,如图3所示,在学生模型训练阶段,将训练学生模型的第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练。在预测阶段,将训练时拆分的放大全连接层和缩小全连接层组合为全连接层。由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。同时,在预测阶段将训练时拆分的放大全连接层和缩小全连接层组合为第三全连接层,可使预测模型的规模变小,加快了模型的预测速度。
本申请实施例的模型的蒸馏方法,通过获取教师模型和学生模型,其中,教师模型具有第一中间全连接层,学生模型具有第二中间全连接层,第一中间全连接层的输入和输出均为第一数据处理量M,第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;根据第一数据处理量M和第二数据处理量N将第二中间全连接层转换为放大全连接层和缩小全连接层,并用放大全连接层和缩小全连接层对第二中间全连接层进行替代以生成训练学生模型;以及根据教师模型对训练学生模型进行蒸馏训练。该方法通过将训练学生模型的第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练,由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。同时,在预测阶段将训练时拆分的放大全连接层和缩小全连接层组合为第三全连接层,可使预测模型的规模变小,加快了模型的预测速度。
为了实现上述实施例,本申请实施例还提出一种模型的蒸馏装置。
图4是根据本申请第三实施例的示意图。如图4所示,该模型的蒸馏装置400包括:获取模块410、转换替代模块420、蒸馏模块430。
其中,获取模块410,用于获取教师模型和学生模型,其中,教师模型具有第一中间全连接层,学生模型具有第二中间全连接层,第一中间全连接层的输入和输出均为第一数据处理量M,第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;转换替代模块420,用于根据第一数据处理量M和第二数据处理量N将第二中间全连接层转换为放大全连接层和缩小全连接层,并用放大全连接层和缩小全连接层对第二中间全连接层进行替代以生成训练学生模型;蒸馏模块430,用于根据教师模型对训练学生模型进行蒸馏训练。
作为本申请实施例的一种可能实现方式,放大全连接层的输入为N,放大全连接层的输出为M,缩小全连接层的输入为M,缩小全连接层的输出为N。
作为本申请实施例的一种可能实现方式,放大全连接层之中不具有激活函数。
作为本申请实施例的一种可能实现方式,蒸馏模块430具体用于获取蒸馏损失;以及根据蒸馏损失和教师模型对训练学生模型进行蒸馏训练。
作为本申请实施例的一种可能实现方式,如图5所示,在图4所示基础上,模型的蒸馏装置400还包括:转换模块440。
其中,转换模块440,用于对训练之后的训练学生模型进行转换以生成预测模型。
作为本申请实施例的一种可能实现方式,转换模块440具体用于将训练之后的训练学生模型之中的放大全连接层和缩小全连接层合并为第三中间全连接层,以生成预测模型。
本申请实施例的模型蒸馏装置,通过获取教师模型和学生模型,其中,教师模型具有第一中间全连接层,学生模型具有第二中间全连接层,第一中间全连接层的输入和输出均为第一数据处理量M,第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;根据第一数据处理量M和第二数据处理量N将第二中间全连接层转换为放大全连接层和缩小全连接层,并用放大全连接层和缩小全连接层对第二中间全连接层进行替代以生成训练学生模型;以及根据教师模型对训练学生模型进行蒸馏训练。该方法通过将训练学生模型的第二中间全连接层替换为放大全连接层和缩小全连接层,并根据教师模型对训练学生模型进行蒸馏训练,由此,在训练学生模型的中间层进行蒸馏,不需要引入额外全连接层,没有参数冗余,极大地提高了蒸馏效率和效果。同时,在预测阶段将训练时拆分的放大全连接层和缩小全连接层组合为第三全连接层,可使预测模型的规模变小,加快了模型的预测速度。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图6所示,是根据本申请实施例的模型的蒸馏方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图6所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器601为例。
存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的模型的蒸馏方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的模型的蒸馏方法。
存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的XXX的方法对应的程序指令/模块(例如,附图4所示的获取模块410、转换替代模块420、蒸馏模块430)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的模型的蒸馏方法。
存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据模型的蒸馏的电子设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至模型的蒸馏的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
模型的蒸馏方法的电子设备还可以包括:输入装置603和输出装置604。处理器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式连接,图6中以通过总线连接为例。
输入装置603可接收输入的数字或字符信息,以及产生与模型的蒸馏的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (14)
1.一种模型的蒸馏方法,包括:
获取教师模型和学生模型,其中,所述教师模型具有第一中间全连接层,所述学生模型具有第二中间全连接层,所述第一中间全连接层的输入和输出均为第一数据处理量M,所述第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;
根据所述第一数据处理量M和所述第二数据处理量N将所述第二中间全连接层转换为放大全连接层和缩小全连接层,并用所述放大全连接层和所述缩小全连接层对所述第二中间全连接层进行替代以生成训练学生模型;以及
根据所述教师模型对所述训练学生模型进行蒸馏训练。
2.如权利要求1所述的模型的蒸馏方法,其中,所述放大全连接层的输入为N,所述放大全连接层的输出为M,所述缩小全连接层的输入为M,所述缩小全连接层的输出为N。
3.如权利要求1所述的模型的蒸馏方法,其中,所述放大全连接层之中不具有激活函数。
4.如权利要求1所述的模型的蒸馏方法,其中,所述根据所述教师模型对所述训练学生模型进行蒸馏训练,包括:
获取蒸馏损失;以及
根据所述蒸馏损失和所述教师模型对所述训练学生模型进行蒸馏训练。
5.如权利要求1所述的模型的蒸馏方法,其中,在所述根据所述教师模型对所述训练学生模型进行蒸馏训练之后,还包括:
对训练之后的训练学生模型进行转换以生成预测模型。
6.如权利要求5所述的模型的蒸馏方法,其中,所述对训练之后的训练学生模型进行转换以生成预测模型,包括:
将所述训练之后的训练学生模型之中的所述放大全连接层和所述缩小全连接层合并为第三中间全连接层,以生成所述预测模型。
7.一种模型的蒸馏装置,包括:
获取模块,用于获取教师模型和学生模型,其中,所述教师模型具有第一中间全连接层,所述学生模型具有第二中间全连接层,所述第一中间全连接层的输入和输出均为第一数据处理量M,所述第二中间全连接层的输入和输出均为第二数据处理量N,其中,M和N为正整数,且M大于N;
转换替代模块,用于根据所述第一数据处理量M和所述第二数据处理量N将所述第二中间全连接层转换为放大全连接层和缩小全连接层,并用所述放大全连接层和所述缩小全连接层对所述第二中间全连接层进行替代以生成训练学生模型;
蒸馏模块,用于根据所述教师模型对所述训练学生模型进行蒸馏训练。
8.如权利要求7所述的模型的蒸馏装置,其中,所述放大全连接层的输入为N,所述放大全连接层的输出为M,所述缩小全连接层的输入为M,所述缩小全连接层的输出为N。
9.如权利要求7所述的模型的蒸馏装置,其中,所述放大全连接层之中不具有激活函数。
10.如权利要求7所述的模型的蒸馏装置,其中,所述蒸馏模块具体用于:
获取蒸馏损失;以及
根据所述蒸馏损失和所述教师模型对所述训练学生模型进行蒸馏训练。
11.如权利要求7所述的模型的蒸馏装置,其中,所述装置还包括:
转换模块,用于对训练之后的训练学生模型进行转换以生成预测模型。
12.如权利要求11所述的模型的蒸馏装置,其中,所述转换模块具体用于:
将所述训练之后的训练学生模型之中的所述放大全连接层和所述缩小全连接层合并为第三中间全连接层,以生成所述预测模型。
13.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的模型的蒸馏方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的模型的蒸馏方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010516895.XA CN111832701B (zh) | 2020-06-09 | 2020-06-09 | 模型的蒸馏方法、装置、电子设备及存储介质 |
US17/101,748 US20210383233A1 (en) | 2020-06-09 | 2020-11-23 | Method, electronic device, and storage medium for distilling model |
EP20217358.9A EP3923205A1 (en) | 2020-06-09 | 2020-12-28 | Method and apparatus for distilling model, electronic device, and storage medium |
JP2021079063A JP7083939B2 (ja) | 2020-06-09 | 2021-05-07 | モデルの蒸留方法、装置、電子機器及び記憶媒体 |
KR1020210068595A KR102538467B1 (ko) | 2020-06-09 | 2021-05-27 | 모델의 증류 방법, 장치, 전자기기 및 저장매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010516895.XA CN111832701B (zh) | 2020-06-09 | 2020-06-09 | 模型的蒸馏方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111832701A true CN111832701A (zh) | 2020-10-27 |
CN111832701B CN111832701B (zh) | 2023-09-22 |
Family
ID=72898521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010516895.XA Active CN111832701B (zh) | 2020-06-09 | 2020-06-09 | 模型的蒸馏方法、装置、电子设备及存储介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20210383233A1 (zh) |
EP (1) | EP3923205A1 (zh) |
JP (1) | JP7083939B2 (zh) |
KR (1) | KR102538467B1 (zh) |
CN (1) | CN111832701B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023040545A1 (zh) * | 2021-09-17 | 2023-03-23 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置、设备、存储介质和程序产品 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023055153A1 (ko) * | 2021-09-29 | 2023-04-06 | 한국전자통신연구원 | 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체 |
CN114299732B (zh) * | 2021-12-29 | 2023-04-14 | 中山大学 | 一种同时考虑行程时间和公平性的交通灯控制方法及系统 |
CN114881227B (zh) * | 2022-05-13 | 2023-07-04 | 北京百度网讯科技有限公司 | 模型压缩方法、图像处理方法、装置和电子设备 |
CN115082690B (zh) * | 2022-07-12 | 2023-03-28 | 北京百度网讯科技有限公司 | 目标识别方法、目标识别模型训练方法及装置 |
CN116863279B (zh) * | 2023-09-01 | 2023-11-21 | 南京理工大学 | 用于移动端模型轻量化的基于可解释指导的模型蒸馏方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977707A (zh) * | 2017-11-23 | 2018-05-01 | 厦门美图之家科技有限公司 | 一种对抗蒸馏神经网络模型的方法及计算设备 |
US20180268292A1 (en) * | 2017-03-17 | 2018-09-20 | Nec Laboratories America, Inc. | Learning efficient object detection models with knowledge distillation |
EP3561735A1 (en) * | 2018-04-27 | 2019-10-30 | Microsoft Technology Licensing, LLC | Integrating deep learning into generalized additive mixed-effect (game) frameworks |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10949736B2 (en) * | 2016-11-03 | 2021-03-16 | Intel Corporation | Flexible neural network accelerator and methods therefor |
US11392825B2 (en) * | 2017-01-09 | 2022-07-19 | Samsung Electronics Co., Ltd. | Method and algorithm of recursive deep learning quantization for weight bit reduction |
JP7095747B2 (ja) | 2018-10-29 | 2022-07-05 | 日本電信電話株式会社 | 音響モデル学習装置、モデル学習装置、それらの方法、およびプログラム |
CN111178491A (zh) | 2018-11-09 | 2020-05-19 | 佳能株式会社 | 神经网络模型的训练和应用方法、装置、系统及存储介质 |
KR102254950B1 (ko) * | 2019-06-26 | 2021-05-24 | 주식회사 티맥스티베로 | 캘리브레이션 방법 |
-
2020
- 2020-06-09 CN CN202010516895.XA patent/CN111832701B/zh active Active
- 2020-11-23 US US17/101,748 patent/US20210383233A1/en not_active Abandoned
- 2020-12-28 EP EP20217358.9A patent/EP3923205A1/en not_active Withdrawn
-
2021
- 2021-05-07 JP JP2021079063A patent/JP7083939B2/ja active Active
- 2021-05-27 KR KR1020210068595A patent/KR102538467B1/ko active IP Right Grant
Patent Citations (3)
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 |
CN107977707A (zh) * | 2017-11-23 | 2018-05-01 | 厦门美图之家科技有限公司 | 一种对抗蒸馏神经网络模型的方法及计算设备 |
EP3561735A1 (en) * | 2018-04-27 | 2019-10-30 | Microsoft Technology Licensing, LLC | Integrating deep learning into generalized additive mixed-effect (game) frameworks |
Non-Patent Citations (2)
Title |
---|
HO-GYEONG KIM等: "Knowledge Distillation Using Output Errors for Self-attention End-to-end Models", 《 IEEE XPLORE》 * |
葛仕明;赵胜伟;刘文瑜;李晨钰;: "基于深度特征蒸馏的人脸识别", 北京交通大学学报, no. 06 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023040545A1 (zh) * | 2021-09-17 | 2023-03-23 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置、设备、存储介质和程序产品 |
Also Published As
Publication number | Publication date |
---|---|
KR102538467B1 (ko) | 2023-05-31 |
JP7083939B2 (ja) | 2022-06-13 |
CN111832701B (zh) | 2023-09-22 |
EP3923205A1 (en) | 2021-12-15 |
JP2021119529A (ja) | 2021-08-12 |
KR20210071886A (ko) | 2021-06-16 |
US20210383233A1 (en) | 2021-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111832701A (zh) | 模型的蒸馏方法、装置、电子设备及存储介质 | |
CN111428008B (zh) | 用于训练模型的方法、装置、设备以及存储介质 | |
CN111079442B (zh) | 文档的向量化表示方法、装置和计算机设备 | |
CN111242306B (zh) | 量子主成分分析的方法、装置、电子设备以及计算机可读存储介质 | |
CN111144108B (zh) | 情感倾向性分析模型的建模方法、装置和电子设备 | |
CN111708922A (zh) | 用于表示异构图节点的模型生成方法及装置 | |
CN110648294B (zh) | 图像修复方法、装置及电子设备 | |
CN110767212B (zh) | 一种语音处理方法、装置和电子设备 | |
CN111241234B (zh) | 文本分类方法及装置 | |
CN111507111B (zh) | 语义表示模型的预训练方法、装置、电子设备及存储介质 | |
CN110852449A (zh) | 模型迁移方法和电子设备 | |
CN111488441A (zh) | 问题解析方法、装置、知识图谱问答系统和电子设备 | |
CN111275190A (zh) | 神经网络模型的压缩方法及装置、图像处理方法及处理器 | |
CN110532487B (zh) | 标签的生成方法及装置 | |
CN113723278A (zh) | 表格信息提取模型的训练方法及装置 | |
CN112149741A (zh) | 图像识别模型的训练方法、装置、电子设备及存储介质 | |
CN112528669A (zh) | 多语言模型的训练方法、装置、电子设备和可读存储介质 | |
CN111709252A (zh) | 基于预训练的语义模型的模型改进方法及装置 | |
CN110648293B (zh) | 图像修复方法、装置及电子设备 | |
CN111539224A (zh) | 语义理解模型的剪枝方法、装置、电子设备和存储介质 | |
CN112560499A (zh) | 语义表示模型的预训练方法、装置、电子设备及存储介质 | |
CN112417156A (zh) | 多任务学习方法、装置、设备以及存储介质 | |
CN112508964A (zh) | 图像分割方法、装置、电子设备和存储介质 | |
CN111783607A (zh) | 人脸识别模型的训练方法、装置、电子设备及存储介质 | |
CN111125445A (zh) | 社区主题生成方法、装置、电子设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |