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

一种基于生成对抗网络的不平衡数据集的预测方法

2022-06-29 03:27:21 来源:中国专利 TAG:


1.本发明涉及类别不平衡数据集的预测方法技术领域,涉及一种基于生成对抗网络的不平衡数据集的预测方法。


背景技术:

2.随着信息技术的快速发展,各领域的数据正以前所未有的速度产生并被广泛收集和存储,如何实现数据的智能化处理从而利用数据中蕴含的有价值信息已成为理论和应用的研究热点。机器学习是一种主流的智能数据处理技术,分类问题是机器学习领域的重要研究内容之一,现有的一些分类方法都已经相对成熟,用它们来对平衡数据进行分类一般都能取得较好的分类性能,然而现实世界中的数据往往具有不平衡特性,即数据集中某一类的样本数量要小于其他类别样本数量,并且具有少数样本的那类数据相比其他类更加重要,错分代价更高。由于不平衡数据集对机器学习分类器的分类精度影响较大,通常会产生次优的结果,可能会产生偏向多数类且在少数类上导致分类精度低的结果,因而研究用于处理不平衡数据集的预测方法显得相当重要。
3.传统方法中有过采样方法和欠采样方法以及对两种方法的改进处理不平衡数据集,如smote>单边选择法(one-side select,oss)、带多数类权重的少数类过采样(mwm0t)等方法。但在处理不平衡数据集的过程中,欠采样可能会删去带重要信息的样本;过采样方法中在生成少数类样本时没有考虑样本分布问题,会出现样本重叠现象;在处理比较大的数据集时,由于需要计算样本的 k近邻,计算量呈指数级增长,生成少数类样本非常困难甚至不能生成。


技术实现要素:

