CN112465115A - Gan网络压缩方法、装置、设备及存储介质 - Google Patents

Gan网络压缩方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112465115A
CN112465115A CN202011341346.XA CN202011341346A CN112465115A CN 112465115 A CN112465115 A CN 112465115A CN 202011341346 A CN202011341346 A CN 202011341346A CN 112465115 A CN112465115 A CN 112465115A
Authority
CN
China
Prior art keywords
network
candidate
gan
operator
layer
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
CN202011341346.XA
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.)
iFlytek Co Ltd
Original Assignee
iFlytek 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 iFlytek Co Ltd filed Critical iFlytek Co Ltd
Priority to CN202011341346.XA priority Critical patent/CN112465115A/zh
Publication of CN112465115A publication Critical patent/CN112465115A/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/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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Abstract

本申请公开了一种GAN网络压缩方法、装置、设备及存储介质,对于待压缩的GAN网络,将其中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,并且候选操作子的计算量小于被替换的原始操作子的计算量,初始化GAN网络中各候选操作子的参数及其权重,交替更新生成网络G和判别网络D,直至GAN网络收敛为止,基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。本申请方案同时对GAN网络中生成网络G和判别网络D进行压缩,在实现对GAN网络压缩的同时,保证了压缩后GAN网络的平衡性。

Description

