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

一种基于自编码与梯度提升树组合算法对钻孔的判断方法与流程

2022-02-22 22:38:51 来源:中国专利 TAG:


1.本发明属于互联网技术领域,具体涉及一种基于自编码与梯度提升树组合算法对钻孔的判断方法。


背景技术:

2.三维钻孔设计是三维井场虚拟建造过程中的重要环节,然而,在很多测井数据中往往通过人工计算的方式获得,导致钻孔判断效率差,严重降低了钻孔的准确率,而且,现有的三维钻孔设计系统其操作系统复杂,导致用户操作难度大。


技术实现要素:

3.本发明的目的在于:针对现有技术存在的不足,提供了一种基于自编码与梯度提升树组合算法对钻孔的判断方法,能够实现钻孔合格性批量判断的功能,为地浸采矿人员减少地浸井场钻孔设计工作量,提高地浸井场钻孔设计质量。
4.为了实现上述目的,本发明采用以下技术方案:一种基于自编码与梯度提升树组合算法对钻孔的判断方法,包括以下步骤:
5.步骤1:对钻孔样本数据进行归一化处理;
6.步骤2:将钻孔数据集d={x1,x2,...,x
n-1
,xn}划分为训练集d1和测试集d2,训练集d1在所钻孔数据集d中出现的概率为m>1,且m为训练集d1中的样本数量;
7.步骤3:将部分训练集d1通过人工贴上标签,将无标签的训练集d1进行栈式自编码层训练,将钻孔数据处理进行降维处理,并输出隐藏层的数据;
8.步骤4:对隐藏层的数据和带标签的训练集d1进行处理,一起进入梯度提升决策树中进行训练,设置残差函数;
9.步骤5:输出层是输出决策树训练后的最优模型,并对测试集d2进行训练,判断模型的性能。
10.7、根据权利要求1的一种基于自编码与梯度提升树组合算法对钻孔的判断方法,其特征在于,在步骤1中,对钻孔数据进行归一化处理,具体如下:
11.找到钻孔样本数据中的最小值和最大值,然后将钻孔样本数据转化为区间[0,1]之间的数据,计算公式如下:
[0012][0013]
其中,x为钻孔样本数据,x

为归一化的数据,x

∈[0,1],x
min
代表钻孔样本数据中的最小值,x
max
代表钻孔样本数据中的最大值。
[0014]
进一步地,在步骤2中,将钻孔数据集d={x1,x2,...,x
n-1
,xn)划分为训练集d1和测试集d2,训练集d1在所钻孔数据集d中出现的概率为m>1,且m为训练集d1中的
样本数量;具体如下:
[0015]
每次从钻孔数据集d中随机选择一个样本放入到训练集d1,然后再把样本放回钻孔数据集d中,重复操作m次,训练集d1具有m个样本数据,训练集d1和测试集d2满足以下关系式;
[0016]
d=d1∪d2[0017]
即,d2=d-d1,训练集d1在钻孔数据集d中出现的概率为当m