4.本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例,在本部分以及本技术的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
5.鉴于上述和/或现有技术中所存在的问题,提出了本发明。
6.因此,本发明所要解决的技术问题是现有方法存在处理大数据时生成少数类样本非常困难甚至不能生成的问题。
7.为解决上述技术问题,本发明提供如下技术方案:一种基于生成对抗网络的不平衡数据集的预测方法,其特征在于:包括,
8.网络app端接收预测请求;
9.数据后台采集数据,形成原始业务数据集,确定所述原始业务数据集中的少数类样本s
min
和多数类样本s
maj
的数量;
10.将所述原始业务数据集中的非数值特征列进行独热编码,转变为计算机可识别的向量;
11.将处理之后的数据集进行标准化,并将标准化后数据集中的多数类样本 s
maj
和少
数类样本s
min
进行分离;
12.用条件生成对抗网络合成少数类样本a,形成平衡数据集;
13.将平衡数据集划分为训练集和测试集;
14.构建卷积神经网络,利用训练集训练卷积神经网络,得到训练好的卷积神经网络;
15.将测试集输入训练好的卷积神经网络得到预测结果。
16.作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:所述标准化为将输入数据集中的数据按比例缩放,使数据属于 [0,1]内。
[0017]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:所述形成平衡数据集包括:
[0018]
初始化生成器g和判别器d的参数;
[0019]
将所述少数类样本s
min
输入至生成器g中,生成器g利用噪声z和条件c 生成与输入的少数类样本s
min
数量相同的人工合成少数类样本a;
[0020]
依次循环更新判别器d、生成器g,直至判别概率为0.5为止,完成训练。
[0021]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:所述生成器g的损失函数为:
[0022]
g=log(1-d(g(z|c)))
[0023]
公式中g(z|c)表示生成器的输出,d(g(z|c))表示判别器d判断生成器g 生成的数据为真实数据的概率,z表示噪声。
[0024]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:所述判别器d的损失函数为:
[0025]
d=log(1-d(g(z|c))) logd(x) bce(ac(g(z|c)))
[0026]
上式中,d(x)表示判别模型的输出,即输入参数x为真实数据的概率; d(g(z|c))表示判别器d判断生成器g生成的数据为真实数据的概率, bce(ac(g(z|c)))代表辅助分类器输出的数据标签。
[0027]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:生成对抗网络的目标优化函数为:
[0028][0029]
在上述公式中,p
data
表示真实数据的分布,pz表示生成器输出合成数据的分布,c表示加入的条件限制。模型训练目的是希望生成器g的损失v(d,g) 越小越好,判别器的损失v(d,g)越大越好。
[0030]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:所述训练卷积神经网络包括,
[0031]
将卷积神经网络权值进行初始化;
[0032]
在输入层输入数据,输入数据经过第一卷积层、池化层、第二卷积层、全连接层得到输出值,计算输出值与目标值的误差值;
[0033]
当所述预测结果的误差值大于期望值时,将误差值传回进行反向传播,依次计算全连接层、第二卷积层、池化层、第一卷积层的误差,至预测误差值不大于期望值时结束训练,得到训练好的卷积神经网络。
[0034]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:
[0035]
计算卷积神经网络的输出值的表达式为:
[0036]op
=f
l
(

(f2(f1(w1x1))w2)w
l
)
[0037]
上式中,x1为网络的输入;w1表示网络第一层的权重系数矩阵;w2表示网络第二层的权重系数矩阵;w
l
表示网络第l层的权重系数矩阵;f1表示网络第一层采用的sigmoid函数,以此类推,f
l
表示网络第l层的激活函数。
[0038]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:
[0039]
反向传播计算误差的表达式为:
[0040]
δ
l
=(w
l 1
)
t
δ
l 1
×f′
(u
l
)
[0041]ul
=w
l
x
l-1
b
l
[0042]
其中,δ
l 1
項表示第l 1层的误差函数;w
l 1
表示第l 1层权重系数矩阵;δ
l
表示传播至第l层的误差函数;u
l
表示第l层的输出;b
l
表示第l层的偏置;x
l-1
表示第l层的输入。
[0043]
作为本发明所述基于生成对抗网络的不平衡数据集的预测方法的一种优选方案,其中:
[0044]
所述输入层的输入数据为4*4像素点构成的矩阵;
[0045]
第一卷积层包含10个特征图,利用3*3的窗口对输入图像进行卷积,得到每个特征图的大小为4*4;
[0046]
池化层对第一卷积层进行降采样操作,选用最大池化的方式得到10个特征图,每个特征图的大小减小到2*2;
[0047]
第二卷积层包含20个特征图,采用的卷积核大小为2*2,得到每个特征图的大小为1*1;第二卷积层得到的特征图经过全连接层,得到大小为1*2的输出结果。
[0048]
本发明的有益效果:本发明一种基于生成对抗网络的不平衡数据集的预测方法,通过将少数类样本a与进行标准化后数据集进行合并,得到平衡数据集,再采用卷积神经网络对平衡数据集进行分类预测,避免了传统方法中的欧氏距离计算或者聚类过程,能够生成少数类样本,具有预测结果稳定、预测精度高的特点。
附图说明
[0049]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
[0050]
图1为本发明提供的一种实施例所述的基于生成对抗网络的不平衡数据集的预测方法的流程图;
[0051]
图2为本发明提供的一种实施例所述的基于生成对抗网络的不平衡数据集的预测方法中基于条件生成对抗网络的数据生成模型。
具体实施方式
[0052]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明。
[0053]
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
[0054]
其次,本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
[0055]
再其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
[0056]
实施例1
[0057]
参照图1和2,本实施例提供了一种基于生成对抗网络的不平衡数据集的预测方法,包括
[0058]
(1)网络app端接收预测请求;
[0059]
(2)数据后台采集数据,形成原始业务数据集,每条数据包含特征列(年龄、收入、)和标签列(0或者1,代表最终分类的两种结果),确定所述原始业务数据集中的少数类样本s
min
和多数类样本s
maj
的数量;
[0060]
(3)将所述原始业务数据集中的非数值特征列(性别、收入区间)进行独热编码,转变为计算机可识别的向量;
[0061]
(4)将步骤3处理的数据集进行标准化并将标准化后数据集中的多数类样本s
maj
和少数类样本s
min
进行分离;
[0062]
(5)用条件生成对抗网络合成少数类样本a,形成平衡数据集;具体过程为:
[0063]
初始化生成器g和判别器d的参数;
[0064]
将步骤4中分离出的少数类样本s
min
输入至生成器g中,生成器g利用噪声z和条件c生成与输入的少数类样本数量相同的少数类样本a;
[0065]
依次循环更新判别器d、生成器g,直至判别概率为0.5为止,完成训练,则少数类样本a和步骤4进行标准化处理后的数据集构成平衡数据集。
[0066]
生成器g的损失函数为:
[0067]
g=log(l-d(g(z|c)))
[0068]
其中,g(z|c)表示生成器的输出,d(g(z|c))表示判别器d判断生成器g生成的数据为真实数据的概率,z表示噪声,c表示条件;
[0069]
判别器d的损失函数为:
[0070]
d=log(1-d(g(z|c))) logd(x) bce(ac(g(z|c)))
[0071]
上式中,d(x)表示判别模型的输出,即输入参数x为真实数据的概率;d(g(z|c))表示判别器d判断生成器g生成的数据为真实数据的概率, bce(ac(g(z|c)))代表辅助分类器输出的数据标签。
[0072]
生成对抗网络的目标优化函数为:
[0073][0074]
在上述公式中,p
data
表示真实数据的分布,pz表示生成器输出合成数据的分布,c表示加入的条件限制。模型训练目的是希望生成器g的损失v(d,g)越小越好,判别器的损失v(d,g)越大越好。
[0075]
(6)将平衡数据集划分为训练集和测试集;70%为训练集,30%为测试集。
[0076]
(7)构建卷积神经网络,用划分好的训练集训练卷积神经网络,得到训练好的卷积神经网络;卷积神经网络的结构依次为输入层、第一卷积层、池化层、第二卷积层、全连接层、输出层;输入层的输入数据为4*4像素点构成的矩阵;第一卷积层包含10个特征图,采用3*3的窗口对输入图像进行卷积,得到每个特征图的大小为4*4;池化层对第一卷积层进行降采样操作,选用最大池化的方式得到10个特征图,每个特征图的大小减小到2*2;第二卷积层包含20个特征图,采用的卷积核大小为2*2,得到每个特征图的大小为1*1;第二卷积层得到的特征图经过全连接层,得到大小为1*2的输出结果。
[0077]
(8)将测试集输入训练好的卷积神经网络得到预测结果。
[0078]
本发明的有益效果是,本发明一种基于生成对抗网络的不平衡数据集的预测方法,通过将少数类样本a与进行标准化后数据集进行合并,得到平衡数据集,再采用卷积神经网络对平生数据集进行分类预测,避免了传统方法中的欧氏距离计算或者聚类过程,能够生成少数类样本,具有预测结果稳定、预测精度高的特点。
[0079]
实施例2
[0080]
为测试本发明所提方法在处理不平衡数据集的效果,本发明以银行电话营销数据集作为不平衡数据进行测试,包括:
[0081]
采集数据,实验数据来源于uci机器学习网站,是葡萄牙一家银行从2008年5月到2010年11月的电话营销记录;本数据测试的分类目标是预测客户是否将预订定期存款;所选用数据集共45211个样本,有39922个不会预定定期存款,5289个将预定定期存款,共有16个特征:年龄(age)、工作类型(jobtype),婚姻状况(maritalstatus)、教育程度(educationlevel)、违约记录(defaultrecord)》年平均存款(averageannualdeposit)》住房贷款(housingloan)、个人贷款(personalloan)、联系人通讯类型(contactcommunicationtype)、该月最后一次联系日(last_day)、一年中最后一次联系月份(last_month)、最后一次联系持续时长(duration)、活动系列期间为此客户电话联系次数(times)、从上一次推荐营销活动最后一次联系客户之后经过的天数(pastdays)、此次营销活动之前和为此客户执行的联系次数(previoustimes)、上次营销活动的结果(outcome)、客户是否定期存款(deposit),它是一个典型的不平衡数据集;
[0082]
将数据集中的非数值特征列以及标签列(客户是否定期存款)转变为分类数值;
[0083]
将数据集进行标准化并且将数据集中的多数类样本和少数类样本进行分离,为了生成更接近真实数据的样本,需要将数据集进行标准化,将45211个样本的原始数据集中样本数为39922个少数类样本s
min
和5289个多数类样本s
maj
分离且标准化形成少数类数据集s
min_std
和多数类数据集s
maj_std

