一种基于生成对抗网络的半监督高光谱数据定量分析方法转让专利

申请号 : CN201910420079.6

文献号 : CN110320162B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘忆森周松斌李昌韩威黄可嘉刘伟鑫邱泽帆

申请人 : 广东省智能制造研究所

摘要 :

本发明公开一种基于生成对抗网络的半监督高光谱数据定量分析方法,其步骤如下:(1)获取高光谱样本数据;(2)构建样本训练集与预测集,其中无标签的预测集样本也用于半监督训练;(3)构建基于生成对抗网络的回归网络,包括一个生成样本的生成器网络,和一个同时具有判别样本真伪与输出定量分析值功能的判别器/回归器网络;(4)构建生成对抗网络的损失函数,包括判别器损失函数,回归器损失函数,及具备样本分布匹配功能的生成器损失函数;(5)训练生成对抗网络;(6)采用训练好的回归器进行定量分析值的预测。本发明采用生成对抗网络来生成样本,并使用样本分布匹配策略来补充现有无标签样本集,提升了高光谱定量分析的精度。

权利要求 :

1.一种基于生成对抗网络的半监督高光谱数据定量分析方法,其特征在于,包括如下步骤:

S1.获取有标签的高光谱样本数据及无标签的高光谱样本数据;

S2.构建样本训练集与预测集:将有标签的高光谱样本数据集Dlabel作为训练集,无标签的高光谱样本数据集Dunlabel作为预测集;

S3.构建基于生成对抗网络的回归网络:S3‑1.构建一个由全连接层、卷积层、上采样层、输出层组成的生成器网络;

S3‑2.构建一个由卷积层、池化层、输出层组成的判别器/回归器网络,该网络具有判别数据真伪与定量分析值两个输出;

S4.构建生成对抗回归网络的损失函数:S4‑1.判别器/回归器的损失函数为有标签样本和无标签样本损失函数之和,其中无标签样本损失函数为真实无标签样本损失函数(Lunlabel_real)与生成样本损失函数(Lunlabel_fake)之和:LD=Lsupervised+LunsupervisedLunsupervised=Lunlabel_real+Lunlabel_fakeS4‑2.生成器的损失函数为生成样本的损失函数(L′unlabel_fake)与样本分布匹配损失函数(Ldistribution)之和:LG=L′unlabel_fake+Ldistribution其中样本分布匹配损失函数,是为了使生成样本和真实样本在样本空间中互为补集,从而达到抑制过拟合效果;

S5.训练基于生成对抗的回归网络:采用梯度下降方法,交替训练判别器/回归器与生成器,直到训练集样本的定量分析预测值与标签值的均方根误差收敛至小于一个阈值或训练步数大于一个阈值;

S6.采用训练好的生成对抗网络中的回归器得到预测集的定量分析预测值;

步骤S4‑1中所述判别器/回归器的损失函数为有标签样本损失函数、真实无标签样本损失函数、和生成样本损失函数三个部分之和,其中有标签样本损失函数为有标签样本的定量分析预测值与定量标签值的均方误差:无标签样本损失函数为判别器预测值与真伪标签的交叉熵:生成样本损失函数为判别器预测值与真伪标签的交叉熵:步骤S4‑2中所述生成器损失函数为生成样本的损失函数与样本分布匹配损失函数之和,其中生成样本的损失函数为生成器生成样本经过判别器的预测值与真伪标签的交叉熵;生成器与判别器中的生成样本真伪标签相反,从而使生成器与判别器形成对抗:样本分布匹配损失函数为:

其中 为回归器预测得到的当前训练批次的无标签样本定量分析值分布,为回归器预测得到的当前训练批次的生成样本定量分析值分布;

无标签样本定量分析值分布与生成样本定量分析值分布计算步骤为:S4‑2‑1.由回归器预测当前训练批次的无标签样本与生成样本定量分析值,分别为和

S4‑2‑2.将样本定量分析值的分布近似为k项的多项分布,将 和 近似到k个水平,然后通过计数得到概率分布 和

2.根据权利要求1所述的基于生成对抗网络的半监督高光谱数据定量分析方法,其特征在于,步骤S2中构建样本训练集与预测集步骤包括:S2‑1.将由标签样本作为训练集样本,无标签样本作为预测集样本,同时也用于半监督的训练;

S2‑2.在每个训练集和预测集的高光谱样本数据块中随机取m次n个有效像素光谱曲线的均值,作为样本增强,得到的有标签和无标签平均光谱数据集记为Dlabel和Dunlabel。

