一种基于改进的多样性增强模型预测方法及其系统

文档序号:30963016发布日期:2022-07-30 14:48阅读:73来源:国知局
一种基于改进的多样性增强模型预测方法及其系统

1.本发明涉及数据处理的研究领域,特别涉及一种基于改进的多样性增强模型预测方法及其系统。


背景技术:

2.人工智能模型作为通用ai框架的核心组件,一旦收集到各个应用领域的数据,就可以预测各个领域的事件分类。不过各个应用领域的数据量较大,导致预测速度慢。传统的预测方法缺点主要体现在:
3.(1)预测准确度不高,容易产生误判。模型误判是一个严肃的问题,可能带来巨大的人力、物力、财力上的损失。
4.(2)预测结果的稳定性不强,容易受到各种数据的影响。如采集的数据中阳性阴性样本的数据不平衡、年龄上的不平衡,老人居多,幼儿居少;或者数据采集中有一些异常点的影响;高稳定性的方法要确保预测同一条数据的输出结果必须是可复现的。
5.(3)预测速度达不到要求;由于常见的人工智能模型往往比较庞大,导致传统模型的预测速度慢,这可能导致模型使用方等待时间变长。
6.(4)内存消耗过大;一般情况下,越大的模型的预测性能越好,但是越大的模型消耗算力越多,对于普通计算硬件,巨型模型的训练速度缓慢,难以满足在边缘设备部署的需要。
7.目前功能强大的ai技术也难以处理如此庞大的数据,如何选择一个规模更小的样本的同时保证精度不变,这是人工智能落地时特别需要关注的一个方面。


技术实现要素:

