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

面向不平衡数据的少数类样本生成方法和装置

2022-06-05 08:03:01 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,特别是涉及一种面向不平衡数据的少数类样本生成方法和装置。


背景技术:

2.随着计算机硬件和机器学习方法的不断发展,数据科学迎来了属于自己的时代,医疗、金融、交通等各个人们日常生活的重要领域,都已经离不开数据分析给行业带来的进步和给用户带来的便利。在实际生产和生活中,一定时间程度内积累的真实数据,往往因技术手段和设备的限制,存在一定的缺失或者不足,或者因为采集数据的条件限制,往往难以保存全部数据。在各种实际情况的交互作用下,真实数据的分布不平衡性是在所难免的。
3.在不平衡数据问题中,为了使不同类型的数据样本相对平衡,主要处理方法分为两个方向:下采样和上采样,传统的上采样方法包括深度学习的生成对抗网络gan系列方法,生成对抗网络是2014年提出的方法,作为深度学习方法,该方法和其后续提出的各种改进版本在图像生成领域有着深远的影响,但深度神经网络有着一个主要的问题,即该类方法需要一定的基础数据量才能够保证一定的效果,而且存在难以收敛,计算资源消耗大等一系列问题,同时由于传统机器学习算法具备不可调整性,无法随着数据的变化进一步提升精度。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种面向不平衡数据的少数类样本生成方法和装置。
5.一种面向不平衡数据的少数类样本生成方法,所述方法包括:
6.获取目标网络的原始不平衡样本集;所述原始不平衡数据集包括原始少数类样本和原始多数类样本;
7.将所述原始不平衡样本集划分为若干个初始局部样本集;所述每个初始局部样本集包括原始少数类样本和所述原始少数类样本对应的局部邻近少数类样本和局部邻近多数类样本;
8.获取原始少数类样本对应的上一次迭代得到的更新局部样本集的待更新局部分类线,根据所述原始少数类样本和所述原始少数类样本到对应的待更新局部分类线的距离,得到所述原始少数类样本当前迭代的的局部生成少数类样本;
9.根据所述原始少数类样本、所述原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当所述损失函数满足预设条件时,输出所述局部生成少数类样本;
10.将输出的局部生成少数类样本加入原始不平衡样本集构建平衡样本集。
11.在其中一个实施例中,所述方法还包括:
12.当所述局部生成少数类样本均与所述原始少数类样本位于所述待更新局部分类
线的同侧时,由所述局部生成少数类样本和初始局部样本集构成更新局部样本集;
13.根据所述更新局部样本集调整所述上一次迭代得到的待更新局部分类线,得到当前迭代的待更新局部分类线。
14.在其中一个实施例中,根据所述原始少数类样本、所述原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,包括:
15.计算所述局部生成少数类样本与对应的原始少数类样本位于所述待更新局部分类线同侧的第一概率和所述局部邻近多数类样本与所述原始少数类样本位于所述待更新局部分类线异侧的第二概率,根据所述第一概率和所述第二概率计算所述损失函数:
[0016][0017]
其中,prob
min
为第一概率,prob
maj
为第二概率,m为局部生成少数类样本的数量。
[0018]
在其中一个实施例中,根据所述原始少数类样本和所述原始少数类样本到对应的待更新局部分类线的距离,得到所述原始少数类样本当前迭代的的局部生成少数类样本,包括:
[0019]
计算所述原始少数类样本到对应的待更新局部分类线的距离,根据所述原始少数类样本和对应的距离得到噪音扰动:
[0020]
δnoise=di×
sgn(jf(x
i-label))
[0021]
其中,δnoise表示噪音扰动,xi表示原始少数类样本,di表示原始少数类样本到对应待更新局部分类线的距离,x
i-label表示xi的标签,jf表示雅可比矩阵, sgn为符号函数;
[0022]
根据所述原始少数类样本和对应的噪音扰动得到局部生成少数类样本:
[0023]
xg=xi δnoise
[0024]
其中,xg表示局部生成少数类样本。
[0025]
在其中一个实施例中,所述局部邻近多数类样本通过原始不平衡数据集中原始多数类样本与所述原始少数类样本的距离来确定,所述局部邻近少数类样本通过其他原始少数类样本与所述原始少数类样本的距离来确定;所述局部邻近少数类样本的数量不小于所述局部邻近多数类样本的数量。
[0026]
在其中一个实施例中,当所述损失函数满足预设条件时,输出所述局部生成少数类样本,包括:当所述损失函数收敛时,终止对应的原始少数类样本的迭代计算,输出对应的局部生成少数类样本。
[0027]
在其中一个实施例中,所述方法还包括:根据所述初始局部样本集得到所述原始少数类样本对应的初始局部分类线,根据所述原始少数类样本和对应的初始局部分类线得到对应的初始局部生成少数类样本;根据所述初始局部样本集和所述初始局部生成少数类样本计算得到首次迭代的待更新局部分类线。
[0028]
在其中一个实施例中,所述方法还包括:
[0029]
根据原始不平衡数据集中原始多数类样本和原始少数类样本的数量的差值得到每个原始少数类样本需要的局部生成少数类样本数量,即每个少数类样本的理论任务量:
[0030][0031]
其中,表示原始多数类样本和原始少数类样本的数量的差值,即需要生成少数类样本的理论数量,表示原始多数类样本的数量,num(s
min
)表示原始少数类样本的数量,n表示每个原始少数类样本的理论任务量。
[0032]
一种面向不平衡数据的少数类样本生成装置,所述装置包括:
[0033]
获取模块,用于获取目标网络的原始不平衡样本集;所述原始不平衡数据集包括原始少数类样本和原始多数类样本;
[0034]
划分模块,用于将所述原始不平衡样本集划分为若干个初始局部样本集;所述每个初始局部样本集包括原始少数类样本和所述原始少数类样本对应的局部邻近少数类样本和局部邻近多数类样本;
[0035]
生成模块,用于获取原始少数类样本对应的上一次迭代得到的更新局部样本集的待更新局部分类线,根据所述原始少数类样本和所述原始少数类样本到对应的待更新局部分类线的距离,得到所述原始少数类样本当前迭代的的局部生成少数类样本;
[0036]
计算模块,用于根据所述原始少数类样本、所述原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当所述损失函数满足预设条件时,输出所述局部生成少数类样本;
[0037]
构建模块,用于将输出的局部生成少数类样本加入原始不平衡样本集构建平衡样本集。
[0038]
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0039]
获取目标网络的原始不平衡样本集;所述原始不平衡数据集包括原始少数类样本和原始多数类样本;
[0040]
将所述原始不平衡样本集划分为若干个初始局部样本集;所述每个初始局部样本集包括原始少数类样本和所述原始少数类样本对应的局部邻近少数类样本和局部邻近多数类样本;
[0041]
获取原始少数类样本对应的上一次迭代得到的更新局部样本集的待更新局部分类线,根据所述原始少数类样本和所述原始少数类样本到对应的待更新局部分类线的距离,得到所述原始少数类样本当前迭代的的局部生成少数类样本;
[0042]
根据所述原始少数类样本、所述原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当所述损失函数满足预设条件时,输出所述局部生成少数类样本;
[0043]
将输出的局部生成少数类样本加入原始不平衡样本集构建平衡样本集。
[0044]
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0045]
获取目标网络的原始不平衡样本集;所述原始不平衡数据集包括原始少数类样本和原始多数类样本;
[0046]
将所述原始不平衡样本集划分为若干个初始局部样本集;所述每个初始局部样本
集包括原始少数类样本和所述原始少数类样本对应的局部邻近少数类样本和局部邻近多数类样本;
[0047]
获取原始少数类样本对应的上一次迭代得到的更新局部样本集的待更新局部分类线,根据所述原始少数类样本和所述原始少数类样本到对应的待更新局部分类线的距离,得到所述原始少数类样本当前迭代的的局部生成少数类样本;
[0048]
根据所述原始少数类样本、所述原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当所述损失函数满足预设条件时,输出所述局部生成少数类样本;
[0049]
将输出的局部生成少数类样本加入原始不平衡样本集构建平衡样本集。
[0050]
上述面向不平衡数据的少数类样本生成方法和装置,通过原始少数类样本与其对应的上一次迭代得到的待更新局部分类线得到所述原始少数类样本当前迭代的局部生成少数类样本,通过迭代调整少数类样本对应的待更新局部分类线,使得少数类样本的生成空间逐渐得到提升和突破,更容易模拟少数类样本真实分布,即通过局部分类线的调整推动局部样本集中少数类样本的生成,再根据原始少数类样本、原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当损失函数满足预设条件时,输出更新局部生成少数类样本。本方法借助生成对抗网络中生成对抗的思想,但摒弃神经网络结构,结合局部线性原则,进行局部样本的分类,优势在于对于局部少量数据(10个以内数据点)的线性判别,5次调整已足够确定分类线的精度,而神经网络类的结构,由于层数和参数数量的限制,往往需要上万次的迭代、更多的计算资源以及更多的时间消耗,由于传统机器学习算法的不可调整性,其也无法随着数据的变化进一步提升精度,而本方法能够较好地弥补二者的缺陷。
附图说明
[0051]
图1为一个实施例中面向不平衡数据的少数类样本生成方法方法的流程示意图;
[0052]
图2为一个实施例中面向不平衡数据的少数类样本生成装置的结构框图;
[0053]
图3为一个实施例中局部线性可分现象的示意图;
[0054]
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
[0055]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
[0056]
在一个实施例中,如图1所示,提供了一种面向不平衡数据的少数类样本生成方法,包括以下步骤:
[0057]
步骤102,获取目标网络的原始不平衡样本集。
[0058]
原始不平衡数据集包括原始少数类样本和原始多数类样本。
[0059]
在不平衡数据问题中,数量较多的样本被称为多数类样本,数量较少的样本被称为少数类样本,由若干多数类样本组成多数类样本集,由若干多数类样本组成少数类样本集。样本可以来自医疗、金融和交通等不同行业所采集的真实数据集,可以应用于机器学习
中的网络模型训练。以医疗领域为例,考虑获取包含一个1010名患者的4个维度的真实数据集,其中4个维度可以是年龄、作息规律、饮食习惯和健身情况,每个维度的数据组成样本的标签,多数类样本与少数类样本的比例为100:1,在此,多数类样本是指恶性患者,少数类样本是指良性患者。机器学习算法以降低总体分类误差为目标,造成分类器在多数类样本和少数类样本的分类精度有较大差异,即前者分类精度偏高,后者分类精度偏低,即使将所有样本都预测为多数类样本,其精度也能达到100/101之高,显然这并非一个很好的学习效果,因此机器学习在不平衡数据集中具有较大的局限性。也就是说,数据作为一切方法的根本,是决定所有模型和算法实际效果的最重要因素,对于现有机器学习的所有模型,训练数据不足或者数据不平衡,往往导致模型的结果有所偏颇。因此对于基本的数值类数据问题,无论后期做怎样的处理,进入如何复杂的模型,数据预处理阶段的平衡处理都是一个不可回避的问题。对原始不平衡样本集做平衡预处理后,对网络模型的训练效果会更精确,比如对某一患者群体组成的不平衡样本集进行处理后再训练的网络模型可以更加准确地预测出新输入的患者数据对应的输出病情,即更准确地判断出是良性患者还是恶性患者。
[0060]
步骤104,将原始不平衡样本集划分为若干个初始局部样本集。
[0061]
初始局部样本集是通过将由原始多数类样本和原始少数类样本构成的原始不平衡集看成n个局部子空间,即n个局部样本集,其中n为少数类样本的总数量,只要局部样本集的样本数量足够小,则存在线性可分的可能性越大,即在确定多数类样本和少数类样本的边界时,存在着局部线性可分的现象,如图2 所示。找到每个少数类样本与其周围多数类样本的局部分类线,即完成了整个数据样本模型的构建,即便数据模型尚未完全封闭,也不影响用于生成模拟少数类样本。
[0062]
每个原始少数类样本都有一个对应的初始局部样本集,每个初始局部样本集包括对应的原始少数类样本及其局部邻近多数类样本和局部邻近少数类样本,其中局部邻近少数类样本的数量不小于局部邻近多数类样本的数量,局部邻近多数类样本通过少数类样本与多数类样本集中多数类样本的距离来确定,局部邻近少数类样本通过少数类样本与其他少数类样本的距离来确定,上述距离可以是欧氏距离、曼哈顿距离等。
[0063]
步骤106,获取原始少数类样本对应的上一次迭代得到的更新局部样本集的待更新局部分类线,根据原始少数类样本和原始少数类样本到对应的待更新局部分类线的距离,得到原始少数类样本当前迭代的的局部生成少数类样本。
[0064]
计算原始少数类样本到对应的待更新局部分类线的距离,根据原始少数类样本和对应的距离得到噪音扰动,根据原始少数类样本和对应的噪音扰动得到局部生成少数类样本。几乎所有的上采样方法生成数据基本方式都是以原真实数据为依据,加入部分数据变动即噪音扰动,以此到达补充少数类样本的目的。
[0065]
在每一次新的迭代计算过程中,不考虑上一次迭代计算得到的局部生成少数类样本,即每一次迭代生成的少数类样本仅仅用来调整对应的局部分类线的精度,使得局部分类线逐渐靠近局部邻近多数类样本,直到满足输出条件,才会将此次迭代得到的局部生成少数类样本确定为对应的少数类样本生成的模拟少数类样本加入原始不平衡样本集中。
[0066]
步骤108,根据原始少数类样本、原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当损失函数满足预设条件时,输出局部生成少数类样本。
[0067]
当更新局部生成少数类样本与少数类样本均位于待更新局部分类线的同侧时,无需计算判别模型的损失函数,因为在前期的迭代计算过程中,少数类样本的生成空间理论上还相对比较富足,即少数类样本的分布范围尚有扩展余地,还无需考虑损失函数的收敛,当开始存在某些局部生成少数类样本被判别为多数类样本时,再开始计算判别器的损失函数,此处的改进也在一定程度上加快了计算速度。
[0068]
判别器的损失函数计算公式如下:
[0069][0070]
其中,prob
min
为局部生成少数类样本与原始少数类样本位于待更新局部分类线同侧的概率,prob
maj
为局部邻近多数类样本与原始少数类样本位于待更新局部分类线异侧的概率,m为局部生成少数类样本的数量。例如,在由某个原始少数类样本的局部生成少数类样本与该原始少数类样本对应的初始局部样本集构成的当前迭代的更新局部样本集中,局部生成少数类样本数量为m,其中n 个与原始少数类样本位于待更新局部分类线同侧,也就是说,其中n个局部生成少数类样本被判别为少数类样本,另外(m-n)个被判别为了多数类样本,此时
[0071]
当判别模型的损失函数收敛时,即判别模型已经无法判别少数类样本与各自对应的更新局部生成少数类样本是否位于对应的更新局部分类线同侧,此时,对应的原始少数类样本达到了自己可能的局部分布极值,于是该原始少数类样本终止迭代计算,输出对应的局部少数类样本作为模拟少数类样本加入原不平衡样本集,与此同时,原始不平衡样本集的不平衡率随之下降。某个原始少数类样本终止迭代,并不影响其他原始少数类样本继续进行迭代计算,直到所有少数类样本均终止迭代,也就得到了最终的平衡样本集,平衡样本集中少数类样本和多数类样本的数量基本在同一个数量级上,该平衡样本集包括原始少数类样本、根据原始少数类样本各自生成的模拟少数类样本以及原始多数类样本。
[0072]
步骤110,将输出的局部生成少数类样本加入原始不平衡样本集构建平衡样本集。
[0073]
上述面向不平衡数据的少数类样本生成方法,通过原始少数类样本与其对应的上一次迭代得到的待更新局部分类线得到原始少数类样本当前迭代的局部生成少数类样本,通过迭代调整少数类样本对应的待更新局部分类线,使得少数类样本的生成空间逐渐得到提升和突破,更容易模拟少数类样本真实分布,即通过局部分类线的调整推动局部样本集中少数类样本的生成,再根据原始少数类样本、原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当损失函数满足预设条件时,输出更新局部生成少数类样本。
[0074]
在生成对抗网络中,生成模型和对抗模型是两个独立的神经网络,并有着各自的损失函数,通过生成模型和对抗模型之间的博弈,最终达到一个平衡点,本方法借助了生成对抗网络中生成对抗的思想,但摒弃了神经网络结构。在本方法中,少数类样本生成过程中只是遵循一个较简单的生成函数,并且该函数的值只随着局部分类线的调整而发生改变,相比生成对抗网络中生成模型的复杂的神经网络结构,本方法将计算过程化繁为简,计算量大大降低,很大程度上节约了时间成本,同时,由于生成网络需要一定的基础数据量才能
够保证一定的效果,也就是说当不平衡率很大,原始少数类样本很少的情况下,生成网络的损失函数很难收敛,而本方法可以处理不平衡率更大的样本集,这是因为即使原始少数类样本很少,也可以得到对应的初始局部样本集,并且按照上述方法的步骤各自通过迭代计算得到局部生成少数类样本,完成自己的任务,也就是说本方法相比生成对抗网络能够适用于不平衡率更大的样本集,于局部少量数据(10个以内数据点)的线性判别,5次调整已足够确定分类线的精度,而神经网络类的结构,由于层数和参数数量的限制,往往需要上万次的迭代、更多的计算资源以及更多的时间消耗,由于传统机器学习算法的不可调整性,其也无法随着数据的变化进一步提升精度,而本方法能够较好地弥补二者的缺陷。
[0075]
在一个实施例中,面向不平衡数据的少数类样本生成方法还包括:
[0076]
当局部生成少数类样本均与原始少数类样本位于待更新局部分类线的同侧时,由局部生成少数类样本和初始局部样本集构成更新局部样本集,根据更新局部样本集调整上一次迭代得到的待更新局部分类线,得到当前迭代的待更新局部分类线。
[0077]
在一个实施例中,面向不平衡数据的少数类样本生成方法还包括:
[0078]
根据原始不平衡数据集中原始多数类样本和原始少数类样本的数量的差值得到每个原始少数类样本需要的局部生成少数类样本数量,即每个少数类样本的理论任务量:
[0079][0080]
其中,表示原始多数类样本和原始少数类样本的数量的差值,即需要生成少数类样本的理论数量,表示原始多数类样本的数量,num(s
min
)表示原始少数类样本的数量,n表示每个原始少数类样本的理论任务量。
[0081]
当n不为整数时,将n取值为与n相邻的两个整数,进行随机分配得到每个少数类样本的任务量,比如当n为10.5时,则每个少数类样本的任务量为10 或11,也就是说,有些少数类样本生成10个局部少数类样本,而有些少数类样本生成11个局部少数类样本,两种任务分配量的具体对象是随机选取的。
[0082]
在一个实施例中,面向不平衡数据的少数类样本生成方法还包括:
[0083]
根据初始局部样本集得到原始少数类样本对应的初始局部分类线,根据原始少数类样本和对应的初始局部分类线得到对应的初始局部生成少数类样本;根据初始局部样本集和初始局部生成少数类样本计算得到首次迭代的待更新局部分类线。
[0084]
在一个实施例中,面向不平衡数据的少数类样本生成方法还包括:
[0085]
通过原始不平衡数据集中的原始多数类样本与原始少数类样本的距离来确定局部邻近多数类样本,通过原始不平衡数据集中其他原始少数类样本与原始少数类样本的距离来确定局部邻近少数类样本,其中局部邻近少数类样本的数量不小于局部邻近多数类样本的数量,上述距离可以欧氏距离、曼哈顿距离等。
[0086]
在一个实施例中,根据原始少数类样本和原始少数类样本到对应的待更新局部分类线的距离,得到原始少数类样本当前迭代的的局部生成少数类样本,包括:
[0087]
计算原始少数类样本到对应的待更新局部分类线的距离,根据原始少数类样本和对应的距离得到噪音扰动,根据原始少数类样本和对应的噪音扰动得到局部生成少数类样本:
[0088]
δnoise=di×
sgn(jf(x
i-label))
[0089]
xg=xi δnoise
[0090]
其中,δnoise表示噪音扰动,xi表示原始少数类样本,di表示原始少数类样本到对应待更新局部分类线的距离,x
i-label表示xi的标签,jf表示雅可比矩阵, sgn为符号函数,xg表示局部生成少数类样本。
[0091]
在一个实施例中,根据原始少数类样本、原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,包括:
[0092]
计算局部生成少数类样本与对应的原始少数类样本位于待更新局部分类线同侧的第一概率和局部邻近多数类样本与原始少数类样本位于待更新局部分类线异侧的第二概率,根据第一概率和第二概率计算损失函数:
[0093][0094]
其中,prob
min
为第一概率,prob
maj
为第二概率,m为局部生成少数类样本的数量。
[0095]
当损失函数收敛时,终止对应的原始少数类样本的迭代计算,输出对应的局部生成少数类样本。
[0096]
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0097]
在一个实施例中,为了验证本方法的适用性,选择了来自加利福尼亚大学 (尔湾)的机器学习公开数据集,在医疗、金融和交通等不同行业的真实数据样本集进行测试。
[0098]
haberman's survival(hm)数据集包含306名肺癌患者的4个维度的数据, breast cancer wisconsin original(bcw)数据集包含699名患者10个维度的数据,去除了缺失数据剩余683条完整数据,pima indians diabetes(pid)数据集包含768 名患者9个维度的数据,german credit data(gm)数据集包含德国信用卡客户数据1000条20个维度的数据,default of credit card clients(dccc)包含了信用卡客户30000条24个维度的数据,shuttle数据集包含了航空公司58000条9 个维度的数据。本方法在少数类样本至少10个的条件下,对上述数据集训练数据的比例做出了重新调整,以便更好的对方法进行对比,共26个数据集,具体如表1所示。数据集划分方式以最大化利用少数类数据为原则,且测试集和训练集无交叉。
[0099]
为了验证本方法的稳定性,选择了决策树(dt),逻辑回归(lr),支持向量机(svm)和朴素贝叶斯(nb)四种不同原理的分类器同时对数据进行判别,比较经算法处理后的平衡数据和真实平衡数据之间的分类效果,使用f1得分,即精确率和召回率的调和平均数。进行对比,公式如下所示:
[0100]
[0101]
其中,precision表示精确率,recall表示召回率。
[0102]
因为评价方法的侧重点在于不平衡数据比对,因此对多数类和少数类数据分开统计f1得分,以获得更为精确的比较结果,每个结果为交叉验证50次的平均结果。
[0103]
为了进一步衡量结果的优劣和算法的稳定性,将比较结果转化为排名,再用每种算法在26个数据集的测试平均排名进行比较。
[0104]
表1测试数据集名称和不平衡比例
[0105][0106]
对比的基线算法包括:
[0107]
(1)原始的不平衡数据(imb-data),随机上采样算法(random-os)
[0108]
(2)smote系列算法:smote,smote-borderline1,smote-borderline2,smote-svm,adasyn
[0109]
(3)gan系列算法:gan,dcgan,cgan,wgan,sgan
[0110]
(4)本方法为局部线性生成对抗方法(llga)
[0111]
其中shuttle数据集和dccc数据集的具体结果如下表:
[0112] shuttle1shuttle2shuttle3shuttle4shuttle5shuttle6shuttle7shuttle8rank
imb-data8.58.6255.8756.57.757.3756.3755.757.083333random-os6.3755.12556.1256.755.755.6257.6255.75smote3.751.3754.12554566.1253.625smote-b175.257.1254.53.8755.755.6255.55.1875smote-b27.55.753.1254.1254.55.54.6253.8754.375svm-smote4.6255.1253.756.12532.6255.3756.1254.5adasyn7.8755.55.254.1254.6254.3756.255.254.875llga5.1253.3753336.6253.6251.53.09375gan7.12511.1259.6259.759.757.258.259.62510.0625dcgan8.625810.259.25107.757.7510.1259.375cgan7.59.259.59.259.2598.258.6259.3125wgan7.759.25108.7599.257.59.6259.25sgan811.2510.1259.7510.258.59.56.62510.34375
[0113] dccc1dccc2dccc3dccc4dccc5dccc6dccc7rankimb-data5.756.3757.566.1257.87586.604167random-os8.3758.3756.757.56.756.1257.757.75smote5.8756.556.7584.56.256.03125smote-b14.7566.254.62576.754.1255.40625smote-b28.255.3757.2565.56.54.756.71875svm-smote5.756.256.1256.6255.56.254.6256.1875adasyn8.1258.1256.756.756.6254.3755.57.4375llga4.6253.54.54.1255.8754.756.754.1875gan6.6256.756.6257.87546.6255.756.96875dcgan7.56.8757.6258.756.6257.8757.257.6875cgan7.1258.3757.56.8755.757.756.8757.46875wgan6.756.1257.255.256.8757.256.3756.34375sgan6.58.6258.8758.3755.3755.62588.09375
[0114]
其中rank由每个数据集在不同生成方法下的f1得分计算转换得到的排名值再计算其均值得到。
[0115]
将所有26个数据集的平均排名汇总后,得到全部数据集的汇总排名,如表 2所示,本方法在多个数据集,多种不同比例不平衡数据的条件下,在多个分类器的测试下,表现最为稳定。
[0116][0117]
在一个实施例中,如图3所示,提供了一种面向不平衡数据的少数类样本生成装置,包括:获取模块、划分模块、生成模块、计算模块和构建模块,其中:
[0118]
获取模块,用于获取目标网络的原始不平衡样本集;原始不平衡数据集包括原始少数类样本和原始多数类样本。
[0119]
划分模块,用于将原始不平衡样本集划分为若干个初始局部样本集;每个初始局部样本集包括原始少数类样本和原始少数类样本对应的局部邻近少数类样本和局部邻近多数类样本。
[0120]
生成模块,用于获取原始少数类样本对应的上一次迭代得到的更新局部样本集的待更新局部分类线,根据原始少数类样本和原始少数类样本到对应的待更新局部分类线的距离,得到原始少数类样本当前迭代的的局部生成少数类样本。
[0121]
计算模块,用于根据原始少数类样本、原始少数类样本对应的局部邻近多数类样本、待更新局部分类线和当前迭代的局部生成少数类样本计算判别器的损失函数,当损失函数满足预设条件时,输出局部生成少数类样本。
[0122]
构建模块,用于将输出的局部生成少数类样本加入原始不平衡样本集构建平衡样本集。
[0123]
平衡样本集用于目标网络模型的训练。
[0124]
在一个实施例中,生成模块还用于计算原始少数类样本到对应的待更新局部分类线的距离,根据原始少数类样本和对应的距离得到噪音扰动,根据原始少数类样本和对应的噪音扰动得到局部生成少数类样本:
[0125]
δnoise=di×
sgn(jf(x
i-label))
[0126]
xg=xi δnoise
[0127]
其中,δnoise表示噪音扰动,xi表示原始少数类样本,di表示原始少数类样本到对应待更新局部分类线的距离,x
i-label表示xi的标签,jf表示雅可比矩阵, sgn为符号函数,xg表示局部生成少数类样本。
[0128]
在一个实施例中,计算模块还用于计算局部生成少数类样本与对应的原始少数类样本位于待更新局部分类线同侧的第一概率和局部邻近多数类样本与原始少数类样本位于待更新局部分类线异侧的第二概率,根据第一概率和第二概率计算损失函数:
[0129][0130]
其中,prob
min
为第一概率,prob
maj
为第二概率,m为局部生成少数类样本的数量。
[0131]
在一个实施例中,计算模块还用于当损失函数收敛时,终止对应的原始少数类样本的迭代计算,输出对应的局部生成少数类样本。
[0132]
关于面向不平衡数据的少数类样本生成装置的具体限定可以参见上文中对于面向不平衡数据的少数类样本生成方法的限定,在此不再赘述。上述面向不平衡数据的少数类样本生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0133]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种面向不平衡数据的少数类样本生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0134]
本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0135]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述实施例中方法的步骤。
[0136]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中方法的步骤。
[0137]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程 rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限, ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步 dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram (esdram)、同步链路(synch link)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0138]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例
中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0139]
以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

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

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

相关文献