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

一种基于WGAN训练收敛的不平衡数据集分析方法与流程

2021-10-24 08:29:00 来源:中国专利 TAG:分析 数据 不平衡 收敛 训练

一种基于wgan训练收敛的不平衡数据集分析方法
技术领域
1.本发明属于数据分析处理领域,涉及网络安全大数据分析和建模,具体涉及一种基于wgan训练收敛的不平衡数据集分析方法。


背景技术:

2.在网络空间中,通过多种途径获取的数据集通常是不平衡的,即数据集中包含的各个类别的样本数目不同,如网络入侵检测中,大部分情况下都是正常访问流量,异常流量出现的情况较少;应用软件中,良性应用的数目要远远多于恶意应用的数目,而恶意应用一旦因为应用不当而广泛传播,将会给用户带来无法估计的损失。不平衡的数据集很常见,在使用数据挖掘算法和机器学习算法进行分析时,通常会产生很多问题,如少类样本数量较少,不利于分类器的学习和训练,以至于对训练集中的少类样本分类精度较差;在分类边界上分布较少的少类样本,造成分类面向少类样本偏离,使得少类样本的误分概率较大;当少类样本数量极少,又被分类器划分到更多子空间时,容易被当作噪声数据抛弃,进而形成数据碎片。随着深度学习、人工智能计算的不断发展,以及深度学习技术在计算机视觉、自然语言处理等方面的成功应用,我们将深度学习技术应用于处理网络安全不平衡数据集,实现网络安全数据分类,提高网络数据中占少类的威胁检测。
3.对抗生成网络gan是一个典型的深度生成式模型,其设计灵感来自于博弈论,一般由生成器和判别器两个神经网络构成,生成器用于尽量生成与真实数据相近的新数据去欺骗判别器,判别器的目标是尽量辨别出生成器生成的假数据和真实数据。通过对抗方式进行多次训练,最后得到一个性能优异的生成器。但是,gan存在训练不稳定、梯度消失、模式崩溃的问题,为了解决这些问题,wgan被提了出来,成功地对gan进行了改进,表现为四点:(1)判别器的最后一层网络模型去掉sigmoid;(2)生成器和判别器的损失函数不取对数;(3)判别器参数更新的过程中对损失函数值做截断;(4)不使用基于动量的优化算法。但是,不管是gan,还是wgan都没有考虑的一点是在训练过程中,对抗式生成网络存在训练不平衡的问题,如果判别器训练得太好,生成器就无法得到足够的梯度继续优化,而如果判别器训练得太弱,指示作用不显著,同样不能让生成器进行有效的学习。这样一来,判别器的训练次数就非常难把控。


技术实现要素:

4.针对现有技术的不足,本发明提出了一种基于wgan训练收敛的不平衡数据集分析方法,使用wgan模型,利用生成器生成与原始的少类样本相似的新样本后,与原样本进行融合形成新的数据集,再输入浅层机器学习算法中进行分类,改善因样本不平衡导致的分类错误。在wgan模型的训练过程中对生成器与判别器进行交替迭代训练,平衡判别器的指示作用与生成器的有效学习。
5.一种基于wgan训练收敛的不平衡数据集分析方法,具体包括以下步骤:
6.步骤一、数据采集与预处理
7.采集网络安全数据,按照类别标签将网络安全数据分割成多类数据子集和少类数据子集,并计算两个子集间的不平衡度与过采样率,根据过采样率确定生成少类数据的数量。
8.步骤二、构建wgan模型
9.构建包含生成器和判别器的wgan模型,将噪声数据以及步骤一中的少类数据子集输入到wgan模型中,生成符合要求数量的新的少类数据。
10.步骤三、训练wgan模型
11.对wgan模型中的生成器与判别器进行多次交叉迭代训练,在一次迭代中首先固定判别器,训练生成器,然后再固定生成器,训练判别器。每一轮迭代训练时,生成器的训练次数是固定的,判别器的训练次数根据代价函数的收敛情况动态变化。判别器训练次数为前两轮迭代中判别器收敛时的最小代价的比值向下取整。
12.步骤四、数据融合
13.使用步骤三训练后的wgan模型,输出符合要求数量的新的少类数据,将其与步骤一中的少类数据子集融合后再与多类数据子集融合,形成新的网络安全数据集。
14.步骤五、数据分类
15.将步骤四得到的新的网络安全数据集输入浅层机器学习模型中,对浅层机器学习模型模型进行训练。然后再将无标签的网络安全数据输入训练后的浅层机器学习模型,输出对应的预测标签,完成网络安全数据的分类。
16.作为优选,所述浅层机器学习模型为支持向量机、决策树或朴素贝叶斯模型。
17.本发明具有以下有益效果:
18.1、在wgan模型的训练过程中对生成器与判别器进行交替迭代训练,并且在每一轮的训练过程中以前两轮判别器的代价函数收敛变化情况,确定判别器的训练次数,避免因判别器过优导致的生成器梯度优化不足,或判别器的指示作用不显著导致的生成器无法进行有效的学习。
19.2、使用训练后的wgan模型生成更多的少类数据后与原数据集融合,平衡数据集中不同的样本数量,再对浅层机器学习模型进行训练,有效降低由于数据不平衡带来的分类误差。
附图说明
20.图1为一种基于wgan训练平衡的不平衡数据集分析方法。
具体实施方式
21.以下结合附图对本发明作进一步的解释说明;
22.如图1所示,一种基于wgan训练收敛的不平衡数据集分析方法,具体包括以下步骤:
23.步骤一、数据采集与预处理
24.对原始的网络安全数据进行one

