基于热红外波谱特征和BP神经网络模型的石榴子石亚类识别方法与流程

文档序号:22967544发布日期:2020-11-19 21:41阅读:122来源:国知局
基于热红外波谱特征和BP神经网络模型的石榴子石亚类识别方法与流程

本发明涉及石榴子石亚类分类领域。更具体地,涉及基于热红外波谱和bp神经网络模型的石榴子石亚类识别方法。



背景技术:

石榴子石是具有岛状结构的硅酸盐矿物的总称,化学式为x3y2[zo4]3,其中x代表二价阳离子钙、铁、镁、锰,y代表三价阳离子铝、铁、铬、锰,z一般代表四价阳离子硅。依据x位置和y位置阳离子的特征,可将目前已知的石榴子石族矿物分为两类:钙系列石榴子石和铝系列石榴子石。钙系列石榴子石包括钙铬榴石、钙铁榴石、钙铝榴石等亚类,铝系列石榴子石包括锰铝榴石、铁铝榴石、镁铝榴石等亚类。传统的石榴子石亚类分类的判别主要是通过实验室测试分析进行,这种分析方法存在耗时耗力、破坏性、昂贵等缺点,所以迫切需要一种新方法快速、准确地判别石榴子石类型。

高光谱可以捕获大量信息,能够反映研究对象复杂的内在特征,同时具有无损探测、省时省力的优点,近些年来逐渐被应用到矿物识别中。高光谱研究表明金属离子替代引起的矿物成分变化可以反映在光谱上。石榴子石亚类之间通过金属离子替代可以相互转化,在高光谱上反映为石榴子石热红外波段吸收及反射位置的不同,吸收及反射峰的波长随石榴子石的成分变化呈规律性的变化。钙铬榴石和锰铝榴石反射峰波长特征明显,而铁铝榴石和镁铝榴石、钙铁榴石和钙铝榴石的反射峰波长有较大重叠区域,无法直接判别,因此,需要找到一种能够确定石榴子石热红外谱段反射峰波长与亚类类型映射关系的方法。



技术实现要素:

本发明的目的在于提供一种基于热红外波谱特征和bp神经网络模型的石榴子石亚类的识别方法。

为达到上述目的,本发明采用下述技术方案:

本发明提供了基于热红外波谱特征和bp神经网络模型的石榴子石亚类的识别方法,所述识别方法为:将热红外波谱特征与bp神经网络模型结合使用,利用bp神经网络模型的非线性自动映射能力,找到石榴子石热红外谱段反射峰的波长与石榴子石亚类类型之间复杂的映射关系,从而进行石榴子石亚类识别,具体包括如下步骤(图1):

获取已知亚类类型的石榴子石样本的热红外波谱特征数据;

利用热红外波谱特征数据和石榴子石样本的亚类类型构建基于热红外波谱特征识别石榴子石亚类的bp神经网络模型;

获得待测石榴子石样本的热红外波谱特征数据,输入构建的bp神经网络模型,识别出待测石榴子石样本的亚类类型。

进一步,所述热红外波谱特征数据是所述石榴子石样本在9-13μm谱段的反射峰的波长数据,包括第一反射峰(反射峰1)波长、第二反射峰(反射峰2)波长、第三反射峰(反射峰3)波长以及以及第三反射峰与第二反射峰的波长差,第三反射峰波长大于第二反射峰波长大于第一反射峰波长;所述石榴子石的亚类类型包括钙铬榴石、锰铝榴石、铁铝榴石、镁铝榴石、钙铁榴石和钙铝榴石。

本发明进一步提供了基于热红外波谱特征识别石榴子石亚类的bp神经网络模型的构建方法,所述bp神经网络模型包括输入层、隐含层和输出层;所述构建方法包括如下步骤:

将已知石榴子石亚类类型和热红外波谱特征数据的石榴子石样本分为训练样本和验证样本,利用训练样本对bp神经网络模型进行训练和利用验证样本对bp神经网络模型的精度进行验证,得到基于热红外波谱特征识别石榴子石亚类的bp神经网络模型;

其中,所述利用训练样本对bp神经网络模型进行训练包括如下步骤:

将训练样本的热红外波谱特征数据作为输入层的神经元和训练样本的石榴子石亚类类型作为输出层的神经元输入到bp神经网络模型中;

对bp神经网络模型的参数进行初始化;

正向传播并计算输出层的输出值,利用激活函数增加bp神经网络模型的非线性;

若未达到终止条件则计算输出层的输出值与期望输出值的误差转为误差反向反馈;

利用优化方法修正权值进行误差反向反馈,达到终止条件则终止训练;

采用输出层函数对输出值进行处理。

