基于反向传播神经网络的混合染液浓度检测方法

文档序号:26089716发布日期:2021-07-30 17:58阅读:83来源:国知局
基于反向传播神经网络的混合染液浓度检测方法

本发明属于机器学习领域的一个重要方向,具体涉及一种基于反向传播神经网络的混合染液浓度检测方法。



背景技术:

作为我国重要的民生产业和传统优势产业,纺织工业与人民的生活息息相关,是保障和满足人民群众不断增长的消费需求的重要支撑。纺织产品加工工序主要包括前处理、染色和后整理,其中染色过程基本上决定了纺织产品的质量,纺织品的染色效果是工艺水平的重要体现。纺织品的染色效果主要受染料的浓度、温度、染色时间、ph值等参数影响,而在所有参数中,染液浓度是纺织品染色效果的关键,对染液浓度进行检测和控制可以提升染色准确率,降低生产成本,提高生产效率,并且可以为染色残液的回收处理奠定基础。

目前国内外最常用的浓度检测方法是分光光度法,此方法以朗伯比尔定律为基础,利用吸光度与浓度之间的线性关系实现染液浓度的测量。但在生产中为了获得某一颜色常常需要两种或两种以上染料进行拼染,当两种染料颜色接近、光谱重叠严重、染料组分比较多,或者其中一个染料的浓度相对于其他组分很小的时候,常规的测定方法测定误差较大,而且对仪器的要求比较高,对波长精度的控制、吸光度值漂移、仪器稳定性等要求都比较严格。现有的化学计量法并不能达到印染行业实际要求的检测精度。

国家发改委在分析中国印染行业的现状及发展趋势后,明确提出“要用信息化和高新技术改造传统行业”,这既是印染行业发展的政策导向,也是印染机械行业发展的政策导向。由于机器学习拥有“自主学习”的能力,已经开始在多个领域尝试利用机器学习方法处理分类和回归问题,基于反向传播神经网络的混合染液浓度检测方法可以从观测数据出发,寻找出尚不能通过理论分析得到的规律,通过构造模型实现对混合染液染料浓度的预测,从而达到改善印染产品品质、提高生产效率、实现节能减排的目的。

综上所述,采用机器学习方法检测混合染液浓度对用信息化和高新技术改造传统行业有重要意义,本发明针对此种需求提出了一种基于反向传播神经网络的混合染液浓度检测方法。



技术实现要素:

本发明目的是提供一种基于反向传播神经网络的混合染液浓度检测方法,解决了现有技术中存在的混合染液中燃料浓度测量误差大的问题,实现了对混合染液中染料浓度的准确测量,为混合染液浓度检测提供了新的方法,同时为染液浓度在线检测提供了新思路。

本发明所采用的方案是一种基于反向传播神经网络的混合染液浓度检测方法,具体包括以下步骤:

步骤1,参照生产实际,配置不同浓度的混合染液;

步骤2,利用工业相机采集步骤1中所有混合染液的图像信息,作为原始数据;

步骤3,对步骤2中获取到的原始数据进行去噪处理,得到去除噪声的数据;

步骤4,对步骤3中去除噪声的数据进行预处理,得到输入数据;

步骤5,将步骤4中的输入数据划分训练数据、测试数据;

步骤6,利用步骤5中的训练数据,采用反向传播神经网络训练模型,利用测试数据检验模型的预测精度,经过多次模型训练,得到一个最优预测模型;

步骤7,利用步骤6得到的最优预测模型预测混合染液染料浓度。

本发明的特点还在于,

步骤1具体如下:

步骤1.1,根据现有配方,染料3bf、3rf、2gf分别配制10种浓度的母液,然后三种母液相互组合,生成100个不同的配比,该方法贴近生产中染液浓度的变化。

步骤2具体如下:

步骤2.1,使用工业相机采集三组分混合染液的图像信息,不同染料对同一光的敏感度不同,在相同光下不同染料吸收光的量不同,所以采集图像信息时采用三种背光光源,r100,g100,b100,能保留更多有效信息。

步骤2.2,染液浓度不同混合染液的颜色不同,在拍照时浅颜色的染液需较短的曝光时间,深颜色的染液需要更长时间的曝光,在工业相机采集三组分混合染液的图像信息时设置从1千微秒到2万微秒9种(1000μs,2500μs,5000μs,10000μs,20000μs,40000μs,80000μs,120000μs,200000μs)不同的曝光时间。

在每个背光光源条件和不同曝光度下都进行一次图像采集,将图像的曝光时间,图像的r、g、b值(rgb色彩模式是工业界的一种颜色标准,是通过对红(r)、绿(g)、蓝(b)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,rgb值即是代表红、绿、蓝三个通道的颜色亮度,rgb各有256级亮度,用数字表示为从0、1、2...直到255。),染料的浓度作为原始数据。