hot编码,构建尺寸为n*d的网络安全数据集x,按照类别标签将网络安全数据分割成多类数据子集和少类数据子集,其中多类数据x
d
的数量
为n

,少类数据x
s
的数量为n

,定义不同类别数据间的不平衡度ir和过采样率r分别为:
[0025][0026][0027]
其中,表示对数据向下取整。
[0028]
为了实现不同类别的样本达到数目上的平衡,需要合成(ir

1)倍的新的少类数据。
[0029]
步骤二、构建wgan模型
[0030]
构建包含生成器g和判别器d的wgan模型,生成器g和判别器d的网络结构由全连接层构成。将噪声数据x
nosie
以及步骤一中的少类数据子集x
s
输入到wgan模型中,使用生成器g新的少类数据集x
f
,大小为r*n


[0031]
步骤三、训练wgan模型
[0032]
对wgan模型中的生成器与判别器进行多次交叉迭代训练,训练过程即为减小生成器loss和判别器loss的过程。本实施例选择wasserstein距离作为wgan模型的损失函数:
[0033][0034]
其中,p
d
是判别器数据,p
g
是生成器数据,w(p
d
,p
g
)是p
d
和p
g
组成的所有可能联合分布的集合。对于联合分布γ来说,数据子集x
s
和数据集x
f
符合分布(x
s
,x
f
)~γ,||x
s

x
f
||表示样本之间的距离,在联合分布下样本距离的期望值为取下界定义为wasserstein距离。
[0035]
为求解公式(3),引入k

lipschitz限制条件:
[0036]
|f
w
(x
s
)

f
w
(x
f
)|≤k*|x
s

x
f
|
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0037]
其中,f
w
(
·
)表示神经网络模型函数,k为lipschitz常数。
[0038]
求解公式(4)的近似解:
[0039][0040]
lipschitz常数k将梯度的值放大k倍,但不影响梯度的方向。公式(5)可以表示成一个含参数w、最后一层不是非线性激活层的判别器网络。公式(5)表示对所有满足1

lipschitz限制的函数f
w
(
·
)取上界,即lipschitz限制规定了一个连续函数的最大局部变动幅度。在限制w不超过某个范围的条件下,wasserstein距离转化为
[0041][0042]
在训练过程中,如果生成器要近似地最小化wasserstein距离,可以最小化考虑到的第一项与生成器无关,因此可以将拆分为和分别表示判别器loss和生成器loss。
[0043][0044][0045]
公式(7)与公式(6)互反,可以指示训练进程,其数值越小,表示真实分布与生成分布的wasserstein距离越小,gan训练得越好。
[0046]
在一次迭代中首先固定判别器,训练生成器,然后再固定生成器,训练判别器。每一轮迭代训练时,判别器的训练次数是不固定的,根据代价函数的收敛情况动态变化。假设生成数据的分布和真实数据的分布近似,在一轮训练迭代中,判别器的识别能力不断增强,最终会收敛,并能够正确将生成数据和真实数据分类。在判别器收敛时,比较上一轮和本轮收敛代价的变化倍数,确定下一轮迭代的次数,用变化倍数作为平衡前后两轮收敛的指标。
[0047]
(1)代价函数的收敛性证明
[0048]
假设wgan模型训练s轮,每一轮,生成器训练1次,判别器训练t次。在第s轮的第t
s
次,如果判别器的代价函数是凸的,并且是k

lipschitzness的,则迭代方式为其中,x∈[x
f
,x
s
],为步长,s=0,1,

s,t
s
=0,1,

t
s
。假设x*为代价函数的最优解,在第t
s
轮迭代时取得最优解为x*,为的最优值,也表示成k为lipschitzness常数,取值为1,则
[0049][0050]
第一个不等式满足了函数的凸性,第二个不等式基于lipschitzness连续条件,对上式做累加,得到
[0051][0052]
同时乘以k2,得到
[0053][0054]
根据右边有界,得到
[0055][0056]
最后,在条件下,
[0057][0058]
在本发明中,数据是高维数据,我们用wasserstein距离衡量生成数据和真实数据之间的距离,令w
k
表示第k轮判别器训练收敛时生成数据和真实数据之间的wasserstein距离,上式转换为:
[0059][0060]
(2)判别器训练次数计算
[0061]
在满足公式(9)、(12)、(14)的条件下,判别器在第s

1轮训练收敛时的最小代价是在第s轮训练收敛时的最小代价是则s 1轮判别器训练次数为
[0062][0063]
其中,表示对数据向下取整。
[0064]
即每一轮判别器训练次数取决于前两轮判别器训练收敛时的最小代价的比值向下取整,如果比值向下取整为0,则判别器训练次数为1。
[0065]
步骤四、数据融合
[0066]
使用步骤三训练后的wgan模型,输出符合要求数量的新的少类数据集x
f
,将其与步骤一中的少类数据子集融合后得到新的少类数据子集x
f
x
s
,再与多类数据子集融合x
d
,形成新的网络安全数据集x
f
x
s
x
d

[0067]
步骤五、数据分类
[0068]
将步骤四得到的新的网络安全数据集x
f
x
s
x
d
输入支持向量机模型中进行训练。然后再将无标签的网络安全数据输入训练后的支持向量机模型中,输出对应的预测标签,完成网络安全数据的分类。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