基于知识增强生成对抗网络的网络流量生成方法及装置转让专利

申请号 : CN202110697665.2

文献号 : CN113726545B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李勇惠铄迪金德鹏

申请人 : 清华大学

摘要 :

本发明提供一种基于知识增强生成对抗网络的网络流量生成方法及装置,该方法包括:根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备的知识图谱嵌入向量;将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,其为包括设备类型、流量序列长度属性的网络流量;其中,生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和生成网络数据进行对抗训练后得到。该方法需要数据量较少,能够对设备类型进行可靠区分,网络数据的真实性高。通过较少的数据,得到可靠的大规模物联网流量。

权利要求 :

1.一种基于知识增强生成对抗网络的网络流量生成方法,其特征在于,包括:根据设备及相关的用户、平台、位置和环境各属性,确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;

将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据;所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;

其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到;

所述根据设备及相关的用户、平台、位置和环境各属性,确定知识图谱,包括:将设备标识作为头实体,将包括用户、平台、位置和环境作为尾实体,构建知识图谱;

所述将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,包括:将知识图谱嵌入向量和随机噪声作为设备类型生成器的输入,输出生成的设备类型;

将知识图谱嵌入向量,生成的设备类型和随机噪声作为网络流量序列长度生成器的输入,输出生成的网络流量序列长度;

将知识图谱嵌入向量,生成的设备类型和生成的网络流量序列长度,输入采用循环神经网络和自注意力机制相结合的网络流量序列生成器,输出生成网络数据。

2.根据权利要求1所述的基于知识增强生成对抗网络的网络流量生成方法,其特征在于,所述将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络之前,还包括:根据样本知识图谱嵌入向量,输入构建的生成对抗网络模型的生成器网络,得到样本生成网络数据;

根据样本生成网络数据,和样本的真实网络数据的各属性进行判别,以对所述构建的生成对抗网络模型进行训练,得到所述训练完成的生成对抗网络模型;

其中,所述各属性包括,网络流量序列中各元素的到达时间间隔、数据包个数、数据包平均包长以及网络流量的序列长度。

3.根据权利要求2所述的基于知识增强生成对抗网络的网络流量生成方法,其特征在于,所述对所述构建的生成对抗网络模型进行训练,包括:通过多层感知机作为判别器,判别器以真实数据和生成的数据作为输入,输出判别结果;

根据所述判别结果和预设的损失函数,对所述构建的生成对抗网络模型进行训练。

4.根据权利要求3所述的基于知识增强生成对抗网络的网络流量生成方法,其特征在于,所述根据所述判别结果和预设的损失函数,对所述构建的生成对抗网络模型进行训练,包括:采用添加梯度惩罚的Wasserstein距离作为损失函数,对所述构建的生成对抗网络模型进行训练。

5.根据权利要求4所述的基于知识增强生成对抗网络的网络流量生成方法,其特征在于,所述损失函数包括:其中,D(O)和 分别表示真实数据和生成数据的判别结果, 和 分别表示真实数据和生成数据的分布,表示真实‑生成样本对之间的均匀采样, 和 分别表示样本的判别结果和分布,λ为常数。

6.一种基于知识增强生成对抗网络的网络流量生成装置,其特征在于,包括:向量表达模块,用于根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;

流量生成模块,用于将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;

其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到;

所述根据设备及相关的用户、平台、位置和环境各属性,确定知识图谱,包括:将设备标识作为头实体,将包括用户、平台、位置和环境作为尾实体,构建知识图谱;

所述将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,包括:将知识图谱嵌入向量和随机噪声作为设备类型生成器的输入,输出生成的设备类型;

将知识图谱嵌入向量,生成的设备类型和随机噪声作为网络流量序列长度生成器的输入,输出生成的网络流量序列长度;

将知识图谱嵌入向量,生成的设备类型和生成的网络流量序列长度,输入采用循环神经网络和自注意力机制相结合的网络流量序列生成器,输出生成网络数据。

