一种基于孤立森林学习的不平衡数据集的预测方法技术

技术编号:26690612 阅读:24 留言:0更新日期:2020-12-12 02:41
本发明专利技术公开的一种基于孤立森林学习的不平衡数据集的预测方法,包括以下步骤:接收预测请求;采集数据,明确数据集中的特征与标签及少数类样本和多数类样本的数量;将数据集中的非数值特征列以及标签列转变为分类数值;用多数类加权的少数类过采样技术合成少数类样本,形成平衡数据集;用孤立森林算法对平衡数据集进行异常点的识别和去除;之后进行数据标准化,划分训练集和测试集;构建并用训练集训练支持向量机分类器模型;通过遗传算法调整支持向量机分类器模型的超参数,训练完成后得到预测模型;将测试集输入预测模型得到预测结果。本发明专利技术一种基于孤立森林学习的不平衡数据集的预测方法,具有预测结果稳定、预测精度高的特点。

【技术实现步骤摘要】
一种基于孤立森林学习的不平衡数据集的预测方法
本专利技术属于类别不平衡数据集的预测方法
,具体涉及一种基于孤立森林学习的不平衡数据集的预测方法。
技术介绍
随着传感器技术、计算机技术、通信技术、数据存储等技术的高速发展,互联网、过程工业等领域产生并存储了大量数据。机器学习是一种主流的智能数据处理技术,而分类算法作为机器学习的关键技术之一,它能够利用大数据构建一个具有较强泛化能力的分类模型,提取数据中的有用信息而受到广泛关注。传统的分类方法通常假设数据集中各类别所包含的样本数相同且误分代价相等。然而现实世界中的数据往往具有不平衡特性,即数据集中某一类的样本数量要小于其他类别样本数量,并且具有少数样本的那类数据相比其他类更加重要,错分代价更高。目前,不平衡数据分类问题广泛存在于各个领域,在金融领域:如贷款违约预测;信息安全领域:如软件缺陷检测;工业系统领域:如故障诊断;生物医学领域:如ICU死亡预测等。由于不平衡数据集对机器学习分类器的分类精度影响较大,尽管分类算法对平衡数据集可以有效地处理,但对于不平衡数据集,通常会产生次优的结果,可能会产本文档来自技高网...

【技术保护点】
1.一种基于孤立森林学习的不平衡数据集的预测方法,其特征在于,包括以下步骤:/n步骤1、接收预测请求;/n步骤2、采集数据,明确数据集中的特征与标签,及少数类样本和多数类样本的数量;/n步骤3、将数据集中的非数值特征列以及标签列转变为分类数值;/n步骤4、用多数类加权的少数类过采样技术合成少数类样本,形成平衡数据集;/n步骤5、用孤立森林算法对平衡数据集进行异常点的识别和去除;/n步骤6、将去除异常点后的平衡数据集进行数据标准化,划分训练数据集和测试数据集;/n步骤7、构建并用训练数据集训练支持向量机分类器模型;/n步骤8、通过遗传算法调整支持向量机分类器模型的超参数,训练完成后,得到训练好的...

【技术特征摘要】
1.一种基于孤立森林学习的不平衡数据集的预测方法,其特征在于,包括以下步骤:
步骤1、接收预测请求;
步骤2、采集数据,明确数据集中的特征与标签,及少数类样本和多数类样本的数量;
步骤3、将数据集中的非数值特征列以及标签列转变为分类数值;
步骤4、用多数类加权的少数类过采样技术合成少数类样本,形成平衡数据集;
步骤5、用孤立森林算法对平衡数据集进行异常点的识别和去除;
步骤6、将去除异常点后的平衡数据集进行数据标准化,划分训练数据集和测试数据集;
步骤7、构建并用训练数据集训练支持向量机分类器模型;
步骤8、通过遗传算法调整支持向量机分类器模型的超参数,训练完成后,得到训练好的预测模型;
步骤9,将测试数据集输入训练完成的预测模型得到预测结果。


2.如权利要求1所述的一种基于孤立森林学习的不平衡数据集的预测方法,其特征在于,所述步骤4具体包括以下步骤:
步骤4.1、对每个少数类样本xi∈Smin,通过将xi与其他所有样本根据公式(1)进行邻居欧氏距离计算,按欧氏距离由小到大取前到k1个邻居样本元素;若这k1个邻居没有少数类样本,该样本为噪声样本直接删掉,否则予以保留,重复上述操作,最后得到剩余少数类样本集Sminf;其中,Smin为原始数据少数类样本集,k1为用来测噪声样本的少数类样本邻居样本数;