步骤3对步骤2中获取到的原始数据进行去噪处理,具体如下:

步骤3.1,去除无效数据,在采集图像时,浅颜色的混合染液长时间曝光测得的r、g、b值会失去价值,变为干扰项,所以去噪时先去除这些干扰项。

步骤3.2,因为是三组分混合溶液,同一数据对不同染料的预测效果不同,对某一染料浓度预测效果好的数据可能在空间分布上会聚在一起,先采用k均值聚类算法(k-means)对数据进行聚类,然后利用聚类后的某一类数据预测染液浓度,聚在一起的数据预测精度高,散乱分布的数据预测精度低。

步骤4,对步骤3中去除噪声的数据进行预处理,具体步骤如下:

步骤4.1,原始数据由于不同的评价指标,往往具有不同的量纲和量纲单位,会影响模型预测结果,为了消除数据不同量纲的影响,需要对数据进行归一化。

步骤4.2,构造多项式输入,利用多项式扩展,将特征与特征之间进行融合,从而形成新的特征,在数学空间上来讲就是将低维的数据映射到高维空间中,是特征工程的一种操作。

步骤6具体为:

步骤6.1,反向传播神经网络模型的训练过程包括:

步骤6.1.1,反向传播神经网络按有监督学习方式进行训练,当一对学习模式提供给网络后,其神经元的激活值将从输入层经各隐含层向输出层传播,在输出层的各神经元输出对应于输入模式的网络响应。

步骤6.1.2,然后,按减少希望输出与实际输出误差的原则,从输出层经各隐含层、最后回到输人层逐层修正各连接权,。

由于这种修正过程是从输出到输入逐层进行的,所以称它为“误差逆传播算法”,随着这种误差逆传播训练的不断进行,网络对输入模式响应的正确率也将不断提高。

步骤6.2,为预测3bf,3rf,2gf三种染料的浓度,训练三个子模型,每个子模型针对一种染料,提高预测精度。

步骤7,利用步骤6得到的最优预测模型预测混合染液染料浓度,具体为:

步骤7.1,利用3bf子模型预测3bf的浓度,利用3rf子模型预测3rf的浓度,利用2gf子模型预测2gf的浓度。

本发明的有益效果是:

本发明针对分光光度法测定染液浓度时,当混合染料颜色接近、光谱重叠严重、染料组分比较多,或者其中一个染料的浓度相对于其他组分很小的时候,方法测定误差较大,而且对仪器的要求比较高的不足,提出了基于反向传播神经网络的混合染液浓度检测方法。所用的数据是混合染液的图像信息,数据采集对仪器的要求较低,可以更方便快捷的获取数据,利用反向传播神经网络建立混合染液浓度与染液图像信息的关系模型,实现混合染液浓度的测量。

附图说明

图1为本发明基于反向传播神经网络的混合染液浓度检测方法流程图;

图2为本发明基于反向传播神经网络的混合染液浓度检测方法进行k均值聚类的过程;

图3为反向传播神经网络的拓扑结构示意图;

图4为本发明反向传播神经网络的训练过程;

图5为利用最优预测模型预测混合染液染料浓度流程图;

具体实施方式

下面结合附图和具体实施方式对本发明进行详细说明。

本发明是基于反向传播神经网络的混合染液浓度检测方法,流程如图1所示,具体包括以下步骤:

步骤1,参照生产实际,配置不同浓度的混合染液;

步骤1.1,根据现有配方,染料3bf、3rf、2gf分别配制10种浓度的母液,然后三种母液相互组合,生成100个不同的配比,该方法贴近生产中染液浓度的变化。

步骤2,利用工业相机采集步骤1中所有混合染液的图像信息,作为原始数据;

步骤2.1,使用工业相机采集三组分混合染液的图像信息,不同染料对同一光的敏感度不同,在相同光下不同染料吸收光的量不同,所以采集图像信息时采用三种背光光源,r100,g100,b100,能保留更多有效信息。

步骤2.2,染液浓度不同混合染液的颜色不同,在拍照时浅颜色的染液需较短的曝光时间,深颜色的染液需要更长时间的曝光,在工业相机采集三组分混合染液的图像信息时设置从1千微秒到2万微秒9种(1000μs,2500μs,5000μs,10000μs,20000μs,40000μs,80000μs,120000μs,200000μs)不同的曝光时间。

在每个背光光源条件和不同曝光度下都进行一次图像采集,将图像的曝光时间,图像的r、g、b值(rgb色彩模式是工业界的一种颜色标准,是通过对红(r)、绿(g)、蓝(b)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,rgb值即是代表红、绿、蓝三个通道的颜色亮度,rgb各有256级亮度,用数字表示为从0、1、2...直到255。),染料的浓度作为原始数据。