GAN网络压缩方法、装置、设备及存储介质
技术领域
本申请涉及模型处理技术领域,更具体的说,是涉及一种GAN网络压缩方法、装置、设备及存储介质。
背景技术
随着图像、视频生成技术的发展,基于GAN的生成技术得到了广泛的应用,例如图像转换,图像修复,图像超分辨率等。
GAN(Generative Adversarial Networks,生成式对抗网络)是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。GAN网络通过生成网络G(Generative Model)和判别网络D(Discriminative Model)的互相博弈学习产生相当好的输出。
但是当前图像生成网络的计算量比识别网络大几个数量级。为了将生成网络部署到手机,平板等处理性能偏低的终端设备上,GAN网络压缩就显得十分关键。
发明内容
鉴于上述问题,提出了本申请以便提供一种GAN网络压缩方法、装置、设备及存储介质,通过对GAN网络进行压缩,以实现在低性能终端设备上运行GAN网络。具体方案如下:
一种GAN网络压缩方法,包括:
获取待压缩的GAN网络,所述GAN网络包括生成网络G和判别网络D;
将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,所述候选操作子的计算量小于所述原始操作子的计算量;
初始化所述GAN网络中各候选操作子的参数及其权重;
交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛;
基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
优选地,所述将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,包括:
读取预配置的候选操作子列表,所述候选操作子列表中记录有与各类型原始操作子对应的候选操作子,候选操作子的计算量小于对应的原始操作子;
查询所述候选操作子列表,确定与所述GAN网络中每一层的原始操作子对应的各候选操作子,并利用确定的各候选操作子替换GAN网络中对应的原始操作子。
优选地,所述每一层的输出由每一层替换后的各候选操作子的输出组成,包括:
每一层的输出由每一层替换后的各候选操作子输出的线性加权组成。
优选地,初始化所述GAN网络中各候选操作子的参数及权重,包括:
基于所述GAN网络中所述原始操作子的参数,对所述原始操作子替换后的各候选操作子的参数进行初始化;以及,
对各候选操作子的权重进行初始化。
优选地,所述基于所述GAN网络中所述原始操作子的参数,对所述原始操作子替换后的各候选操作子的参数进行初始化,包括:
在原始操作子的参数中,选取与候选操作子相同体量的参数,作为候选操作子的初始化参数。
优选地,所述生成网络G和判别网络D之间具有对称性,则交替迭代更新所述生成网络G和所述判别网络D时所使用的目标损失函数包括:
平衡性损失函数LBalance,所述平衡性损失函数用于度量,生成网络G与判别网络D之间,具有对称性的两个网络层各自包含的候选操作子的权重组成的权重向量的相似度。
优选地,所述目标损失函数还包括:
判别网络损失函数LFM,所述判别网络损失函数用于度量,判别网络D对真实图像和对生成网络G所生成图像分别提取的隐层特征间的相似度;
对抗损失函数LGAN,所述对抗损失函数用于度量,生成网络G所生成图像的分布与真实图像的分布之间的距离。
优选地,所述交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛,包括:
按照设定目标损失函数,交替更新生成网络G和判别网络D,直至所述GAN网络收敛,其中:
在更新生成网络G时,固定判别网络D所有参数,更新生成网络G中每个候选操作子的权重α及生成网络G的网络参数WG
在更新判别网络D时,固定生成网络G所有参数,更新判别网络D中每个候选操作子的权重β及判别网络D的网络参数WD
优选地,所述在更新生成网络G时,固定判别网络D所有参数,更新生成网络G中每个候选操作子的权重α及生成网络G的网络参数WG,包括:
在更新生成网络G时,固定β、WD和WG,使用设定目标损失函数中与α相关的损失函数进行一次前向和反向更新生成网络G中各候选操作子的权重α,进一步,再固定β、WD和α,使用设定目标损失函数中与WG相关的损失函数进行一次前向和反向更新生成网络G中各候选操作子的参数WG
所述在更新判别网络D时,固定生成网络G所有参数,更新判别网络D中每个候选操作子的权重β及判别网络D的网络参数WD,包括:
在更新判别网络D时,固定α、WG和WD,使用设定目标损失函数中与β相关的损失函数进行一次前向和反向更新判别网络D中各候选操作子的权重β,进一步,再固定α、WG和β,使用设定目标损失函数中与WD相关的损失函数进行一次前向和反向更新判别网络D中各候选操作子的参数WD
优选地,所述基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络,包括:
基于收敛的GAN网络中每一层各候选操作子的最终权重,仅保留每一层中最终权重最大的一个操作子,以得到压缩后的GAN网络;
或,
基于收敛的GAN网络中每一层各候选操作子的最终权重,结合用户设定的计算量与网络合成效果要求,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
一种GAN网络压缩装置,包括:
GAN网络获取单元,用于获取待压缩的GAN网络,所述GAN网络包括生成网络G和判别网络D;
候选操作子替换单元,用于将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,所述候选操作子的计算量小于所述原始操作子的计算量;
初始化单元,用于初始化所述GAN网络中各候选操作子的参数及其权重;
网络更新单元,用于交替更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛;
候选操作子选取单元,用于基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
一种GAN网络压缩设备,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如上所述的GAN网络压缩方法的各个步骤。
一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的GAN网络压缩方法的各个步骤。
借由上述技术方案,本申请对于待压缩的GAN网络,将其中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,并且候选操作子的计算量小于被替换的原始操作子的计算量,进一步初始化GAN网络中各候选操作子的参数及其权重,交替更新生成网络G和判别网络D,也即训练更新网络层的候选操作子的参数及其权重,直至GAN网络收敛为止,最终基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。本申请方案考虑了网络压缩时的纳什均衡性,同时对GAN网络中生成网络G和判别网络D进行压缩,在实现对GAN网络压缩的同时,使得压缩后的GAN网络中生成网络G和判别网络D是匹配的,更有利于达到纳什均衡,也即保证了压缩后GAN网络的平衡性。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本申请实施例提供的GAN网络压缩方法的一流程示意图;
图2示例了一种GAN网络训练结构示意图;
图3a和图3b分别示例了GAN网络原操作子组成的结构和替换后的候选操作子组成的结构;
图4示例了一种使用原操作子进行共享参数初始化的过程示意图;
图5示例了一种双循环GAN网络训练更新过程示意图;
图6为本申请实施例公开的一种GAN网络压缩装置结构示意图;
图7为本申请实施例提供的GAN网络压缩设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了将GAN网络部署到性能较低的终端设备上,需要对GAN网络进行压缩处理。本案申请人首先尝试通过对GAN网络中的生成网络G进行单独压缩,保持判别网络D不变,但是发现这种压缩方式会破坏GAN网络的平衡性,很难得到理想的效果,分析其原因可知,GAN网络是由生成网络G和判别网络D进行对抗训练的,如果只考虑对生成网络G进行压缩,而不考虑判别网络D,会破坏掉GAN网络的纳什均衡性。
在此基础上,发明人进一步提出了一种同时对生成网络G和判别网络D进行压缩的GAN网络压缩方案,以实现对GAN网络压缩的同时,保证压缩后GAN网络的纳什均衡,也即保证压缩后GAN网络的平衡性。
本申请方案可以基于具备数据处理能力的终端实现,该终端可以是手机、电脑、服务器、云端等。
接下来,结合图1所述,本申请的GAN网络压缩方法可以包括如下步骤:
步骤S100、获取待压缩的GAN网络。
其中,所述GAN网络包括生成网络G和判别网络D。为了便于表述,下文将生成网络G简称为G网络,将判别网络D简称为D网络。
其中,G网络接收一个随机的噪声z,通过该噪声生成图像。D网络是一个判别网络,判别一张图像是不是“真实的”。D网络的输入参数是x,x代表一张图像,D网络的输出代表x为真实图像的概率。在训练过程中,G网络的目标就是尽量生成真实的图像去欺骗D网络。而D网络的目标就是尽量把G网络生成的图像和真实图像区分开,这样G网络和D网络构成一个动态的博弈过程。
本步骤中获取的待压缩的GAN网络可以是预先训练好的GAN网络。其中,GAN网络的预训练过程可以参考图2示例的GAN网络训练结构示意图。
其中,G网络基于随机生成的噪声z生成图像样本输入D网络。同时,预先收集的真实图像训练集Xtrain中的真实图像样本也输入D网络。D网络预测输入的图像样本的真实概率,或虚假概率。
步骤S110、将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子。
具体的,操作子是指GAN网络层的某种运算方式,示例如卷积操作、全连接操作、归一化操作等。
对于GAN网络中每一层的原始操作子,使用原始操作子对应的候选操作子进行替换。候选操作子的计算量小于原始操作子的计算量,以实现对GAN网络压缩的目的。进一步可选的,候选操作子的功能可以和原始操作子的功能类似。
原始操作子被候选操作子替换后,每一层的输出由每一层替换后的各候选操作子输出组成。
一种可选的方式下,每一层的输出可以由每一层替换后的各候选操作子输出的线性加权组成。
参见图3a和图3b,其分别示例了GAN网络原操作子组成的结构和替换后的候选操作子组成的结构。
如图3a示例的GAN网络中,第k层的原始操作子为Conv5*5。使用候选操作子None、Conv3*3和DWconv三个候选操作子替换掉原始操作子,如图3b所示。三个候选操作子的权重分别为
Figure BDA0002798702260000071
Figure BDA0002798702260000072
则第k层的输出为三个候选操作子的输出与对应权重的线性加权之后。
上述示例的原始操作子Conv5*5对应的候选操作子的个数及类型仅仅是一种示例,除此之外还可以设置其它数量及类型的候选操作子。
通过为各候选操作子设置权重,后续训练更新阶段就是学习各候选操作子被选取保留的概率。
步骤S120、初始化所述GAN网络中各候选操作子的参数及其权重。
步骤S130、交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛。
具体的,本申请可以采用神经网络搜索技术对GAN网络进行训练更新。在训练更新GAN网络过程中,为了保证G网络和D网络的更新效果,采用交替迭代更新的方式,即对G网络和D网络交替迭代进行更新。在更新G网络时,将D网络的参数固定,只更新G网络的参数。在更新D网络时,将G网络的参数固定,只更新D网络的参数。通过交替迭代更新,直至判断GAN网络收敛时为止,停止进行GAN网络的训练更新。
步骤S140、基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
具体的,在对GAN网络进行更新的过程即学习每一层各候选操作子被最终选取保留的概率的过程,也即不断更新各候选操作子的权重的过程。当GAN网络收敛时,每一层各候选操作子的权重固定下来,可以基于每一层各候选操作子的最终权重,确定每一层最终保留的操作子。GAN网络由每一层最终保留的操作子组成压缩后的GAN网络。
本申请实施例提供的GAN网络压缩方法,对于待压缩的GAN网络,将其中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,并且候选操作子的计算量小于被替换的原始操作子的计算量,进一步初始化GAN网络中各候选操作子的参数及其权重,交替更新生成网络G和判别网络D,也即训练更新网络层的候选操作子的参数及其权重,直至GAN网络收敛为止,最终基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。本申请方案考虑了网络压缩时的纳什均衡性,同时对GAN网络中生成网络G和判别网络D进行压缩,在实现对GAN网络压缩的同时,使得压缩后的GAN网络中生成网络G和判别网络D是匹配的,更有利于达到纳什均衡,也即保证了压缩后GAN网络的平衡性。
在本申请的一些实施例中,对上述步骤S110,将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子的过程进行介绍。
本申请实施例中可以预先针对不同类型的原始操作子配置对应的候选操作子,候选操作子可以是与原始操作子功能类似的操作子,如候选操作子与原始操作子的运算类型一致,区别仅在于候选操作子的运算复杂度低于原始操作子的运算复杂度。
参见下表1,表1示例了几种不同原始操作子与候选操作子的对应关系:
表1
Figure BDA0002798702260000081
Figure BDA0002798702260000091
可以理解的是,上述表1仅仅是一种示例,各类型原始操作子对应的候选操作子的类型及数量还可以根据实际需求而设定。
基于本申请实施例预先配置的原始操作子对应的候选操作子列表,可以读取并查询该列表,从中确定出与GAN网络中每一层的原始操作子对应的各候选操作子,并利用确定的各候选操作子替换掉GAN网络中对应的原始操作子。
在本申请的一些实施例中,进一步对上述步骤S120,初始化所述GAN网络中各候选操作子的参数及其权重的过程进行介绍。
一种可选的实施方式,可以采用随机初始化的方式,对GAN网络中各候选操作子的参数及其权重进行初始化。
进一步的,考虑到为了提高压缩GAN网络的稳定性以及加快GAN网络的收敛,本申请可以将原始待压缩的GAN网络的参数作为超级网络参数,G网络和D网络可以共享和修改该超级网络参数,也即可以将原始GAN网络的参数信息迁移到压缩后的GAN网络中,以加快GAN网络压缩过程的收敛速度,并提高压缩后GAN网络的稳定性。
具体的实施方式可以包括:
基于GAN网络中原始操作子的参数,对原始操作子替换后的各候选操作子的参数进行初始化。
进一步的,考虑到原始操作子和候选操作子存在差异,因此可以使用原始操作子的参数中的部分参数对候选操作子的参数进行初始化。具体的,可以在原始操作子的参数中,选取与候选操作子相同体量的参数,作为候选操作子的初始化参数。
参照图4,假设原始操作子是Conv5*5,候选操作子是Conv3*3,则可以取原始操作子的中心3*3区域的参数初始化候选操作子。
对于各候选操作子的权重的初始化,由于原始的GAN网络中不存在操作子权重的概念,因此对于各候选操作子的权重可以采用其它初始化方式进行初始化,如采用均匀分布或高斯分布对GAN网络中各候选操作子的权重进行初始化,当然除此之外还可以采用其它初始化方式对候选操作子的权重进行初始化,如采用随机初始化或统一初始化为默认值等。
在本申请的一些实施例中,对GAN网络训练更新时所使用的目标损失函数进行介绍。
首先,为了使得更新过程G网络和D网络的结构差异不过大,否则容易导致GAN网络训练不稳定,破坏G网络和D网络间的纳什平衡,本实施例中设计了一种平衡性损失函数LBalance,用于约束GAN网络结构的平衡性。
一般性的,G网络和D网络具有对称性,则平衡性损失函数用于度量,G网络与D网络之间,具有对称性的两个网络层各自包含的候选操作子的权重组成的权重向量的相似度。
假设G网络有M层,D网络有N层,则G网络的第M层和D网络的第1层结构通常是镜像对称的,G网络的第M-1层与D网络的第2层是镜像的,以此类推。以G网络的第M层和D网络的第1层间的镜像对称关系为例进行说明:
定义G网络的第M层各候选操作子的权重向量为αM,D网络的第1层各候选操作子的权重向量为β1。通过约束两个权重向量的相似度尽可能接近,以达到约束G网络和D网络结构平衡性的目的。
G网络的第M层与D网络的第1层,对应的平衡性损失函数可以用下述公式表示:
LBalance=||JS(αM1)-1||
这里,JS指Jensen-Shannon散度公式,用于度量两个分布间的相似度,其取值是0-1之间。
可以理解的是,上述仅仅示例了G网络第M层与D网络第1层,所对应的平衡性损失函数。对于GAN网络整体来说,其对应的平衡性损失函数可以是,G网络和D网络之间,具有对称性的各网络层对所对应的平衡性损失函数的求和结果。
本申请通过设计平衡性损失函数LBalance作为目标损失函数,使得GAN网络训练更新过程中,G网络和D网络能够保持结构的平衡性。在此基础上,本申请实施例进一步设计了另外两种目标损失函数,分别用于指导G网络更新训练过程,以及用于指导D网络更新训练过程,详细如下:
目标损失函数还可以包括用于指导D网络更新训练过程的判别网络损失函数LFM
判别网络损失函数LFM用于度量,D网络对真实图像和对G网络所生成图像分别提取的隐层特征间的相似度。
为了提高GAN网络的稳定性,本申请实施例可以在替换了候选操作子的D网络上前若干层加入特征匹配损失,以期望生成图像与真实图像的隐层特征比较接近,该特征匹配损失即作为判别网络损失函数LFM
Figure BDA0002798702260000111
其中,x~pdata指从真实图像分布pdata中进行采样,f(x)指D网络中间隐层输出的特征图,z~pz(z)指从已知的噪声分布pz(z)中进行采样,G(z)指生成网络基于噪声采样所生成的图像,
Figure BDA0002798702260000112
是求范数的平方运算符号,E是求期望的运算符号。
进一步,目标损失函数还可以包括用于指导G网络更新训练过程的对抗损失函数LGAN
对抗损失函数LGAN用于度量,G网络所生成图像的分布与真实图像的分布之间的距离,对抗损失函数LGAN的表达公式可以参考如下公式:
Figure BDA0002798702260000113
公式中各参数的含义参照前文介绍。
综上可知,本申请的目标损失函数Ltotal可以包含三部分,即:
Ltotal=LGAN+LFM+LBalance
在本申请的一些实施例中,介绍了上述步骤S130,交替迭代更新所述生成网络G和所述判别网络D的可选实现过程。
在本申请实施例中,可以按照设定目标损失函数,交替更新G网络和D网络,直至确定GAN网络收敛为止,其中:
在更新G网络时,固定D网络所有参数,更新G网络中每个候选操作子的权重α及G网络的网络参数WG
在更新D网络时,固定G网络所有参数,更新D网络中每个候选操作子的权重β及D网络的网络参数WD
进一步参考图5示例的GAN网络训练更新过程示意图:
本申请实施例中公开了一种双循环GAN网络训练更新方式,其中第一循环是指G网络和D网络之间交替循环更新。第二循环是指在G网络和D网络各自更新过程中,对候选操作子的权重与候选操作子的参数交替循环更新。
具体的,在更新G网络时,可以采用基于梯度更新的神经网络搜索技术,固定β、WD和WG,使用设定目标损失函数中与α相关的损失函数进行一次前向和反向更新G网络中各候选操作子的权重α,进一步,再固定β、WD和α,使用设定目标损失函数中与WG相关的损失函数进行一次前向和反向更新G网络中各候选操作子的参数WG,如图5右侧所示。
其中,以目标损失函数包括平衡性损失函数LBalance、判别网络损失函数LFM和对抗损失函数LGAN为例,其中与α和WG相关的损失函数为LBalance和LGAN
在更新D网络时,可以采用基于梯度更新的神经网络搜索技术,固定α、WG和WD,使用设定目标损失函数中与β相关的损失函数进行一次前向和反向更新D网络中各候选操作子的权重β,进一步,再固定α、WG和β,使用设定目标损失函数中与WD相关的损失函数进行一次前向和反向更新D网络中各候选操作子的参数WD,如图5左侧所示。
其中,以目标损失函数包括平衡性损失函数LBalance、判别网络损失函数LFM和对抗损失函数LGAN为例,其中与α和WG相关的损失函数为LBalance和LFM
在本申请的一些实施例中,对上述步骤S140,基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络的过程进行介绍。
可以理解的是,在对GAN网络进行更新的过程即学习每一层各候选操作子被最终选取保留的概率的过程,也即不断更新各候选操作子的权重的过程。当GAN网络收敛时,每一层各候选操作子的权重固定下来,可以基于每一层各候选操作子的最终权重,确定每一层最终保留的操作子。GAN网络由每一层最终保留的操作子组成压缩后的GAN网络。
本申请实施例提供了两种确定每一层最终保留的操作子的实现方式,分别如下:
第一种,基于收敛的GAN网络中每一层各候选操作子的最终权重,仅保留每一层中最终权重最大的一个操作子,以得到压缩后的GAN网络。
具体的,由于对GAN网络进行更新的过程即学习每一层各候选操作子被最终选取保留的概率的过程,因此收敛的GAN网络中每一层各候选操作子的最终权重也即最终确定的候选操作子被保留的概率,基于此可以直接保留每一层中最终权重最大的一个操作子。
第二种,基于收敛的GAN网络中每一层各候选操作子的最终权重,结合用户设定的计算量与模型合成效果要求,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
具体的,实际应用过程中,用户可以衡量计算量和压缩后GAN网络的合成效果,基于每一层各候选操作子的最终权重,来选取合适的操作子进行保留。
在上述基础上,为了进一步提升压缩后GAN网络的效果,本申请实施例中还可以使用训练集数据对压缩后GAN网络进行微调,以得到最终的GAN网络。
下面对本申请实施例提供的GAN网络压缩装置进行描述,下文描述的GAN网络压缩装置与上文描述的GAN网络压缩方法可相互对应参照。
参见图6,图6为本申请实施例公开的一种GAN网络压缩装置结构示意图。
如图6所示,该装置可以包括:
GAN网络获取单元11,用于获取待压缩的GAN网络,所述GAN网络包括生成网络G和判别网络D;
候选操作子替换单元12,用于将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,所述候选操作子的计算量小于所述原始操作子的计算量;
初始化单元13,用于初始化所述GAN网络中各候选操作子的参数及其权重;
网络更新单元14,用于交替更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛;
候选操作子选取单元15,用于基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
可选的,上述候选操作子替换单元将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子输出的线性加权组成。
可选的,上述候选操作子替换单元将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子的过程,可以包括:
读取预配置的候选操作子列表,所述候选操作子列表中记录有与各类型原始操作子对应的候选操作子,候选操作子的计算量小于对应的原始操作子;
查询所述候选操作子列表,确定与所述GAN网络中每一层的原始操作子对应的各候选操作子,并利用确定的各候选操作子替换GAN网络中对应的原始操作子。
可选的,上述初始化单元初始化所述GAN网络中各候选操作子的参数及权重的过程,可以包括:
基于所述GAN网络中所述原始操作子的参数,对所述原始操作子替换后的各候选操作子的参数进行初始化;以及,
对各候选操作子的权重进行初始化。
可选的,上述初始化单元基于所述GAN网络中所述原始操作子的参数,对所述原始操作子替换后的各候选操作子的参数进行初始化的过程,可以包括:
在原始操作子的参数中,选取与候选操作子相同体量的参数,作为候选操作子的初始化参数。
可选的,上述生成网络G和判别网络D之间具有对称性,则交替迭代更新所述生成网络G和所述判别网络D时所使用的目标损失函数可以包括:
平衡性损失函数LBalance,所述平衡性损失函数用于度量,生成网络G与判别网络D之间,具有对称性的两个网络层各自包含的候选操作子的权重组成的权重向量的相似度。
可选的,所述目标损失函数还可以包括:
判别网络损失函数LFM,所述判别网络损失函数用于度量,判别网络D对真实图像和对生成网络G所生成图像分别提取的隐层特征间的相似度;
对抗损失函数LGAN,所述对抗损失函数用于度量,生成网络G所生成图像的分布与真实图像的分布之间的距离。
可选的,上述网络更新单元按照设定的目标损失函数,交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛的过程,可以包括:
按照设定目标损失函数,交替更新生成网络G和判别网络D,直至所述GAN网络收敛,其中:
在更新生成网络G时,固定判别网络D所有参数,更新生成网络G中每个候选操作子的权重α及生成网络G的网络参数WG
在更新判别网络D时,固定生成网络G所有参数,更新判别网络D中每个候选操作子的权重β及判别网络D的网络参数WD
可选的,上述网络更新单元在更新生成网络G时,固定判别网络D所有参数,更新生成网络G中每个候选操作子的权重α及生成网络G的网络参数WG的过程,可以包括:
在更新生成网络G时,固定β、WD和WG,使用设定目标损失函数中与α相关的损失函数进行一次前向和反向更新生成网络G中各候选操作子的权重α,进一步,再固定β、WD和α,使用设定目标损失函数中与WG相关的损失函数进行一次前向和反向更新生成网络G中各候选操作子的参数WG
可选的,上述网络更新单元在更新判别网络D时,固定生成网络G所有参数,更新判别网络D中每个候选操作子的权重β及判别网络D的网络参数WD的过程,可以包括:
在更新判别网络D时,固定α、WG和WD,使用设定目标损失函数中与β相关的损失函数进行一次前向和反向更新判别网络D中各候选操作子的权重β,进一步,再固定α、WG和β,使用设定目标损失函数中与WD相关的损失函数进行一次前向和反向更新判别网络D中各候选操作子的参数WD
可选的,上述候选操作子选取单元基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络的过程,可以包括:
基于收敛的GAN网络中每一层各候选操作子的最终权重,仅保留每一层中最终权重最大的一个操作子,以得到压缩后的GAN网络;
或,
基于收敛的GAN网络中每一层各候选操作子的最终权重,结合用户设定的计算量与网络合成效果要求,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
本申请实施例提供的GAN网络压缩装置可应用于GAN网络压缩设备,如终端:手机、电脑等。可选的,图7示出了GAN网络压缩设备的硬件结构框图,参照图7,GAN网络压缩设备的硬件结构可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;
在本申请实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
获取待压缩的GAN网络,所述GAN网络包括生成网络G和判别网络D;
将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,所述候选操作子的计算量小于所述原始操作子的计算量;
初始化所述GAN网络中各候选操作子的参数及其权重;
交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛;
基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例还提供一种存储介质,该存储介质可存储有适于处理器执行的程序,所述程序用于:
获取待压缩的GAN网络,所述GAN网络包括生成网络G和判别网络D;
将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,所述候选操作子的计算量小于所述原始操作子的计算量;
初始化所述GAN网络中各候选操作子的参数及其权重;
交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛;
基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间可以根据需要进行组合,且相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (13)

