基于半监督迁移学习的食品品质无损检测模型构建方法转让专利

申请号 : CN202210665138.8

文献号 : CN114998893B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 黄敏周竑宇朱启兵赵鑫

申请人 : 江南大学

摘要 :

本发明涉及一种基于半监督迁移学习的食品品质无损检测模型构建方法,包括:获取只含有标签样本的源域数据集和含有第一预设比例的样本为有标签样本、第二预设比例的样本为无标签样本的目标域数据集,使用源域数据集训练食品品质检测模型,保留食品品质检测模型的通用层Z,截去Z后的品质检测层A和输出层B;在Z后接入重构区C并使用无监督学习训练C得到训练完成的重构区C’,在C’后接入输出层D并使用有监督学习训练D得到训练完成的输出层D’,得到迁移完成的食品品质检测模型Z+C’+D’。本发明可以在目标域样本集只有少量有标签样本的情况下实现模型的迁移、迁移后的模型可以实现对食品品质的无损检测。

权利要求 :

1.一种基于半监督迁移学习的食品品质无损检测模型构建方法,其特征在于,包括以下步骤:S1:获取源域数据集和目标域数据集,所述源域数据集中的所有样本均为有标签样本,所述目标域数据集中的第一预设比例的样本为有标签样本、第二预设比例的样本为无标签样本;

S2:初始化食品品质检测模型,使用所述源域数据集训练初始化后的食品品质检测模型得到训练完成的食品品质检测模型;

S3:保留训练完成的食品品质检测模型的通用层Z,截去通用层后的品质检测层A和输出层B;所述通用层Z对输入样本进行特征提取、特征处理和特征转换得到特征信息,所述品质检测层A根据所述特征信息进行食品的品质检测得到食品品质检测结果,所述输出层B处理所述食品品质检测结果得到食品品质检测值并输出;

S4:在所述通用层Z之后接入初始化的重构区C,使用无监督学习和所述目标域数据集中的所有无标签样本对所述初始化的重构区C进行训练得到训练完成的重构区C’,此时的模型结构为Z+C’;所述重构区C的初始化参数规格设置与所述品质检测层A相同;

所述使用无监督学习和所述目标域数据集中的所有无标签样本对所述初始化的重构区C进行训练得到训练完成的重构区C’,具体为:将目标域数据集中的所有样本输入所述通用层Z得到输出X,将输出X作为无监督学习的训练目标值;

冻结所述通用层Z中的参数,将输出X作为重构区C的输入,构建输出值与X一致的输出层X’,将所述输出层X’接入所述初始化的重构区C之后,得到此时的模型Z+C+X’;

使用所述目标域数据集中的所有无标签样本对模型Z+C+X’进行训练,训练完成后截去输出层X’,得到训练完成的重构区C’;

S5:在所述训练完成的重构区C’之后接入初始化的输出层D,所述输出层D的初始化参数规格设置与所述输出层B相同;使用有监督学习和所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练得到训练完成的输出层D’,得到迁移完成的食品品质检测模型Z+C’+D’;

所述使用有监督学习和所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练得到训练完成的输出层D’,具体为:冻结所述Z+C’中的参数,使用所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练,得到训练完成的输出层D’。

2.根据权利要求1所述的基于半监督迁移学习的食品品质无损检测模型构建方法,其特征在于:所述获取源域数据集和目标域数据集,具体为:获取食品样本,采集所述食品样本的多光谱图像,对所述多光谱图像进行预处理,对预处理后的多光谱图像中有标签的样本图像对应的食品样本进行标签值测定得到有标签样本和无标签样本,将有标签样本和无标签样本组合得到所有样本均为有标签样本的所述源域数据集和第一预设比例的样本为有标签样本、第二预设比例的样本为无标签样本的所述目标域数据集,所述第一预设比例小于第二预设比例。

3.根据权利要求1所述的基于半监督迁移学习的食品品质无损检测模型构建方法,其特征在于:所述重构区C包括至少一层全连接层,所述输出层D为一层的全连接层。