[0084]
将标准化后的少数类数据集s
min_std
输入条件生成对抗网络中生成34633个少数类样本a,条件生成对抗网络(actgan)参数为:采用小批量随机梯度下降进行训练,最小批量
为128,权重初始化使用满足均值为0,标准差为1的高斯分布随机变量,采用激活函数leakyrelu,使用adam优化器进行超参数优化,学习率为0.0002;将标准化后的原始数据集(s
min_std
和s
maj_std
)和生成的少数类样本a进行合并得到79844个样本的平衡数据集data;
[0085]
对平衡数据集data按7:3将数据集分为训练集和测试集;
[0086]
卷积神经网络的超参数:batch size=50决定了训练一次网络所提供的样本数量;learning rate=0.001控制着基于损失梯度调整神经网络权值的速度;epoch=50代表所有训练样本进行训练的次数,即1次epoch意味着所有的训练样本完成一次前向传播(forward propagation,fp)运算以及一次反向传播(backpropagation,bp)运算;
[0087]
实验结果如下:
[0088]
模型准确率召回率特异度g-mean本发明98.8499.9797.7698.86smote-cnn95.7095.3196.6996.00
[0089]
其中准确率accuracy指标表明在所有客户中,所提模型正确预测客户(定期存款或者不定期存款)的比例,该指标在平衡数据集中具有较大的参考价值,在不平衡数据集中由于每条数据表示的客户定期存款的概率是一个较小值,这个指标不能准确表示所有不平衡数据集的某些特定客户的定期存款行为特征。召回率recall的提升表明在所有要定期存款的客户中,模型能正确预测为定期存款客户所占比的提升。特异度specifity的提升表明在所有不定期存款的客户中,模型正确预测为不定期存款客户所占比的提升。g-mean是综合召回率和特异度的指标,它考虑在所有要定期存款的客户中,模型能正确预测为定期存款客户所占比,也考虑在所有不定期存款的客户中,模型正确预测为不定期存款客户所占比,因此这个指标具有更高的参考价值和实际意义。
[0090]
重要的是,应注意,在多个不同示例性实施方案中示出的本技术的构造和布置仅是例示性的。尽管在此公开内容中仅详细描述了几个实施方案,但参阅此公开内容的人员应容易理解,在实质上不偏离该申请中所描述的主题的新颖教导和优点的前提下,许多改型是可能的(例如,各种元件的尺寸、尺度、结构、形状和比例、以及参数值(例如,温度、压力等)、安装布置、材料的使用、颜色、定向的变化等)。例如,示出为整体成形的元件可以由多个部分或元件构成,元件的位置可被倒置或以其它方式改变,并且分立元件的性质或数目或位置可被更改或改变。因此,所有这样的改型旨在被包含在本发明的范围内。可以根据替代的实施方案改变或重新排序任何过程或方法步骤的次序或顺序。在权利要求中,任何“装置加功能”的条款都旨在覆盖在本文中所描述的执行所述功能的结构,且不仅是结构等同而且还是等同结构。在不背离本发明的范围的前提下,可以在示例性实施方案的设计、运行状况和布置中做出其他替换、改型、改变和省略。因此,本发明不限制于特定的实施方案,而是扩展至仍落在所附的权利要求书的范围内的多种改型。
[0091]
此外,为了提供示例性实施方案的简练描述,可以不描述实际实施方案的所有特征(即,与当前考虑的执行本发明的最佳模式不相关的那些特征,或于实现本发明不相关的那些特征)。
[0092]
应理解的是,在任何实际实施方式的开发过程中,如在任何工程或设计项目中,可做出大量的具体实施方式决定。这样的开发努力可能是复杂的且耗时的,但对于那些得益于此公开内容的普通技术人员来说,不需要过多实验,所述开发努力将是一个设计、制造和
生产的常规工作。
[0093]
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
再多了解一些

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

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

相关文献