在本发明具体的实施方式中,所述构建bp神经网络模型时,所述红外波谱特征数据或输入层的神经元为与所述石榴子石样本在9-13μm谱段的反射峰的波长,包括第一反射峰波长、第二反射峰波长、第三反射峰波长以及第三反射峰与第二反射峰的波长差,第三反射峰波长大于第二反射峰波长大于第一反射峰波长;

所述石榴子石亚类类型或输出层的神经元为钙铬榴石、锰铝榴石、铁铝榴石、镁铝榴石、钙铁榴石和钙铝榴石。

进一步,所述对bp神经网络模型的参数进行初始化包括设置隐含层的层数、隐含层的神经元数、激活函数、优化方法、终止条件和输出层函数。

进一步,初始化bp神经网络模型的参数包括设置优化方法为l-bfgs算法。

进一步,初始化bp神经网络模型的参数包括设置激活函数为relu函数。

进一步,初始化bp神经网络模型的参数包括设置输出层函数为softmax函数。

进一步,初始化bp神经网络模型的参数包括设置隐含层的神经元数为10。所述隐含层的神经元数通过公式确定,其中m为隐含层的神经元数,n为输入层的神经元数,a为输出层的神经元数,b为0-10的任意常数;根据上述可知,所述输入层的神经元数为4,所述输出层的神经元数为6;经过测试,隐含层的神经元数为10时效果最佳。

进一步,初始化bp神经网络模型的参数包括设置隐含层的层数为1。

进一步,初始化bp神经网络模型的参数包括设置终止条件为最大迭代次数200次。

在本发明具体的实施方式中,在构建bp神经网络模型还包括对热红外波谱特征数据进行归一化处理。

本发明进一步还提供了一种石榴子石亚类的识别方法,包括如下步骤:

获取待测石榴子石的热红外波谱特征数据,所述特征数据是所述待测石榴子石在9-13μm谱段的反射峰的波长,包括第一反射峰波长、第二反射峰波长、第三反射峰波长以及第三反射峰与第二反射峰的波长差,第三反射峰波长大于第二反射峰波长大于第一反射峰波长,

将所述特征数据输入上述基于热红外波谱特征识别石榴子石亚类的bp神经网络模型,识别出待测石榴子石的亚类类型。

本发明的有益效果如下:

本发明将石榴子石的热红外波谱特征数据(即在9-13μm谱段的反射峰波长)作为研究对象,利用bp神经网络模型的非线性自动映射能力,找到石榴子石热红外谱段反射峰波长与亚类类型之间复杂的映射关系,开展石榴子石亚类判别研究,为石榴子石亚类识别提供快速有效的技术支撑,同时为其他矿物的快速有效识别提供良好的技术启示。

附图说明

下面结合附图对本发明的具体实施方式作进一步详细的说明。

图1示出根据本发明基于热红外波谱特征识别石榴子石亚类的bp神经网络模型的构建方法流程图。

图2示出石榴子石热红外光谱图。

图3示出6类石榴子石反射峰波长三维分布图。

图4a为6类石榴子石反射峰1和反射峰2波长分布图。

图4b为6类石榴子石反射峰1和反射峰3波长分布图。

图4c为6类石榴子石反射峰2和反射峰3波长分布图。

具体实施方式

为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。

实施例1基于热红外波谱特征识别石榴子石亚类类型的bp神经网络模型构建方法

基于热红外波谱特征和石榴子石亚类类型构建bp神经网络模型的方法如图1所示,具体步骤如下:

一、获取已知亚类类型的石榴子石样本的热红外波谱特征数据

在热红外波谱库中提取出85个石榴子石样本的热红外波谱特征数据(表1),其中包括18个铁铝榴石、15个钙铁榴石、25个钙铝榴石、18个镁铝榴石、6个锰铝榴石、3个钙铬榴石的在9-13μm谱段的反射峰波长数据,即反射峰1的波长、反射峰2的波长、反射峰3的波长,和反射峰波长差值信息,反射峰3波长减去反射峰2波长,其中第三反射峰波长大于第二反射峰波长大于第一反射峰波长。借助python软件将表1中的石榴子石光谱特征数据绘制成6种石榴子石反射峰波长分布图,见图3和图4,由图可知:钙铬榴石和锰铝榴石反射峰波长特点明显,易于与其它类型区分,而铁铝榴石和镁铝榴石、钙铁榴石和钙铝榴石在各反射峰波长均有较大重叠,通过简单的阈值划分无法判别这几类石榴子石。

表1石榴子石热红外波谱特征数据

二、利用石榴子石样本的亚类类型和热红外波谱特征数据构建基于热红外波谱特征识别石榴子石亚类的bp神经网络模型