4.根据权利要求1所述的基于半监督迁移学习的食品品质无损检测模型构建方法,其特征在于:所述无监督学习使用的方法为自编码网络。

5.根据权利要求1所述的基于半监督迁移学习的食品品质无损检测模型构建方法,其特征在于:所述初始化的重构区C的激活函数为relu函数,所述输出层X’的激活函数为tanh函数。

6.一种食品品质无损检测方法,其特征在于,包括以下步骤:

使用如权利要求1‑5任一项所述的基于半监督迁移学习的食品品质无损检测模型构建方法得到迁移完成的食品品质检测模型;

获取待检测的食品样本,采集所述食品样本的多光谱图像,对所述多光谱图像进行预处理得到预测集;

将所述预测集输入所述迁移完成的食品品质检测模型中得到检测结果。

说明书 :

基于半监督迁移学习的食品品质无损检测模型构建方法

技术领域

[0001] 本发明涉及机器学习技术领域,尤其是指一种基于半监督迁移学习的食品品质无损检测模型构建方法。

背景技术

[0002] 使用例如C‑LSTM模型(详见专利ZL202110764668.3)等神经网络模型可以对多光谱背景下的果蔬的品质检测有较好的检测效果,但是多光谱信息在样本的制备(受到样本尺寸、厚度以及果蔬品种和批次的影响)、样本干燥(受到干燥设备不同的影响)和光谱图像采集环节(受到采集过程环境的影响)都会受到很大的影响。而在工业化流水线生产中,往往需要使用出厂就已训练好的模型来对流水线上的不同样本进行检验,这导致了模型对于不同样本集样本的检测能力大大降低。重新训练模型可以提高模型的检测能力,但是品质检测一般是破坏性检测,获取模型训练所需的样本数量耗费巨大,因此重新训练模型无法在实际中应用。
[0003] 迁移学习的方式可以提升小样本情况下模型的迁移和检测能力。在工业生产中,干燥环节的流水线通常会对不同品种的待加工果蔬进行复用,所以通过模型迁移方法实现不同种类果蔬数据集的迁移也将大大减轻模型的训练成本,提高流水线的复用效率。
[0004] 但是,目前在光谱农业的应用中,对模型迁移问题的探索较少,而且多集中于分类模型的迁移,对于食品品质检测这类非线性回归问题鲜有研究。此外,在基于有监督学习的训练中,有随机选取小批次样本训练模型来降低对食品样本的消耗的方法,但是随机选取的小批次样本也会使迁移学习训练的效果不稳定,造成检测能力低下的情况。

发明内容

