基于多元激活函数的稀疏正则化神经网络的图像分类方法
文献发布时间:2023-06-19 12:22:51
技术领域
本发明属于模式识别、机器学习、人工智能技术领域,涉及图像分类方法,具体涉及 一种基于多元激活函数的稀疏正则化子的图像分类方法。
背景技术
稀疏正则化是解决深度神经网络中图像分类问题的一种功能强大、应用广泛的策略。 稀疏正则化的有效性在实践和理论上都得到了验证,如LASSO算子。稀疏正则化同时进行参数估计和特征选择,通过识别信息变量提供可解释的结果,通过舍弃冗余变量有效避免过拟合。由于这些特性,稀疏正则化在图像分类领域取得了巨大的成功。此外,已经开 展了一些理论研究来支持稀疏正则化的有效性,并提出了高效的优化方法,使稀疏学习易 于应用。
许多稀疏正则化被提出来产生稀疏解。L0范数是稀疏正则化最直观的形式,用于计算 非零元素的个数,其目的是促进最稀疏解的实现。然而,L0范数的最小化问题通常是NP-hard的。L1范数是最常用的范数,它是凸的,相应的L1范数正则化问题可以很容易 地解决。虽然L1范数具有很好的性质,但可能不会得到足够稀疏的解,并可能导致严重 的估计偏差。目前已有其他的稀疏正则化器包括smoothly clipped absolute deviation(SCAD),log penalty,capped L1,minimax concave penalty(MCP),Lp penalty等被提出以克服这些缺陷。 但是,上述正则化器大多是可分离的,它们可能不能充分利用向量项之间的交互来产生最 佳性能。
另一方面,现有的稀疏正则化器都是手工制作的。它们要么不能与控制模型很好地合 作以促进稀疏解决方案,要么不能很好地适合数据以实现良好的图像分类性能。因此,现 有技术一般采用尝试所有现有的稀疏正则化器,并选出最有效的一个的做法。但是,这种 做法效率低下,难以实际应用。
发明内容
为了克服上述现有技术的不足,本发明提供一种基于多元激活函数的稀疏正则化神经 网络模型的图像分类方法,采用基于多元激活函数的不可分离稀疏正则化器进行学习训练, 用训练好的模型进行图像分类,降低图像分类的错误率。
本发明通过设计多元激活函数,将任意一个已有CNN模型中的激活函数采用该多元激 活函数进行正则化,得到一个多元正则化的CNN模型,即基于多元激活函数的稀疏正则 化神经网络模型(MAF-SRL);利用近端梯度算法,将不可分离稀疏正则化学习转化为多元激活函数的学习,得到训练好的基于多元激活函数的稀疏正则化神经网络模型;再用该模型进行图像分类。
本发明提供的技术方案是:
一种基于多元激活函数的稀疏正则化神经网络模型的图像分类方法,通过学习多元激 活函数进一步学习多元稀疏正则化神经网络模型(也称稀疏正则化子或稀疏正则化器),用 于高效的进行图像分类,包括以下步骤:
1)将图像数据x={x
2)对训练样本图像进行预处理,包括同态滤波和图像平滑处理;
3)构建基于多元激活函数的稀疏正则化神经网络模型并进行训练,具体包括如下步骤:
3-1)设计多元激活函数。
初始化多元激活函数的学习参数:
设置计数器l=0。定义多元激活函数ξ(x)为:
其中,A=(a
3-2)定义多元正则化器。
本发明定义多元正则化器
其中,a
通过构建一个近端算子:
3-3)定义单元激活函数。
接下来定义多元激活函数ξ(x)包括的单元激活函数
3-4)对输入图像x={x
定义初始化的迭代求解x的公式为
x表示输入图像向量;x
3-5)迭代求解
本发明首先通过近端梯度的迭代算法进行求解,
接下来令
得到迭代公式:
由于x
进一步化简得到最后迭代求解的表达式:
3-6)进行神经网络的学习训练
对神经网络每一层i(i=1,2,3,...,N),逐层学习激活函数进而迭代求解x:
3-7)计算神经网络每一层的损失函数:N代表第N层的x图像向量。
直到网络收敛为止,将网络最后一层的输出,作为经迭代优化的最优图像向量输出x
本发明的训练参数设置为:权重衰减因子为0.001,动量为0.85。该网络模型可以在深 度学习框架Tensorflow下实现。将上述构建并初始化的多元激活函数代入CNN卷积神经 网络模型,即得到基于多元激活函数的稀疏正则化神经网络模型。再利用训练样本图像对 构建的模型进行训练。本发明具体实施时,均采用反向传播算法,用带Nesterov动量的随 机梯度下降算法进行模型训练。训练过程迭代1000轮,图像批大小为256,即每256张图片为一个批次,学习速率初始值为0.1。实验重复20次,报告20次实验的平均结果。
4)利用步骤3)构建并训练好的基于多元激活函数的稀疏正则化神经网络模型,对测 试图像样本进行识别,网络输出最优图像的标签,即得到预测的图像分类标签,由此实现 图片分类识别,其中测试样本无需经过图像预处理。
与现有技术相比,本发明的有益效果是:
本发明提供了一种基于多元激活函数的稀疏正则化神经网络模型的图像分类方法,通 过训练多元激活函数的参数隐式地计算多元正则化器。在具体实施中,可以将任意一个已 有CNN模型中的激活函数采用本发明设计的多元激活函数进行正则化,得到一个多元正 则化的CNN模型,最后用该模型进行图像分类。
本发明利用近端梯度算法,将不可分离稀疏正则化学习问题转化为多元激活函数的学 习问题。与现有的图像分类模型相比,本发明取得了更好的效果,可以用更少的模型参数, 在图像分类数据集上达到更低的图像分类错误率。
附图说明
图1是基于多元激活函数的稀疏正则化神经网络模型处理图像的单变量正则化器g(x) 的示意图;
其中,(a)-(h)分别表示FashionMNIST,MNIST,DIGITS,CIFAR-10,CIFAR-100,SDD,PENDIGITS,Caltech-101数据集上学习而得到的单变量的正则化器g(x)。
图2是本发明提供的神经网络模型MAF-SRL不同层数N对学习稀疏正则化器性能的影 响图;
其中,(a)为MAF-SRL不同层数N在FashionMNIST,MNIST,DIGITS,CIFAR-10上的 实施效果;(b)为MAF-SRL不同层数N在CIFAR-100,SDD,PENDIGITS,Caltech-101上的 实施效果。
具体实施方式
下面结合附图,通过实施例进一步描述本发明,但不以任何方式限制本发明的范围。
本发明提供一种基于多元激活函数的稀疏正则化神经网络模型MAF-SRL的图像分类 方法,训练多元激活函数的参数隐式地计算多元正则化器,用于高效的进行图像分类。包 括以下步骤:
步骤1:将图像数据分为训练样本和测试样本,本实施例所有数据集为 FASHION-MNIST,MNIST,DIGITS,CIFAR-10,CIFAR-100,SDD,PENDIGITS和Caltech-10数 据集,其中CIFAR-10和CIFAR-100训练数据50,000张,测试数据10,000张,其他数据集 训练集和测试集比例为8∶2。
步骤2:对训练样本图像进行图像预处理。图像预处理操作包括:同态滤波和图像平 滑。
图像g(i,j)是由光源产生的照度场g
g(i,j)=g
照度场g
(1)对上式两边取对数,得到两个加性分量,这是同态滤波方法中的第一步:
lng(i,j)=lng
(2)对上式两边同时进行傅立叶变换,得到:
G(u,v)=F{lng(i,j)}=F{lng
(3)为了消除照度的起伏,应该压缩G
G
(4)取傅立叶反变换和指数运算,得到图像g
g
为了减少图像中的噪声,需要对图像进行平滑处理,本发明实施例采用的图像平滑是 空域的局部平均法,这种方法易于实现、效果也比较好。经局部平均法处理后的g
其中,S是点(i,j)邻域内的点集,由于本发明实施例选取的卷积模板为:
步骤3:将图像预处理过的训练样本通过本发明得到的模型进行训练。本发明可以选 用任意一个已有的CNN架构,然后将其中的激活函数采用本发明构建的多元激活函数,得到一个基于多元激活函数的稀疏正则化神经网络模型。在本实施例中,我们选用ResNet作为网络基本架构。其中,训练多元激活函数的稀疏正则化神经网络模型的步骤如下:
3-1)设计多元激活函数。
输入图像x,初始化CNN卷积神经网络中多元激活函数的学习参数
本发明中,多元激活函数被定义为:
本发明定义多元正则化器为:
3-2)定义多元正则化器。
本发明定义多元正则化器
其中,a
通过构建一个近端算子:
3-3)定义单元激活函数。
接下来定义多元激活函数ξ(x)包括的单元激活函数
3-4)对输入图像x={x
定义初始化的迭代求解x的公式为
x
3-5)迭代求解
本发明首先通过近端梯度的迭代算法进行求解,
接下来令
得到迭代公式:
由于x
进一步化简得到最后迭代求解的表达式:
3-6)进行神经网络的学习训练
对神经网络每一层i(i=1,2,3,...,N),逐层学习激活函数进而迭代求解x:
3-7)计算神经网络每一层的损失函数:N代表第N层的x图像向量。
直到网络收敛为止,输出网络最后一层的输出图像x
步骤4:将测试样本(无需进行图像预处理)分别通过训练好的网络进行识别,得到预 测的分类标签。
本发明中的模型均使用反向传播算法,利用带Nesterov动量的随机梯度下降算法进行 训练,动量为0.85。该网络模型在深度学习框架Tensorflow下实现。将上述构建并初始化 的多元激活函数代入CNN模型。再利用训练样本图像对该模型进行训练。本发明具体实 施时,均采用反向传播算法,用带Nesterov动量的随机梯度下降算法进行模型训练。训练 过程迭代1000轮,批大小为256,即每256张图片为一个批次,学习速率初始值为0.1。 实验重复20次,报告20次实验的平均结果。
表1给出了本发明模型MAF-SRL和其他正则化子在不同数据集上的图像分类准确率 和稀疏度比较,较高的准确率意味着训练后的网络更适合图像分类任务。非零参数比例越 小,稀疏正则化能力越好。
表1本发明模型和其他正则化子在不同数据集上的图像分类准确率和稀疏度
从表1可以看出,与其他基线相比,本发明构建的MAF-SRL模型具有最好的性能。在所有数据集上,MAF-SRL既具有最高的精度,又具有最小的稀疏性(非零权值百分比), 表明本发明学习的多元稀疏正则化方法确实有效,能够更好地适应数据。
图1展示了学习到的不同数据集的单变元正则化器g(x),其中各子图参数的选值分别 是:
(a)η
(b)η
(c)η
(d)η
(e)η
(f)η
(g)η
(h)η
我们可以看到,g(x)不是凸的,并且在不同的数据集上差异显著,表明我们学习的稀 疏正则化器能够很容易地适应数据。
本发明进一步研究了层数N对学习的稀疏正则化器性能的影响,结果如图2所示。层 数N的取值范围为2-30,学习率固定为0.1。从图2中可以发现,当层数N>16时,精度 基本稳定。
需要注意的是,公布实施例的目的在于帮助进一步理解本发明,但是本领域的技术人 员可以理解:在不脱离本发明及所附权利要求的范围内,各种替换和修改都是可能的。因 此,本发明不应局限于实施例所公开的内容,本发明要求保护的范围以权利要求书界定的 范围为准。
- 基于多元激活函数的稀疏正则化神经网络的图像分类方法
- 基于稀疏编码预训练的卷积神经网络图像分类方法