CN114998649A - 图像分类模型的训练方法、图像分类方法及装置 - Google Patents
图像分类模型的训练方法、图像分类方法及装置 Download PDFInfo
- Publication number
- CN114998649A CN114998649A CN202210536970.8A CN202210536970A CN114998649A CN 114998649 A CN114998649 A CN 114998649A CN 202210536970 A CN202210536970 A CN 202210536970A CN 114998649 A CN114998649 A CN 114998649A
- Authority
- CN
- China
- Prior art keywords
- round
- weight matrix
- image classification
- matrix
- classification model
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开提出了图像分类模型的训练方法、图像分类方法及装置,涉及人工智能技术领域,具体涉及深度学习、计算机视觉等技术领域,具体实现方案为:采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行图像分类模型的前向计算,进而,根据得到的预测类别与类别标注标签之间的差异,确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,并根据得到的本轮的稠密权重矩阵进行裁剪,得到用于下一轮训练过程的稀疏权重矩阵,由此,使整个训练过程中保持权重矩阵是稀疏的,加快了训练过程中的计算速度,可有效地降低训练过程中的计算时间。
Description
技术领域
本公开涉及人工智能技术领域,具体涉及深度学习、计算机视觉等技术领域,尤其涉及图像分类模型的训练方法、图像分类方法及装置。
背景技术
随着计算机技术的发展,出现了对图像的分类技术,图像分类是计算机视觉领域的一个基础任务。通过图像分类技术能够快速识别图像中各对象所属的类别。
为了实现图像中各对象的自动分类,在已有的样本图像上构建图像分类模型时,需要对图像分类模型进行训练,从而基于训练好的图像分类模型对待分类图像进行分类。
为了提升模型的预测效果,如何对图像分类模型进行训练是非常重要的。
发明内容
本公开提供了一种用于图像分类模型的训练方法、图像分类方法及装置。
根据本公开的一方面,提供了一种图像分类模型的训练方法,包括:获取样本图像;采用所述样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行所述图像分类模型的前向计算,以得到所述样本图像在本轮的预测类别;根据所述预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对所述本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对所述本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵;在所述任意的一轮的损失函数的取值小于阈值的情况下,停止所述训练过程。
根据本公开的另一方面,提供了一种图像分类方法,包括:获取待分类图像;采用第一方面实施例所述的图像分类模型的训练方法得到的图像分类模型,对所述待分类图像中的对象进行类别预测,以得到所述待分类图像的预测类别。
根据本公开的另一方面,提供了一种图像分类模型的训练装置,包括:获取模块,用于获取样本图像;训练模块,用于采用所述样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行所述图像分类模型的前向计算,以得到所述样本图像在本轮的预测类别;根据所述预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对所述本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对所述本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵;停止模块,用于在所述任意的一轮的损失函数的取值小于阈值的情况下,停止所述训练过程。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开第一方面实施例所述的方法,或者,执行本公开第二方面实施例所述的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行本公开第一方面实施例所述的方法,或者,执行本公开第二方面实施例所述的方法。
根据本公开的另一方面,提供了一种计算机程序产品,所述计算机程序在被处理器执行时实现本公开第一方面实施例所述的方法,或者,执行本公开第二方面实施例所述的方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例一所提供的图像分类模型的训练方法的流程示意图;
图2为本公开实施例二所提供的图像分类模型的训练方法的流程示意图;
图3为本公开实施例所提供的稠密权重矩阵转换为稀疏权重矩阵示意图;
图4为本公开实施例三所提供的图像分类模型的训练方法的流程示意图;
图5为本公开实施例四所提供的图像分类模型的训练方法的流程示意图;
图6为本公开实施例所提供的矩阵存储示意图;
图7为本公开实施例五所提供的图像分类模型的训练方法的流程示意图;
图8为本公开实施例所提供的下一轮的稀疏权重矩阵示意图;
图9为本公开实施例六所提供的图像分类模型的训练方法的流程示意图;
图10为本公开实施例七所提供的图像分类模型的训练方法的流程示意图;
图11为本公开实施例本轮以及下一轮所采用的图像分类模型示意图;
图12为本公开实施例八所提供的图像分类模型的训练方法的流程示意图;
图13为本公开实施例的图像分类模型训练的流程示意图;
图14为本公开实施例九所提供的图像分类方法的流程示意图;
图15为本公开实施例十所提供的图像分类模型的训练装置的结构示意图;
图16为本公开实施例十一所提供的图像分类装置的结构示意图;
图17示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
目前,随着深度学习技术的发展,深度神经网络可为进行图像分类的图像分类模型。由于深度神经网络的层数越来越深,参数在不断增多,导致深度神经网络的训练过程需要耗费大量的计算和存储资源。由于深度神经网络的参数存在许多很小的值,并且在训练过程中也会产生许多零值,比如,激活函数会产生零值。相关技术中,利用结构化稀疏的方法可以把模型中没用的或者影响很小的参数去掉,可以有效减少网络训练过程中所需要的计算和存储资源。
但是,结构化稀疏方法主要存在以下三个方面的问题:1、在预训练阶段没有运用稀疏化方法进行训练加速;2、在预训练阶段仅仅是对权重参数进行了稀疏化,而实际存储和计算并没有利用稀疏的特性;3、必须是固定模式的结构化稀疏方法,稀疏度有限,且在推理阶段的加速需要特定硬件支持。
针对上述问题,本公开提出一种图像分类模型的训练方法、图像分类方法及装置。
下面参考附图描述本公开实施例的图像分类模型的训练方法、图像分类方法及装置。
图1为本公开实施例一所提供的图像分类模型的训练方法的流程示意图。
本公开实施例以该图像分类模型的训练方法被配置于图像分类模型的训练装置中来举例说明,该图像分类模型的训练装置可以应用于任一电子设备中,以使该电子设备可以执行图像分类模型的训练功能。
其中,电子设备可以为任一具有计算能力的设备,例如可以为个人电脑(PersonalComputer,简称PC)、移动终端等,移动终端例如可以为手机、平板电脑、个人数字助理、穿戴式设备等具有各种操作***、触摸屏和/或显示屏的硬件设备。
如图1所示,该图像分类模型的训练方法可包括以下步骤:
步骤101,获取样本图像。
在本公开实施例中,可以获取多个样本图像,其中,样本图像可以从现有的训练集获取,或者,样本图像也可以在线采集,比如可以通过网络爬虫技术在线采集样本图像,或者,样本图像也可以为线下采集,比如可对各对象进行图像拍摄,或者,样本图像也可以为人工合成的图像,以得到样本图像,等等,本公开对此不作限制。
另外,还可对每个样本图像中的对象进行类别标注,得到各个类别对应的类别标注标签。
需要说明的是,为了提升模型的训练效果,标签可以通过人工标注,或者,为了降低人工成本,提升模型的训练效率,标签也可以自动标注,比如可以通过标注模型,对样本图像中的对象进行类别自动标注,本公开对此并不做限制。进一步地,在对样本图像的中的对象进行自动标注后,还可以通过人工审核的方式,对样本图像中标注的标签进行审核,以提升样本标注结果的准确性,从而提升模型的训练效果。
步骤102,采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵。
在本公开实施例中,可采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程可包括:根据设定的稀疏权重矩阵进行图像分类模型的前向计算,可得到样本图像在本轮的预测类别,进而,根据预测类别与样本图像上的类别标注标签之间的差异,确定本轮的损失函数,对本轮的损失函数进行反向梯度计算,由于对损失函数进行反向梯度计算后,可能产生稠密的权重矩阵,因此,可对反向梯度计算得到的本轮的稠密权重矩阵进行裁剪,将裁剪得到的稀疏权重矩阵作为下一轮训练过程用于图像分类模型的前向计算的设定稀疏权重矩阵。
步骤103,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
作为一种示例,可以根据样本图像对应的预测类别与样本图像上的类别标注标签之间的差异,生成损失函数,其中,损失函数的取值与上述差异呈正相关关系,即差异越小,损失函数的取值越小,反之,差异越大,损失函数的取值越大,从而本公开中,可以根据损失函数的取值,对图像分类模型进行训练,以使损失函数的取值最小化。
需要说明的是,上述仅以图像分类模型训练的终止条件为损失函数的取值最小化进行示例,实际应用时,也可以设置其它的终止条件,比如终止条件还可以为训练次数达到设定的次数阈值、训练时长大于设定的时长阈值等等,本公开对此并不做限制。
综上,通过获取样本图像;采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵;在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程,由此,通过在图像分类模型的整个训练过程中自动对图像分类模型的权重矩阵进行稀疏化,使训练过程中保持权重矩阵是稀疏的,加快了训练过程中的计算速度,可有效地降低训练过程中的计算时间。
为了清楚地说明本公开上述实施例中是如何对本轮的稠密权重矩阵进行裁剪,以得到下一轮的稀疏权重矩阵的,本公开还提出一种图像分类模型的训练方法。
图2为本公开实施例二所提供的图像分类模型的训练方法的流程示意图。
如图2所示,该图像分类模型的训练方法可包括如下步骤:
步骤201,获取样本图像。
步骤202,采用样本图像,对图像分类模型执行多轮训练过程。
步骤203,任意一轮的训练过程包括:将本轮的稠密权重矩阵中的各权重值与设定权重阈值进行比对,以从各权重值中确定大于设定权重阈值的目标权重值;将各权重值中除目标权重值之外的其余权重值置零,以得到下一轮的稀疏权重矩阵。
其中,本轮的稠密权重矩阵是根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算得到的。
作为一种示例,对本轮的损失函数进行反向梯度计算,得到本轮的稠密权重矩阵后,可将本轮的稠密权重矩阵中的各权重值与设定权重阈值进行比对,并将小于设定权重阈值的权重值置零,可得到下一轮的稀疏权重矩阵。
需要说明的是,上述仅以对稠密权重矩阵中小于设定权重阈值的权重值置零对稠密权重矩阵进行稀疏化进行示例,实际应用时,还可采用稀疏矩阵算法对稠密权重矩阵进行稀疏化。其中,稀疏矩阵算法可包括:图搜索算法和稀疏线性方程组求解等。
举例而言,如图3所示,可将权重矩阵中小于0.002的权重值进行置零,并将置零后的权重矩阵作为下一轮的稀疏权重矩阵。
步骤204,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
需要说明的是,步骤201至202、步骤204的执行过程可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
综上,通过将本轮的稠密权重矩阵中的各权重值与设定权重阈值进行比对,以从各权重值中确定大于设定权重阈值的目标权重值;将各权重值中除目标权重值之外的其余权重值置零,以得到下一轮的稀疏权重矩阵,由此,通过对稠密权重矩阵中小于设定权重阈值的权重值置零,可得到下一轮的稀疏权重矩阵。
为了在下一轮训练过程时,及时获取到对应的稀疏权重矩阵,如图4所示,图4为本公开实施例三所提供的图像分类模型的训练方法的流程示意图。在本公开实施例中,可对下一轮的稀疏权重矩阵进行存储,以在执行下一轮训练过程时,获取对应的稀疏权重矩阵。图4所示实施例可包括如下步骤:
步骤401,获取样本图像。
步骤402,采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程还包括:对下一轮的稀疏权重矩阵进行存储,以在执行下一轮训练过程时,获取对应的稀疏权重矩阵。
其中,下一轮的稀疏权重矩阵是根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪得到的。
在本公开实施例中,为了在执行下一轮训练过程时,可及时获取到对应的稀疏权重矩阵,可在对本轮的稠密权重矩阵进行裁剪,得到用于下一训练过程的稀疏权重矩阵时,对该下一轮的稀疏权重矩阵进行存储。其中,需要说明的是,为了节省存储空间,便于加速计算,对该下一轮的稀疏权重矩阵进行存储时,可采用稀疏格式进行存储,比如,可采用坐标形式存储或者采用压缩行信息方式存储。
步骤403,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
需要说明的是,步骤401、步骤403的执行过程可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
综上,通过对下一轮的稀疏权重矩阵进行存储,可在下一轮训练过程时,及时获取到对应的稀疏权重矩阵。
为了清楚地说明本公开上述实施例中如何对所述下一轮的稀疏权重矩阵进行存储的,作为一种示例,本公开实施例提出了一种图像分类模型的训练方法。
图5为本公开实施例四所提供的图像分类模型的训练方法的流程示意图。
如图5所示,该图像分类模型的训练方法可包括如下步骤:
步骤501,获取样本图像。
步骤502,采用样本图像,对图像分类模型执行多轮训练过程。
步骤503,任意一轮的训练过程中,获取下一轮的稀疏权重矩阵中的各非零权重值,以及各非零权重值在下一轮的稀疏权重矩阵中的位置。
其中,下一轮的稀疏权重矩阵是根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪得到的。
在本公开实施例中,可获取下一轮的稀疏权重矩阵中的各非零权重值,以及各非零权重值在下一轮的稀疏权重矩阵中的位置,比如,每个非零权重值在下一轮的稀疏权重矩阵中的行索引和列索引。
步骤504,根据各非零权重值在下一轮的稀疏权重矩阵中的位置,对各非零权重值进行存储。
比如,如图6所示,将每个非零权重值的行索引、列索引以及对应的非零权重值进行存储。
步骤505,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
需要说明的是,步骤501至步骤502、步骤505的执行过程可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
综上,通过任意一轮的训练过程中,获取下一轮的稀疏权重矩阵中的各非零权重值,以及各非零权重值在下一轮的稀疏权重矩阵中的位置;根据各非零权重值在下一轮的稀疏权重矩阵中的位置,对各非零权重值进行存储,由此,仅对下一轮的稀疏权重矩阵中的各非零权重值进行存储,可节省存储空间,便于训练过程中的加速计算。
为了清楚地说明本公开上述实施例中如何对下一轮的稀疏权重矩阵进行存储的,作为另一种示例,本公开实施例提出了一种图像分类模型的训练方法。
图7为本公开实施例五所提供的图像分类模型的训练方法的流程示意图。如图7所示,该图像分类模型的训练方法可包括如下步骤:
步骤701,获取样本图像。
步骤702,采用样本图像,对图像分类模型执行多轮训练过程。
步骤703,任意一轮的训练过程中,获取下一轮的稀疏权重矩阵中的各非零权重值,以及各非零权重值在下一轮的稀疏权重矩阵中的行索引与列索引。
其中,下一轮的稀疏权重矩阵是根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪得到的。
比如,如图8所示,以图8中所示的矩阵为下一轮的稀疏权重矩阵为例,可获取下一轮的稀疏权重矩阵中的非零权重值为1、2、3、4、5和6。
步骤704,采用第一存储数组中的元素存储各非零权重值。
在本公开实施例中,可采用第一存储数组中的各元素对各非零元素进行存储。
步骤705,根据各非零权重值的行索引,从第一存储数组中确定对应各行的第一目标元素。
其中,各行的第一目标元素是下一轮的稀疏权重矩阵对应行中的首个非零权重值。
进一步地,根据各非零权重值的行索引,可从第一存储数组中,将下一轮的稀疏权重矩阵中各行中的首个非零权重值筛选出来。比如,图8矩阵中行索引为0的行对应的第一目标元素为1,行索引为1的行对应的第一目标元素为2,行索引为2的行的第一目标元素为4,行索引为3的行的第一目标元素为5。
步骤706,采用第二存储数组中的元素,对第一目标元素在第一存储数据组中的位置进行存储,并采用第二存储数组中的最后一个元素对第一存储数组所包含的元素个数进行存储。
继续以图8所示的矩阵为例,图8所示的矩阵中的非零权重值为1、2、3、4、5和6,将非零权重值为1、2、3、4、5和6,存储在第一存储数组中,第一存储数组为{1,2,3,4,5,6},其中,从第一数组中可确定行索引为0的行对应的第一目标元素为1,行索引为1的行对应的第一目标元素为2,行索引为2的行的第一目标元素为4,行索引为3的行的第一目标元素为5,第一目标元素1在第一存储数组中的位置为0,第一目标元素2在第一存储数组中的位置为1,第一目标元素4在第一存储数组中的位置为3,第一目标元素5在第一存储数组中的位置为4,进而,采用第二存储数组中的各元素,对第一目标元素在第一存储数组中的位置进行存储,并采用第二存储数组中的最后一个元素对第一存储数组所包含的元素个数进行存储,如,第二存储数组中的最后一个元素为6,如,第二存储数组为{0,1,3,4,6}。
步骤707,采用第三存储数组中的元素,对第一存储数组中各元素在下一轮的稀疏权重矩阵中对应的列索引进行存储。
继续以图8所示的矩阵为例,第一存储数组{1,2,3,4,5,6}中各元素在下一轮的稀疏权重矩阵中对应的列索引分别为1、0、3、2、1和3。第三存储数据为{1,0,3,2,1,3}。
步骤708,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
需要说明的是,步骤701至步骤702、步骤708的执行过程可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
综上,通过任意一轮的训练过程中,获取下一轮的稀疏权重矩阵中的各非零权重值,以及各非零权重值在下一轮的稀疏权重矩阵中的行索引与列索引;采用第一存储数组中的元素存储各非零权重值;根据各非零权重值的行索引,从第一存储数组中确定对应各行的第一目标元素;采用第二存储数组中的元素,对第一目标元素在第一存储数据组中的位置进行存储,并采用第二存储数组中的最后一个元素对第一存储数组所包含的元素个数进行存储;采用第三存储数组中的元素,对第一存储数组中各元素在下一轮的稀疏权重矩阵中对应的列索引进行存储,由此,对下一轮的稀疏权重矩阵采用压缩行信息的方式进行存储,可节省存储空间,便于训练过程中的加速计算。
为了清楚地说明任意一轮的训练过程中如何根据本轮的稀疏权重矩阵进行所述图像分类模型的前向计算,以及对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵的,本公开提出了一种图像分类模型的训练方法。
图9为本公开实施例六所提供的图像分类模型的训练方法的流程示意图。如图9所示,该图像分类模型的训练方法可包括如下步骤:
步骤901,获取样本图像。
步骤902,采用样本图像,对图像分类模型执行多轮训练过程。
步骤903,任意一轮的训练过程中,根据本轮图像分类模型中的各算子矩阵以及本轮的稀疏权重矩阵进行前向计算,以得到本轮的预测类别。
需要说明的是,图像分类模型中可包括多个网络层,每个网络层可包括多个算子,每个算子可包括至少一个算子矩阵。
在本公开实施例中,在图像分类模型的任意一轮的训练过程中,将样本图像输入本轮图像分类模型中,本轮图像分类模型中的各算子矩阵以及本轮的稀疏权重矩阵进行前向计算,可得到样本图像在本轮的预测类别。
步骤904,根据本轮图像分类模型中的各算子矩阵对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵。
其中,损失函数是根据预测类别与样本图像上的类别标注标签之间的差异得到的。
步骤905,本轮图像分类模型中的各算子矩阵对本轮的损失函数进行反向梯度计算,可得到本轮的稠密权重矩阵。
步骤906,对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵。
步骤907,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
需要说明的是,步骤901至步骤902、步骤905至步骤907的执行过程可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
综上,通过任意一轮的训练过程中,根据本轮图像分类模型中的各算子矩阵以及本轮的稀疏权重矩阵进行前向计算,以得到本轮的预测类别;根据本轮图像分类模型中的各算子矩阵对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵,由此,可得到任意一轮的训练过程中的预测类别以及稠密权重矩阵。
为了进一步加快计算速度,如图10所示,图10为本公开实施例七所提供的图像分类模型的训练方法的流程示意图,可采用稀疏算子对权重矩阵进行计算,以加快计算速度,图10所示实施例可包括如下步骤:
步骤1001,获取样本图像。
步骤1002,采用样本图像,对图像分类模型执行多轮训练过程。
步骤1003,任意一轮的训练过程中,从本轮图像分类模型中的各算子矩阵中确定至少一个目标算子矩阵。
步骤1004,在本轮图像分类模型中的各算子矩阵中,对至少一个目标算子矩阵进行稀疏化,以得到下一轮训练所采用的各算子矩阵。
其中,首轮对应的各算子矩阵是对图像分类模型的初始的各算子矩阵进行稀疏化得到的,初始的各算子矩阵可为设定的算子矩阵。
举例而言,如图11所示,比如,图像分类模型包括第一卷积层、第一激活函数层、第一最大池化层、第二卷积层、第二激活函数层和线性层,可将第一卷积层、第二卷积层和线性层的算子矩阵作为目标算子矩阵。
进而,从本轮图像分类模型中的各算子矩阵中,将目标算子矩阵进行稀疏化,将稀疏化后的目标算子以及本轮图像分类模型中的各算子矩阵除目标算子矩阵之外的算子,作为下一轮训练所采用的各算子矩阵,其中,图11左侧为本轮训练所采用的各算子矩阵对应的网络层,图11右侧为下一轮训练所采用的各算子矩阵对应的网络层,并且,图11右侧中的阴影部分为目标算子矩阵对应的网络层。
步骤1005,根据本轮图像分类模型中的各算子矩阵以及本轮的稀疏权重矩阵进行前向计算,以得到样本图像在本轮预测类别。
步骤1006,根据本轮图像分类模型中的各算子矩阵对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵。
其中,损失函数是根据预测类别与样本图像上的类别标注标签之间的差异得到的。
步骤1007,对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵。
步骤1008,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
需要说明的是,步骤1001至步骤1003、步骤1005至步骤1008的执行过程可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
综上,通过任意一轮的训练过程中,从本轮图像分类模型中的各算子矩阵中确定至少一个目标算子矩阵;在本轮图像分类模型中的各算子矩阵中,对至少一个目标算子矩阵进行稀疏化,以得到下一轮训练所采用的各算子矩阵,由此,在每一轮的训练过程中采用稀疏化后的算子矩阵进行计算,可加快计算速度,且无需特定的硬件支持。
为了清楚地说明图像分类模型首轮训练过程中的设定的稀疏权重矩阵是如何获取的,本公开提出了一种图像分类模型的训练方法。
图12为本公开实施例八所提供的图像分类模型的训练方法的流程示意图。如图12所示,该图像分类模型的训练方法可包括如下步骤:
步骤1201,获取样本图像。
步骤1202,采用样本图像,对图像分类模型执行多轮训练过程,其中,根据样本图像,确定图像分类模型的初始的权重矩阵。
在本公开实施例中,可将样本图像,输入至图像分类模型中,以对图像分类模型的权重矩阵进行初始化,从而得到图像分类模型的初始的权重矩阵。
步骤1203,将初始的权重矩阵进行稀疏化,以得到首轮训练过程采用的设定的稀疏权重矩阵。
进而,对初始的权重矩阵进行稀疏化,可得到首轮训练过程采用的设定的稀疏权重矩阵,比如,可将初始权重矩阵中小于设定权重阈值的矩阵值置零,将置零后的权重矩阵作为首轮训练过程采用的设定的稀疏权重矩阵。
步骤1204,任意一轮的训练过程,根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵。
步骤1205,在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
需要说明的是,步骤1201、步骤1204至步骤1205的执行过程可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
综上,对根据样本图像获取的图像分类模型的初始的权重矩阵进行稀疏化,可得到首轮训练过程采用的设定的稀疏权重矩阵。
为了清楚地说明上述实施例,现举例进行说明。
举例而言,如图13所示,首先,通过稀疏化模块,将图像分类模型的初始权重矩阵转换为稀疏格式,并将支持稀疏计算的算子转换为对应稀疏算子,从而得到一个新的稀疏网络,之后执行正常的训练过程,但是在每一步训练后要加入一个裁剪的操作,这是因为在反向计算梯度后可能会产生稠密的权重数据,因此这里***裁剪操作对权重数据再次进行裁剪使得权重数据保持稀疏性,然后进行下一轮的训练。此方法在训练过程始终保持权重数据是稀疏的,节省了存储空间,同时使用稀疏算子进行计算,当稀疏度达到一定程度后可以有效降低计算时间。
本公开实施例的图像分类模型的训练方法,通过获取样本图像,采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵,由此,通过在图像分类模型的整个训练过程中自动对图像分类模型的权重矩阵进行稀疏化,使训练过程中保持权重矩阵是稀疏的,加快了训练过程中的计算速度,可有效地降低训练过程中的计算时间。
上述为图像分类模型的训练方法所对应的各实施例,本公开还提出一种图像分类模型的应用方法,即图像分类方法。
图14为本公开实施例九所提供的图像分类方法的流程示意图。
如图14所示,该图像分类方法可以包括以下步骤:
步骤1401,获取待分类图像。
在本公开实施例中,待分类图像可以从现有的测试集获取,或者,待分类图像也可以在线采集,比如可以通过网络爬虫技术,在线采集待分类图像,或者,待分类图像也可以为线下采集,或者,待分类图像也可以为用户输入的图像,等等,本公开实施例对此不做限制。
步骤1402,采用经过训练的图像分类模型对待分类图像中的对象进行类别预测,以得到待分类图像的预测类别。
其中,图像分类模型可以是采用上述任一方法实施例训练得到的。
在本公开实施例中,可将待分类图像输入至经过训练的图像分类模型,图像分类模型可对待分类图像中的对象进行类别预测,得到待分类图像的预测类别。
本公开实施例的图像分类方法,通过获取待分类图像;采用经过训练的图像分类模型对待分类图像中的对象进行类别预测,以得到待分类图像的预测类别,由此,基于深度学习技术,对待分类图像进行类别预测,可以提升类别预测结果的准确性和可靠性。
与上述图1至图13实施例提供的图像分类模型的训练方法相对应,本公开还提供一种图像分类模型的训练装置,由于本公开实施例提供的图像分类模型的训练装置与上述图1至图13实施例提供的图像分类模型的训练方法相对应,因此在图像分类模型的训练方法的实施方式也适用于本公开实施例提供的图像分类模型的训练装置,在本公开实施例中不再详细描述。
图15为本公开实施例十所提供的图像分类模型的训练装置的结构示意图。
如图15所示,图像分类模型的训练装置1500包括:获取模块1510、训练模块1520和停止模块1530。
其中,获取模块1510,用于获取样本图像;训练模块1520,用于采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵;停止模块1530,用于在任意的一轮的损失函数的取值小于阈值的情况下,停止训练过程。
作为本公开实施例的一种可能的实现方式,训练模块1520,还用于:将本轮的稠密权重矩阵中的各权重值与设定权重阈值进行比对,以从各权重值中确定大于设定权重阈值的目标权重值;将各权重值中除目标权重值之外的其余权重值置零,以得到下一轮的稀疏权重矩阵。
作为本公开实施例的一种可能的实现方式,图像分类模型的训练装置1500还包括:存储模块。
存储模块,用于对下一轮的稀疏权重矩阵进行存储,以在执行下一轮训练过程时,获取对应的稀疏权重矩阵。
作为本公开实施例的一种可能的实现方式,存储模块,还用于:获取下一轮的稀疏权重矩阵中的各非零权重值,以及各非零权重值在所述下一轮的稀疏权重矩阵中的位置;根据各非零权重值在下一轮的稀疏权重矩阵中的位置,对各非零权重值进行存储。
作为本公开实施例的一种可能的实现方式,存储模块,还用于:获取下一轮的稀疏权重矩阵中的各非零权重值,以及各非零权重值在所述下一轮的稀疏权重矩阵中的行索引与列索引;采用第一存储数组中的元素存储各非零权重值;根据各非零权重值的行索引,从第一存储数组中确定对应各行的第一目标元素;其中,各行的第一目标元素是下一轮的稀疏权重矩阵对应行中的首个非零权重值;采用第二存储数组中的元素,对第一目标元素在第一存储数据组中的位置进行存储,并采用第二存储数组中的最后一个元素对第一存储数组所包含的元素个数进行存储;采用第三存储数组中的元素,对第一存储数组中各元素在下一轮的稀疏权重矩阵中对应的列索引进行存储。
作为本公开实施例的一种可能的实现方式,训练模块,还用于:根据本轮图像分类模型中的各算子矩阵以及本轮的稀疏权重矩阵进行前向计算,以得到样本图像在本轮的预测类别;根据本轮图像分类模型中的各算子矩阵对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵。
作为本公开实施例的一种可能的实现方式,图像分类模型的训练装置1500还包括:第一确定模块和第一稀疏模块。
其中,第一确定模块,用于从本轮图像分类模型中的各算子矩阵中确定至少一个目标算子矩阵;第一稀疏模块,用于在本轮图像分类模型中的各算子矩阵中,对至少一个目标算子矩阵进行稀疏化,以得到下一轮训练所采用的各算子矩阵,其中,首轮对应的各算子矩阵是对图像分类模型的初始的各算子矩阵进行稀疏化得到的。
作为本公开实施例的一种可能的实现方式,图像分类模型的训练装置1500还包括:第二确定模块和第二稀疏模块。
其中,第二确定模块,用于根据所述样本图像,确定图像分类模型的初始的权重矩阵;第二稀疏模块,用于将初始的权重矩阵进行稀疏化,以得到首轮训练过程采用的设定的稀疏权重矩阵。
本公开实施例的图像分类模型的训练装置,通过获取样本图像,采用样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行图像分类模型的前向计算,以得到样本图像在本轮的预测类别;根据预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵,由此,通过在图像分类模型的整个训练过程中自动对图像分类模型的权重矩阵进行稀疏化,使训练过程中保持权重矩阵是稀疏的,加快了训练过程中的计算速度,可有效地降低训练过程中的计算时间。
与上述图14实施例提供的图像分类方法相对应,本公开还提供一种图像分类装置,由于本公开实施例提供的图像分类装置与上述图14实施例提供的图像分类方法相对应,因此在图像分类方法的实施方式也适用于本公开实施例提供的图像分类装置,在本公开实施例中不再详细描述。
图16为本公开实施例十一所提供的图像分类装置的结构示意图。
如图16所示,图像分类装置1600包括:获取模块1610和预测模块1620。
其中,获取模块1610,用于获取待分类图像;预测模块1620,用于采用图15所述的图像分类模型的训练装置得到的图像分类模型,对待分类图像中的对象进行类别预测,以得到待分类图像的预测类别。
本公开实施例的图像分类装置,通过获取待分类图像;采用经过训练的图像分类模型对待分类图像中的对象进行类别预测,以得到待分类图像的预测类别,由此,基于深度学习技术,对待分类图像进行类别预测,可以提升类别预测结果的准确性和可靠性。
为了实现上述实施例,本公开还提供一种电子设备,该电子设备可以包括至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开上述任一实施例提出的图像分类模型的训练方法或图像分类方法。
为了实现上述实施例,本公开还提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开上述任一实施例提出的图像分类模型的训练方法或图像分类方法。
为了实现上述实施例,本公开还提供一种计算机程序产品,该计算机程序产品包括计算机程序,计算机程序在被处理器执行时实现本公开上述任一实施例提出的的图像分类模型的训练方法或图像分类方法。
需要说明的是,本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均在征得用户同意的前提下进行,并且均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图17示出了可以用来实施本公开的实施例的示例电子设备1700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图17所示,设备1700包括计算单元1701,其可以根据存储在只读存储器(ROM)1702中的计算机程序或者从存储单元1708加载到随机访问存储器(RAM)1703中的计算机程序,来执行各种适当的动作和处理。在RAM 1703中,还可存储设备1700操作所需的各种程序和数据。计算单元1701、ROM 1702以及RAM 1703通过总线1704彼此相连。输入/输出(I/O)接口1705也连接至总线1704。
设备1700中的多个部件连接至I/O接口1705,包括:输入单元1706,例如键盘、鼠标等;输出单元1707,例如各种类型的显示器、扬声器等;存储单元1708,例如磁盘、光盘等;以及通信单元1709,例如网卡、调制解调器、无线通信收发机等。通信单元1709允许设备1700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1701执行上文所描述的各个方法和处理,例如图像分类模型的训练方法,或者,图像分类方法。例如,在一些实施例中,图像分类模型的训练方法,或者,图像分类方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1702和/或通信单元1709而被载入和/或安装到设备1700上。当计算机程序加载到RAM1703并由计算单元1701执行时,可以执行上文描述的图像分类模型的训练方法,或者,图像分类方法的一个或多个步骤。备选地,在其他实施例中,计算单元1701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行图像分类模型的训练方法,或者,图像分类方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器也可以为分布式***的服务器,或者是结合了区块链的服务器。
其中,需要说明的是,人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种图像分类模型的训练方法,包括:
获取样本图像;
采用所述样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行所述图像分类模型的前向计算,以得到所述样本图像在本轮的预测类别;根据所述预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对所述本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对所述本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵;
在所述任意的一轮的损失函数的取值小于阈值的情况下,停止所述训练过程。
2.根据权利要求1所述方法,其中,对所述本轮的稠密权重矩阵进行裁剪,以得到下一轮的稀疏权重矩阵,包括:
将所述本轮的稠密权重矩阵中的各权重值与设定权重阈值进行比对,以从各所述权重值中确定大于设定权重阈值的目标权重值;
将各所述权重值中除所述目标权重值之外的其余权重值置零,以得到下一轮的稀疏权重矩阵。
3.根据权利要求2所述的方法,其中,所述方法还包括:
对所述下一轮的稀疏权重矩阵进行存储,以在执行下一轮训练过程时,获取对应的稀疏权重矩阵。
4.根据权利要求3所述的方法,其中,所述对所述下一轮的稀疏权重矩阵进行存储,包括:
获取所述下一轮的稀疏权重矩阵中的各非零权重值,以及各所述非零权重值在所述下一轮的稀疏权重矩阵中的位置;
根据各所述非零权重值在所述下一轮的稀疏权重矩阵中的位置,对各所述非零权重值进行存储。
5.根据权利要求3所述的方法,其中,所述对所述下一轮的稀疏权重矩阵进行存储,包括:
获取所述下一轮的稀疏权重矩阵中的各非零权重值,以及各所述非零权重值在所述下一轮的稀疏权重矩阵中的行索引与列索引;
采用第一存储数组中的元素存储各所述非零权重值;
根据各所述非零权重值的行索引,从所述第一存储数组中确定对应各行的第一目标元素;其中,各所述行的第一目标元素是所述下一轮的稀疏权重矩阵对应行中的首个非零权重值;
采用第二存储数组中的元素,对所述第一目标元素在所述第一存储数据组中的位置进行存储,并采用所述第二存储数组中的最后一个元素对所述第一存储数组所包含的元素个数进行存储;
采用第三存储数组中的元素,对所述第一存储数组中各元素在所述下一轮的稀疏权重矩阵中对应的列索引进行存储。
6.根据权利要求1所述的方法,其中,所述根据本轮的稀疏权重矩阵进行所述图像分类模型的前向计算,包括:
根据本轮图像分类模型中的各算子矩阵以及本轮的稀疏权重矩阵进行前向计算,以得到所述样本图像在本轮预测类别;
相应的,对所述本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵,包括:
根据本轮图像分类模型中的各算子矩阵对所述本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵。
7.根据权利要求1-6中任一项所述的方法,其中,所述任意的一轮训练过程中还包括:
从本轮图像分类模型中的各算子矩阵中确定至少一个目标算子矩阵;
在所述本轮图像分类模型中的各算子矩阵中,对所述至少一个目标算子矩阵进行稀疏化,以得到下一轮训练所采用的各算子矩阵,其中,首轮对应的各算子矩阵是对所述图像分类模型的初始的各算子矩阵进行稀疏化得到的。
8.根据权利要求1-6任一项所述的方法,其中,所述方法还包括:
根据所述样本图像,确定所述图像分类模型的初始的权重矩阵;
将所述初始的权重矩阵进行稀疏化,以得到首轮所述训练过程采用的所述设定的稀疏权重矩阵。
9.一种图像分类方法,包括:
获取待分类图像;
采用权利要求1-8中任一项所述图像分类模型的训练方法得到的图像分类模型,对所述待分类图像中的对象进行类别预测,以得到所述待分类图像的预测类别。
10.一种图像分类模型的训练装置,包括:
获取模块,用于获取样本图像;
训练模块,用于采用所述样本图像,对图像分类模型执行多轮训练过程,其中,任意一轮的训练过程包括:根据设定的稀疏权重矩阵进行所述图像分类模型的前向计算,以得到所述样本图像在本轮的预测类别;根据所述预测类别与样本图像上的类别标注标签之间的差异,以确定本轮的损失函数;对所述本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵;对所述本轮的稠密权重矩阵进行裁剪,以得到用于下一轮训练过程的稀疏权重矩阵;
停止模块,用于在所述任意的一轮的损失函数的取值小于阈值的情况下,停止所述训练过程。
11.根据权利要求10所述的装置,其中,所述训练模块,还用于:
将所述本轮的稠密权重矩阵中的各权重值与设定权重阈值进行比对,以从各所述权重值中确定大于设定权重阈值的目标权重值;
将各所述权重值中除所述目标权重值之外的其余权重值置零,以得到下一轮的稀疏权重矩阵。
12.根据权利要求11所述的装置,其中,所述装置还包括:
存储模块,用于对所述下一轮的稀疏权重矩阵进行存储,以在执行下一轮训练过程时,获取对应的稀疏权重矩阵。
13.根据权利要求12所述的装置,其中,所述存储模块,还用于:
获取所述下一轮的稀疏权重矩阵中的各非零权重值,以及各所述非零权重值在所述下一轮的稀疏权重矩阵中的位置;
根据各所述非零权重值在所述下一轮的稀疏权重矩阵中的位置,对各所述非零权重值进行存储。
14.根据权利要求12所述的装置,其中,所述存储模块,还用于:
获取所述下一轮的稀疏权重矩阵中的各非零权重值,以及各所述非零权重值在所述下一轮的稀疏权重矩阵中的行索引与列索引;
采用第一存储数组中的元素存储各所述非零权重值;
根据各所述非零权重值的行索引,从所述第一存储数组中确定对应各行的第一目标元素;其中,各所述行的第一目标元素是所述下一轮的稀疏权重矩阵对应行中的首个非零权重值;
采用第二存储数组中的元素,对所述第一目标元素在所述第一存储数据组中的位置进行存储,并采用所述第二存储数组中的最后一个元素对所述第一存储数组所包含的元素个数进行存储;
采用第三存储数组中的元素,对所述第一存储数组中各元素在所述下一轮的稀疏权重矩阵中对应的列索引进行存储。
15.根据权利要求10所述的装置,其中,所述训练模块,还用于:
根据本轮图像分类模型中的各算子矩阵以及本轮的稀疏权重矩阵进行前向计算,以得到所述样本图像在本轮的预测类别;
根据本轮图像分类模型中的各算子矩阵对所述本轮的损失函数进行反向梯度计算,以得到本轮的稠密权重矩阵。
16.根据权利要求10-15中任一项所述的装置,其中,所述装置还包括:
第一确定模块,用于从本轮图像分类模型中的各算子矩阵中确定至少一个目标算子矩阵;
第一稀疏模块,用于在所述本轮图像分类模型中的各算子矩阵中,对所述至少一个目标算子矩阵进行稀疏化,以得到下一轮训练所采用的各算子矩阵,其中,首轮对应的各算子矩阵是对所述图像分类模型的初始的各算子矩阵进行稀疏化得到的。
17.根据权利要求10-15中任一项所述的装置,其中,所述装置还包括:
第二确定模块,用于根据所述样本图像,确定所述图像分类模型的初始的权重矩阵;
第二稀疏模块,用于将所述初始的权重矩阵进行稀疏化,以得到首轮所述训练过程采用的所述设定的稀疏权重矩阵。
18.一种图像分类装置,包括:
获取模块,用于获取待分类图像;
预测模块,用于采用权利要求10-17中任一项所述图像分类模型的训练装置得到的图像分类模型,对所述待分类图像中的对象进行类别预测,以得到所述待分类图像的预测类别。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法,或者,执行权利要求9所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行如权利要求1-8中任一项所述的方法,或者,执行权利要求9所述的方法。
21.一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被处理器执行时实现如权利要求1-8中任一项所述的方法,或者,执行权利要求9所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210536970.8A CN114998649A (zh) | 2022-05-17 | 2022-05-17 | 图像分类模型的训练方法、图像分类方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210536970.8A CN114998649A (zh) | 2022-05-17 | 2022-05-17 | 图像分类模型的训练方法、图像分类方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114998649A true CN114998649A (zh) | 2022-09-02 |
Family
ID=83028082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210536970.8A Pending CN114998649A (zh) | 2022-05-17 | 2022-05-17 | 图像分类模型的训练方法、图像分类方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114998649A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117058525A (zh) * | 2023-10-08 | 2023-11-14 | 之江实验室 | 一种模型的训练方法、装置、存储介质及电子设备 |
-
2022
- 2022-05-17 CN CN202210536970.8A patent/CN114998649A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117058525A (zh) * | 2023-10-08 | 2023-11-14 | 之江实验室 | 一种模型的训练方法、装置、存储介质及电子设备 |
CN117058525B (zh) * | 2023-10-08 | 2024-02-06 | 之江实验室 | 一种模型的训练方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112801164A (zh) | 目标检测模型的训练方法、装置、设备及存储介质 | |
CN113361578B (zh) | 图像处理模型的训练方法、装置、电子设备及存储介质 | |
CN114282670A (zh) | 神经网络模型的压缩方法、设备和存储介质 | |
CN113705628B (zh) | 预训练模型的确定方法、装置、电子设备以及存储介质 | |
CN114187459A (zh) | 目标检测模型的训练方法、装置、电子设备以及存储介质 | |
CN114881129A (zh) | 一种模型训练方法、装置、电子设备及存储介质 | |
CN114186681A (zh) | 用于生成模型簇的方法、装置及计算机程序产品 | |
CN112861885A (zh) | 图像识别方法、装置、电子设备及存储介质 | |
CN114781650B (zh) | 一种数据处理方法、装置、设备以及存储介质 | |
CN113627536A (zh) | 模型训练、视频分类方法,装置,设备以及存储介质 | |
CN114494776A (zh) | 一种模型训练方法、装置、设备以及存储介质 | |
CN114970883A (zh) | 模型量化方法、装置、电子设备和存储介质 | |
CN113657468A (zh) | 预训练模型的生成方法、装置、电子设备和存储介质 | |
CN114998649A (zh) | 图像分类模型的训练方法、图像分类方法及装置 | |
CN113641804A (zh) | 预训练模型获取方法、装置、电子设备及存储介质 | |
CN117351299A (zh) | 图像生成及模型训练方法、装置、设备和存储介质 | |
CN115186738B (zh) | 模型训练方法、装置和存储介质 | |
CN115759209A (zh) | 神经网络模型的量化方法、装置、电子设备及介质 | |
CN113361621B (zh) | 用于训练模型的方法和装置 | |
CN115481594B (zh) | 计分板实现方法、计分板、电子设备及存储介质 | |
CN113961765B (zh) | 基于神经网络模型的搜索方法、装置、设备和介质 | |
CN114119972A (zh) | 模型获取及对象处理方法、装置、电子设备及存储介质 | |
CN113408632A (zh) | 提高图像分类准确性的方法、装置、电子设备及存储介质 | |
CN113313049A (zh) | 超参数的确定方法、装置、设备、存储介质以及计算机程序产品 | |
CN113361575A (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 |