发明内容
为了克服现有技术中的上述不足,本申请的目的在于提供一种分析模型建立方法,应用于录井气体分析,所述方法包括:
获取Z个原始样本,所述Z个原始样本中每个原始样本均包含一组混合气体对应的光谱信息及该组混合气体中待测气体的浓度信息;
根据预设的第一小波系数和分解尺度N分别对每个所述原始样本的光谱信息进行分解,获得2*N+1层第二小波系数;
依次将每个所述原始样本作为目标样本,根据每层所述第二小波系数对目标样本的光谱信息进行重构,得到所述目标样本与每层所述第二小波系数对应的重构光谱;
从所述Z个原始样本中选择W个原始样本,分别将所述W个原始样本中的每个原始样本在同一层所述第二小波系数上的重构光谱以及该原始样本对应的待测气体的浓度信息作为一个子训练样本进行机器学习训练,获得对应每层所述第二小波系数的子模型;
计算每层第二小波系数对应的子模型的均方根误差;根据每个子模型的均方根误差确定该子模型的权重系数;
根据每个子模型的权重系数获得融合模型,计算融合模型的均方根误差;
重复选取第一小波系数和分解尺度的步骤,得到与第一小波系数以及分解尺度N对应的融合模型;
选取所有融合模型中融合模型均方根误差最小的融合模型作为最终模型。
可选地,计算每层子模型对应的均方根误差的方法为留一交叉验证法,所述留一交叉验证法的步骤为:
将Z个原始样本中,每个原始样本与所述子模型对应的重构光谱以及该原始样本对应的待测气体的浓度信息作为一个重构样本,Z个原始样本共得到Z个重构样本;
从Z个重构样本中选择一个重构样本作为第一测试样本,其余的重构样本作为第一训练样本,将该第一训练样本输入预设的分类模型进行训练,得到一个子分类模型,将所述第一测试样本输入该子分类模型,得到该重构样本中待测气体的预测浓度,计算该重构样本对应的待测气体的浓度信息与预测浓度的差值,即第一子误差;
依次重复Z次选择第一测试样本的步骤,得到Z个第一子误差;
根据Z个第一子误差计算该子模型的均方根误差。
可选地,所述根据每个子模型的权重系数获得融合模型的方法为,
对每个子模型与每个子模型的权重系数的乘积的结果求和,获得融合模型。
可选地,所述方法还包括,
将原始样本以外的混合气体的光谱信息及该混合气体中待测气体的浓度信息输入融合模型以对最终模型进行修正。
本发明的另一目的在于提供一种气体分析装置,应用于录井气体分析,所述气体分析装置包括,
获取模块,所述获取模块用于获取Z个原始样本,所述Z个原始样本中每个原始样本均包含一组混合气体对应的光谱信息及该组混合气体中待测气体的浓度信息;
分解模块,所述分解模块用于根据预设的第一小波系数和分解尺度N分别对每个所述原始样本的光谱信息进行分解,获得2*N+1层第二小波系数;
重构模块,所述重构模块用于依次将每个所述原始样本作为目标样本,根据每层所述第二小波系数对目标样本的光谱信息进行重构,得到所述目标样本与每层所述第二小波系数对应的重构光谱;
模型生成模块,所述模型生成模块用于从所述Z个原始样本中选择W个原始样本,分别将所述W个原始样本中的每个原始样本在同一层所述第二小波系数上的重构光谱以及该原始样本对应的待测气体的浓度信息作为一个子训练样本进行机器学习训练,获得对应每层所述第二小波系数的子模型;
计算每层第二小波系数对应的子模型的均方根误差;根据每个子模型的均方根误差确定该子模型的权重系数;
根据每个子模型的权重系数获得融合模型,计算融合模型的均方根误差;
重复选取第一小波系数和分解尺度的步骤,得到与第一小波系数以及分解尺度N对应的融合模型;
选择模块,所述选择模块用于选取所有融合模型中融合模型均方根误差最小的融合模型作为最终模型。
可选地,所述计算每层子模型对应的均方根误差的方法为留一交叉验证法,所述留一交叉验证法的步骤为:
将Z个原始样本中,每个原始样本与所述子模型对应的重构光谱以及该原始样本对应的待测气体的浓度信息作为一个重构样本,Z个原始样本共得到Z个重构样本;
从Z个重构样本中选择一个重构样本作为第一测试样本,其余的重构样本作为第一训练样本,将该第一训练样本输入预设的分类模型进行训练,得到一个子分类模型,将所述第一测试样本输入该子分类模型,得到该重构样本中待测气体的预测浓度,计算该重构样本对应的待测气体的浓度信息与预测浓度的差值,即第一子误差;
依次重复Z次选择第一测试样本的步骤,得到Z个第一子误差;
根据Z个第一子误差计算该子模型的均方根误差。
可选地,所述根据每个子模型的权重系数获得融合模型的方法为,
对每个子模型与每个子模型的权重系数的乘积的结果求和,获得融合模型。
可选地,所述气体分析装置还包括修正模块,所述修正模块用于将原始样本以外的混合气体的光谱信息及该混合气体中待测气体的浓度信息输入融合模型以对融合模型进行修正。
本发明的另一目的在于提供一种气体分析方法,所述方法包括:
获取待分析的光谱信息;
将待分析的光谱信息输入以上任一项的分析模型建立方法建立的最终模型中,获得待测气体的预测浓度。
可选地,所述气体分析方法还包括:
采集未知气体的拉曼光谱信息;
对未知气体的拉曼光谱信息进行预处理,获得待分析的光谱信息。
相对于现有技术而言,本申请具有以下有益效果:
本发明采用高密度小波变换以过采样的方式,在时/频域对原始光谱信息进行多尺度分解,并以模型融合的方式,有效规避了基质和背景干扰,由此准确剥离了待测气体组分的光谱信息。该方法具备良好的自适应性和稳健性,可根据不同复杂气体体系自适应地调整数据融合权重,进而获取良好的拉曼光谱分析结果。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,术语“水平”、“竖直”、“悬垂”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
请参照图1,图1是本申请提供的较佳实施例的流程示意图。
步骤S111,获取Z个原始样本,所述Z个原始样本中每个原始样本均包含一组混合气体对应的光谱信息及该组混合气体中待测气体的浓度信息。
记有混合气体共Z组,z表示第z组混合气体,第z组混合气体对应第z组光谱信息,Z组混合气体分别对应Z组光谱信息。
待检测的气体有D种,记第d种待检测气体为Gd,气体样本集中第z组混合气体中,第z组混合气体中第d种待检测气体的浓度为Czd。气体样本集中各组混合气体的各种待检测气体的浓度分布矩阵为J1:
C11,...,C1D
...
Cz1,...,CzD
分别采集各组混合气体的拉曼光谱,获得气体的拉曼光谱信息;然后分别对各组拉曼光谱信息进行预处理,得到分别与各组混合气体对应的处理后的光谱信息。第z组混合气体对应光谱信息为Lz。
本实施例中,Z个原始样本中,每个原始样本中所包含的光谱信息可以是该原始样本对应的混合气体的拉曼光谱信息经过预处理得到的光谱信息,也可以是未经处理的该原始样本对应的混合气体的拉曼光谱信息。
其中,对拉曼光谱信息进行预处理可以是,但不限于,将最初采集到的混合气体的拉曼光谱进行过滤或者筛选等等。
步骤S112,根据预设的第一小波系数和分解尺度N分别对每个所述原始样本的光谱信息进行分解,获得2*N+1层第二小波系数;
根据预设的第一小波系数和分解尺度N,分别将每组混合气体的光谱信息在N个分解尺度上进行分解,如此,便可以获得2*N+1层第二小波系数;
步骤S113,依次将每个所述原始样本作为目标样本,根据每层所述第二小波系数对目标样本的光谱信息进行重构,得到所述目标样本与每层所述第二小波系数对应的重构光谱;
本实施例中,根据每层第二小波系数对每个原始样本的光谱信息进行重构,能够获得每个原始样本对应每层第二小波系数的重构光谱。每个原始样本经2*N+1层高密度小波系数重构处理后共得到2*N+1层重构光谱;本实施例中,通过每层第二小波系数对每个原始样本对应的光谱信息进行重构,能够滤除光谱信息中部分干扰光谱。
Z组混合气体的重构光谱为:
第一组混合气体:L11,...,L1n
...
第Z组混合气体:LZ1,...,LZn
第z组混合气体的光谱信息在第n层小波系数上重构后,得到的重构光谱记为Lzn,(0<n<=2N+1)。
步骤S114,从所述Z个原始样本中选择W个原始样本,分别将所述W个原始样本中的每个原始样本在同一层所述第二小波系数上的重构光谱以及该原始样本对应的待测气体的浓度信息作为一个子训练样本进行机器学习训练,获得对应每层所述第二小波系数的子模型;
根据同一层第二小波系数对应的重构光谱训练子模型。将每个原始样本在该第二层的重构光谱以及每组原始样本对应的待测气体的浓度信息作为一个子训练样本,1<W<Z。
步骤S115,计算每层第二小波系数对应的子模型的均方根误差;根据每个子模型的均方根误差确定该子模型的权重系数;
本实施例中,可以采用,但不限于,留一交叉验证法或者K倍交叉验证等方法来计算子模型的均方根误差。本实施例中,其他计算均方根误差的方法也可以采用。
请参见图2,所述留一交叉验证法的步骤为:
步骤S1151,将Z个原始样本中,每个原始样本与所述子模型对应的重构光谱以及该原始样本对应的待测气体的浓度信息作为一个重构样本,Z个原始样本共得到Z个重构样本;
步骤S1152,从Z个重构样本中选择一个重构样本作为第一测试样本,其余的重构样本作为第一训练样本,将该第一训练样本输入预设的分类模型进行训练,得到一个子分类模型,将所述第一测试样本输入该子分类模型,得到该重构样本中待测气体的预测浓度,计算该重构样本对应的待测气体的浓度信息与预测浓度的差值,即第一子误差;
步骤S1153,依次重复Z次选择第一测试样本的步骤,得到Z个第一子误差;
步骤S1154,根据Z个第一子误差计算该子模型的均方根误差。
例如,记第z个原始样本对应第z个重构样本,则第z个重构样本作为第一测试样本时,第i个子模型的第一子误差记为Eiz,则该子模型的均方根误差RMSECVz的计算方法为:
本实施例中,根据每个子模型的均方根误差确定该子模型的权重系数时,可以根据以下方法计算,其中,计算第i个子模型的权重系数的公式(权重计算公式)为:
其中,m为子模型的总数,i为子模型的序列,即第i个子模型,RMSECV为每一个子模型的均方根误差,Wi为第i个模型的权重系数。RMSECV值代表了子模型的优劣程度,RMSECV值大则子模型校正精度低,值小则子模型校正精度高。经过权重计算公式计算以后,精度高的子模型的权重系数就大,精度低的权重系数就小,这样就能最大限度的放大优秀子模型的效果。
步骤S116,根据每个子模型的权重系数获得融合模型,计算融合模型的均方根误差;
将所有层数的子模型通过权重的方式生成融合模型,融合模型的计算方法为,对每个子模型与每个子模型的权重系数的乘积的结果求和,获得融合模型。融合模型的具体计算方法可参考以下融合计算公式:
本实施例中,可以采用,但不限于,留一交叉验证法或者K倍交叉验证等方法来计算融合模型的均方根误差。本实施例中,其他计算均方根误差的方法也可以采用。
所述留一交叉验证法的步骤为:
从Z个原始样本中选择一个原始样本作为第二测试样本,其余的原始样本作为第二训练样本,将该第二训练样本输入预设的分类模型进行训练,得到一个子分类模型,将所述第二测试样本输入该子分类模型,得到该原始样本中待测气体的预测浓度,计算该原始样本对应的待测气体的浓度信息与预测浓度的差值,即第二子误差;
依次重复Z次选择第二测试样本的步骤,得到Z个第二子误差;
根据Z个第二子误差计算该融合模型的均方根误差。
例如,第z个原始样本作为第二测试样本时,第二子误差记为Ez。融合模型的均方根误差R的计算方法为:
步骤S117,重复选取第一小波系数和分解尺度的步骤,得到与第一小波系数以及分解尺度N对应的融合模型;
步骤S118,选取所有融合模型中融合模型的均方根误差最小的融合模型作为最终模型。
该步骤将多种第一小波系数和分解尺度对应的融合模型中,选择出均方根误差最小的融合模型作为最终模型,能够提高最终模型的精度。
考虑到最终模型的精度总会有提升的空间,因此,本实施例中,所述方法还包括,在获得最终模型后,将原始样本以外的混合气体的光谱信息及该混合气体中待测气体的浓度信息输入融合模型以对融合模型进行修正。
如此,便可以对最终模型进行修正,以提高最终模型的精度。
光谱的分解与模型的对应关系如图5所示。
如图6所示,本实施例中,在分析模型建立方法中的步骤S115后的步骤S116-步骤S118还可以采用以下步骤完成:
获取每层子模型的误差,将同一第一小波系数和分解尺度N对应的所有子模型的综合误差(反馈变量)是否最优;
如果反馈变量是最优,则重复选取第一小波变量和分解尺度;
否则,对所选取的第一小波系数对应第二小波系数的各层的子模型进行融合,获的最终模型。
融合步骤可参考步骤S116中的步骤“每个子模型的权重系数获得融合模型”。本实施例中的最优根据需要进行设定,如果对最终模型的精度要求高。可以将表征反馈变量是否为最优的阈值设置大一些,反之,可以将表征反馈变量是否为最优的阈值设置小一些。
请参见图3,本申请的另一实施例提供一种气体分析装置,应用于录井气体分析,所述气体分析装置包括,
获取模块111,所述获取模块111用于获取Z个原始样本,所述Z个原始样本中每个原始样本均包含一组混合气体对应的光谱信息及该组混合气体中待测气体的浓度信息;
本实施例中,获取模块111用于执行步骤S111,有关该步骤的具体描述请参见模型建立方法中的对应步骤。
分解模块112,所述分解模块112用于根据预设的第一小波系数和分解尺度N分别对每个所述原始样本的光谱信息进行分解,获得2*N+1层第二小波系数;
本实施例中,分解模块112用于执行步骤S112,有关该步骤的具体描述请参见模型建立方法中的对应步骤。
重构模块113,所述重构模块113用于依次将每个所述原始样本作为目标样本,根据每层所述第二小波系数对目标样本的光谱信息进行重构,得到所述目标样本与每层所述第二小波系数对应的重构光谱;
本实施例中,重构模块113用于执行步骤S113,有关该步骤的具体描述请参见模型建立方法中的对应步骤。
模型生成模块114,所述模型生成模块114用于从所述Z个原始样本中选择W个原始样本,分别将所述W个原始样本中的每个原始样本在同一层所述第二小波系数上的重构光谱以及该原始样本对应的待测气体的浓度信息作为一个子训练样本进行机器学习训练,获得对应每层所述第二小波系数的子模型;
计算每层第二小波系数对应的子模型的均方根误差;根据每个子模型的均方根误差确定该子模型的权重系数;
根据每个子模型的权重系数获得融合模型,计算融合模型的均方根误差;
重复选取第一小波系数和分解尺度的步骤,得到与第一小波系数以及分解尺度N对应的融合模型;
本实施例中,获取模块111用于执行步骤S114-步骤S117,有关相关步骤的具体描述请参见模型建立方法中的对应步骤。
选择模块115,所述选择模块115用于选取所有融合模型中融合模型均方根误差最小的融合模型作为最终模型。
本实施例中,获取模块111用于执行步骤S118,有关该步骤的具体描述请参见模型建立方法中的对应步骤。
所述计算每层子模型对应的均方根误差的方法为留一交叉验证法,关于留一交叉验证法,请参见步骤S115。
本实施例中,对每个子模型与每个子模型的权重系数的乘积的结果求和,获得融合模型。具体的计算方法请参见步骤S116。
在一种实施例中,气体分析装置还可以包括修正模块116,所述修正模块116用于将原始样本以外的混合气体的光谱信息及该混合气体中待测气体的浓度信息输入融合模型以对融合模型进行修正。
如图4所示,本申请的另一实施例还提供一种气体分析方法,所述气体分析方法包括:
步骤S121,采集未知气体的拉曼光谱信息;
步骤S122,对未知气体的拉曼光谱信息进行预处理,获得待分析的光谱信息。
步骤S123,将待分析的光谱信息输入如前述任一项的分析模型建立方法建立的最终模型中,获得待测气体的预测浓度。
本实施例中,待分析的光谱信息即为与某种待分析的未知气体对应的光谱信息。
本申请的各个实施例中,训练子模型时,可以采用BP神经网络进行模型训练,也可以采用其他的深度学习模型进行训练。
本申请中,采用的小波系数为高密度小波系数。
以下结合一次具体的实验过程来描述本申请实施例的过程。在实际的录井气体检测过程中,录井气体由钻井液从井下带到地表,经由安装在振动筛前的脱气器抽取出来,在滤去杂质后经管道输送至分析小屋进行实时分析和记录。为了与色谱仪器进行对比,在实际实施时,可以在色谱仪的样品泵样品气入口管线处加入三通接头,引其中一路进入拉曼检测系统的增压泵,使增压泵和样品泵并联在气路中,以便使待检测气体能够几乎同时到达两种检测仪器。
实验使用拉曼检测系统分别对录井现场进行了长时间的实时检测,为了更好的与色谱仪进行对比,实验中按照6秒的时间间隔同时对拉曼检测仪和色谱仪的检测数据进行读取,并采用本申请所述方法对光谱信息进行解析。本实施例中所述方法将混合气体拉曼光谱进行简单预处理后,选择一个分解尺度进行高密度小波分解,然后对每一层第二小波系数进行重构,得到了重构光谱后进行BP神经网络建模。由此得到每一层子模型的反馈变量,并判断是否为最优,如果不是,则返回重新选择另一个分解尺度继续分解与建模,直到找到最佳的分解尺度。
在实际录井气体检测过程中,通常采用的高密度小波变换分解尺度为6,进而获得了13个层的高密度小波系数。在此基础上,分别对13层高密度小波系数进行重构,并对重构后的光谱建立BP神经网络模型,有效获得了每一层BP神经网络模型的交叉验证误差,共计13个误差。按权重计算公式计算每一层子模型的权重系数,最终通过权重系数将13个BP神经网络模型的预测结果进行融合,由此获得一个统一的权重系数的平均值,该值即为最终的组分浓度预测值。在该算法中,高尺度的高密度小波逼近成分和低尺度的高密度小波细节成分的权重系数接近于零,因此,本算法巧妙地通过权重系数的方式,有效规避了背景与噪音的干扰,同时也避免了其它有用信息的泄露,实现了数据预处理光谱预处理与建模的一体化运算,具备良好的实用价值。
基于结果,本发明得到了相应的甲烷分析结果,如图7所示。
综上所述,本申请本发明采用高密度小波变换以过采样的方式,在时/频域对原始光谱信息进行多尺度分解,并以模型融合的方式,有效规避了基质和背景干扰,由此准确剥离了待测气体组分的光谱信息。该方法具备良好的自适应性和稳健性,可根据不同复杂气体体系自适应地调整数据融合权重,进而获取良好的拉曼光谱分析结果。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Rezd-Only Memory)、随机存取存储器(RZM,Rzndom Zccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。