本发明涉及液体成分检测技术领域,尤其涉及一种基于电导法的牛奶检测方法及系统。
背景技术:
牛奶作为人类的第二大饮品,乳汁的质量问题一直是人们关注的焦点。奶牛乳腺炎一直是影响牛奶质量与产量的主要因素之一,患有奶牛乳腺炎的奶牛泌乳量会减少,乳汁稀薄,乳汁中出现凝块,乳汁质量下降,甚至于丧失泌乳能力和死亡。
传统的牛奶检测方法例如化学分析法检测步骤繁琐,试剂又破坏了牛奶的成分结构,红外线检测和超声波检测的成本昂贵、对环境要求高。
目前而言,广泛用于鉴定牛奶检测以及牛奶的健康管理是dhi(dairyherdimprovement)中心。然而,dhi检测设备少而贵。一份牛奶从牛场送出到检测报告出具,往往耗时一个月之久。
现有电导法确定奶牛乳腺炎方法是选取每次挤奶过程中出现的10个最高电导率之平均值作为电导率的稳定值,当将诊断临界条件为8000-9000μmho/cm之间时,亚临床乳腺炎测诊率可达到89%。实验条件较为苛刻,不易操作,且测诊率不高。
因此,设计一种快速、准确、低成本的基于电导法的牛奶检测方法及系统去解决上述技术问题是必要的。
技术实现要素:
本发明的目的是,提供一种基于电导法的牛奶检测方法及系统,该方法可以快速、低成本、高精度的进行牛奶检测,可用以分类奶牛乳腺炎。该系统简单,便捷。
为解决上述技术问题,本发明采用的技术方案是:
一种基于电导法的牛奶检测方法及系统,该方法包括以下内容:
采集不同牛奶样品中一段时间内产生的电导信息作为样本数据,即电流信息。
利用样本数据进行数学特征提取,分别取每个样本数据的最大值、最小值、方差值、平均值和响应曲线的面积值,作为样本数据的a类数据特征;
对样本数据用直线拟合包裹法进行特征提取,即以电压作为纵坐标、电流作为横坐标按照单个个体分别拟合样本数据的数据点,获得拟合之后的斜率和与横坐标电流的截距,再同时通过包裹法获得两条包裹平行线与横坐标电流的截距;
利用交流电特性对样本数据进行拟合处理,获得每个样本的拟合电流曲线,满足三角函数公式
x1sin(x2t x3) x4;
式中,x1为幅度、x2为初相、x3为角频率、x4为偏距、t为时间,保留电流的幅度、初相、角频率、偏距这四个参数信息;
将上述通过直线拟合包裹法获得的参数信息及交流电特性获得的参数信息作为样本数据的b类数据特征;
利用svm-rfe(支持向量机结合后向搜索策略算法)对样本数据进行特征筛选,获得c类数据特征;
电流信息作为单一变量,采集间隔0.02s,连续采集1万个数据,数据量比较大。本发明降低了智能算法模型的电流数据的输入数据量,提升了特征数量,上述三类数据特征作为特征矩阵输入到智能算法模型中,三类特征相互补充,去除了一定的冗余,得到当前牛奶中体细胞数。可以用于后续奶牛乳腺炎分类。
所述智能算法模型为改进深度随机森林算法,该算法的具体过程是:
为a类、b类和c类数据特征赋予权值,构成的融合特征矩阵,输入到改进深度随机森林算法中,进入多粒度扫描阶段;使用一个长度为l的采样窗口对融合特征矩阵进行滑动采样,得到子样本向量;
上述每个子样本向量通过级联模块中的完全随机森林和随机森林分别生成一个表征向量h(x),再分别给两个输出向量进行加权处理,然后叠加生成一个特征向量zi,也作为后续深度森林的输入;
赋予权值的处理方式为改进的critic权重法
森林输出所述加权处理方式为ahp和熵值法组合权重法;
在模型训练中,对每层深度随机森林进行交叉验证,以防止数据过拟合,停止规则是正确率对比上一层不再提升,获得最终的预测模型。
所述赋予权值的过程,采取了改进的critic权重法,更能体现对比强度和指标冲突性,提高融合效果。
首先进行归一化,
指标冲突性为
其第f个指标的客观权重wf为:
其中,
所述的随机森林和完全随机森林的输出均为:
式中,h(x)为最终结果,ht为第t个决策树预测结果,y为真实值,i为度量函数,m为决策树的数量。
对深度随机森林进行训练时,采用以下指标进行综合评判,误差越小,系数越高,表明深度随机森林的性能越好,当各性能指标均满足设定条件时才能停止训练,各评判标准的计算方法如下:
(1)平均绝对误差mae计算公式:
(2)均方根误差rmse计算公式:
(3)决定系数r2计算公式:
(4)校正后的决定系数ra2计算公式:
其中,n为样本数量,p为特征数量,yi为实际值,
一个基于电导法的牛奶检测方法及系统,包括:
密封的玻璃容器,用以盛放待测牛奶样品;
两个电极,放置在待测牛奶样品中;
电导分析仪,电导分析仪连接两个电极,用于检测待测牛奶样品中的电流;
数据特征提取模块,用于电导分析仪输入的数据进行数据处理和特征提取;
乳腺炎预测模块,用于对提取的数据特征进行分析预测乳腺炎分类;
数据特征提取模块和乳腺炎预测模块加载在终端中,终端与电导分析仪连接;,
终端用以分析实时采集的牛奶电导数据。
所述终端可以为单片机也可以为电脑端、智能手机端等,电导分析仪由接口总线连接至电脑端。
与现有技术相比,本发明的有益效果是:
本发明牛奶样本特征的提取过程,只需要得到单一数据量:电流值,又根据得到的单一数据量的各种特性及其分类目标,提出了电流的数据变换方法,对原始的电流数据进行特征构造,即降低了原始电流数据的冗余性,充分提取和丰富了采集的数据特征。相比于其他高精度方法如获取光谱、超声波值的特征获取方式更为简单,易得,是针对样品牛奶的直接信息获取,所获得的融合特征配合智能算法,能提高分类精度或数据检测结果精度。
在多粒度扫描阶段,可以有效的处理有关联的数据,将a、b、c三类数据相互融合,得到新的特征向量,明显提高后期模型效果。又针对形成的新的特征向量,采用改进critic权重法给已提取特征增加权重,使特征向量在输入森林前更具有客观性,在一定程度上对特征的重要性进行了梳理,让有效特征的作用效果更强。而通过级联模块中的级联森林产生的输出通过ahp和熵值法组合权重法加权后,不仅利用了先验知识,主观随机性控制在一定范围内,实现主客观赋权中的中正、客观方面,得到的结果更加精确。综上,针对牛奶电流样本对深度随机森林改进了两点:一、在多粒度对深度随机森林提出了新的权重配比模式,在样本特征选择方面,没有改变bagging的随机又放回抽样的特性,但是改变了权重相等的模式,而是采取了boosting的优点,针对每一个样本特征向量去配比权重,有利于提高了分类的准确率。二、针对非最后一层森林的输出采取ahp和熵值法组合权重法先对其进行加权处理后,再作为下一层森林的输入,即结合专家经验和客观因素对森林的输出进行权重配比,进一步提高智能算法模型的准确度。为工作人员提供了实时的乳腺炎评估建议,可以及时发现奶牛问题,及时更改饲料和药物配比,有效的减少了损失。
本发明牛奶检测牛奶检测方法及系统首先保留了待测牛奶的完好性,不会破坏牛奶的原有结构,不造成资源浪费;其次与现用的dhi检测方法相比检测速度快,操作简单,价格更便宜,可以在任何一个牛场中进行,数据易得,也可以在dhi中心对样本进行初步检测。
牛奶检测方法及系统通过电极采集了牛奶的电流信息,通过对电流特征的数据梳理和特征选择,然后输入已经训练好的智能算法中进行分析,通过跟设定好的分类标准进行比较,若超过阈值则发送信息至牛场相关工作人员,进行有效预警,实现了牛场实时便捷的智能监测,监测所需变量少,速度高,成本低,准确率高。乳腺炎可根据dhi中心的评估报告分为四类:a类属于非临床型乳腺炎(体细胞数未超过50万/ml),b类属于轻度乳腺炎(体细胞在50-100万/ml),c类属于重度临床型乳腺炎(体细胞在100-500万/ml),需要进行单独饲喂和挤奶,d类属于机型全身性乳腺炎(体细胞超过500万/ml),需要兽医检查是否有并发症,并采取有效措施。
附图说明书
图1是本发明基于电导法的牛奶数据检测装置的结构示意图;
图2是本发明基于电导法的牛奶数据检测方法的流程示意图;
图3(a)是本发明基于电导法的牛奶数据检测方法中电直线拟合包裹结果图;
图3(b)是本发明基于电导法的牛奶数据检测方法中交流电特性对样本电流数据进行拟合处理结果图;
图4是本发明改进的多粒度扫描结构示意图;
图5是改进的级联森林结构示意图;
图6是不同算法对比的预测值与实际值的残差图。
具体实施方式
下面结合附图对本发明进行进一步详细说明:
牛奶液体本身具有一定的阻抗,患有奶牛乳腺炎的奶牛泌乳量会减少,乳汁稀薄,乳汁中出现凝块,其阻抗数据会发生一定变化,本发明先通过探针加载牛奶样品上的电压信号并在信号线上捕获电流信号来分析。电导分析仪可以通过接口总线连接pc端快速记录采样电流和电压信号。
牛奶的阻抗值会受温度影响。所以应先牛奶样品储存在38℃的恒温水箱中静置5-8分钟。再取样并快速测量电信号,并记录温度。这在一定程度上消除了由温度引起的实验误差。
牛奶的电导率与探针之间的液体电导率有关,即插入液体表面的探针的高度和角度。在实验中,在探头上标记,使探头与液体表面之间的距离高度和角度相同,这确保了探头和液体之间的接触面积和位置在每次测量期间不变。
通过上述方法采集到实际电导数据作为样本,进行数据预处理。所述的数据预处理是对数据进行清洗。舍弃其中的不合理数据。结果数据的90%作为训练集,10%作为测试集。最后开始进行特征提取,分为三个部分:
第一部分通过数理知识,提取电流响应数据的最大值、最小值、方差值、平均值和响应曲线的面积值,作为电流数据的a类数据特征;
第二部分提取数据的数据点显示在以为电压纵坐标,电流为横坐标的坐标系中。利用直线拟合出所有数据点的中心线并记录其斜率和与横坐标电流的截距作为数据特征。设置中心线产生两条平行线去包裹95%以上的数据点,同时也剔除了某些异常点,在一定程度上消除了因个人操作产生噪声点。再保留两条平行线与横坐标电流的截距,将其也作为数据特征,最终得到三条关于数据点几何特性的直线,记录三条直线与横坐标电流的截距作为数据特征。
再利用电学特性,由于电压和电流信号都是交流信号,阻抗的值和幅度与相位有关,因此通过三角函数拟合原始信息,得到电流与时间曲线特征。
两者综合得到b类数据特征,即包括三条直线与横坐标电流的截距、拟合直线的斜率、电流幅度、初相、角频率、偏距。
第三部分利用多分类svm-rfe算法(支持向量机结合后向搜索策略)对样本数据进行筛选得到重要特征,将样本中的原始电流电压数据点作为多分类svm-rfe算法的输入,多分类结果作为输出,获得c类数据特征。
直线拟合方法为:先利用直线拟合的方法在横坐标为电流,纵坐标为电压的笛卡尔坐标系中观察和拟合所有数据点,记录拟合直线的斜率和截距作为数据特征。
进一步的,拟合线不能完全代表电流数据点的横向特征,因此使用一组平行线来包围95%以上的数据点,同时也剔除了某些异常点,在一定程度上消除了因个人操作产生噪声点。再保留两条线的截距也作为数据特征。
进一步的,电压和电流信号都是交流信号,阻抗的值和幅度与相位有关,因此通过三角函数公式
x1sin(x2t x3) x4
并保留幅度、初相、角频率、偏距4个参数信息作为数据特征。
利用svm-rfe进行特征选择:利用数据挖掘对所有数据点进行清洗和初筛,形成预选特征集合;然后采用svm-rfe对预选特征集合进一步筛选。
下面进行训练深度森林模型,本发明把原有的多粒度特征扫描进一步优化为critic加权的多粒度扫描,其中每一个扫描结构都由一个随机森林和一个完全随机森林组成。
进一步的,通过采样窗口(定长为k)对所有的特征进行步长为l的滑动采样,采样后会得到s=(p-k)/l 1个k维特征子样本,再由相应的完全随机森林和随机森林去训练特征子样本生成对应c维的表征向量h(x),这样会得到2*s*c维的特征向量zi,让它作为训练级联随机森林的输入。其中长度k、步长l、所选取的特征向量个数p、森林输出h(x)的维数c、决策树的数量m均统一使用默认值。
扫描后的特征向量其量纲、数量级都不同,且特别是每个类的特征之间数据相关性较强,针对这个问题,本发明采取了改进的critic权重法,基本思想是基于评价指标间的辨别力和冲突性来确立指标的客观权数。在原有critic基础上,首先对特征向量进行归一化,消除特征向量数据之间的量级问题。
在将原有表示指标冲突性的
其第j个指标的客观权重wj为
其中,
本发明中使用cart的决策树构成森林,并选定基尼指数作为分裂属性的评价指标。基尼指数系数越小,其子样本的“差异性”越小,相应的该属性值作为分裂属性时的效果就越理想,所以在选取属性值时,会选取具有最小基尼指数属性值,作为最优的分裂属性和最有分裂属性值。针对某样本s,其总方差σ计算方式如下:
其中,μ表示预测结果的均值,yd表示第d个样本的预测结果。
明确了要分裂的属性后(例如属性为v,某个属性值为u),可以将原有的数据集s根据属性值u划分为两个部分s1和s2,然后计算基尼指数gain_σ,如下:
gain-σv,u(s)=σ(s1) σ(s2)
相应的,针对属性v,可以根据上述属性值划分的方式,计算相应部分的基尼指数,选取最佳的基尼指数,就可以得到属于属性v的最优方案:
对于整个样本集x,可以通过上述方式得到所有属性的最优分类方案,最终得到整个样本集x的最优方案:
在执行完cart决策树后,对森林中的所有树的输出结果进行整理,其中每个森林的输出结果为:
h(x)为一个森林的最终输出,ht为第t个决策树结果,y为真实结果,i为度量函数,m为决策树的数量。
ht(xs)=h(x)θs
ht(xs)表示第t个决策树加综合权重之后的森林输入,θs表示ahp和熵值法组合权重法的综合权重。
设θ1和θ2作为ahp和熵权法得到的两组权重,为了使综合权重θs更好的贴合θ1和θ2,由于预期结果是可知的,属于有监督学习,所以基于最小二乘法原理得到θ1、θ2的值使随机森林的输出值h(x)最接近预期目标。
本发明中,对级联森林进行了优化,将其中的两个完全随机森林和两个随机森林产生的预测值分别与ahp和熵值法组合权值相乘后进行整合,得到2*s*c维的特征向量z1作为级联森林的输入。
z1=[h1(x1),h1(x2)…h1(xs),h2(x1),h2(x2)…h2(xs)]t
其中级联森林的每一层包括两个随机森林和两个完全随机森林,每个森林计算方法同上。
生成一个增强型的二维特征向量,这样每层生成一个四维的特征向量,再与之前的原始特征向量融合在一起得到:
用作下一级联森林的输入,以此类推,直至到达训练停止规则。整个多粒度级联森林是自适应调节的,层数不固定,而且在每一级都进行交叉验证去避免过拟合。一级结束后做一次性能测试,然后再继续生成下一级,当扩展一个新的级后,整个级联的性能将在验证集上进行估计,同时调整综合权重ahp部分进行调整,如果没有显着的性能增益,训练过程将终止并选定最优模型和权重参数。深度森林算法默认为3折交叉验证,对最后一层4个级联森林的输出结果h(x)取平均值,最后输出4个c维的数据h(x),然后在这个c维的数据里面取最大的,作为预测值。输出为
采用以下指标进行综合评判预测值的准确性:
(1)平均绝对误差mae计算公式:
(2)均方根误差rmse计算公式:
(3)决定系数r2计算公式:
(4)校正后的决定系数ra2计算公式:
其中,n为牛奶样本数量,p为特征数量,即a、b、c类特征数量之和,yi为实际值,
实例:
选取了5500份牛奶电导数据进行验证。先进行数据筛选(选取完整数据)之后选取得到5000份,样本数据数量为5000,按照前述的特征提取过程进行获取abc类特征,用于训练智能算法模型,其中90%用以训练集模型使用,剩余10%作为测试集使用。
本实施例中改进的多粒度扫描结构如图4所示,改进的级联森林结构如图5所示,系统的超参数设置如表1:
表1
其测试结果如表2,从上述4个指标来对系统作评价,得到系统的数据梳理和特征提取的有效性,也证明了改进的深度森林算法相比于传统机器学习算法更加有效准确的结论,证明了本发明方法的可靠性和实用性。
表2
首先通过电导数据采集单元,实时快速的提取电流数据,同时通过电导分析仪和数据接口传入pc端,先进行了数据特征提取,再输入改进深度随机森林建立的奶牛乳腺炎预测模型,对乳腺炎进行分类,并对照牛场专家人员的查验,实时有效的得出相关成分报告。实现了奶牛乳腺炎实时在线检测,速度快、准确率高,对牛场的管理和奶牛的健康提供了依据和保障。
本发明未述及之处适用于现有技术。
1.一种基于电导法的牛奶检测方法,该检测方法包括以下内容:
采集不同牛奶样品中一段时间内产生的电导信息作为样本数据,即电流信息;
利用样本数据进行数学特征提取,分别取每个样本电流数据的最大值、最小值、方差值、平均值和响应曲线的面积值,作为电流数据的a类数据特征;
对样本数据用直线拟合包裹法进行特征提取,即以电压作为纵坐标、电流作为横坐标按照单个个体分别拟合所有样本数据的数据点,获得拟合之后的斜率和与横坐标电流的截距,再同时通过包裹法获得两条包裹平行线与横坐标电流的截距;
利用交流电特性对样本数据进行拟合处理,获得每个样本的拟合电流曲线,满足三角函数公式
x1sin(x2t x3) x4;
式中,x1为幅度、x2为初相、x3为角频率、x4为偏距,保留电流的幅度、初相、角频率、偏距这四个参数信息;
将上述通过直线拟合包裹法获得的参数信息及交流电特性获得的参数信息作为电流数据的b类数据特征;
利用svm-rfe对样本数据进行特征筛选,获得c类数据特征。
2.根据权利要求1所述的检测方法,其特征在于,将上述三类数据特征作为特征矩阵输入到智能算法中,三类特征相互补充,得到当前牛奶中体细胞数;所述智能算法为改进深度随机森林算法,该算法的具体过程是:
将a类、b类和c类数据特征赋予权值,构成的融合特征矩阵,输入到改进深度随机森林算法中,进入多粒度扫描阶段;使用一个长度为l的采样窗口对融合特征矩阵进行滑动采样,得到子样本向量;
上述每个子样本向量通过级联模块中的完全随机森林和随机森林分别生成一个表征向量h(x),再分别给两个向量进行加权处理,然后叠加生成一个特征向量zi,也作为训练深度森林的输入;
赋予权值处理方式为改进的critic权重法
森林输出所述加权处理方式为ahp和熵值法组合权重法;
在模型训练中,对每层深度随机森林进行交叉验证,以防止数据过拟合,停止规则是正确率对比上一层不再提升,获得最终的预测模型。
3.根据权利要求2所述的检测方法,其特征在于,所述赋予权值的过程,采取改进的critic权重法,首先进行归一化,
指标冲突性为
其第f个指标的客观权重wf为:
其中,
4.根据权利要求1所述的检测方法,其特征在于,直线拟合法获得的拟合线不能完全代表电流数据点的横向特征,使用包裹法剔除异常点,包裹法为:一组平行线来包围95%以上的数据点,再保留两条平行线的截距也作为数据特征。
5.根据权利要求2所述的检测方法,其特征在于,改进深度随机森林算法的参数设置为:
6.一种基于电导法的牛奶数据检测系统,其特征在于,该系统包括:
密封的玻璃容器,用以盛放待测牛奶样品;
两个电极,放置在待测牛奶样品中;
电导分析仪,电导分析仪连接两个电极,用于检测待测牛奶样品中的电流、电压;
数据特征提取模块,用于电导分析仪输入的数据进行数据处理和特征提取;
乳腺炎预测模块,用于对提取的数据特征进行分析预测乳腺炎分类,
数据特征提取模块和乳腺炎预测模块加载在终端中,终端与电导分析仪连接,
终端用以分析实时采集的牛奶电导数据。
7.根据权利要求6所述的检测系统,其特征在于,所述终端为单片机、电脑端、智能手机端,电导分析仪由接口总线连接至电脑端。
8.根据权利要求6所述的检测系统,其特征在于,所述数据特征提取模块包括以下内容:
取每个样本电流数据的最大值、最小值、方差值、平均值和响应曲线的面积值,作为电流数据的a类数据特征;
对样本电流数据用直线拟合包裹法进行特征提取,即以电压作为纵坐标、电流作为横坐标按照单个个体分别拟合所有样本数据的数据点,获得拟合之后的斜率和与横坐标电流的截距,再同时通过包裹法获得两条包裹平行线与横坐标电流的截距;
利用交流电特性对样本电流数据进行拟合处理,获得每个样本的拟合电流曲线,满足三角函数公式
x1sin(x2t x3) x4;
式中,x1为幅度、x2为初相、x3为角频率、x4为偏距,保留电流的幅度、初相、角频率、偏距这四个参数信息;
将上述通过直线拟合包裹法获得的参数信息及交流电特性获得的参数信息作为样本数据的b类数据特征;
利用svm-rfe对样本数据进行特征筛选,获得c类数据特征;
上述a类数据特征、b类数据特征、c类数据特征构成最终提取的数据特征。
技术总结