7.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述基于知识增强生成对抗网络的网络流量生成方法的步骤。

8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述基于知识增强生成对抗网络的网络流量生成方法的步骤。

说明书 :

基于知识增强生成对抗网络的网络流量生成方法及装置

技术领域

[0001] 本发明涉及互联网技术领域,尤其涉及一种基于知识增强生成对抗网络的网络流量生成方法及装置。

背景技术

[0002] 网络流量生成(Network Traffic Generation)是指对某一个互联网中存在的实体,生成其在指定时间片段内的流量数据序列,典型的应用场景是在网络硬件承压能力测试时,通过生成指定数量、类别的实体在指定时段内的流量,并在待测试平台中传输,根据传输的准确性和时效来判断网络硬件是否能够满足设定的要求。而在现有的实际生产应用下,大量网络流量数据的生成主要设计三种方法:1)根据预设参数的网络流量分布模型生成,例如泊松分布;2)根据给定的网络流量特点生成,例如数据包大小、到达时间间隔等;3)根据给定的互联网协议生产,如TCP。这些方法能偶生成大量的网络流量,但真实性、准确性无法得到保证。
[0003] 物联网网络流量生成是指生成物联网设备的网络流量。物联网是一种计算设备、机械、数字机器相互关系的系统,具备通用唯一识别码,并具有通过网络传输数据的能力,无需人与人、或是人与设备的交互。物联网相关的功能主要通过物联网设备实现,例如智慧医疗设备、智能家居设备等。物联网设备通常通过网络连接到云平台,接受指令并行使功能,其网络流量受到物联网用户、服务商、使用环境等等多方因素的影响。
[0004] 当前使用机器学习方法进行网络流量生成任务时,主要将其视作时间序列生成问题的子问题进行分析,生成一段时间内的网络流量特征序列。常用的传统方法主要包括生成对抗网络模型(Generative Adversarial Network model,简称GAN模型)等。其中,原始的生成对抗网络模型在面对复杂多变的时序序列时难以保证生成样本的多样性和真实性。物联网网络流量受多种环境、人为因素影响,时序上复杂多变,分布非常不均衡,而现有的物联网网络流量生成工作主要针对单一场景下的少量设备,实用性不足。因此,如何生成大量真实可靠的物联网设备网络流量成为了亟待解决的技术问题。

发明内容