∞时,训练集d1为钻孔数据集d的36.8%。
[0018]
进一步地,在步骤3中,将部分训练集d1通过人工贴上标签,将无标签的训练集d1进行栈式自编码层训练,将钻孔数据处理进行降维处理,并输出隐藏层的数据,具体如下:
[0019]
用无标签的训练集d1作为输入,训练出第一个隐含层结构的网络参数,并通过训练好的参数w
(l,1)
和参数b
(l,1)
算出第一个隐含层的输出;把第一个隐含层的输出作为第二个网络的输入,训练第二个隐含层结构的网络参数,并通过训练好的参数w
(l,1)
和参数b
(l,1)
算出第二个隐含层的输出,以此类推,直到第n层训练完成,其中参数w
(l,1)
和参数b
(l,1)
为第l个编译器的参数,第l层的编码过程如下:
[0020]a(l)
=f(z
(l)
)
[0021]z(l 1)
=w
(l,1)a(l)
b
(l,1)
[0022]
其中,z为上一个神经网络层的输出数据,w为神经网络层中的权重,b为神经网络层中的偏置项,f为激活函数,a为经过激活函数处理的输出数据。
[0023]
进一步地,激活函数f的表达式如下:
[0024][0025]
其中,e为自然常数。
[0026]
进一步地,在步骤4中,对隐藏层的数据和带标签的训练集d1进行处理,一起进入梯度提升决策树中进行训练,设置残差函数;具体如下:
[0027]
s1、输入钻孔数据集d={(x1,y1),(x2,y2),(x3,y3),...,(xn,yn)};
[0028]
s2、初始化弱分类器
[0029]
s3、对于k棵树计算残差,具体如下:
[0030]
计算残差
[0031]
对于i=1,2,....,n,需要对数据(xi,r
k,i
)进行拟合得到k个回归树,每棵回归树的叶子区域记为r
k,j
,其中j=1,2,...,jk,j代表每棵树的叶子节点的个数,jk表示第k棵树的叶子节点个数。拟合值
[0032]
更新fk(x),且
[0033]
s4、输出分类树fk(x),
[0034]
其中,d为钻孔数据集,f0(x)为第一个弱分类器的值,k为模型初始设置的回归树的数目,r
k,i
为每棵树的残差,r
k,j
为叶子区域,jk为第k棵树的叶子节点个数,c
k,j
为数据(xi,r
k,i
)的拟合值。fk(x)为第k个强学习器。
[0035]
本发明的有益效果在于:本发明一种基于自编码与梯度提升树组合算法对钻孔的判断方法,能够实现钻孔合格性批量判断的功能,为地浸采矿人员减少地浸井场钻孔设计工作量,提高地浸井场钻孔设计质量,该算法模型可以提高测井数据中钻孔判断的效率和准确率,比起传统的人工计算快很多,并且该方法集成到三维地浸井场虚拟建造系统中,使得系统操作简单,用户操作简单便捷。
附图说明
[0036]
图1为本发明具体实施方式中的栈式自编码-梯度提升树组合模型流程图;
[0037]
图2为本发明具体实施方式中的栈式自编码器结构图;
[0038]
图3为本发明具体实施方式中的每个自编码器层的内部结构图;
[0039]
图4为本发明具体实施方式中的激活函数图;
[0040]
图5为本发明具体实施方式中的系统逻辑架构图;
[0041]
图6为本发明具体实施方式中的梯度提升树结构图。
具体实施方式
[0042]
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
[0043]
为使本发明的技术方案和优点更加清楚,下面将结合具体实施方式和说明书附图,对本发明及其有益效果作进一步详细的描述,但本发明的实施方式不限于此。
[0044]
如图1所示,一种基于自编码与梯度提升树组合算法对钻孔的判断方法,主要如下:
[0045]
1、数据预处理
[0046]
1.1、在划分训练集和测试集前,首先要对钻孔样本数据进行归一化处理,归一化处理的方式为,找到钻孔样本数据中极值(包含最小值和最大值),然后将钻孔样本数据转化为区间[0,1]之间的数据。计算公式如7-1所示:
[0047][0048]
其中,x为钻孔样本数据,x

为归一化的数据,x

∈[0,1],x
min
代表钻孔样本数据中
的最小值,x
max
代表钻孔样本数据中的最大值。
[0049]
1.2、采用自助采样法将步骤1.1中经过归一化处理的数据划分为训练集d1和测试集d2,自助采样法能从初始数据集中产生多个不同的训练集d1,可以用于集成学习,其思想是基于统计学的思想,一种从给定训练集d1中有放回的均匀抽样。这样保证了每一个被选中的样本,都是等可能的被再次选中并被再次添加到训练集d1中。其选划分训练集d1和测试集d2的过程如下:假设钻孔数据集为d={x1,x2,...,x
n-1
,xn},每次从钻孔数据集d中随机选择一个样本放入到训练集d1,然后再把样本放回钻孔数据集d中,重复操作m次,训练集d1具有m个样本数据,训练集d1和测试集d2满足以下关系式;
[0050]
d=d1∪d2[0051]
即,d2=d-d1,可以得出,训练集d1在钻孔数据集d中出现的概率为m>1,且m为训练集d1中的样本数量;当m

