一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于自编码和极限学习机的药品分类方法与流程

2021-11-09 22:12:00 来源:中国专利 TAG:
1.本发明涉及一种药品分类方法,特别涉及一种基于自编码器和极限学习机的药品分类方法。
背景技术
::2.目前虽然深度学习已广泛应用于图像、语音、文本等领域,且均取得了不错的成绩,但是在近红外光谱上的应用还是偏少,因为近红外本质是一维向量,且数据集往往都不大,深度学习虽然有很强的学习能力,但是容易过拟合,且传统的深度学习网络结构不太适合处理一维数据。目前近红外光谱分类主要还是采用机器学习的方法,例如反向传播算法(bp)、支持向量机(svm)、极限学习机等,且这些算法都展现出比较强大的性能。但是这些机器学习算法也有自身的缺陷,例如bp算法容易陷入局部最小,svm分类性能不稳定,计算复杂度高,elm虽然能极大提升学习速度但是效果不稳定。3.另一个不容忽视的问题是数据降维的问题,药品的近红外光谱数据往往含有上百个变量,但并不是所有变量都对药品分类有贡献。特征选择和特征提取方法能够有效获取近红外光谱数据的主要特征,还能实现数据的降维,剔除无关的变量特征。所以除了模型的选择,还要有恰当的特征选择和特征提取方法。相关系数法通过计算不同波长变量和目标值的相关系数,选择出和目标值相关性高的变量,从而达到特征选择的目的,但是这种方法没有考虑波长变量的相互作用,因此这种选择方法具有片面性。技术实现要素:4.为了解决传统elm分类性能不稳定的问题和药品原始数据维度较高、无关信息会影响分类性能的问题,本发明结合双波段变换方法,将自编码器网络和极限学习机结合,提出了一种新的基于dwae‑elm的药品分类方法。其基本思想是:将输入一维光谱经过双波段变换(dw)变换后,将药品的二维光谱作为ae网络的输入向量,利用ae网络进行无监督学习,进而提取出准确的特征信息,ae网络在这里主要是作为近红外光谱数据的特征提取器,之后,将药品数据在ae网络中的编码传入elm,得到预测的分类结果。5.具体技术方案如下:6.基于自编码和极限学习机的药品分类方法,已知药品数据大小为m×p,表示共有m个药品,每个药品有p个特征,包括以下步骤:7.步骤1,数据准备阶段:利用双波段变换将药品的一维光谱数据变换到二维空间,每个药品包含p×p个特征,将药品数据分为训练集和测试集,训练集用来训练ae‑elm模型,测试集用来检验模型的预测性能;8.步骤2,训练模型:训练ae自编码器网络,药品训练集x作为自编码网络的输入,通过映射函数sf输出到隐藏层h,这一步为编码encoder过程,然后隐藏层的数据h通过映射函数sg重构到输出层y,大小与输入数据x相同,这一步称为解码decoder过程,这两个过程表示如下:9.h=f(x)=sf(wx bh)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(1)10.y=g(h)=sg(wth by)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(2)11.其中,w是连接输入层到隐藏层的权重矩阵,wt是w的转置;bh为隐藏层的偏置,by为输出层的偏置,sf和sg都是非线性激活函数,本文选择函数作为激活函数,自编码网络的目的是使得输出值尽可能接近输入的药品二维特征,学习的过程就是不断地减小输出值与药品二维特征之间的重构误差,表达式如下:[0012][0013]其中,dn表示药品训练集,l为重构误差,这里采用均方误差l(x,y)=‖x‑ꢀy‖2,而j(θ)表示每个药品重构误差的总和。自编码网络的学习过程就是通过反向传播算法不断减小重构误差,优化参数w,bh,by。[0014]之后将训练好的自编码器的隐层(即编码)传递给极限学习机,并对极限学习机进行训练,极限学习机用于实现药品的分类;[0015]步骤3,进入分类阶段:将待分类药品的二维特征输入ae网络得到编码,然后将编码传入极限学习机完成对未知药品进行分类。[0016]进一步的,步骤1中所述的双波段变换包括归一化差分系数ndi、差分系数di、比值系数ri和乘法系数mi四种,采用任一一种方法即可,具体公式分别如下:[0017]ndi=(ri‑rj)/(ri rj)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(4)[0018]di=ri‑rjꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(5)[0019]ri=ri/rjꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(6)[0020]mi=ri·rjꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(7)[0021]其中ri和rj分别是药品在波段i和波段j下的吸光度。[0022]进一步的,极限学习机的训练过程如下:[0023]1、给定训练集其中xi代表第i个药品编码向量,总共有n个元素;ti代表第i个药品的one‑hot类别标签向量,大小为m,激活函数g(x),以及极限学习机的隐藏节点数[0024]2、随机指定输入权重向量wi和偏差bi,为极限学习机的隐藏节点数;[0025]3、计算隐藏层输出矩阵[0026]4、计算输出权重β[0027][0028]其中是矩阵h的moore–penrose(mp)广义逆,t=[t1,...,tn]t。正交投影法可有效地用于mp逆的计算:如果hth是非奇异的,如果hht是非奇异的,根据岭回归理论,在计算输出权β时,建议在hth或hht的对角线上加一个正值1/λ,可以提高elm的稳定性,于是有:[0029][0030]因此,有elm网络输出:[0031][0032]其中h(x)代表隐层的输出,最终的输出结果就是预测的类别标签。[0033]有益效果[0034]本发明将自编码器(ae)和极限学习机(elm)结合起来,提出了一种新的dwae‑elm模型,用于近红外广谱的药品分类。本发明先将一维光谱数据进行双波段变换转换为二维数据,然后通过自编码器提取二维特征,最后通过极限学习机实现药品分类。该方法解决了传统elm效果不稳定的问题,同时结合自编码器,在尽量保留药品数据主要特征的前提下实现数据的降维,提高分类的效果。经过实验证明,本发明中提出的dwae‑elm方法相比于传统的bp、svm和elm等机器学习方法效果更好,且对训练集数据量不敏感,鲁棒性强,模型的训练速度和预测速度快。附图说明[0035]图1dwae‑elm分类器架构[0036]图2不同训练集比例下各模型的分类训练时间具体实施方式[0037]为了证明本发明中方法的有效性,选择了特定的药品红外数据集,同时与传统的机器学习方法进行对比以证明本方法的优势。[0038]实验采用数据集a。数据集a:“tablet”数据集。原料药的近红外透射光谱由dyrby等人在2002年发表的文章中首次公开,并在http://www.models.life.ku.dk/plates上开源。该药片数据集包含310个样本,测量范围为7000–10500cm‑1,分辨率为16cm‑1,即每个样本总共有404个变量。采用高效液相色谱法测定数据集中活性物质api的含量(%,w/w)。将数据集a中活性物质浓度含量为8.0%w/w的共240个药品作为正类样本,70个活性物质浓度为5.6%w/w的药品做负类样本,为了验证算法在不同训练集大小上的性能,按表1的训练集与测试集的比例对模型结果进行了对比分析。[0039]具体执行步骤如下:[0040]步骤1,首先通过双波段变换方法将药品的一维光谱数据变换到二维空间,每个药品包含404*404个特征。双波段变换包括归一化差分系数(ndi)、差分系数(di)、比值系数(ri)和乘法系数(mi)四种,任选一种即可。[0041]ndi=(ri‑rj)/(ri rj)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(1)[0042]di=ri‑rjꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(2)[0043]ri=ri/rjꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(3)[0044]mi=ri·rjꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(4)[0045]其中ri和rj分别是药品在波段i和波段j下的吸光度。[0046]将药品数据按一定比例分为训练集和测试集。训练集用来训练ae‑elm模型,测试集用来检验模型的预测性能。[0047]步骤2,训练ae自编码器网络,药品训练集x作为自编码网络的输入,通过映射函数sf输出到隐藏层h,这一步为编码(encoder)过程,然后隐藏层的数据h通过映射函数sg重构到输出层y,大小与输入数据x相同,这一步称为解码(decoder)过程。为了更清晰的理解自编码网络,这两个过程可以表示为:[0048]h=f(x)=sf(wx bh)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(5)[0049]y=g(h)=sg(wth by)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(6)[0050]其中,w是连接输入层到隐藏层的权重矩阵,wt是w的转置;bh为隐藏层的偏置,by为输出层的偏置。sf和sg都是非线性激活函数,本文选择函数作为激活函数。自编码网络的目的是使得输出值尽可能接近输入的药品二维特征,学习的过程就是不断地减小输出值与药品二维特征之间的重构误差,表达式如下:[0051][0052]其中,dn表示药品训练集,l为重构误差,这里采用均方误差l(x,y)=‖x‑ꢀy‖2,而j(θ)表示每个药品重构误差的总和。自编码网络的学习过程就是通过反向传播算法不断减小重构误差,优化参数w,bh,by。[0053]之后将训练好的自编码器的隐层(即编码)传递给极限学习机,实现药品的分类。极限学习机的训练过程如下:[0054]1、给定训练集其中xi代表第i个药品编码向量,总共有20个元素;ti代表第i个药品的one‑hot类别标签向量,本实验为二分类,所以大小为2。激活函数g(x),以及极限学习机的隐藏节点数[0055]2、随机指定输入权重向量wi和偏差bi,[0056]3、计算隐藏层输出矩阵[0057]4、计算输出权重β[0058][0059]其中是矩阵h的moore–penrose(mp)广义逆,t=[t1,...,tn]t。为了提高elm的稳定性,有:[0060][0061]因此,有elm网络输出:[0062][0063]其中h(x)代表隐层的输出,最终的输出结果就是预测的类别标签。[0064]步骤3,进入测试阶段。将测试集中药品的二维特征输入ae网络得到编码,然后将编码传入极限学习机完成对未知药品进行分类。[0065]本实验采用准确度作为模型的评价指标,将每一个比例下的数据集样本分别实验10次,取10次结果的标准差σ作为模型稳定性的评价指标,取10次结果的均值作为模型最终预测值。最终实验效果证明本发明中提出的dwae‑elm方法的有效性,且分类时间要更短,如图2所示。[0066]表1不同训练集比例下各模型的分类准确率与模型误差[0067]table1classificationaccuracyandmodelerrorofeachmodelunderdifferenttrainingsetproportion[0068][0069]σ标准差。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献