1.一种GAN网络压缩方法,其特征在于,包括:
获取待压缩的GAN网络,所述GAN网络包括生成网络G和判别网络D;
将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,所述候选操作子的计算量小于所述原始操作子的计算量;
初始化所述GAN网络中各候选操作子的参数及其权重;
交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛;
基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
2.根据权利要求1所述的方法,其特征在于,所述将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,包括:
读取预配置的候选操作子列表,所述候选操作子列表中记录有与各类型原始操作子对应的候选操作子,候选操作子的计算量小于对应的原始操作子;
查询所述候选操作子列表,确定与所述GAN网络中每一层的原始操作子对应的各候选操作子,并利用确定的各候选操作子替换GAN网络中对应的原始操作子。
3.根据权利要求1所述的方法,其特征在于,所述每一层的输出由每一层替换后的各候选操作子的输出组成,包括:
每一层的输出由每一层替换后的各候选操作子输出的线性加权组成。
4.根据权利要求1所述的方法,其特征在于,初始化所述GAN网络中各候选操作子的参数及权重,包括:
基于所述GAN网络中所述原始操作子的参数,对所述原始操作子替换后的各候选操作子的参数进行初始化;以及,
对各候选操作子的权重进行初始化。
5.根据权利要求4所述的方法,其特征在于,所述基于所述GAN网络中所述原始操作子的参数,对所述原始操作子替换后的各候选操作子的参数进行初始化,包括:
在原始操作子的参数中,选取与候选操作子相同体量的参数,作为候选操作子的初始化参数。
6.根据权利要求1所述的方法,其特征在于,所述生成网络G和判别网络D之间具有对称性,则交替迭代更新所述生成网络G和所述判别网络D时所使用的目标损失函数包括:
平衡性损失函数LBalance,所述平衡性损失函数用于度量,生成网络G与判别网络D之间,具有对称性的两个网络层各自包含的候选操作子的权重组成的权重向量的相似度。
7.根据权利要求6所述的方法,其特征在于,所述目标损失函数还包括:
判别网络损失函数LFM,所述判别网络损失函数用于度量,判别网络D对真实图像和对生成网络G所生成图像分别提取的隐层特征间的相似度;
对抗损失函数LGAN,所述对抗损失函数用于度量,生成网络G所生成图像的分布与真实图像的分布之间的距离。
8.根据权利要求1所述的方法,其特征在于,所述交替迭代更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛,包括:
按照设定目标损失函数,交替更新生成网络G和判别网络D,直至所述GAN网络收敛,其中:
在更新生成网络G时,固定判别网络D所有参数,更新生成网络G中每个候选操作子的权重α及生成网络G的网络参数WG
在更新判别网络D时,固定生成网络G所有参数,更新判别网络D中每个候选操作子的权重β及判别网络D的网络参数WD
9.根据权利要求8所述的方法,其特征在于,所述在更新生成网络G时,固定判别网络D所有参数,更新生成网络G中每个候选操作子的权重α及生成网络G的网络参数WG,包括:
在更新生成网络G时,固定β、WD和WG,使用设定目标损失函数中与α相关的损失函数进行一次前向和反向更新生成网络G中各候选操作子的权重α,进一步,再固定β、WD和α,使用设定目标损失函数中与WG相关的损失函数进行一次前向和反向更新生成网络G中各候选操作子的参数WG
所述在更新判别网络D时,固定生成网络G所有参数,更新判别网络D中每个候选操作子的权重β及判别网络D的网络参数WD,包括:
在更新判别网络D时,固定α、WG和WD,使用设定目标损失函数中与β相关的损失函数进行一次前向和反向更新判别网络D中各候选操作子的权重β,进一步,再固定α、WG和β,使用设定目标损失函数中与WD相关的损失函数进行一次前向和反向更新判别网络D中各候选操作子的参数WD
10.根据权利要求1所述的方法,其特征在于,所述基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络,包括:
基于收敛的GAN网络中每一层各候选操作子的最终权重,仅保留每一层中最终权重最大的一个操作子,以得到压缩后的GAN网络;
或,
基于收敛的GAN网络中每一层各候选操作子的最终权重,结合用户设定的计算量与网络合成效果要求,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
11.一种GAN网络压缩装置,其特征在于,包括:
GAN网络获取单元,用于获取待压缩的GAN网络,所述GAN网络包括生成网络G和判别网络D;
候选操作子替换单元,用于将所述GAN网络中每一层的原始操作子替换为至少一个候选操作子,每一层的输出由每一层替换后的各候选操作子的输出组成,所述候选操作子的计算量小于所述原始操作子的计算量;
初始化单元,用于初始化所述GAN网络中各候选操作子的参数及其权重;
网络更新单元,用于交替更新所述生成网络G和所述判别网络D,直至所述GAN网络收敛;
候选操作子选取单元,用于基于收敛的GAN网络中每一层各候选操作子的最终权重,确定每一层最终保留的操作子,以得到压缩后的GAN网络。
12.一种GAN网络压缩设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如权利要求1~10中任一项所述的GAN网络压缩方法的各个步骤。
13.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1~10中任一项所述的GAN网络压缩方法的各个步骤。
CN202011341346.XA 2020-11-25 2020-11-25 Gan网络压缩方法、装置、设备及存储介质 Pending CN112465115A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011341346.XA CN112465115A (zh) 2020-11-25 2020-11-25 Gan网络压缩方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011341346.XA CN112465115A (zh) 2020-11-25 2020-11-25 Gan网络压缩方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112465115A true CN112465115A (zh) 2021-03-09