∞时,训练集d1为钻孔数据集d的36.8%。其计算如公式7-2所示。
[0052][0053]
2、栈式自编码层
[0054]
基于无标签的训练集d1,对训练集d1进行栈式自编码层训练,将钻孔数据处理进行降维处理,并输出隐藏层的数据;
[0055]
需要说明的是,训练集d1带标签是人工处理的过程,由人工对一些训练集d1加上标签,建立的模型主要是对无标签数据的处理,带标签的数据主要是对模型进行微拟合。
[0056]
用无标签的训练集d1作为输入,训练出第一个隐含层结构的网络参数,并通过训练好的参数w
(l,1)
和参数b
(l,1)
算出第一个隐含层的输出;把第一个隐含层的输出作为第二个网络的输入,训练第二个隐含层结构的网络参数,并通过训练好的参数w
(l,1)
和参数b
(l,1)
算出第二个隐含层的输出,以此类推,直到第n层训练完成,其中参数w
(l,1)
和参数b
(l,1)
为第l个编译器的参数,第l层的编码过程如下:
[0057]a(l)
=f(z
(l)
)
ꢀꢀꢀꢀꢀ
(7-3)
[0058]z(l 1)
=w
(l,1)a(l)
b
(l,1)
ꢀꢀꢀꢀꢀ
(7-4)
[0059]
其中,z为上一个神经网络层的输出数据,w为神经网络层中的权重,b为神经网络层中的偏置项,f为激活函数,a为经过激活函数处理的输出数据。
[0060]
需要说明的是,在(7-3)和(7-4)中,需要考虑激活函数f,因为激活函数f提供让网络具备非线性建模能力,如果不适用激活函数f,每层的输出都将会是线性前面层的线性输出,无论神经网络有多少层,输出都是输入的线性组合。只有使用激活函数f,给神经元加入了非线性因素,使得神经网络可以任意逼近任何非线性函数,使得神经网络可以应用到众多的非线性模型中。在本具体实施方式中,采用的是sigmod激活函数,其不仅具有求导容易和数据在传递的过程中不易发散的优点,而且其输出范围为(0,1)之间,可以用来表示概率。激活函数f的表达式如下:
[0061][0062]
其中,e为自然常数。
[0063]
3、梯度提升树层
[0064]
梯度提升树层主要是对进行了栈式自编码层处理后的数据进行训练,进而实现对钻孔的判断。使用梯度提升树主要是由于其可以灵活处理各种类型的数据,包括连续值和离散值。其主要思想是通过多轮迭代,每轮迭代产生一个弱分类器,每个分类器在上一轮分类器的残差基础上进行训练,其训练的过程是通过降低偏差来不断提高最终分类器的精度,过程如下:
[0065]
s1、输入钻孔数据集d={(x1,y1),(x2,y2),(x3,y3),...,(xn,yn)};
[0066]
s2、初始化弱分类器
[0067]
s3、对于k棵树计算残差,具体如下:
[0068]
计算残差
[0069]
对于i=1,2,....,n,需要对数据(xi,r
k,i
)进行拟合得到k个回归树,每棵回归树的叶子区域记为r
k,j
,其中j=1,2,...,jk,j代表每棵树的叶子节点的个数,jk表示第k棵树的叶子节点个数。拟合值
[0070]
更新fk(x),且
[0071]
s4、输出分类树fk(x):
[0072][0073]
其中,d为钻孔数据集,f0(x)为第一个弱分类器的值,k为模型初始设置的回归树的数目,r
k,i
为每棵树的残差,r
k,j
为叶子区域,jk为第k棵树的叶子节点个数,c
k,j
为数据(xi,r
k,i
)的拟合值。fk(x)为第k个强学习器。
[0074]
4、输出层
[0075]
输出层是输出决策树训练后的最优模型,并对测试集进行训练,判断模型的性能。输出层的作用是输出组合模型中的最后的分类判别器模型,主要是用来检测测试集d2,从而能够衡量模型的准确率和性能。
[0076]
需要说明的是,本系统主要开发技术研究和需求分析,确定使用go语言作为后端开发语言,利用前端开发技术html5编写前端页面,使用javascript实现页面交互,基于webgl技术构建三维场景,基于webgl的three.js框架构建三维模型,使用html5和javascript等技术实现二维图形绘制,采用mongodb数据库存储数据,根据mvc框架模式设计系统架构,本系统的逻辑架构如图5所示。其中钻孔的判断是处于钻孔设计模块中,其中包含有钻孔布置模块、方案设置功能、钻孔合格性批量判断的功能、钻孔添加功能、钻孔删除功能和采区设计等功能;方案设置有方案的添加、修改、删除等功能;钻孔合格性批量判
断的能实现五点型布置、行列式布置、七点型布置;钻孔添加功能有单个钻孔添加功能和批量钻孔添加功能;钻孔删除功能有单个钻孔删除功能和框选钻孔删除功能。
[0077]
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
[0078]
根据上述说明书的揭示和教导,本发明所属领域的技术人员还能够对上述实施方式进行变更和修改。因此,本发明并不局限于上述的具体实施方式,凡是本领域技术人员在本发明的基础上所作出的任何显而易见的改进、替换或变型均属于本发明的保护范围。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对本发明构成任何限制。
再多了解一些

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

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

相关文献