8.本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于改进的多样性增强模型预测方法及其系统,通过数据采集模块、数据分割技术、oob优化算法、基于对数损失的贪心向后搜索优化算法、模型融合技术、最后用derf(diversity enhancement random forest)模型进行数据预测,从而减轻使用者在预测各个领域时所消耗的精力、提高预测结果的准确性。
9.本发明的第一目的在于提供一种基于改进的多样性增强模型预测方法;
10.本发明的第二目的在于提供一种基于改进的多样性增强模型预测系统。
11.本发明的第一目的通过以下的技术方案实现:
12.一种基于改进的多样性增强模型预测方法,包括以下步骤:
13.第一阶段:获取指定应用场景的样本训练数据集,并划分为第一数据集、第二数据集;
14.通过初始训练方法训练第一数据集,得到初始决策树;
15.对初始决策树进行排序,得到第一决策树队列,根据第一决策树队列择优选择若干决策树;
16.使用第二数据集对择优决策树进行验证,得到验证结果;
17.第二阶段:对于择优选择后剩下的决策树根据第二数据集进行倒序排序,生成第二决策树队列;
18.计算第二决策树队列的预测错误率及第二决策树队列的队列长度;
19.根据预测错误率和队列长度进行第二阶段循环处理,得到最终集合决策树,通过最终集合决策树得到预测结果。
20.进一步地,获取指定应用场景的样本训练数据集,并划分为第一数据集、第二数据集,具体为:
21.获取原始数据,对原始数据进行预处理,所述预处理包括:明显错误数据的删减、残缺数据的补全、数据归一化、数据编码;
22.对预处理后的数据进行比例分割,得到训练数据和测试数据;
23.对训练数据进行二次分割,得到第一数据集和第二数据集。
24.进一步地,比例分割为p%与(1-p)%;所述二次分割的分割比例为90%与10%。
25.进一步地,通过初始训练方法训练第一数据集,得到初始决策树,具体为:
26.通过bootstrap方法对第一数据集进行训练,得到oobsample和初始决策树;
27.其中,训练过程为普通决策树生成过程:
28.步骤1:设结点的训练数据集为d,对每一个特征a,对其取的每个值a,根据样本点对a=a测试为“是”或“否”;将d分割成d1和d2两部分,并计算gini(d,a);
29.步骤2:在所有特征a以及其所有的切分点a中,选择基尼指数最小的特征及其对应的切分点作为最优特征与最优切分点;从现结点生成两个子结点,将训练数据集依特征分配到两个子结点中去;
30.步骤3:对两个子结点递归地调用步骤1和步骤2,直至满足停止条件;
31.步骤4:生成cart决策树t;
32.其中,算法停止计算的条件是结点中的样本个数小于预定阈值,或样本集的基尼指数小于预定阈值。
33.进一步地,对初始决策树进行排序,得到第一决策树队列,根据第一决策树队列择优选择若干决策树,具体为:
34.对初始决策树按照错误率从大到小进行排序,得到第一决策树队列;
35.对第一决策树队列按照排列情况,择优选择m棵决策树。
36.进一步地,对于择优选择后剩下的决策树根据第二数据集进行倒序排序,生成第二决策树队列,具体为:
37.对于择优选择后剩下的决策树按照第二数据集的对数损失值进行倒序排序,生成第二决策树队列,其中,对数损失值的计算公式如下:
[0038][0039]
其中,l表示损失函数;y为输出标签;x为输入变量;n为输入样本大小;yi为输入实例xi的真实分类;pi为预测输入实例xi属于分类1的概率;
[0040]
其中,对数损失值鉴于0-1之间,根据大小排序,具体过程如下:
[0041]
步骤一:对剩余的决策树按照s2上的对数损失值通过对数损失值的计算公式获
取,并对对数损失值按照快速排序方式进行倒序排序;
[0042]
步骤二:生成新的决策树队列g;
[0043]
步骤三:计算在数据集s2上决策树队列g的预测错误率;
[0044]
步骤四:计算决策树队列的长度;
[0045]
步骤五:若当前决策树队列的错误率小于阈值或队列长度小于阈值,贪心后向搜索停止,否则转到步骤六;
[0046]
步骤六:重复步骤二到步骤五;
[0047]
步骤七:得到最终集合决策树:k棵。
[0048]
进一步地,计算第二决策树队列的预测错误率的具体过程为:
[0049]
利用precision,recall,acc和f1-score测量derf框架;度量的定义如下:
[0050][0051][0052][0053][0054]
其中,tp表示识别出的正例,tn表示正确的负例,fp表示正例,fn表示负例,f1为综合评价标准。
[0055]
进一步地,根据预测错误率和队列长度进行第二阶段循环处理,得到最终集合决策树,具体为:
[0056]
若当前决策树队列的预测错误率大于阈值,则进行第二阶段循环处理;
[0057]
若当前决策树队列的预测错误率小于阈值,则停止贪心后向搜索,得到最终集合决策树。
[0058]
进一步地,贪心后向搜索的过程为:当经过数据分割技术处理后形成的子集s2与oob错误优化后留下的决策树m进行验证时,在s2子集上按对数损失值以相反顺序对其余决策树进行排名。
[0059]
本发明的第二目的通过一下技术方案实现:
[0060]
一种基于改进的多样性增强模型预测系统,包括:
[0061]
训练模块,通过初始训练方法训练第一数据集,得到初始决策树;
[0062]
第一决策树队列生成模块,用于对初始决策树进行排序,得到第一决策树队列,根据第一决策树队列择优选择若干决策树;
[0063]
验证模块,使用第二数据集对择优决策树进行验证,得到验证结果;
[0064]
第二决策树队列生成模块,用于对于择优选择后剩下的决策树根据第二数据集进行倒序排序,生成第二决策树队列;
[0065]
计算模块,用于计算第二决策树队列的预测错误率及第二决策树队列的队列长度;
[0066]
生成模块,根据预测错误率和队列长度进行第二阶段循环处理,得到最终集合决
策树。
[0067]
本发明与现有技术相比,具有如下优点和有益效果:
[0068]
1、本发明通过数据的高效利用与启发式模型压缩算法的引入,令其适配各个应用领域风险预测的同时,还能降低模型的规模。
[0069]
2、本发明算法在预测性能不降低的基础上,降低了预测模型的规模,并且该方法能有效适用于各个应用领域的场景。
[0070]
3、本发明所提出算法的时间复杂度低,运算效率高,能够满足实时计算场合。
附图说明
[0071]
图1是本发明所述一种基于改进的多样性增强模型预测方法流程图;
[0072]
图2是本发明所述实施例1中数据分割流程图;
[0073]
图3是本发明所述实施例1中oob优化算法流程图;
[0074]
图4是本发明所述实施例1中llf优化算法流程图;
[0075]
图5是本发明所述实施例1中固定步长为1时等步长的贪心后向搜索的实现过程图;
[0076]
图6为本发明所述实施例1中固定步长为3时等步长的贪心后向搜索的实现过程图;
[0077]
图7为本发明所述实施例1中3轮步长的贪心后向搜索的实现过程图;
[0078]
图8为本发明所述实施例1中2轮步长的贪心后向搜索的实现过程图。
具体实施方式
[0079]
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
[0080]
实施例1:
[0081]
如图1所示,本实施例一种基于改进的多样性增强模型预测方法,包括以下步骤:
[0082]
第一阶段:获取指定应用场景的样本训练数据集,并划分为第一数据集、第二数据集;如图2所示,具体为:
[0083]
首先对采集数据进行预处理,包括明显错误数据的删减、残缺数据的补全、数据归一化、数据编码(one-hot coding)等;
[0084]
对数据进行分割,按照任务特性确定划分比例,本实施例确定的训练数据与测试数据分割比例为p%与(1-p)%,常用的分割比例包括50%,50%;60%,40;70%,30%;80%,20%;90%,10%;对训练数据集进行了二次分割,分割比例为90%,10%。
[0085]
通过初始训练方法训练第一数据集,得到初始决策树;
[0086]
对初始决策树进行排序,得到第一决策树队列,根据第一决策树队列择优选择若干决策树;
[0087]
使用第二数据集对所述择优决策树进行验证,得到验证结果;
[0088]
第二阶段:对于择优选择后剩下的决策树根据第二数据集进行倒序排序,生成第二决策树队列;
[0089]
计算第二决策树队列的预测错误率及第二决策树队列的队列长度;
of-bag estimate的定义如下:
[0113][0114]
其中,g(xi)表示第i个基本分类器,|exd|表示oob数据的大小,yi表示输入xi的真实输出。oob优化采用out-of-bag estimate来改进随机森林的预测。
[0115]
(2)基于对数损失的贪心逐步向后搜索优化
[0116]
一、对数损失函数
[0117]
对数损失函数又称对数似然损失或交叉熵损失,是在概率估计的基础上定义的。它经常被用来评估分类器的概率输出。它通过惩罚错误分类来量化分类器的准确性。最小化对数损失基本上等同于最大化分类器的准确性。对数损失函数的计算公式定义如下:
[0118][0119]
其中,y表示输出标签,x表示输入变量,l表示损失函数,n表示输入样本大小,m表示可能分类的个数,p
ij
表示一个二值指标,表示分类j是否为输入实例xi的真实分类。p
ij
表示输入实例xi属于第j类的概率。
[0120]
对于二元分类,式(4)可简化为式(5)
[0121][0122]
其中,yi表示输入实例xi的真实分类,pi表示预测输入实例xi属于分类1的概率。所有样本的对数损失表示每个样本的对数损失的平均值。当对数损失为0时,分类器是完美的。
[0123]
二、随机步长贪心向后搜索
[0124]
考虑到在随机森林中寻找最优树是np完全问题,我们使用启发式算法搜索最优树来构建一个比较好的森林。从out-of-bag优化生成的完整的m棵决策树mt开始,我们将mt按照对数损失值的倒序排列,然后每次从mt集合中删除一部分树,目标是获得一个更小规模的模型获得最优预测性能。如果向后选择生成的树的性能符合预期,则向后搜索停止。否则,默认情况下,随机森林由m树的上半部分组成。
[0125]
如图5、图6所示,对算法中步长初始化m值(取决于算力,一般情况下,算力越大,则m值可以设置越小),向左逐步切m个,并验证左边紫色决策树s2效果,本实施例可以设置不同的步长进行贪心搜索,当步长m越小时,搜索效果更好,不过所需算力大且时间较长;当步长m是不定步长时,搜索效率高,所需算力较小,不过效果可能达不到理想效果,如图7、图8所示。
[0126]
步骤一:对剩余的决策树按照s2上的对数损失值通过对数损失值的计算公式获取,并对对数损失值按照快速排序方式进行倒序排序;
[0127]
步骤二:生成新的决策树队列g,其对数损失值较小;
[0128]
步骤三:计算在数据集s2上决策树队列g的预测错误率;
[0129]
步骤四:计算决策树队列的长度;
[0130]
步骤五:若当前决策树队列的错误率小于阈值或队列长度小于阈值,贪心后向搜索停止,否则转到步骤六;
[0131]
步骤六:重复步骤二到步骤五;
[0132]
步骤七:得到最终集合决策树:k棵。
[0133]
实施例2:
[0134]
一种基于改进的多样性增强模型预测系统,包括:
[0135]
数据获取模块,用于获取指定应用场景的样本训练数据集,并划分为第一数据集、第二数据集;
[0136]
训练模块,通过初始训练方法训练第一数据集,得到初始决策树;
[0137]
第一决策树队列生成模块,用于对初始决策树进行排序,得到第一决策树队列,根据第一决策树队列择优选择若干决策树;
[0138]
验证模块,使用第二数据集对择优决策树进行验证,得到验证结果;
[0139]
第二决策树队列生成模块,用于对于择优选择后剩下的决策树根据第二数据集进行倒序排序,生成第二决策树队列;
[0140]
计算模块,用于计算第二决策树队列的预测错误率及第二决策树队列的队列长度;
[0141]
生成模块,根据预测错误率和队列长度进行第二阶段循环处理,得到最终集合决策树。
[0142]
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1