通过软件python建立典型的三层神经网络,本实施例bp神经网络模型包括输入层、输出层和隐含层的三层神经网络模型,以所述热红外波谱特征数据(即在9-13μm谱段的反射峰1的波长、反射峰2的波长、反射峰3的波长、反射峰3与反射峰2的波长差)作为输入层的神经元和所述石榴子石亚类类型(即钙铬榴石、锰铝榴石、铁铝榴石、镁铝榴石、钙铁榴石和钙铝榴石)作为输出层的神经元,即输入层的神经元数为4,输出层的神经元数为6。

本实施例构建bp神经网络模型时参数设置为:隐含层的层数为1,隐含层的神经元数为10,激活函数选择relu函数,优化方法选择l-bfgs算法,输出层函数选择softmax函数,终止条件设置为最大迭代次数200次。其中,隐含层的神经元数通过公式确定,其中m为隐含层的神经元数,n为输入层的神经元数,a为输出层的神经元数,b为0-10的任意常数;经过测试,隐含层的神经元数为10时效果最佳。

将85个石榴子石样本按照4∶1的比例分为68个训练样本和17个验证样本,利用训练样本对bp神经网络模型进行训练,利用验证样本对bp神经网络模型的精度进行验证,最终得到bp神经网络模型:

一)bp神经网络模型的训练方法包括如下步骤:

1、将训练样本的数据信息优选进行归一化处理并输入到bp神经网络模型中,即以表1中的热红外波谱特征数据(即反射峰1的波长、反射峰2的波长、反射峰3的波长、反射峰2与反射峰3的波长之差)进行归一化处理后的数据作为输入层的神经元、石榴子石亚类(即钙铬榴石、锰铝榴石、铁铝榴石、镁铝榴石、钙铁榴石和钙铝榴石)作为输出层的神经元输入bp神经网络模型。

2、对bp神经网络模型的参数进行初始化,即设置bp神经网络模型的隐含层的层数为1、隐含层神经元数为10、激活函数为relu函数、优化方法为l-bfgs算法、输出层函数为softmax函数和终止条件为最大迭代次数200次。

3、正向传播并计算输出层的输出值,采用relu函数增加bp神经网络模型的非线性。正向传播时,先随机赋予bp神经网络模型一个连接权重,从隐含层开始进行逐层计算。

激活函数的引入可以增加神经网络模型的非线性,使得神经网络可以应用到众多的非线性模型中。本实施例选择的激活函数为relu函数,所述relu函数的形式为:f(x)=max(0,x)。relu函数是分段线性函数,自变量x为负值和0值时函数值为0,自变量为正值时函数值为x值本身,这种操作被称为单侧抑制。单侧抑制的特性使relu函数成为一种更接近生物学的激活模型。sigmoid和tanh函数都是饱和的,他们的导数都是先增加后减小,越接近目标,对应的导数越小,而relu的导数对于大于0的部分恒为1。因此,relu函数与sigmoid函数和tanh函数相比,不仅更符合生物学特性,还具有能克服梯度消失、加快训练速度和缓解过拟合的优点。

4、若未达到终止条件则计算输出层的输出值与期望输出值的误差转为误差反向反馈。

5、利用l-bfgs算法修正权值进行误差反向反馈(反向传播),满足终止条件后bp神经网络模型终止训练。bp神经网络模型在每次训练迭代时,尝试最小化误差信号。误差反向反馈时,通过从输出层到第一隐含层进行反复的修正权重,使得输出值与期望输出值的误差不断减小,直到迭代次数达到最大迭代次数,终止训练。

bp神经网络在每次训练时,尝试最小化误差。在最小化误差时,需要选择合适的优化方法修正权值,常见的优化方法有:梯度下降法、牛顿法、共轭梯度法、拟牛顿法。本实施例优化方法选用的是拟牛顿法中的一种--l-bfgs算法,即利用l-bfgs算法修正权值。求解梯度矩阵的梯度下降法通常存在着迭代方向呈锯齿状,不能径直优化为最小值点,迭代次数越多收敛速度越慢等缺点;求解海塞矩阵的牛顿法会产生较大的计算量。以l-bfgs算法为代表的拟牛顿法采用计算与海塞矩阵相似的正定矩阵的方法进行代价函数优化,克服了梯度下降法和牛顿法的缺点。另外,拟牛顿法与共轭梯度法相比,虽然需要的存储空间比其要大,每次迭代的时间也要多,但是收敛时所需的迭代次数要比共轭梯度法少,因此更适合小型网络的使用。

6、利用softmax函数对所述输出值进行归一化处理,从而计算出样本被判别为各种亚类类型的概率,使输出层的输出值转成范围在[0,1]并且和为1的概率分布,利用概率的大小进行亚类判别。对输出值进行softmax函数归一化处理有利于对输出值意义、误差的准确判断,最终得到训练后的bp神经网络模型。