[0005] 为此,本发明所要解决的技术问题在于克服现有技术中的不足,提供一种基于半监督迁移学习的食品品质无损检测模型构建方法,可以在目标域样本集为只有少量有标签样本和大量无标签样本的情况下实现模型的迁移、迁移后的模型可以实现对食品品质的无损检测。
[0006] 为解决上述技术问题,本发明提供了一种基于半监督迁移学习的食品品质无损检测模型构建方法,包括以下步骤:
[0007] S1:获取源域数据集和目标域数据集,所述源域数据集中的所有样本均为有标签样本,所述目标域数据集中的第一预设比例的样本为有标签样本、第二预设比例的样本为无标签样本;
[0008] S2:初始化食品品质检测模型,使用所述源域数据集训练初始化后的食品品质检测模型得到训练完成的食品品质检测模型;
[0009] S3:保留训练完成的食品品质检测模型的通用层Z,截去通用层后的品质检测层A和输出层B;
[0010] S4:在所述通用层Z之后接入初始化的重构区C,使用无监督学习和所述目标域数据集中的所有无标签样本对所述初始化的重构区C进行训练得到训练完成的重构区C’,此时的模型结构为Z+C’;
[0011] S5:在所述训练完成的重构区C’之后接入初始化的输出层D,使用有监督学习和所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练得到训练完成的输出层D’,得到迁移完成的食品品质检测模型Z+C’+D’。
[0012] 作为优选的,所述获取源域数据集和目标域数据集,具体为:获取食品样本,采集所述食品样本的多光谱图像,对所述多光谱图像进行预处理,对预处理后的多光谱图像中有标签的样本图像对应的食品样本进行标签值测定得到有标签样本和无标签样本,将有标签样本和无标签样本组合得到所有样本均为有标签样本的所述源域数据集和第一预设比例的样本为有标签样本、第二预设比例的样本为无标签样本的所述目标域数据集,所述第一预设比例小于第二预设比例。
[0013] 作为优选的,所述通用层Z对输入样本进行特征提取、特征处理和特征转换得到特征信息,所述品质检测层A根据所述特征信息进行食品的品质检测得到食品品质检测结果,所述输出层B处理所述食品品质检测结果得到食品品质检测值并输出。
[0014] 作为优选的,所述重构区C的初始化参数规格设置与所述品质检测层A相同,所述输出层D的初始化参数规格设置与所述输出层B相同。
[0015] 作为优选的,所述重构区C包括至少一层全连接层,所述输出层D为一层的全连接层。
[0016] 作为优选的,所述无监督学习使用的方法为自编码网络。
[0017] 作为优选的,所述使用无监督学习和所述目标域数据集中的所有无标签样本对所述初始化的重构区C进行训练得到训练完成的重构区C’,具体为:
[0018] 将目标域数据集中的所有样本输入所述通用层Z得到输出X,将输出X作为无监督学习的训练目标值;
[0019] 冻结所述通用层Z中的参数,将输出X作为重构区C的输入,构建输出值与X一致的输出层X’,将所述输出层X’接入所述初始化的重构区C之后,得到此时的模型Z+C+X’;
[0020] 使用所述目标域数据集中的所有无标签样本对模型Z+C+X’进行训练,训练完成后截去输出层X’,得到训练完成的重构区C’。
[0021] 作为优选的,所述初始化的重构区C的激活函数为relu函数,所述输出层X’的激活函数为tanh函数。
[0022] 作为优选的,所述使用有监督学习和所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练得到训练完成的输出层D’,具体为:
[0023] 冻结所述Z+C’中的参数,使用所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练,得到训练完成的输出层D’。
[0024] 本发明还提供了一种食品品质无损检测方法,包括以下步骤:
[0025] 使用基于半监督迁移学习的食品品质无损检测模型构建方法得到迁移完成的食品品质检测模型;
[0026] 获取待检测的食品样本,采集所述食品样本的多光谱图像,对所述多光谱图像进行预处理得到预测集;
[0027] 将所述预测集输入所述迁移完成的食品品质检测模型中得到检测结果。
[0028] 本发明的上述技术方案相比现有技术具有以下优点:
[0029] 本发明将无监督学习引入有监督学习中构成了半监督学习方式,充分利用大量无标签样本和少量有标签样本进行了不同食品种类或批次间模型的迁移,实现了在不改动模型结构的情况下达到一定精度的模型迁移目标,迁移后的模型可以实现对食品品质的无损检测。

附图说明

[0030] 为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中
[0031] 图1是本发明的流程图;
[0032] 图2是本发明实施例中基于C‑LSTM模型框架的迁移学习示意图;
[0033] 图3是本发明实施例中自编码网络训练的示意图。

具体实施方式

