当前位置: 首页 > 专利查询>杨光专利>正文

一种特殊初值的XGBoost类方法及相关设备技术

技术编号:36194892 阅读:19 留言:0更新日期:2023-01-04 11:46
本发明专利技术公开了一种特殊的XG Boost类方法,在XG Boost类方法中用待估变量或待估参数的极大似然估计值为初始迭代值,使得XG Boost类方法的收敛速度更快。相比0初值,当训练轮数较少时,能有效防止过拟合同时达到一定的预测精度。当有特殊取值范围限定时,极大似然估计初始迭代值和一个较小的收缩尺度因子η能使XG Boost类方法在迭代过程中始终保持实际意义。同时,公开了相关的计算机设备。公开了相关的计算机设备。

【技术实现步骤摘要】
一种特殊初值的XGBoost类方法及相关设备


[0001]本专利技术涉及机器学习技术,具体涉及大数据分析方法。

技术介绍

[0002]1.XGBoost方法。
[0003]XGBoost方法是一种极限梯度提升树方法,其预测性能优异,在很多领域都取得了非常好的成绩。
[0004]该方法的主要过程描述如下:
[0005]一个样本集
[0006]D={(x
i
,y
i
)}(|D|=n,x
i
∈R
m
,y
i
∈R),
[0007]有m个特征,n个样本。
[0008]一个集成树模型,用K颗树函数相加得到预测结果。
[0009][0010]其中F={f(x)=ω
q(x)
}(q:R
m

T,ω∈R
T
)是回归树空间。q表示每棵树的结构,把一个样本映射到对应的叶子结点。T是一颗树的叶子结点的个数。每个f
k
对应一个独立的树结构q及其叶子权重ω。每一颗回归树的每一个叶子结点都有一个连续值得分,用ω
i
表示第i个叶子结点的得分。为了学习模型中的这些树函数,最小化下面的正则化目标:
[0011][0012]其中,
[0013]l是可导凸函数,表示损失函数。Ω(f
k
)是正则项。
[0014]XGBoost算法用提升树算法去最小化目标函数,假设是第i个样本的第t次迭
[0015]代的预测值,将其加上一个f
t
,最小化如下目标函数:
[0016][0017]在一般情况下,为了快速优化目标函数。用二阶泰勒展开对其做近似:
[0018][0019]其中,将常数项移除,得到第t次迭代的目标函数:
[0020][0021]定义I
j
={i|q(x
i
)=j}是划分到叶子结点j的样本点的集合,重写得到
[0022][0023]对一个固定的树结构q(x),求对每一个ω
j
的偏导数等于0的ω
j
值,得到叶子结点j的最优权重得分:
[0024][0025]最优目标函数值为:
[0026][0027]树结构q采用贪婪算法求得,迭代的从一个单一的叶子结点开始添加分枝。
[0028]假设I
L
和I
R
表示分裂后的左右结点的样本集,I=I
L
∪I
R

[0029]分裂后的目标函数的减少值由下式给出:
[0030][0031]此公式用来计算候选划分点。
[0032]绝大部分地,即的初始迭代值设定为0。
[0033]类似于学习率,收缩尺度技术在每一步提升树后用一个因子η,也用来防止过拟合。此外还有列采样技术防止过拟合。
[0034]2.极大似然估计法。
[0035]极大似然估计值是使得样本出现的联合概率最大的参数估计值,以这个值作为待估参数的估计值。

技术实现思路

[0036]由于现有的XGBoost类方法中一般以0作为待估变量或待估参数的初始估计值。当待估变量或待估参数的最终预测值离0较远时,需要较多的训练轮数才能达到理想的预测精度。特别是当单个样本损失函数在0点或0点附近的导数的绝对值较大时,需要一个较小的收缩尺度因子η才能保证算法的收敛,而较小的收缩尺度因子η又会大大增加训练轮数。训练轮数多意味着训练时间开销大。还有一种不常用的方法,以上次训练的预测值作为当前训练模型的初始值,但该方法总体上需要至少2次训练模型,同时过拟合的可能大大增加。
[0037]针对XGBoost类方法所存在的问题,需要一种新的数据分析处理方案。
[0038]为此,本专利技术的目的在于提供一种特殊的XGBoost类方法,由此来有效提高XGBoost类方法的计算速度;在训练轮数较少的情况下,有效防止过拟合,同时达到一定的预测精度。
[0039]为了达到上述目的,本专利技术提供特殊的XGBoost类方法,采用待估变量或待估参数
的极大似然估计作为初始迭代值。相比0点,单个样本损失函数对待估变量或待估参数的导数的绝对值在极大似然估计值附近一般会更小,从而可以使用相对较大的收缩尺度因子η,使得达到相同预测精度的训练轮数更少。另一方面,极大似然估计值离真实值(或理想的最终预测值)相对较近,可以使得达到相同预测精度的训练轮数更少。如此则达到提高XGBoost类方法的计算速度,节约计算时间的技术效果。
[0040]当训练轮数较少的情况下,能有效防止过拟合。而由于极大似然估计值离模型的真实值较近,在训练轮数较少的情况下,也能达到一定的预测精度。所以本方案能达到在训练轮数较少的情况下,有效防止过拟合,同时达到一定的预测精度的技术效果。
[0041]采用待估变量或待估参数的极大似然估计值作为XGBoost类方法初始迭代值和一个较小的收缩尺度因子η能使得XGBoost类方法对有特殊取值范围限定时,在迭代过程中保持实际意义。
[0042]在上述方案的基础上,本专利技术进一步提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述方法。
[0043]在上述方案的基础上,本专利技术进一步提供了一种处理器,所述处理器用于运行程序,所述程序运行时实现上述方法。
[0044]在上述方案的基础上,本专利技术进一步提供了一种终端设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,所述程序代码由所述处理器加载并执行以实现上述方法。
[0045]在上述方案的基础上,本专利技术进一步提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行上述方法。
具体实施方式
[0046]针对XGBoost类方法迭代初值选取不当的缺陷,本方案对一般的XGBoost类方法进行改进,采用待估变量或待估参数的极大似然估计值作为初始迭代值,得到特殊的XGBoost类方法。其余的技术手段同相应的XGBoost类方法。
[0047]实例1
[0048]采用待估变量或待估参数的极大似然估计值作为特殊的XGBoost类方法初始迭代值。
[0049]获得极大似然估计值的各种方法是公知技术。
[0050]例1
[0051]当损失函数不是待估变量的概率分布的负似然函数或负对数似然函数或其变型时,可将极大似然估计法做扩展。
[0052]定义:对于全体样本的损失函数,如果对所有的样本i,有一个相同的的估计值,使得全体样本的损失函数取值最小,则称该为估计值为极大似然估计值。
[0053]求得该取值的各种方法是公知技术。
[0054]实际上,每一种损失函数都对应了一种概率分布,例如均方误差损失函数对应了正态分布,平均绝对误差损失函数对应了拉普拉斯分布等等。用以上定义得到本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种特殊的XG Boost类方法,其特征在于,用待估变量或待估参数的极大似然估计值为初始迭代值。2.根据权利要求1所述的特殊的XG Boost类方法,其特征在于,一个较小的收缩尺度因子η能使所述特殊的XG Boost类方法对有特殊取值范围限定时,在迭代过程中保持实际意义。3.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时实现权利要求1或2中的权利...

【专利技术属性】
技术研发人员:杨光
申请(专利权)人:杨光
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1