softmax函数的输出服从的是多项分布,适合用于多分类的情况,而sigmoid函数的输出服从伯努利分布,常用于二分类的情况。

二)利用验证样本对训练后的bp神经网络模型的精度进行验证,最终得到bp神经网络模型。

本实施例使用17个验证样本进行模型预测结果评价,采用精确率、召回率和f1值衡量模型精度,结果如表2所示。

表2bp神经网络模型预测结果评价

根据表2中的验证样本的精确率、召回率和f1值可以看出:精确率、召回率和f1值的评价结果达到100%,所以利用bp神经网络创建的模型是有效且效果良好的。

实施例2基于热红外波谱特征和实施例1构建的bp神经网络模型识别待测样品石榴子石亚类类型的方法

获取待测石榴子石样品的热红外波谱特征数据,即待测石榴子石在9-13μm谱段的第一反射峰波长、第二反射峰波长、第三反射峰波长以及第三反射峰与第二反射峰的波长差,其中第三反射峰波长大于第二反射峰波长大于第一反射峰波长;

将所述特征数据输入如实施例1所述构建的bp神经网络模型,可以识别出待测石榴子石样品的亚类类型。

从实施例1中验证样品得到的识别结果可以看出,本发明通过获取待测石榴子石样品的热红外波谱特征数据,即获取石榴子石样品热红外波谱在9-13μm谱段的第一反射峰波长、第二反射峰波长、第三反射峰波长,第三反射峰波长大于第二反射峰波长大于第一反射峰波长,计算得到第三反射峰与第二反射峰的波长差,将4个热红外波谱特征数据输入本发明构建的bp神经网络模型,就可以准确快速地识别出该样品属于哪种石榴子石亚类。

对比例1常规的k均值聚类识别石榴子石亚类

同样利用表1所示85个样本的热红外波谱特征数据,即9-13μm谱段的反射峰1的波长、反射峰2的波长、反射峰3的波长,和反射峰3波长减去反射峰2波长的数据,采用常规的k均值聚类法,对表1中85个样品进行石榴子石亚类分类,聚类分类的结果在表3中示出。k均值聚类发识别石榴子石亚类的精确率、召回率和f1值分别为86.1%、80%和79.2%,除了钙铬榴石完全正确地分类,其他类型的石榴子石都有被误分类的情况。

表3k均值聚类分析结果及评价

对比例2多元线性判别方法识别石榴子石亚类

同样利用表1所示85个样本的热红外波谱特征数据,即9-13μm谱段的反射峰1的波长、反射峰2的波长、反射峰3的波长,和反射峰3波长减去反射峰2波长的数据,采用多元线性判别方法对表1中85个样品分类,结果在表4中示出。多元线性判别方法分类的精确率、召回率和f1值分别84.2%、80%和79.5%,除了钙铁榴石、锰铝榴石和钙铬榴石完全正确地分类,其他类型的石榴子石都有被误分类的情况。

表4多元线性判别分析结果及评价

对比例1中k均值聚类分析是一种从距离的角度划分类别的无监督分类方法,而对比例2中多元线性判别计算复杂度较低,因此这两种方法难以确定石榴子石热红外谱段反射峰波长与亚类类型的映射关系。bp(backpropagation)神经网络是一种非线性监督分类方法,通过自身的训练得到连接规则,能够解决许多传统信息分析方法不能解决的问题,因此,利用bp神经网络模型找到复杂的映射关系,准确实现石榴子石亚类分类。

对比例3一种识别石榴子石亚类的方法

本对比例在实施例1步骤二的利用石榴子石样本的亚类类型和热红外波谱特征数据构建bp神经网络模型过程中,只将反射峰1的波长、反射峰2的波长和反射峰3的波长作为输入层的神经元(即输入层的神经元数为3),其他步骤与实施例1相同进行构建bp神经网络模型的训练,得到训练后的bp神经网络模型。

利用验证样本对训练后的bp神经网络模型的精度进行验证,最终得到bp神经网络模型。

本对比例使用17个验证样本进行模型预测结果评价,采用精确率、召回率和f1值衡量模型精度,结果如表5所示。

表5bp神经网络模型预测结果评价

根据表5中的精确率、召回率和f1值可以看出:精确率、召回率和f1值的评价结果能达到80%以上,未达到100%。

可以看出,基于本发明构建的bp神经网络模型,通过获取石榴子石样品在9-13μm谱段的热红外波谱特征数据,无需破坏性化学分析手段,可以准确快速地识别石榴子石亚类类型。

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。

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