步骤3,对步骤2中获取到的原始数据进行去噪处理,得到去除噪声的数据;

步骤3.1,去除无效数据,在采集图像时,浅颜色的混合染液长时间曝光测得的r、g、b值会失去价值,变为干扰项,所以去噪时先去除这些干扰项。

步骤3.2,因为是三组分混合溶液,同一数据对不同染料的预测效果不同,对某一染料浓度预测效果好的数据可能在空间分布上会聚在一起,先采用k均值聚类算法(k-means)对数据进行聚类,然后利用聚类后的某一类数据预测染液浓度,聚在一起的数据预测精度高,散乱分布的数据预测精度低。

进行k均值聚类的过程如图2所示。其步骤是读入要聚类的数据,随机选取k个对象作为初始的聚类中心。然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算,这个过程将不断重复直到满足聚类中心不再改变,即聚类中心收敛,最后输出k个聚类结果。

聚类分析中度量两个对象之间的相似性的方法:一般有两种方法,一种是对所有对象作特征投影,另一种则是距离计算。距离计算是最为常见的相似度度量方法,通常的对象a,b之间的相似度为sim(a,b),对象a,b的测量距离为d(a,b),则一般采用sim(a,b)=1/(1+d(a,b))得到相似度。本发明采用欧氏距离,欧式距离的公式如下:

式子d(oi,oj)代表两个n维向量oi,oj之间的欧式距离。

步骤4,对步骤3中去除噪声的数据进行预处理,得到输入数据;

步骤4.1,原始数据由于不同的评价指标,往往具有不同的量纲和量纲单位,会影响模型预测结果,为了消除数据不同量纲的影响,需要对数据进行归一化。本发明用到的神经网络是以样本在事件中的统计分别几率来进行训练(概率计算)和预测的,所以经常要对样本的输出归一化处理。

数据归一化后,最优解的寻优过程明显会变得平缓,更容易正确的收敛到最优解,本发明采用(0,1)归一化,用到的是(0,1)归一化,数学公式为:

式中x是原数据,x.max,x.min分别代表x中的最大值和最小值,x*代表归一化后的数据。

步骤4.2,构造多项式输入,利用多项式扩展,将特征与特征之间进行融合,从而形成新的特征,在数学空间上来讲就是将低维的数据映射到高维空间中,是特征工程的一种操作。

步骤5,对步骤4中的输入数据划分训练数据、测试数据;

利用交叉验证法划分训练数据、测试数据,先将数据集d划分为k个大小相似的互斥子集,即每个子集都尽可能保持数据分布的一致性,即从d中通过分层采样得到。然后,每次用k-1个子集的并集作为训练集,余下的子集作为测试集;这样就可以获得k组训练/测试集,从而可以进行k次训练和测试,最终返回的是k个测试结果的均值,本发明k=10。

步骤6,利用步骤5中的训练数据,采用反向传播神经网络训练模型,利用测试数据检验模型的预测精度,经过多次模型训练,得到一个最优预测模型;

如图3反向传播神经网络的拓扑结构示意图所示,误差反向传播神经网络简称为bp(backpropagation)网络,它是一种具有三层或三层以上的多层神经网络,每一层都由若干个神经元组成,分为输入层、隐藏层、输出层,它的左、右各层之间各个神经元实现全连接,即左层的每一个神经元与右层的每个神经元都有连接,而上下各神经元之间无连接。

步骤6.1,反向传播神经网络模型的训练过程如图4所示,包括:

步骤6.1.1,反向传播神经网络按有监督学习方式进行训练,当一对学习模式提供给网络后,其神经元的激活值将从输入层经各隐含层向输出层传播,在输出层的各神经元输出对应于输入模式的网络响应。

步骤6.1.2,然后,按减少希望输出与实际输出误差的原则,从输出层经各隐含层、最后回到输入层逐层修正各连接权。

由于这种修正过程是从输出到输入逐层进行的,所以称它为“误差逆传播算法”,随着这种误差逆传播训练的不断进行,网络对输入模式响应的正确率也将不断提高。

步骤6.2,为预测3bf,3rf,2gf三种染料的浓度,训练三个子模型,每个子模型针对一种染料,提高预测精度。

步骤7,利用步骤6得到的最优预测模型预测混合染液染料浓度,具体为:

步骤7.1,如图5所示,利用步骤6得到的最优预测模型预测混合染液染料浓度,利用3bf子模型预测3bf的浓度,利用3rf子模型预测3rf的浓度,利用2gf子模型预测2gf的浓度,最后输出预测染料浓度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1