3.根据权利要求1所述的基于生成对抗网络的半监督高光谱数据定量分析方法,其特征在于,步骤S3‑1中所述生成器网络依次由:全连接层—上采样层—卷积层—上采样层—卷积层—输出层构成,其中全连接层节点数为16*光谱波段数,卷积层为一维卷积,卷积核尺寸为1×5,卷积核个数取值范围为16~128,上采样层为2倍上采样,输出层节点数与光谱波段数相同,除输出层外非线性激励函数为ReLU,输出层非线性激励为sigmoid函数。

4.根据权利要求1所述的基于生成对抗网络的半监督高光谱数据定量分析方法,其特征在于,步骤S3‑2中所述判别器/回归器网络依次由:卷积层—池化层—卷积层—池化层—卷积层—池化层—输出层构成,其中卷积层为一维卷积,卷积核尺寸为1×5,卷积核个数取值范围为16~128,池化层为1/2下采样,输出层为2个,其中一个输出判别器结果,即光谱数据真伪预测值,另一个输出回归器结果,即定量分析预测值,除输出层外非线性激励函数为leakyReLU,两个输出层非线性激励为sigmoid函数。

说明书 :

一种基于生成对抗网络的半监督高光谱数据定量分析方法

技术领域:

[0001] 本发明属于高光谱无损检测技术领域,具体涉及一种基于生成对抗网络的半监督高光谱数据定量分析方法。
背景技术:
[0002] 基于高光谱的定量分析技术应用场景广泛,包括食品掺假检测、水果糖度检测、微生物含量检测、有机质含量检测等。常用的高光谱定量分析算法包括偏最小二乘回归
(PLSR)、最小二乘支持向量机(LS‑SVM)、多元线性回归(MLR)等方法,但定量分析算法的模
型精度与模型健壮性仍然有待于进一步提高。尤其是现实应用场景中,面临着有标签样本
不均衡,或有标签样本少等情况,更增大了建模的难度。
[0003] 当前,虽然卷积神经网络已被证明具备非常强的复杂信息解析能力,并且卷积网络在遥感高光谱数据分类应用中已获得了良好的应用,但其在高光谱数据定量分析中应用
仍然具有较大的难度。最主要的原因是实际应用中,高光谱数据样本,尤其是已标定的样本
难以获得,小样本量带来十分大的过拟合风险。
[0004] 西安电子科技大学在发明专利文献“基于多类生成对抗网络的高光谱图像分类方法”(申请号:201810648520.4)及“协作生成对抗网络和空谱联合的高光谱图像分类方法”
(申请号:201810977887.8)中,采用生成对抗网络(GAN)生成光谱曲线样本,从而缓解过拟
合现象,提升了高光谱数据的分类精度。然而,以上文献方法皆是针对高光谱数据分类问题
展开,而采用生成对抗网络进行高光谱数据的定量分析还是存在一定难度。首先,与分类问
题的离散标签不同,定量分析中标签值为连续模拟量,因此网络结构设计不能等同于半监
督分类问题,无法利用k+1类或k分类对抗网络实现回归;其次,分类问题中主要利用生成数
据来辅助确定分类的边界值,而在回归问题中,需要利用生成数据对样本定量值分布进行
平滑。因此,需要设计全新的网络结构与损失函数来实现基于生成对抗网络的半监督高光
谱数据定量分析,从而提升分析精度。
发明内容:
[0005] 针对现有技术的上述不足,本发明提出了一种基于生成对抗网络的半监督高光谱数据定量分析方法。该方法通过生成对抗网络生成光谱样本,利用生成样本来达到增强样
本分布连续性、抑制过拟合的目的,从而提升高光谱数据定量分析的精度。
[0006] 本发明通过以下技术手段解决上述问题:
[0007] 一种基于生成对抗网络的半监督高光谱数据定量分析方法,构建用于定量分析的生成对抗网络,其中生成器用于生成样本,判别器用于判别样本的真伪,同时输出定量分析
结果;该方法包括如下步骤:
[0008] S1.获取有标签的高光谱样本数据及无标签的高光谱样本数据;
[0009] S2.构建样本训练集与预测集:
[0010] S2‑1.将由标签样本作为训练集样本,无标签样本作为预测集样本,同时也用于半监督的训练;
[0011] S2‑2.在每个训练集和预测集的高光谱样本数据块中随机取m次n个有效像素光谱曲线的均值,作为样本增强,得到的有标签和无标签平均光谱数据集记为Dlabel和Dunlabel;
[0012] S3.构建基于生成对抗的回归网络:
[0013] S3‑1.构建一个生成器网络,该网络依次由:全连接层—上采样层—卷积层—上采样层—卷积层—输出层构成,其中全连接层节点数为16*光谱波段数,卷积层为一维卷积,
卷积核尺寸为1×5,卷积核个数取值范围为16~128,上采样层为2倍上采样,输出层节点数
与光谱波段数相同,除输出层外非线性激励函数为ReLU,输出层非线性激励为sigmoid函
数;
[0014] S3‑2.构建一个判别器/回归器网络,该网络依次由:卷积层—池化层—卷积层—池化层—卷积层—池化层—输出层构成,其中卷积层为一维卷积,卷积核尺寸为1×5,卷积
核个数取值范围为16~128,池化层为1/2下采样,输出层为2个,其中一个输出判别器结果,
即光谱数据真伪预测值,另一个输出回归器结果,即定量分析预测值,除输出层外非线性激
励函数为leakyReLU,两个输出层非线性激励为sigmoid函数。
[0015] S4.构建生成对抗回归网络的损失函数:
[0016] S4‑1.判别器/回归器的损失函数为有标签样本和无标签样本损失函数之和,其中无标签样本损失函数为真实无标签样本损失函数与生成样本损失函数之和:
[0017] LD=Lsupervised+Lunsupervised
[0018] Lunsupervised=Lunlabel_real+Lunlabel_fake
[0019] 其中有标签样本损失函数为回归损失函数,即有标签样本的定量分析预测值与定量标签值的均方误差:
[0020]
[0021] 无标签样本损失函数为判别器预测值与真伪标签的交叉熵:
[0022]
[0023] 生成样本损失函数为判别器预测值与真伪标签的交叉熵:
[0024]
[0025] S4‑2.生成器的损失函数为生成样本的损失函数与样本分布匹配损失函数之和:
[0026] LG=L′unlabel_fake+Ldistribution
[0027] 其中生成样本的损失函数(L′unlabel_fake)为生成器生成样本经过判别器的预测值与真伪标签的交叉熵,生成器与判别器中的生成样本真伪标签相反,从而使生成器与判别
器形成对抗:
[0028]
[0029] 样本分布匹配损失函数(Ldistribution)为回归器预测得到的无标签样本与生成样本定量分析值分布均方误差:
[0030]
[0031] 其中 为回归器预测得到的无标签样本定量分析值分布, 为回归器预测得到的生成样本定量分析值分布。 和 的计算步骤为:
[0032] S4‑2‑1.由回归器预测当前训练批次的无标签样本与生成样本定量分析值,分别为 和
[0033] S4‑2‑2.将样本定量分析值的分布近似为k项的多项分布,将 和 近似到k个水平,然后通过计数得到概率分布 和
[0034] 样本分布损失函数的存在是为了降低已有样本与生成样本定量分析值分布的相似性,从而使生成样本成为已有无标签样本的补充。
[0035] S5.训练生成对抗回归网络:
[0036] 采用梯度下降方法,交替训练判别器/回归器与生成器,直到训练集样本的定量分析预测值与标签值的均方根误差收敛至小于一定阈值或训练步数大于一定阈值;
[0037] S6.采用训练好的生成对抗网络中的回归器得到预测集的定量分析预测值。
[0038] 本发明对比现有技术具有以下优势:
[0039] 本发明采用生成对抗网络来生成样本,并使用样本分布匹配策略来补充现有无标签样本集,利用分布匹配的生成样本来对回归器达到类似正则化效果,从而克服了深度学
习在定量分析中容易产生的过拟合问题,提升了高光谱定量分析的精度。
附图说明:
[0040] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于
本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。
[0041] 图1是本发明流程图。
[0042] 图2(a)是采用偏最小二乘回归方法(PLSR)得到的药片有效成分真实值与预测值散点图。
[0043] 图2(b)是不采用生成对抗网络,直接采用卷积网络(CNN)得到的药片有效成分真实值与预测值散点图。
[0044] 图2(c)是采用本发明方法得到药片有效成分真实值与预测值散点图。具体实施方式:
[0045] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合附图和具体的实施例对本发明的技术方案进行详细说明。需要指出的是,所描述的实施例仅仅是本发
明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没
有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046] 本实施例为利用高光谱测定对乙酰氨基酚药片有效成分。如图1所示,一种基于生成对抗网络的半监督高光谱数据定量分析方法,具体步骤如下:
[0047] S1.测定共437个对乙酰氨基酚药片的高光谱图像数据,其中有效成分(对乙酰氨基酚)的含量为0%~90%w/w,间隔为5%w/w,共19个水平,每个水平23个样本;高光谱波段
为900‑1700nm,其中前后100nm由于噪声高去除,1000‑1600nm的共180个波段用于数据分
析。
[0048] S2.构建样本训练集与预测集:
[0049] S2‑1.随机取10个样本作为训练集,即10个有标签样本,剩余427个样本作为预测集,用于评价模型精度,同时也作为无标签样本,用于半监督的训练;
[0050] S2‑2.在每个训练集和预测集的高光谱样本数据块中随机取10次100个有效像素光谱曲线的均值,作为样本增强,得到的有标签和无标签平均光谱数据集记为Dlabel和
Dunlabel;
[0051] S3.构建基于生成对抗网络的回归网络:
[0052] S3‑1.构建一个生成器网络,该网络依次由:全连接层—上采样层—卷积层—上采样层—卷积层—输出层构成,其中全连接层节点数为64*45,卷积层为一维卷积,卷积核尺
寸为1×5,卷积核个数为64,上采样层为2倍上采样,输出层节点数为180,除输出层外非线
性激励函数为ReLU,输出层非线性激励为sigmoid函数;
[0053] S3‑2.构建一个判别器/回归器网络,该网络依次由:卷积层—池化层—卷积层—池化层—卷积层—池化层—输出层构成,其中卷积层为一维卷积,卷积核尺寸为1×5,卷积
核个数为16,池化层为1/2下采样,输出层为2个,其中一个输出判别器结果,即光谱数据真
伪标签,另一个输出回归器结果,即有效成分含量值,除输出层外非线性激励函数为
leakyReLU,两个输出层非线性激励为sigmoid函数。
[0054] S4.构建生成对抗回归网络的损失函数:
[0055] S4‑1.判别器/回归器的损失函数为有标签样本和无标签样本损失函数之和,其中无标签样本损失函数为真实无标签样本损失函数与生成样本损失函数之和:
[0056] LD=Lsupervised+Lunsupervised
[0057] Lunsupervised=Lunlabel_real+Lunlabel_fake
[0058] 其中有标签样本损失函数为有标签样本的有效成分预测值与有效成分标签值的均方误差:
[0059]
[0060] 无标签样本损失函数为判别器预测值与真伪标签的交叉熵:
[0061]
[0062] 生成样本损失函数为判别器预测值与真伪标签的交叉熵:
[0063]
[0064] S4‑2.生成器的损失函数为生成样本的损失函数与样本分布匹配损失函数之和:
[0065] LG=L′unlabel_fake+Ldistribution
[0066] 其中生成样本的损失函数(L′unlabel_fake)为生成器生成样本经过判别器的预测值与真伪标签的交叉熵,其中判别器与生成器的生成样本真伪标签相反,从而形成对抗:
[0067]
[0068] 样本分布匹配损失函数(Ldistribution)为回归器预测得到的无标签样本与生成样本定量分析值分布均方误差:
[0069]
[0070] 其中 为回归器预测得到的无标签样本定量分析值分布, 为回归器预测得到的生成样本定量分析值分布。 和 具体计算方法为:
将样本的有效成分值近似为取值为0~1的100项多项分布,将回归器预测得到的当前训练
批次的无标签样本与生成样本定量分析值 和 近似到上述100个水平上,并通
过样本计数统计得到 和
[0071] S5.训练生成对抗回归网络:
[0072] 采用梯度下降方法,交替训练判别器/回归器与生成器,优化器采用“Adam”优化器,学习率为0.0005,训练步数达到1000时停止;
[0073] S6.采用训练好的生成对抗回归网络中的回归器得到预测集的药片有效成分预测值。
[0074] 训练集与预测集随机抽样10次进行计算,偏最小二乘回归与卷积网络作为对比方法进行计算。其中片最小二乘回归方法中,主成分数由十折交叉验证决定,卷积网络的参数
与本发明方法中的回归器保持一致。10次计算的结果为:偏最小二乘方法得到训练集的预
测误差均方根RMSEC为1.01±0.46%,预测集的预测误差均方根RMSEP为3.79±1.06%;卷
积网络得到的训练集的预测误差均方根RMSEC为1.45±0.71%,预测集的预测误差均方根
RMSEP为5.84±1.77%;本发明方法得到的训练集的预测误差均方根RMSEC为2.42±
0.49%,预测集的预测误差均方根RMSEP为2.56±0.88%。其中一次随机取样计算得到的真
实值与预测值散点图见图2。
[0075] 由计算结果可见,在小样本情况下,偏最小二乘回归与卷积网络均发生了较明显的过拟合现象,预测集精度远低于训练集精度。而本发明方法由于采用了生成对抗式网络
结构,因此很好的缓解了过拟合问题,使预测集精度得到了显著提升。
[0076] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员
来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保
护范围。因此,本发明专利的保护范围应以所附权利要求为准。