[0005] 针对现有技术存在的问题,本发明提供一种基于知识增强生成对抗网络的网络流量生成方法及装置。
[0006] 本发明提供一种基于知识增强生成对抗网络的网络流量生成方法,包括:根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到。
[0007] 根据本发明一个实施例的基于知识增强生成对抗网络的网络流量生成方法,所述将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络之前,还包括:根据样本知识图谱嵌入向量,输入构建的生成对抗网络模型的生成器网络,得到样本生成网络数据;根据样本生成网络数据,和样本的真实网络数据的各属性进行判别,以对所述构建的生成对抗网络模型进行训练,得到所述训练完成的生成对抗网络模型;其中,所述各属性包括,网络流量序列中各元素的到达时间间隔、数据包个数、数据包平均包长以及网络流量的序列长度。
[0008] 根据本发明一个实施例的基于知识增强生成对抗网络的网络流量生成方法,所述基于设备及相关的用户、平台、位置和环境各属性确定知识图谱,包括:将设备标识作为头实体,将包括用户、平台、位置和环境作为尾实体,构建知识图谱。
[0009] 根据本发明一个实施例的基于知识增强生成对抗网络的网络流量生成方法,所述将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,包括:将知识图谱嵌入向量和随机噪声作为设备类型生成器的输入,输出生成的设备类型;将知识图谱嵌入向量,生成的设备类型和随机噪声作为网络流量序列长度生成器的输入,输出生成的网络流量序列长度;将知识图谱嵌入向量,生成的设备类型和生成的网络流量序列长度,输入采用循环神经网络和自注意力机制相结合的网络流量序列生成器,输出生成网络数据。
[0010] 根据本发明一个实施例的基于知识增强生成对抗网络的网络流量生成方法,所述对所述构建的生成对抗网络模型进行训练,包括:通过多层感知机作为判别器,判别器以真实数据和生成的数据作为输入,输出判别结果;根据所述判别结果和预设的损失函数,对所述构建的生成对抗网络模型进行训练。
[0011] 根据本发明一个实施例的基于知识增强生成对抗网络的网络流量生成方法,所述根据所述判别结果和预设的损失函数,对所述构建的生成对抗网络模型进行训练,包括:采用添加梯度惩罚的 Wasserstein距离作为损失函数,对所述构建的生成对抗网络模型进行训练。
[0012] 根据本发明一个实施例的基于知识增强生成对抗网络的网络流量生成方法,所述损失函数包括:
[0013]
[0014] 其中,D(O)和 分别表示真实数据和生成数据的判别结果, 和 分别表示真实数据和生成数据的分布, 表示真实‑生成样本对之间的均匀采样, 和 分别表示样本的判别结果和分布。
[0015] 本发明还提供一种基于知识增强生成对抗网络的网络流量生成装置,包括:向量表达模块,用于根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;流量生成模块,用于将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到。
[0016] 本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于知识增强生成对抗网络的网络流量生成方法的步骤。
[0017] 本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于知识增强生成对抗网络的网络流量生成方法的步骤。
[0018] 本发明提供的基于知识增强生成对抗网络的网络流量生成方法及装置,只需对设备属性进行知识图谱的表达,需要数据量较少,而通过设备属性生成的嵌入向量,使设备相关的背景信息关联到网络流量中,并且对设备类型进行可靠区分,增强生成网络数据的真实性。最后,再通过生成对抗网络进行学习,从而通过较少的数据,得到可靠的大规模物联网流量。

附图说明

[0019] 为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0020] 图1是本发明提供的基于知识增强生成对抗网络的网络流量生成方法的流程示意图;
[0021] 图2是本发明提供的物联网设备的网络流量生成方法的流程示意图;
[0022] 图3是本发明提供的物联网设备网络流量序列数据示意图;
[0023] 图4是本发明提供的物联网知识图谱示意图;
[0024] 图5是本发明提供的物联网设备网络流量生成模型示意图;
[0025] 图6是本发明提供的基于知识增强生成对抗网络的网络流量生成装置的结构示意图;
[0026] 图7是本发明提供的电子设备的结构示意图。

具体实施方式

