CN114611674A - 一种U-net模型的轻量化方法及装置 - Google Patents
一种U-net模型的轻量化方法及装置 Download PDFInfo
- Publication number
- CN114611674A CN114611674A CN202210283262.8A CN202210283262A CN114611674A CN 114611674 A CN114611674 A CN 114611674A CN 202210283262 A CN202210283262 A CN 202210283262A CN 114611674 A CN114611674 A CN 114611674A
- Authority
- CN
- China
- Prior art keywords
- model
- factor layer
- net
- sample data
- clipping factor
- 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
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/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
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30212—Military
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及深度学习技术领域,尤其涉及一种U‑net模型的轻量化方法及装置。该轻量化方法包括:获取U‑net模型;在所述U‑net模型中增加预裁剪因子层,得到第一模型;利用第一样本数据训练所述第一模型得到第二模型;对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。本申请实施例通过对U‑net模型进行剪枝,在加速网络模型推理的同时,保证了网络模型的准确率。
Description
技术领域
本申请涉及深度学习技术领域,尤其涉及一种U-net模型的轻量化方法及装置。
背景技术
随着深度学习的发展,神经网络模型被应用到越来越多的应用场景中。但是,大型的神经网络模型的计算量大,需要耗费很多的计算资源,在计算量低的边缘移动设备中,耗时严重。
以人像抠图应用场景为例进行说明,在该应用场景中,经常使用神经网络模型作为图像特征的提取模块,神经网络模型对图像的表征更好从而可以取得良好的抠图效果,但是神经网络模型计算量大,需要耗费更多的计算资源,在计算量低的边缘移动设备中,耗时严重,难以实现实时人像抠图。
发明内容
有鉴于此,本申请实施例提供了一种U-net模型的轻量化方法及装置,可以解决相关技术中的至少一个技术问题。
第一方面,本申请一实施例提供了一种U-net模型的轻量化方法,包括:获取U-net模型;在所述U-net模型中增加预裁剪因子层,得到第一模型;利用第一样本数据训练所述第一模型得到第二模型;对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
本实施例提供的一种U-net模型的轻量化方法,对U-net模型增加预裁剪因子层,并基于经训练的预裁剪因子层的参数进行剪枝,实现了网络模型的轻量化,在加速网络模型推理的同时,可以保证较高的准确率。
在一些实施例中,所述在所述U-net模型中增加预裁剪因子层,得到第一模型,包括:在所述U-net模型的编码器中各卷积模块的第一个卷积单元后面增加预裁剪因子层,得到第一模型。
在一些实施例中,在所述利用第一样本数据训练所述第一模型得到第二模型的反向传播过程中,利用损失函数的梯度更新所述第一模型中属于所述U-net模型的各层的参数,利用所述损失函数的梯度和惩罚项的梯度更新所述第一模型中预裁剪因子层的参数。
在一些实施例中,所述对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型,包括:步骤S1,对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型;步骤S2,若所述第三模型不满足预设条件,则更新所述阈值,并返回执行上述步骤S1;步骤S3,若所述第三模型满足预设条件,则存储所述第三模型。
在一些实施例中,所述对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型之后,还包括:将所述第三模型中保留下来的预裁剪因子层与其前面的卷积单元进行融合,得到第四模型。
在一些实施例中,还包括:利用第二样本数据对所述第三模型进行调优训练,得到第四模型,所述第二样本数据的数量小于所述第一样本数据的数量,所述第二样本数据为与应用场景关联的样本数据。
在一些实施例中,所述第一样本数据为带标注的人像抠图数据,所述第三模型为用于人像抠图的模型。
第二方面,本申请一实施例提供了一种U-net模型的轻量化装置,包括:获取模块,用于获取U-net模型;增加模块,用于在所述U-net模型中增加预裁剪因子层,得到第一模型;训练模块,用于利用第一样本数据训练所述第一模型得到第二模型;剪枝模块,用于对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
第三方面,本申请一实施例提供一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一实施例所述的U-net模型的轻量化方法。
第四方面,本申请一实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一实施例所述的U-net模型的轻量化方法。
第五方面,本申请一实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如第一方面任一实施例所述的U-net模型的轻量化方法。
应理解,第二方面至第五面的有益效果可以参见第一方面实施例的相关描述,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种U-net模型的轻量化方法的实现流程示意图;
图2是本申请一实施例提供的一种卷积模块的结构示意图;
图3是本申请一实施例提供的一种卷积模块中增加预裁剪因子层前后的结构示意图;
图4是本申请另一实施例提供的一种U-net模型的轻量化方法的实现流程示意图;
图5是本申请另一实施例提供的一种U-net模型的轻量化方法的实现流程示意图;
图6是本申请另一实施例提供的一种U-net模型的轻量化方法的实现流程示意图;
图7是本申请一实施例提供的一种U-net模型的轻量装置的结构示意图;
图8是本申请一实施例提供的一种U-net模型的轻量装置的结构示意图;
图9是本申请一实施例提供的一种U-net模型的轻量装置的结构示意图;
图10是本申请一实施例提供的一种U-net模型的轻量装置的结构示意图;
图11是本申请一实施例提供的一种U-net模型的轻量装置的结构示意图;
图12是本申请一实施例提供的一种U-net模型的轻量装置的结构示意图;
图13是本申请一实施例提供的一种电子设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在本申请说明书中描述的“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
此外,在本申请的描述中,“多个”的含义是两个或两个以上。术语“第一”和“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
目前,神经网络模型的计算量大,需要耗费很多的计算资源,在计算量低的边缘移动设备中,耗时严重,难以实现实时。
为了解决相关技术的技术问题,本申请实施例提供一种U-net模型的轻量化方法及装置,对U-net模型进行剪枝,实现了网络模型的轻量化,在加速网络模型推理的同时,可以保证较高的准确率。
图1是本申请一实施例提供的一种U-net模型的轻量化方法的实现流程示意图,本实施例中的U-net模型的轻量化方法可由电子设备执行。电子设备包括但不限于计算机、平板电脑、服务器、手机、相机或可穿戴设备等。其中,服务器包括但不限于独立服务器或云服务器等。如图1所示,U-net模型的轻量化方法可以包括步骤S110至步骤S140。
S110,获取U-net模型。
本申请实施例以U-net模型为对象,对其进行剪枝,以得到轻量化的网络模型。U-net模型由左半边的编码器和右半边的解码器组成。
在一个实施例中,编码器采用典型的卷积神经网络结构,它重复采用卷积模块。如图2所示,每个卷积模块包括2个卷积单元C和1个最大池化层Maxpooling的结构,每进行一次池化操作后特征图的维数就增加1倍。解码器先进行1次反卷积操作,使特征图的维数减半,然后拼接对应压缩通道裁剪得到的特征图,重新组成一个2倍大小的特征图,再采用2个卷积层进行特征提取,并重复这一结构。在最后的输出层,用2个卷积层将64维的特征图映射成2维的输出图。
S120,在U-net模型中增加预裁剪因子层,得到第一模型。
在U-net模型的基础上,在卷积层后面连接额外的预裁剪因子层,得到第一模型。预裁剪因子层是卷积核大小为1×1的卷积层,输入和输出通道数量与其连接的卷积层相同。
在一个实施例中,在U-net模型的编码器中各卷积模块的第一个卷积单元后面增加预裁剪因子层,得到第一模型。如图3中的(a)图所示,卷积模块包括两个卷积核为3×3大小的卷积单元,在卷积模块中第一个卷积单元后面增加1×1大小的预裁剪因子层,如图3中的(b)图所示。
需要说明的是,图3仅给出了卷积模块包括一个通道的示例,在实际应用中,卷积模块通常包括多个通道,例如64个、128个、256个等通道,则对应各通道的第一卷积单元后面均增加预裁剪因子层。
S130,利用第一样本数据训练第一模型得到第二模型。
在一些实施例中,在训练第一模型之前,还可以包括初始化第一模型,即第一模型参数初始化的步骤。在一个实施例中,可以将第一模型中属于原U-net模型的参数初始化,本申请对参数具体取值不予限制,而将第一模型中预裁剪因子层的参数初始化为单位矩阵,以保证初始化后的第一模型的输出与原U-net模型一致。
在利用第一样本数据训练第一模型得到第二模型的反向传播过程中,利用损失函数的梯度更新第一模型中属于U-net模型的各层的参数,利用损失函数的梯度和惩罚项的梯度更新第一模型中预裁剪因子层的参数。
在一个实施例中,对第一模型进行训练时,利用带标注的人像抠图数据,进行有监督学习。训练时,除损失函数之外,还在预裁剪因子层上加上惩罚约束。也就是说,在反向传播过程中,更新第一模型中属于U-net模型的各层的参数时,使用的梯度为损失函数的梯度,而更新第一模型中预裁剪因子层的梯度除了损失函数的梯度之外,还需加上套索(Lasso)惩罚项的梯度,以约束预裁剪因子层的训练参数,从而获得准确率高的网络模型。
需要说明的是,采用带标注的人像抠图数据训练第一模型,得到用于人像抠图的第二模型,再经步骤S140得到轻量化的用于人像抠图模型。为了描述方便,此实施例以及后续实施例以基于U-net模型的人像抠图模型为例进行说明。应理解,示例性说明不能解释为对本申请的具体限制。本申请实施例也可以适用于基于U-net模型的用于物品分类、物品识别等的模型的应用场景。
S140,对第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
对第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,从而得到轻量化的第三模型。需要说明的是,本申请对阈值的具体取值不予具体限制。
预裁剪因子层的参数越大,则说明对应通道对剪枝越敏感,反之,预裁剪因子层的参数越小,则说明对应通道对剪枝越不敏感。
在一个实施例中,当第二模型中某一卷积单元连接的预裁剪因子层的参数小于阈值,则将该卷积单元进行剪枝。继续参见图3中的(b)图所示,1×1大小的预裁剪因子层的参数小于阈值时,则对其前面的3×3大小的卷积单元进行剪枝。当第二模型中某一卷积单元连接的预裁剪因子层的参数大于阈值,则保留该卷积单元。需要说明的是,当第二模型中某一卷积单元连接的预裁剪因子层的参数等于阈值,可以根据实际情况进行选择设置,或将该卷积单元进行剪枝,或保留该卷积单元,本申请对此不予具体限制。
在一个实施例中,对第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,可以采用将该预裁剪因子层及其前面的卷积单元的权重参数置零的方式。在另一个实施例中,可以采用直接砍掉该预裁剪因子层及其前面的卷积单元的方式,这样可以进一步减少运算量,进一步提升推理的速度。
本实施例提供的一种U-net模型的轻量化方法,对U-net模型增加预裁剪因子层,并基于经训练的预裁剪因子层的参数进行剪枝,实现了网络模型的轻量化,在加速网络模型推理的同时,可以保证较高的准确率。
图4是本申请另一实施例提供的一种U-net模型的轻量化方法的实现流程示意图,本实施例中的U-net模型的轻量化方法可由电子设备执行。如图4所示,U-net模型的轻量化方法可以包括步骤S210至步骤S260。需要说明的是,本实施例与前述图1所示实施例相同之处请参见前述,此处不再赘述。
S210,获取U-net模型。
S220,在U-net模型中增加预裁剪因子层,得到第一模型。
S230,利用第一样本数据训练第一模型得到第二模型。
S240,对第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
S250,若第三模型不满足预设条件,则更新阈值,并返回执行上述步骤S240。
S260,若第三模型满足预设条件,则存储第三模型。
在一些实施例中,预设条件可以为剪枝后得到的第三模型的大小、精度和准确度中的一个或多个满足预设条件。需要说明的是,可以根据实际情况对预设条件进行选择设置,本申请对此不予具体限制。
本实施例提供的一种U-net模型的轻量化方法,在前述实施例的基础上,对阈值进行动态更新,以使得剪枝后得到的第三模型满足预设条件,可以进一步提升轻量化的网络模型的适应能力,例如,可进一步提升轻量化网络模型在应用场景中的准确率。
图5是本申请另一实施例提供的一种U-net模型的轻量化方法的实现流程示意图,本实施例中的U-net模型的轻量化方法可由电子设备执行。如图5所示,U-net模型的轻量化方法可以包括步骤S310至步骤S370。需要说明的是,本实施例与图4所示实施例相同之处请参见前述,此处不再赘述。还需要说明的是,本实施例以在图4所示实施例基础上进行改进作为示例性说明,应理解,针对图4所示实施例的改进也可以用于对图1所示实施例进行改进,工作原理相同,不再赘述。
S310,获取U-net模型。
S320,在U-net模型中增加预裁剪因子层,得到第一模型。
S330,利用第一样本数据训练第一模型得到第二模型。
S340,对第二模型中的卷积单元进行融合。
对第二模型中的卷积单元进行融合,以方便后续预裁剪因子层与其前面的卷积单元进行融合。
在一些实施例中,对卷积单元的卷积层和批归一化(BN)层进行融合。如果BN层直接跟在卷积层后,可以将BN层直接嵌入到卷积层的计算中,相当于将卷积核缩放一定倍数,并对偏置进行一定改变。将BN层融合到卷积层中,就相当于对卷积核进行一定的修改,并没有增加卷积层的计算量,同时整个BN层的计算量都省去了。
在其他一些实施例中,对卷积单元的卷积层、批归一化层和激活函数进行融合。
S350,对经融合的第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
S360,若第三模型不满足预设条件,则更新阈值,并返回执行上述步骤S350。
S370,若第三模型满足预设条件,则将第三模型中保留下来的预裁剪因子层与其前面的卷积单元进行融合,得到第四模型。
在一些实施例中,将保留的预裁剪因子层的参数与其前面的卷积单元进行融合,可以进一步减少计算量。作为一非限制性示例,将预裁剪因子层的核与其前面卷积单元(即卷积单元经融合得到的卷积层)的转置后的核进行卷积运算,并转置,得到融合后的网络模型的结构和参数。
本实施例提供的一种U-net模型的轻量化方法,在前述任一实施例的基础上,对网络模型进行融合,可以减少计算量,可以进一步提升轻量化的网络模型的推理速度。
图6是本申请另一实施例提供的一种U-net模型的轻量化方法的实现流程示意图,本实施例中的U-net模型的轻量化方法可由电子设备执行。如图6所示,U-net模型的轻量化方法可以包括步骤S410至步骤S480。需要说明的是,本实施例与图5所示实施例相同之处请参见前述,此处不再赘述。还需要说明的是,本实施例以在图5所示实施例基础上进行改进作为示例性说明,应理解,针对图5所示实施例的改进也可以用于对图1或图4所示实施例进行改进,工作原理相同,不再赘述。
S410,获取U-net模型。
S420,在U-net模型中增加预裁剪因子层,得到第一模型。
S430,利用第一样本数据训练第一模型得到第二模型。
S440,对第二模型中的卷积单元进行融合。
S450,对经融合的第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
S460,若第三模型不满足预设条件,则更新阈值,并返回执行上述步骤S350。
S470,若第三模型满足预设条件,则将第三模型中保留下来的预裁剪因子层与其前面的卷积单元进行融合,得到第四模型。
S480,利用第二样本数据对第四模型进行调优训练,得到第五模型。
其中。第二样本数据的数量小于第一样本数据的数量。第二样本数据为与应用场景关联的样本数据。
在一个实施例中,第一样本数据为大量的带标注的人像抠图数据,第四模型为人像抠图模型。利用符合应用场景需求的较少的第二样本数据对第四模型进行调优,以避免在网络模型裁剪后出现应用场景下的精度损失。
当人像抠图模型需要部署于客厅、半身、全身或地铁站等某一应用场景时,利用带有标注的且符合应用场景需求的人像抠图数据进行调优训练。调优训练过程包括:输入人像图像,经过第四模型的推理得到人像抠图结果,将人像抠图结果和人工标注结果进行损失计算,利用损失的梯度进行反向传播,对第四模型的参数进行更新,训练迭代后,得到调优后的网络模型,即第五模型。
在得到调优后的网络模型后,可以将该网络模型部署到电子设备,以实现端对端的应用。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本申请一实施例还提供一种U-net模型的轻量化装置。该轻量化装置中未详细描述之处请详见前述轻量化方法实施例中的描述。
参见图7,图7是本申请一实施例提供的一种U-net模型的轻量化装置的结构示意图。所述轻量化装置包括:获取模块71、增加模块72、训练模块73和剪枝模块74。
获取模块71,用于获取U-net模型;
增加模块72,用于在U-net模型中增加预裁剪因子层,得到第一模型。
训练模块73,用于利用第一样本数据训练第一模型得到第二模型。
剪枝模块74,用于对第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
在一些实施例中,所述增加模块72,具体用于:在U-net模型的编码器中各卷积模块的第一个卷积单元后面增加预裁剪因子层,得到第一模型。
在一些实施例中,在利用第一样本数据训练第一模型得到第二模型的反向传播过程中,利用损失函数的梯度更新第一模型中属于U-net模型的各层的参数,利用损失函数的梯度和惩罚项的梯度更新第一模型中预裁剪因子层的参数。
在一些实施例中,如图8所示,在图7所示实施例的基础上进行改进,所述剪枝模块74,具体包括第一子模块741、第二子模块742、和第三子模块743。
第一子模块741,用于对第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
第二子模块742,用于若第三模型不满足预设条件,则更新阈值,并返回第一子模块741;
第三子模块743,用于若第三模型满足预设条件,则存储第三模型。
在一些实施例中,如图9所示,以在图7所示实施例的基础上进行改进为例,所述轻量化装置还包括融合模块75。如图10所示,以在图8所示实施例的基础上进行改进为例,所述轻量化装置还包括融合模块75。融合模块75用于将第三模型中保留下来的预裁剪因子层与其前面的卷积单元进行融合,得到第四模型。
在一些实施例中,如图11所示,以在图7所示实施例的基础上进行改进为例,所述轻量化装置还包括调优模块76。调优模块76用于利用第二样本数据对第三模型进行调优训练,得到第四模型。其中,第二样本数据的数量小于第一样本数据的数量,第二样本数据为与应用场景关联的样本数据。
在其他一些实施例中,如图12所示,以在图10所示实施例的基础上进行改进为例,所述轻量化装置还包括调优模块76。调优模块76用于利用第二样本数据对第四模型进行调优训练,得到第五模型。其中,第二样本数据的数量小于第一样本数据的数量,第二样本数据为与应用场景关联的样本数据。
在其他一些实施例中,也可以在图8或图9所示实施例的基础上进行改进,所述轻量化装置还包括调优模块75。
在一些实施例中,在前述任一实施例的基础上,第一样本数据为带标注的人像抠图数据,第三模型为用于人像抠图的模型。
本申请一实施例还提供了一种电子设备,如图13所示,电子设备可以包括一个或多个处理器100(图13中仅示出一个),存储器101以及存储在存储器101中并可在一个或多个处理器100上运行的计算机程序102,例如,U-net模型的轻量化的程序。一个或多个处理器100执行计算机程序102时可以实现U-net模型的轻量化方法实施例中的各个步骤。或者,一个或多个处理器100执行计算机程序102时可以实现U-net模型的轻量化装置实施例中各模块/单元的功能,此处不作限制。
本领域技术人员可以理解,图13仅仅是电子设备的示例,并不构成对电子设备的限定。电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如电子设备还可以包括输入输出设备、网络接入设备、总线等。
在一个实施例中,所称处理器100可以是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在一个实施例中,存储器101可以是电子设备的内部存储单元,例如电子设备的硬盘或内存。存储器101也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,存储器101还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器101用于存储计算机程序以及电子设备所需的其他程序和数据。存储器101还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请一实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现U-net模型的轻量化方法实施例中的步骤。
本申请一实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备可实现U-net模型的轻量化方法实施例中的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述方法实施例中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种U-net模型的轻量化方法,其特征在于,包括:
获取U-net模型;
在所述U-net模型中增加预裁剪因子层,得到第一模型;
利用第一样本数据训练所述第一模型得到第二模型;
对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
2.如权利要求1所述的轻量化方法,其特征在于,所述在所述U-net模型中增加预裁剪因子层,得到第一模型,包括:
在所述U-net模型的编码器中各卷积模块的第一个卷积单元后面增加预裁剪因子层,得到第一模型。
3.如权利要求1或2所述的轻量化方法,其特征在于,在所述利用第一样本数据训练所述第一模型得到第二模型的反向传播过程中,利用损失函数的梯度更新所述第一模型中属于所述U-net模型的各层的参数,利用所述损失函数的梯度和惩罚项的梯度更新所述第一模型中预裁剪因子层的参数。
4.如权利要求1或2所述的轻量化方法,其特征在于,所述对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型,包括:
步骤S1,对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型,
步骤S2,若所述第三模型不满足预设条件,则更新所述阈值,并返回执行上述步骤S1;
步骤S3,若所述第三模型满足预设条件,则存储所述第三模型。
5.如权利要求2所述的轻量化方法,其特征在于,所述对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型之后,还包括:将所述第三模型中保留下来的预裁剪因子层与其前面的卷积单元进行融合,得到第四模型。
6.如权利要求1或2所述的轻量化方法,其特征在于,还包括:利用第二样本数据对所述第三模型进行调优训练,得到第四模型,所述第二样本数据的数量小于所述第一样本数据的数量,所述第二样本数据为与应用场景关联的样本数据。
7.如权利要求1或2所述的轻量化方法,其特征在于,所述第一样本数据为带标注的人像抠图数据,所述第三模型为用于人像抠图的模型。
8.一种U-net模型的轻量化装置,其特征在于,包括:
获取模块,用于获取U-net模型;
增加模块,用于在所述U-net模型中增加预裁剪因子层,得到第一模型;
训练模块,用于利用第一样本数据训练所述第一模型得到第二模型;
剪枝模块,用于对所述第二模型中预裁剪因子层的参数小于阈值的通道进行剪枝,得到第三模型。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的轻量化方法。
10.一种计算机存储介质,所述计算机存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的轻量化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210283262.8A CN114611674A (zh) | 2022-03-22 | 2022-03-22 | 一种U-net模型的轻量化方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210283262.8A CN114611674A (zh) | 2022-03-22 | 2022-03-22 | 一种U-net模型的轻量化方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114611674A true CN114611674A (zh) | 2022-06-10 |
Family
ID=81865931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210283262.8A Pending CN114611674A (zh) | 2022-03-22 | 2022-03-22 | 一种U-net模型的轻量化方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114611674A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116152502A (zh) * | 2023-04-17 | 2023-05-23 | 华南师范大学 | 一种基于解码层损失回召的医学影像分割方法及系统 |
-
2022
- 2022-03-22 CN CN202210283262.8A patent/CN114611674A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116152502A (zh) * | 2023-04-17 | 2023-05-23 | 华南师范大学 | 一种基于解码层损失回召的医学影像分割方法及系统 |
CN116152502B (zh) * | 2023-04-17 | 2023-09-01 | 华南师范大学 | 一种基于解码层损失回召的医学影像分割方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111950723B (zh) | 神经网络模型训练方法、图像处理方法、装置及终端设备 | |
CN107895191B (zh) | 一种信息处理方法及相关产品 | |
CN107545889B (zh) | 适用于模式识别的模型的优化方法、装置及终端设备 | |
WO2021184972A1 (zh) | 图像分割方法、装置、电子设备及存储介质 | |
CN111275107A (zh) | 一种基于迁移学习的多标签场景图像分类方法及装置 | |
CN110399487B (zh) | 一种文本分类方法、装置、电子设备及存储介质 | |
CN111859023A (zh) | 视频分类方法、装置、设备及计算机可读存储介质 | |
WO2022166258A1 (zh) | 行为识别方法、装置、终端设备及计算机可读存储介质 | |
CN110874634A (zh) | 神经网络的优化方法及装置、设备和存储介质 | |
CN111210004B (zh) | 卷积计算方法、卷积计算装置及终端设备 | |
CN111353591A (zh) | 一种计算装置及相关产品 | |
CN114611674A (zh) | 一种U-net模型的轻量化方法及装置 | |
CN111126501A (zh) | 一种图像识别方法、终端设备及存储介质 | |
CN113139617B (zh) | 一种输电线路自主定位方法、装置及终端设备 | |
CN111652051B (zh) | 人脸检测模型生成方法、装置、设备和存储介质 | |
CN111930935B (zh) | 图像分类方法、装置、设备和存储介质 | |
CN114998172A (zh) | 图像处理方法及相关系统 | |
CN114330675A (zh) | 一种芯片、加速卡、电子设备和数据处理方法 | |
CN115759192A (zh) | 一种神经网络加速方法、装置、设备、芯片及存储介质 | |
CN113160942A (zh) | 影像数据质量评估方法、装置、终端设备及可读存储介质 | |
CN112861780A (zh) | 一种行人重识别方法、装置、介质和移动机器人 | |
CN117556273B (zh) | 一种通过多图形处理器计算对比损失的方法和装置 | |
CN117975076A (zh) | 图像分类方法、电子设备及存储介质 | |
CN114565769A (zh) | 一种抠图网络训练方法及抠图方法 | |
CN107735800A (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 |