[0034] 下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
[0035] 参照图1流程图所示,本发明公开了一种基于半监督迁移学习的食品品质无损检测模型构建方法,包括以下步骤:
[0036] S1:获取源域数据集和目标域数据集,所述源域数据集中的所有样本均为有标签样本,所述目标域数据集中的第一预设比例的样本为有标签样本、第二预设比例的样本为无标签样本。所述获取源域数据集和目标域数据集,具体为:获取食品样本,采集所述食品样本的多光谱图像,对所述多光谱图像进行预处理,对预处理后的多光谱图像中有标签的样本图像对应的食品样本进行标签值测定得到有标签样本和无标签样本,将有标签样本和无标签样本组合得到所有样本均为有标签样本的所述源域数据集和第一预设比例的样本为有标签样本、第二预设比例的样本为无标签样本的所述目标域数据集,所述第一预设比例小于第二预设比例,即目标域数据集中含有少量的有标签样本和大量的无标签样本。第一预设比例和第二预设比例的和为100%,第一预设比例小于等于30%,本实施例中第一预设比例设置为30%,第二预设比例设置为70%。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
[0037] S2:初始化食品品质检测模型,使用所述源域数据集训练初始化后的食品品质检测模型得到训练完成的食品品质检测模型。
[0038] S3:保留训练完成的食品品质检测模型的通用层Z,截去通用层后的品质检测层A和输出层B。所述通用层Z对输入样本进行特征提取、特征处理和特征转换得到特征信息,所述品质检测层A根据所述特征信息进行食品的品质检测得到食品品质检测结果,所述输出层B处理所述食品品质检测结果得到食品品质检测值并输出。食品品质检测模型的通用层通常为模型的前三层,本实施例中以C‑LSTM模型作为食品品质检测模型、食品含水量作为品质检测项为例。C‑LSTM模型的输入为25个波段,C‑LSTM模型的结构包括第一层C‑LSTM层,第二层重构层,第三层LSTM层,第四层的全连接层为品质检测层、经过第四层全连接层后得到输入样本的含水量结果,第五层的输出层为全连接层、经过第五层可以得到食品的含水量预测值。如图2所示,前三层通用层为预训练冻结区,为截去后两层全连接层的第一层C‑LSTM层、第二层重构层和第三层LSTM层。
[0039] S4:在所述通用层Z之后接入初始化的重构区C,使用无监督学习和所述目标域数据集中的所有无标签样本对所述初始化的重构区C进行训练得到训练完成的重构区C’,此时的模型结构为Z+C’。本实施例中无监督学习使用的方法为自编码网络。
[0040] 如图3所示为自编码网络示意图。自编码网络是一种基于无监督学习的网络结构。其优点在于网络模型简单,计算量低且与其他神经网络模型适配性高等特点。模型主要由输入层(x1,x2,…,xi)、隐藏层(y1,…,yj)和输出层(x1’,x2’,…,xi’)构成。基础自编码网络的隐藏层参数量小于输入层(即j小于i),这样设计的目的在于强迫神经网络模型对输入的高维信息进行学习提炼从而实现了对于输入信息的压缩。这一部分叫做自编码网络的编码器(Encode)。而从隐藏层向输出层的信息传导可以理解为信息的解压,也叫做自编码网络的解码器(Decode),输出信息记为(x1’,x2’,…,xi’)。自编码网络的评判标准为输出信息对输入信息(x1,x2,…,xi)的还原程度。
[0041] S4‑1:在所述通用层Z之后接入初始化的重构区C,所述重构区C的初始化参数规格设置与所述品质检测层A相同,所述重构区C包括至少一层全连接层。本实施例中重构区C为一层的全连接层C,全连接层C的初始化参数规格设置与C‑LSTM模型中第四层全连接层的参数规格相同。
[0042] 自编码重构区利用无标签样本进行参数的调整与训练:
[0043] S4‑2:将目标域数据集中的所有样本输入所述通用层Z得到输出X,将输出X作为无监督学习的训练目标值。
[0044] S4‑3:冻结所述通用层Z中的参数,保证模型只对新添的全连接层进行训练和调整。将输出X作为重构区C的输入,构建输出值与X一致的输出层X’,将所述输出层X’接入所述初始化的重构区C之后,得到此时的模型Z+C+X’。所述初始化的重构区C的激活函数为relu函数,所述输出层X’的激活函数为tanh函数。
[0045] S4‑4:使用所述目标域数据集中的所有无标签样本对模型Z+C+X’进行训练。当重构区C为一层全连接层时,使用自编码网络对这一层全连接层进行训练;当重构区C为多层全连接层时,使用自编码网络对这多层全连接层进行逐层贪婪训练,实现对重构区C的降维无监督学习。
[0046] S4‑5:训练完成后截去输出层X’,得到训练完成的重构区C’,此时的模型结构为Z+C’。使用无监督学习和所述目标域数据集中的所有无标签样本对所述初始化的全连接层C进行参数训练得到训练完成的全连接层C’;训练过程中保持前三层参数不变,只对全连接层C的参数进行训练和调整。
[0047] S5:在所述训练完成的重构区C’之后接入初始化的输出层D,使用有监督学习和所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练得到训练完成的输出层D’,得到迁移完成的食品品质检测模型Z+C’+D’。
[0048] S5‑1:在所述训练完成的重构区C’之后接入初始化的输出层D,所述输出层D的初始化参数规格设置与所述输出层B相同。本实施例中输出层D为一层的全连接层D,全连接层D的初始化参数规格设置与C‑LSTM模型中第五层全连接层的参数规格相同。
[0049] S5‑2:有监督重构区,首先冻结包括模型中的三层通用层和经过自编码网络训练的全连接层,利用少量有标签样本进行参数的调整与训练:
[0050] 冻结所述Z+C’中的参数,保证模型只对新添的输出层D这一层全连接层进行训练和调整;使用所述目标域数据集中的所有有标签样本对所述初始化的输出层D进行训练,训练过程中保持前四层参数不变,只对D层参数进行训练和调整;得到训练完成的输出层D’,得到迁移完成的食品品质检测模型Z+C’+D’。
[0051] 本实施例中还公开了一种食品品质无损检测方法,包括以下步骤:
[0052] 步骤1:使用基于半监督迁移学习的食品品质无损检测模型构建方法得到迁移完成的食品品质检测模型Z+C’+D’。
[0053] 步骤2:获取待检测的食品样本,采集所述食品样本的多光谱图像,对所述多光谱图像进行预处理得到预测集。
[0054] 步骤3:将所述预测集输入所述迁移完成的食品品质检测模型中得到检测结果。在迁移完成的食品品质检测模型上进行食品品质检测,获取预测集时不需要再对食品样本进行标签值测定,避免了标签值测定对食品样本造成的破坏性检测,使用无标签的预测集就可以完成对食品品质的检测,实现了对食品品质的无损检测。
[0055] 基于自编码网络的模型迁移对于非冻结区的处理方式相对于已有的训练方式具有以下的优势:在引入自编码网络改进前,模型微调部分对于特征信息的降维和与含水量关系的构建是整体化训练的,微调的模型参数更多导致对样本数目的要求提高,而且每个样本信息中高频的噪声均会影响到信息从高维低维转变的过程。此外,该方式对于微调层层数有一定的限制,使得该方法没法通过提高冻结层深度和降低微调层层数来改善这种情况。这种影响在小样本情况下会更加的明显。但是在引入自编码网络之后,冻结层输出特征信息的压缩单独由无监督学习来完成,而少量有标签样本仅用来训练低维度信息和含水量之间的关系。两个过程分开之后,由于大量无标签样本的使用使得单个样本高频噪声对于高维信息的压缩过程影响弱化,而且在构建与含水量关系过程中集中使用有标签样本来对少量参数微调,减小了模型调整的压力而且也在构建关系过程中由于相对低维使得个体样本噪声对于关系构建的影响也大大下降。因此,本发明中的方法可以充分利用被“抛弃”的大量无标签样本并配合少量有标签样本实现模型的迁移需求。
[0056] 本发明引入了半监督学习机制,充分利用大量无标签样本和少量有标签样本实现不同样本集食品品质检测问题以及不同食品品种间模型迁移的检测问题。在迁移方式上,将无监督学习中的自编码网络训练方式引入基于有监督学习条件下的冻结‑微调原理的迁移学习中,构成半监督学习方式并最终实现对食品品质检测模型的迁移。该迁移方式能在不改动模型结构的情况下达到一定精度的模型迁移目标。
[0057] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产品的形式。
[0058] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0059] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0060] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0061] 显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。