式(1)中,m=16,为特征空间的维数,xi表示样本点x的第i维坐标,yi表示样本点y的第i维坐标;
步骤4.2、对每个少数类样本xi∈Sminf,通过将xi与多数类样本根据公式(1)进行邻居欧氏距离计算,按欧氏距离由小到大取前到k2个邻居样本元素得到多数类邻居样本集记为Nmaj(xi),将每一个元素得到的多数类邻居样本集做并集得到多数类边界数据集Sbmaj;



其中,k2为用于构造包含大量少数类特征信息的少数类样本集的多数类邻居数;
步骤4.3、对每个多数类样本yi∈Sbmaj,通过将yi与Sminf中的每一个样本根据公式(1)进行邻居欧氏距离计算,按欧氏距离由小到大取前到k3个邻居样本元素得到多数类邻居样本集记为Nmin(yi),将每一个元素得到的少数类邻居样本集做并集得到少数类边界数据集Simin;



其中,k3为用于构造包含大量少数类特征信息的少数类样本集的少数类邻居数;
步骤4.4、计算所有样本yi∈Sbmaj,xi∈Simin的信息权重Iw(yi,xi)、选择权重Sw(xi)以及选择概率Sp(xi)如下:
信息权重Iw(yi,xi)为贴近度因子Cf(yi,xi)与密度因子Df(yi,xi)的乘积:
Iw(yi,xi)=Cf(yi,xi)*Df(yi,xi)(4)
式(4)中,贴近度因子Cf(yi,xi)计算如下:如果则Cf(yi,xi)=0;否则将按照以下步骤计算Cf(yi,xi):
计算归一化的欧几里得距离值dn(yi,xi):
dn(yi,xi)=dist(yi,xi)/l(5)
式(5)中l为特征空间的维数,按照下述方式计算Cf(yi,xi):



式(6)中,Ck是平滑系数,Ck=9;Cmax是重新缩放系数,Cmax=2;f为截止函数,其计算如下:



密度因子Df(yi,xi)的计算如下:



根据式(4)计算少数类边界数据集中每个样本的选择权重Sw(xi):



少数类边界数据集中每个样本的选择概率Sp(xi)为该样本的选择权重与所有样本选择权重之和的比值,计算公式如下:



步骤4.5、采用平均链接聚集聚类对Sminf进行聚类分析,得到M个类簇L1,L2,...,LM,具体为:
以Sminf中的数据样本作为输入:
步骤4.5.1、将每个样本分配到一个单独的类簇,每个类簇的大小为1;
步骤4.5.2、根据欧氏距离,找到两个最接近的簇,即Li和Lj,欧式距离计算如公式(1);
步骤4.5.3、将类簇Li和Lj合并为一个类簇Lm;
步骤4.5.4、更新新计算的类簇和所有先前类簇之间的距离度量,根据计算类簇的质心坐标,n为类簇内的样本个数,当i=1时得到质心的第1维坐标,i=2时得到质心的第2维坐标,...,i=m时得到质心的第m维坐标;然后根据公式(1)计算质心与其它类簇的欧氏距离;
步骤4.5.5、重复步骤4.5.2至步骤4.5.4,直到所有数据样本合并到一个大小与Sminf中样本数相等的单个类簇中;
上述步骤4.5.3中在最接近的一对对之间的距离超过阈值Th时停止合并过程,最后得到M个类簇L1,L2,...,LM,其中Th的计算过程如下:
对于Sminf的每个成员,找到到同一集合中任何其他成员的最小欧式距离,然后计算所有这些最小距离的平均值以找到davg:



通过将davg与参数Cp相乘来计算Th:
Th=davg*cp(12)
式(12)中参数Cp用于调整聚类算法的输出,Cp=3;
步骤4.6、计算合成数据少数类样本集Somin,具体为:
步骤4.6.1、初始化:Somin=Smin;
步骤4.6.2、对每个样本(合成的样本数为N),执行以下操作:
步骤4.6.3、根据公式(10)选择概率Sp(xi),从Simin中选取xi将其划分到Lk类簇中,1≤k≤M;
步骤4.6.4、随机从Lk中选取样本z;
步骤4.6.5、合成新样本s,s=x+α×(z-x),式中系数α是一个随机数,其取值范围为[0,1];
步骤4.6.6、将样本s加入到集合Somin,即Somin...

【专利技术属性】
技术研发人员:王竹荣牛亚邦黑新宏
申请(专利权)人:西安理工大学
类型:发明
国别省市:陕西;61

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

1