Family

ID=74808265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011341346.XA Pending CN112465115A (zh) 2020-11-25 2020-11-25 Gan网络压缩方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112465115A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113869501A (zh) * 2021-10-19 2021-12-31 京东科技信息技术有限公司 神经网络的生成方法、装置、电子设备及存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018061091A (ja) * 2016-10-03 2018-04-12 株式会社Preferred Networks データ圧縮装置、データ再現装置、データ圧縮方法、データ再現方法及びデータ転送方法
CN108171320A (zh) * 2017-12-06 2018-06-15 西安工业大学 一种基于生成式对抗网络的图像域转换网络和转换方法
CN108564611A (zh) * 2018-03-09 2018-09-21 天津大学 一种基于条件生成对抗网络的单目图像深度估计方法
US20190050632A1 (en) * 2017-08-14 2019-02-14 Baidu Online Network Technology (Beijing) Co., Ltd . Method and apparatus for generating training data for human face recognition, device and computer storage medium
CN109978142A (zh) * 2019-03-29 2019-07-05 腾讯科技(深圳)有限公司 神经网络模型的压缩方法和装置
CN109993298A (zh) * 2017-12-29 2019-07-09 百度在线网络技术(北京)有限公司 用于压缩神经网络的方法和装置
CN110490323A (zh) * 2019-08-20 2019-11-22 腾讯科技(深圳)有限公司 网络模型压缩方法、装置、存储介质和计算机设备
CA3056098A1 (en) * 2019-06-07 2019-11-22 Tata Consultancy Services Limited Sparsity constraints and knowledge distillation based learning of sparser and compressed neural networks
WO2019237846A1 (zh) * 2018-06-11 2019-12-19 腾讯科技(深圳)有限公司 图像处理方法、人脸识别方法、装置和计算机设备
US10652565B1 (en) * 2017-10-12 2020-05-12 Amazon Technologies, Inc. Image compression and decompression using embeddings
CN111626404A (zh) * 2020-05-14 2020-09-04 北京航空航天大学 基于生成对抗神经网络的深度网络模型压缩训练方法
CN111860495A (zh) * 2020-06-19 2020-10-30 上海交通大学 一种层级化网络结构搜索方法、设备及可读存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018061091A (ja) * 2016-10-03 2018-04-12 株式会社Preferred Networks データ圧縮装置、データ再現装置、データ圧縮方法、データ再現方法及びデータ転送方法
US20190050632A1 (en) * 2017-08-14 2019-02-14 Baidu Online Network Technology (Beijing) Co., Ltd . Method and apparatus for generating training data for human face recognition, device and computer storage medium
US10652565B1 (en) * 2017-10-12 2020-05-12 Amazon Technologies, Inc. Image compression and decompression using embeddings
CN108171320A (zh) * 2017-12-06 2018-06-15 西安工业大学 一种基于生成式对抗网络的图像域转换网络和转换方法
CN109993298A (zh) * 2017-12-29 2019-07-09 百度在线网络技术(北京)有限公司 用于压缩神经网络的方法和装置
CN108564611A (zh) * 2018-03-09 2018-09-21 天津大学 一种基于条件生成对抗网络的单目图像深度估计方法
WO2019237846A1 (zh) * 2018-06-11 2019-12-19 腾讯科技(深圳)有限公司 图像处理方法、人脸识别方法、装置和计算机设备
CN109978142A (zh) * 2019-03-29 2019-07-05 腾讯科技(深圳)有限公司 神经网络模型的压缩方法和装置
CA3056098A1 (en) * 2019-06-07 2019-11-22 Tata Consultancy Services Limited Sparsity constraints and knowledge distillation based learning of sparser and compressed neural networks
CN110490323A (zh) * 2019-08-20 2019-11-22 腾讯科技(深圳)有限公司 网络模型压缩方法、装置、存储介质和计算机设备
CN111626404A (zh) * 2020-05-14 2020-09-04 北京航空航天大学 基于生成对抗神经网络的深度网络模型压缩训练方法
CN111860495A (zh) * 2020-06-19 2020-10-30 上海交通大学 一种层级化网络结构搜索方法、设备及可读存储介质

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
FREDERICK TUNG, GREG MORI: "Deep Neural Network Compression by In-Parallel Pruning-Quantization", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE *
张彬 等著: "《图像复原优化算法》", 31 August 2019, 北京:国防工业出版社, pages: 239 - 240 *
徐嘉荟: "基于模型剪枝的神经网络压缩技术研究", 信息通信, no. 12 *
朱纯;王翰林;魏天远;王伟: "基于深度卷积生成对抗网络的语音生成技术", 仪表技术, no. 02 *
简献忠;张雨墨;王如志: "基于生成对抗网络的压缩感知图像重构方法", 包装工程, no. 11 *
郑哲 等: "量化权值激活的生成对抗网络", 计算机科学, vol. 47, no. 5 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113869501A (zh) * 2021-10-19 2021-12-31 京东科技信息技术有限公司 神经网络的生成方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
Suganuma et al. A genetic programming approach to designing convolutional neural network architectures
US10990877B2 (en) Frame selection based on a trained neural network
CN110210560B (zh) 分类网络的增量训练方法、分类方法及装置、设备及介质
Dai et al. Pdan: Pyramid dilated attention network for action detection
US20170344881A1 (en) Information processing apparatus using multi-layer neural network and method therefor
CN110362677B (zh) 文本数据类别的识别方法及装置、存储介质、计算机设备
CN110347872B (zh) 视频封面图像提取方法及装置、存储介质及电子设备
CN110232403A (zh) 一种标签预测方法、装置、电子设备及介质
US10783402B2 (en) Information processing apparatus, information processing method, and storage medium for generating teacher information
US9842279B2 (en) Data processing method for learning discriminator, and data processing apparatus therefor
Juefei-Xu et al. Rankgan: a maximum margin ranking gan for generating faces
JP2011221791A (ja) 顔クラスタリング装置、顔クラスタリング方法、及びプログラム
CN112784929B (zh) 一种基于双元组扩充的小样本图像分类方法及装置
CN110929836B (zh) 神经网络训练及图像处理方法和装置、电子设备、介质
CN112561028A (zh) 训练神经网络模型的方法、数据处理的方法及装置
CN111400615A (zh) 一种资源推荐方法、装置、设备及存储介质
CN112465115A (zh) Gan网络压缩方法、装置、设备及存储介质
CN113782093B (zh) 一种基因表达填充数据的获取方法及装置、存储介质
CN113221977B (zh) 一种基于抗混叠语义重构的小样本语义分割方法
CN109859314A (zh) 三维重建方法、装置、电子设备和存储介质
CN111382791B (zh) 深度学习任务处理方法、图像识别任务处理方法和装置
Zeng et al. Key-frame extraction using dominant-set clustering
Ostonov et al. Rlss: A deep reinforcement learning algorithm for sequential scene generation
AU2018204876A1 (en) Interactive content search using comparisons
CN110414593B (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