[0027] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0028] 现有的相关工作存在以下几点局限:(1)仅考虑了网络流量信息,未能关注产生网络流量的设备相关的背景信息;(2)仅能生成网络流量序列,无法生成物联网设备的类别等相关属性;(3)生成模型难以挖掘实际使用中复杂多变的物联网流量时序特征,生成的流量不够真实、可靠。
[0029] 下面结合图1‑图7描述本发明的基于知识增强生成对抗网络的网络流量生成方法及装置。图1是本发明提供的基于知识增强生成对抗网络的网络流量生成方法的流程示意图,如图1所示,本发明提供基于知识增强生成对抗网络的网络流量生成方法,包括:
[0030] 101、根据物联网设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个物联网设备对应的知识图谱嵌入向量。
[0031] 以物联网为例,可结合图2参照,首先基于设备属性和网络流量,可以提取物联网相关的知识,并利用设备和平台、用户之间的通信关系形成知识图谱。利用知识图谱嵌入模型,如TransE,可以得到物联网设备所对应的知识图谱嵌入向量。
[0032] 102、将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量。
[0033] 其中,生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到。
[0034] 在网络训练过程中,先构建生成对抗网络,构建生成器分别生成物联网设备的设备类型、流量序列长度、具体的网络流量,再利用判别器判别真实数据和生成的数据,对抗训练生成器和判别器,逐步得到可靠的生成对抗网络模型。
[0035] 将101的知识图谱嵌入向量输入得到的生成对抗网络模型,生成对应的物联网流量。
[0036] 本发明的基于知识增强生成对抗网络的网络流量生成方法,只需对设备属性进行知识图谱的表达,需要数据量较少,而通过设备属性生成的嵌入向量,使设备相关的背景信息关联到网络流量中,并且对设备类型进行可靠区分,增强生成网络数据的真实性。最后,再通过生成对抗网络进行学习,从而通过较少的数据,得到可靠的大规模物联网流量。
[0037] 在一个实施例中,所述将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络之前,还包括:根据样本知识图谱嵌入向量,输入构建的生成对抗网络模型的生成器网络,得到样本生成网络数据;根据样本生成网络数据,和样本的真实网络数据的各属性进行判别,以对所述构建的生成对抗网络模型进行训练,得到所述训练完成的生成对抗网络模型;其中,所述各属性包括,网络流量序列中各元素的到达时间间隔、数据包个数、数据包平均包长以及网络流量的序列长度。
[0038] 生成物联网设备网络流量的问题可以表示为如下形式:给定真实的物联网设备网络流量数据集 其中Oi代表数据集中的第 i个物联网设备的数据。对于每个物联网设备,Oi=(Ci,Ti),其中Ci表示物联网设备的设备类别,Ti表示网络流量序列。如图3所示,本发明中 其中 表示第i个物联网设备在序列中第j个元素的到达时间间隔, 表示第i个物联网设备在序列中第j个元素的数据包个数, 表示第i个物联网设备在序列中第j个元素的数据包平均包长,Mi表示第i个物联网设备的网络流量序列Ti的长度。那么给定真实的物联网流量数据集S,本发明学习生成器G,生成可靠的数据集[0039] 生成对抗网络是一种基于对抗学习的生成模型,典型情况下分为生成器G和判别器D两部分,两者进行交替训练。训练过程中,生成器G负责生成与真实数据相似的仿真数据,而判别器D负责分辨真实样本和仿真样本,从而形成如下竞争:
[0040]
[0041] 其中,θ和φ分别是生成器G和判别器D的参数,x是相关样本,pd代表真实数据的概率分布,Gθ代表生成器生成的数据的概率分布。
[0042] 本发明中,通过网络流量序列中各元素的到达时间间隔、数据包个数、数据包平均包长以及网络流量的序列长度,对网络流量序列进行精准的刻画,从而提高生成对抗网络模型输出数据的准确性。
[0043] 在一个实施例中,所述基于设备及相关的用户、平台、位置和环境各属性确定知识图谱,包括:将设备标识作为头实体,将包括用户、平台、位置和环境作为尾实体,构建知识图谱。
[0044] 物联网设备的背景信息同时包括语义知识和网络结构。首先,根据全球移动通信系统联盟(Global System for Mobile Communications Alliance,简称GSMA)的设备类型数据集,生产厂商、供应商和用户的描述可以提取到物联网设备的硬件型号等背景知识;接下来,根据物联网流量中所包含的可读内容,可以提取出相关的用户、平台、位置、环境等知识;最后,根据物联网流量中包含的源、目的IP可以获取物联网设备、用户、平台之间的通信关系。
[0045] 本发明中,将物联网设备作为头实体,将用户、平台、位置、环境等信息作为尾实体,则可以得到如图4所示的物联网知识图谱,三元组表示示例如下:
[0046] ·,
[0047] ·,
[0048] ·.
[0049] 利用知识图谱嵌入模型TransE,可以得到第i个物联网设备di所对应的知识图谱嵌入向量Ki。
[0050] 在一个实施例中,所述将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,包括:将知识图谱嵌入向量和随机噪声作为设备类型生成器的输入,输出生成的设备类型;将知识图谱嵌入向量,生成的设备类型和随机噪声作为网络流量序列长度生成器的输入,输出生成的网络流量序列长度;将知识图谱嵌入向量,生成的设备类型和生成的网络流量序列长度,输入采用循环神经网络和自注意力机制相结合的网络流量序列生成器,输出生成网络数据。
[0051] 如图5所示,物联网网络流量生成器分为三个子生成器:设备类型生成器,序列长度生成器,网络流量生成器。通过条件机制把知识图谱嵌入向量Ki引入每个子生成器中,同时子生成器所生成的内容也根据不同的条件机制被引入其它子生成器内。
[0052] 条件机制的具体情况如下所示:
[0053]
[0054] 首先,采用多层感知机(multilayer perceptrons,简称MLP)作为设备类型生成器设备类型生成器 包括多层网络结构单元,并以sigmoid函数作为激活函数。每个网络结构单元由一个线性层、一个批归一化层、一个非线性层(ReLU)组成。设备类型生成器以知识图谱嵌入向量K和随机噪声N作为输入,并输出生成的设备类型
[0055] 接下来,采用和设备类型生成器类似的多层感知机模型作为网络流量序列长度生成器 同时,sigmoid函数输出数值在(0,1)区间内,生成器 根据需要生成的最大序列长度对激活函数的输出进行缩放。网络流量序列长度生成器 以知识图谱嵌入向量K,生成的设备类型 和随机噪声N作为输入,并输出生成的网络流量序列长度
[0056] 最后,采用时间序列网络,如长短时记忆网络(Long Short Term Memory,简称LSTM)和自注意力机制(Self‑attention)相结合设计 ‑生成器 长短时记忆网络是循环神经网络模型(Recurrent Neural Network model,简称RNN模型)的一种,常用于处理时间序列中的较长时间片段内时序特征,该模型在每一步的循环中输出固定长度的样本。自注意力机制则通过将向量投影到key,query,value三个不同的维度表示并发掘向量内部的相关性。
[0057] 在本发明中,以知识图谱嵌入向量K,生成的设备类型 和随机噪声N作为每一步的输入,同时生成长度为B的物联网网络流量序列所对应的向量 此处k=1,2,…,Q,是所需的总步数,通过网络流量序列长度生成器输出的序列长度决定。接下来,第k步产生的 被继续输入到自注意力层中,并输出长度为B的物联网网络流量序列具体过程如下所示:
[0058]
[0059]
[0060] 在Q步之后,生成器将生成的所有样本 恢复成生成的物联网网络流量序列 最后,由三个子生成器可以逐步输出生成的数据集
[0061] 在一个实施例中,所述对所述构建的生成对抗网络模型进行训练,包括:通过多层感知机作为判别器,判别器以真实数据和生成的数据作为输入,输出判别结果;根据所述判别结果和预设的损失函数,对所述构建的生成对抗网络模型进行训练。
[0062] 系统采用多层感知机(MLP)作为判别器Dφ,包括多层网络结构单元,并以线性层作为激活函数。每个网络结构单元由一个线性层、一个层归一化层、一个非线性层(ReLU)组成。判别器以真实数据和生成的数据作为输入,并以0和1的形式输出判别结果。如下所示:
[0063]
[0064] 在一个实施例中,所述根据所述判别结果和预设的损失函数,对所述构建的生成对抗网络模型进行训练,包括:采用添加梯度惩罚的 Wasserstein距离作为损失函数,对所述构建的生成对抗网络模型进行训练。
[0065] 本发明采用添加梯度惩罚的Wasserstein距离作为损失函数,作为可选实施例,如下所示:
[0066]
[0067] 其中,D(O)和 分别表示真实数据和生成数据的判别结果, 和 分别表示真实数据和生成数据的分布,表示真实‑生成样本对之间的均匀采样, 和 分别表示这些样本的判别结果和分布,λ为常数,可取值为10,||表示范数, 表示对应的梯度。
[0068] 训练时,生成器通过使损失函数最小化来生成尽可能接近真实的样本,判别器通过使损失函数最大化来尽可能地判别样本的真实性。
[0069] 下面结合上述各实施例进行举例说明如下:
[0070] 使用者想利用10,187个移动物联网设备在3天内的网络流量生成仿真数据集,真实数据集中的设备分为10种不同的类型,根据网络流量可以得到针对每个设备到达时间间隔、数据包个数、数据包平均包长的特征序列。
[0071] 同时,根据设备描述信息和网络流量内容,可以抽取得到知识图谱,其中包含10,187个设备作为头实体,涉及20种关系。对该知识图谱使用TransE模型,获取每个设备(头实体)的知识图谱嵌入向量。
[0072] 接下来开始训练模型,选取M=64作为每批用于训练的设备样本数目。在每一次迭代中,先训练并更新判别器N=5次,再更新生成器一次。在训练判别器时,首先随机选取M个设备作为真实样本,再使用这M个设备的知识图谱嵌入向量和随机生成的(0,1)区间内噪声通过生成器生成M个仿真样本,随后将仿真样本和真实样本同时输入判别器,根据判别器的判别结果计算损失函数,并利用自适应矩估计(adaptive moment estimation,简称Adam)优化器最大化损失函数,更新判别器参数。训练判别器N次后,随机选取M个设备的知识图谱嵌入向量和随机生成的(0,1)区间内噪声通过生成器生成 M个仿真样本,利用已更新参数的判别器对这些仿真样本进行判别,根据判别结果计算损失函数,再利用自适应矩估计优化器最小化损失函数,更新生成器参数。在约300次迭代后,模型达到收敛阈值,训练完成。
[0073] 最后,设定需要生成的样本数目Q,从真实设备的知识图谱嵌入向量集合中随机采样Q次,得到Q个知识图谱嵌入向量,和随机生成的(0,1)区间内噪声向量同时输入生成器,得到Q个仿真样本。
[0074] 下面对本发明提供的基于知识增强生成对抗网络的网络流量生成装置进行描述,下文描述的基于知识增强生成对抗网络的网络流量生成装置与上文描述的基于知识增强生成对抗网络的网络流量生成方法可相互对应参照。
[0075] 图6是本发明提供的基于知识增强生成对抗网络的网络流量生成装置的结构示意图,如图6所示,该基于知识增强生成对抗网络的网络流量生成装置包括:向量表达模块601和流量生成模块602。其中,向量表达模块601用于根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;流量生成模块602用于将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到。
[0076] 本发明实施例提供的装置实施例是为了实现上述各方法实施例的,具体流程和详细内容请参照上述方法实施例,此处不再赘述。
[0077] 本发明实施例提供的基于知识增强生成对抗网络的网络流量生成装置,只需对设备属性进行知识图谱的表达,需要数据量较少,而通过设备属性生成的嵌入向量,使设备相关的背景信息关联到网络流量中,并且对设备类型进行可靠区分,增强生成网络数据的真实性。最后,再通过生成对抗网络进行学习,从而通过较少的数据,得到可靠的大规模物联网流量。
[0078] 图7是本发明提供的电子设备的结构示意图,如图7所示,该电子设备可以包括:处理器(processor)701、通信接口(Communications Interface)702、存储器(memory)703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信。处理器701可以调用存储器703中的逻辑指令,以执行基于知识增强生成对抗网络的网络流量生成方法,该方法包括:根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到。
[0079] 此外,上述的存储器703中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0080] 另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的基于知识增强生成对抗网络的网络流量生成方法,该方法包括:根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到。
[0081] 又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于知识增强生成对抗网络的网络流量生成方法,该方法包括:根据设备及相关的用户、平台、位置和环境各属性确定知识图谱,基于知识图谱嵌入模型,得到每个设备对应的知识图谱嵌入向量;将每个设备的知识图谱嵌入向量,输入训练完成的生成对抗网络模型的生成器网络,输出生成网络数据,所述生成网络数据,为包括设备类型、流量序列长度属性的网络流量;其中,所述生成对抗网络模型,是基于多个已知流量设备的知识图谱嵌入向量,输入生成器网络,输出生成网络数据,再利用判别器对真实流量数据和所述生成网络数据进行对抗训练后得到。
[0082] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0083] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0084] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。