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

一种网络流量预测方法、装置、计算机设备和存储介质与流程

2022-04-06 17:59:28 来源:中国专利 TAG:


1.本发明属于计算机技术领域,尤其涉及一种网络流量预测方法、装置、计算机设备和存储介质。


背景技术:

2.随着社会的进步及科技的发展,移动通信网络已经融入日常生活中,人们开始对移动通信网络的质量要求逐步提升。为了缓解移动通信数据量拥挤,移动基站负载高或移动基站空载导致资源浪费等问题,一般需要对数据中心的网络流量进行预测,以合理分配资源。其中,网络流量预测主要是指通过对过去的流量信息提取部分特征以实现结合部分信息通过多维度对未来流量进行预测。
3.现有技术中,对网络流量的预测大多使用深度学习上rnns(recurrent neural network)及其衍生模型(lstm,gru等),但是rnn系列模型的时间复杂度高,运行时间长,预测效率低。


技术实现要素:

4.本发明实施例的目的在于提供一种网络流量预测方法,旨在解决现有网络流量预测方法运行时间长,预测效率低的技术问题。
5.本发明实施例是这样实现的,所述网络流量预测方法包括:
6.获取历史网络流量数据,所述历史流量数据中包括不同时刻对应的流量数值;
7.对所述历史网络流量数据中的流量数值进行压缩;
8.利用预设的预测模型对压缩的历史网络流量数据进行处理,确定预测流量数据。
9.本发明实施例的另一目的在于一种网络流量预测装置,所述网络流量预测装置,包括:
10.获取模块,用于获取历史网络流量数据,所述历史流量数据中包括不同时刻对应的流量数值;
11.数据压缩模块,对所述历史网络流量数据中的流量数值进行压缩;
12.预测模块,用于利用预设的预测模型对压缩的历史网络流量数据进行处理,确定预测流量数据。
13.本发明实施例的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述网络流量预测方法的步骤。
14.本发明实施例的另一目的在于提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器上述网络流量预测方法的步骤。
15.本发明实施例提供的一种网络流量预测方法,通过对历史网络流量数据中的流量数值进行压缩,将压缩后的历史网络流量数据输入到预设的预测模型进行预测处理,相当
于减小了预设预测模型的处理的数值,有效提高网络流量预测的速度。
附图说明
16.图1为本发明实施例提供的一种网络流量预测方法的应用环境图;
17.图2为本发明实施例提供的一种网络流量预测方法的流程图;
18.图3为本发明实施例提供的一种对所述历史网络流量数据中的流量数值进行压缩的流程图;
19.图4为获取的历史网络流量数据的表格中部分数据截图;
20.图5为预处理后的历史网络流量数据的表格中部分数据截图;
21.图6为压缩后的历史网络流量数据的表格中分数据截图;
22.图7为transformer模型的网络结构框图;
23.图8为多头自注意力机制层对数据处理的示意图;
24.图9为多头自注意力机制层和掩盖的多头自注意力机制层对比图;
25.图10为编码器中堆叠的多头自注意力机制层和解码器中堆叠的多头自注意力机制层;
26.图11为本发明实施例提供的网络流量预测装置的结构框图;
27.图12为一个实施例中计算机设备的内部结构框图。
具体实施方式
28.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
29.可以理解,本技术所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本技术的范围的情况下,可以将第一xx脚本称为第二xx脚本,且类似地,可将第二xx脚本称为第一xx脚本。
30.图1为本发明实施例提供的网络流量预测方法的应用环境图,如图1所示,在该应用环境中,包括交换机网管系统110以及计算机设备120。
31.计算机设备120可以是独立的物理服务器或终端,也可以是多个物理服务器构成的服务器集群,可以是提供云服务器、云数据库、云存储和cdn等基础云计算服务的云服务器。交换机网管系统110以及计算机设备120可以通过网络进行连接,本发明在此不做限制。
32.如图2所示,在一个实施例中,提出了一种网络流量预测方法,本实施例主要以该方法应用于上述图1中的计算机设备120来举例说明。一种网络流量预测方法,具体可以包括以下步骤:
33.步骤s202,获取历史网络流量数据,所述历史流量数据中包括不同时刻对应的流量数值。
34.在本发明实施例中,历史网络流量数据由客户的交换机网管系统统计,然后服务器120直接从客户的交换机网管系统获取。获取的历史流量数据中应该至少包括不同时刻对应的流量数值,当然还可以包括基站负载数据以及骨干网是否拥挤等数据。获取的历史
流量数据一般为包括n行
×
m列的表格形式数据,其中,n一般通过60(分)
×
24(时)
×
天数计算得到,m一般通过1(主要特征数量) n(次要特征的数量)计算得到,其中,主要特征为网络流量的大小,数量为一个,次要特征为除网络流量大小外的其他特征,例如负载等,例如,如图4所示,为获取的历史网络流量数据的表格中的部分数据。不同时刻对应的流量数值指图4中流量大小对应列的数值。本发明实施例以获取的历史流量数据中包括流量大小、基站负载以及骨干网是否拥挤对应的数据为例说明,但并不限于此。
35.步骤s204,对所述历史网络流量数据中的流量数值进行压缩。
36.在本发明实施例中,对历史网络流量数据中的流量数值进行压缩指将流量数值压缩为较小的数值,通过对历史网络流量数据中的流量数值进行压缩,加快反向传播的时候计算速度,整体模型收敛更快。
37.在本发明实施例中,对对历史网络流量数据中的流量数值进行压缩的具体方法不做限制,例如,如图3所示,步骤s204具体可以包括以下步骤:
38.步骤s302,修正所述历史网络流量数据中的异常数据,并统一多维特征数据,获得预处理后的历史网络流量数据。
39.在本发明实施例中,预处理后的历史网络流量数据指对历史网络流量数据中的异常数据修正后,并将历史网络流量数据中的多维特征数据统一后得到的数据。其中异常数据指明显出现异常的数据,例如,图4中01/11/2021-0:04时刻对应的流量大小数值为1000,该数值远大于其他时刻的流量大小数值,为异常数据,本实施例对异常数据的检测方法不做限制,例如,可以通过孤立森林异常检测法。多维特征数据指不同数据格式的数据,例如,直接从客户的交换机网管系统获取的历史网络流量数据的表格中可能包括一些计算机无法识别的字符串数据。
40.在本发明实施例中,对修正历史网络流量数据中的异常数据的具体方法不做限制,例如,可以用该异常数据前后数据的均值来替换该异常数据,异常数据“10000”前后数据的均值来替换,即(512 256)/2=348。
41.在本发明实施例中,对将多维特征数据统一的具体方式不做限制,例如,可以将计算机无法识别的字符串数据全部浮点数或整数等形式的数据,例如,将图4中“基站负载”列对应的百分数转换为浮点数,将图4中“骨干网是否拥挤”列对应的汉字转换为整数,通过对历史网络流量数据中的异常数据进行修正,并对历史网络流量数据中的异常数据中的多维特征数据进行统一后得到的预处理后的历史网络流量数据如图5所示。
42.步骤s304,将预处理后的历史网络流量数据中的流量数值进行压缩。
43.在本发明实施例中,对将预处理后的历史网络流量数据中的流量数值进行压缩的具体方法不做限制,例如,可以将历史网络数据中的数值均压缩到0-1之间,可以通过图5中,将“流量大小”列对应的数值均除以该列最大值的得到压缩后的流量数值。同理,“基站负载”列对应的数值也均除以该列最大值以将该列的数值进行压缩。压缩后的历史网络流量数据如图6所示。
44.步骤s206,利用预设的预测模型对压缩的历史网络流量数据进行处理,确定预测流量数据。
45.在本发明实施例中,预设的预测模型为预先训练好的transformer模型,关于transformer模型的训练具体可以包括以下步骤:
46.步骤s402,采集训练数据。
47.在本发明实施例中,训练数据采集的具体方法不做限制,例如,在多维度长时间预测系统中,一般通过给出多个一定长度的采样窗口的原始数据预测出未知的多个数据,完成单次预测所需要的时间。例如,假设一组具有多特征的数据,有n个数据,我们按每个窗口里面包含3个数据,这样就有n-2个窗口,假设一个窗口预测出未知值的时间为1s,那么完成单次测量所需要的时间为(n-2)s。以图6中的历史网络流量数据为例说明,可以设置大小为3个时刻历史网络流量数据的窗口遍历历史网络流量数据表格,然后设预值为2个时刻对应的网络流量数据,则前六行数据可以划分为:
48.滑动窗口1:x1[0~2行]-预测-》[3~4行]y1;
[0049]
滑动窗口2:x2[1~3行]-预测-》[4~5行]y2;其中,x1为滑动窗口1采样的样本数据,y1为x1对应的预测特征数据;x2为滑动窗口2采样的样本数据,y2为x2对应的预测特征数据。依次类推会有n个滑动窗口数据xn遍历所有行,从而完成训练数据的采集。
[0050]
步骤s404,对训练数据进行随机采样和反馈抽样。
[0051]
在本发明实施例中,一次训练可以从训练数据中随机抽取若干个数据xn输入transformer模型进行训练,本实施例对抽样个数不做限制,例如,抽样个数为64,数据xn中不算“时间”列对应的行数,其包含3行
×
3列的数据,输入transformer模型训练数据的维度可以记为[64,3,3]。
[0052]
步骤s406,将随机采样和反馈抽样的训练数据输入transformer模型的编码模型。
[0053]
在本发明实施例中,transformer模型的网络结构框图如图7所示,transformer模型的编码模型包括数值编码层、位置编码层、多头自注意力机制层以及数据正则层,且位置编码层和数据正则层之间还直接设置残差网络层。随机采样和反馈抽样的训练数据[64,3,3],先进入数值编码层,从数值编码层进入线性回归层,通过数值编码层和线性回归层对训练数据[64,3,3]进行维度变换,例如可以将训练数据[64,3,3]乘以一个张量w[64,3,512],从而将可以训练数据[64,3,3]的维度变换为[64,3,512],其中线性回归层是数值编码层的子集,数值编码层还可以包含一些简单的数据处理层,其中w可以理解为一个随机数,后面会通过梯度反向传播慢慢拟合到正确的数值,例如当w为[1,1]也就是标量的时候,假设正确的线性回归层函数表达式为y=0.3x,初始化表达式为y=0.8x,通过不断地输入数据,将初始化的w从0.8慢慢优化到正确值0.3;然后从数值编码层输出的数据进入位置编码层,加入前后位置信息,例如可以通过具有周期性的sin/cos函拟合出一个[64,3,512]的张量,表达式如下:
[0054]
其中,pos为采样点位置索引,2i为偶数的采样点位置索引,2i 1为奇数的采样点位置索引,d
model
为数值编码层输出张量的最后一个维度的维度数,例如,[64,3,512]对应的d
model
为512,将[64,3,512]与上一层输出的[64,3,512]张量相加得到[64,3,512];从位置编码层输出的数据进入多头自注意力机制层,[64,3,512]在时间维度进行展开就可得到x1-x3三个[64,1,512]张量,如图8所示,首先
通过三个w(w为一个随机数,每个层都有一个独立的w值)矩阵得到x
1-x3各自的qi,ki,vi(维度为[64,1,512]),x1通过本层输出的结果y1为:x1的q1与x2,x3的k2,k3进行矩阵相乘后进缩放函数(
÷
sqrt(512))后进softmax函数,求和后得到[64,1,512],同理y2,y3也是如此,三个y在时间维度上融合后的到[64,3,512];最后从多头自注意力机制层输出数据进入数据正则层,即将特征数据维度(512)进行归一化,输出[64,3,512]。
[0055]
步骤s408,将所述编码模型输出的数据输入解码模型。
[0056]
在本发实施例中,解码模型包括数值编码层和位置编码层的拟合层、掩盖的多头自注意机制层、第一数据正则层、多头自注意力机制层、第二数据正则层以及数值解码拟合层,且数值编码层和位置编码层的拟合层与第一数据正则层之间还直接设置残差网络层。
[0057]
在本发明实施例中,如图7所示,解码模型的输入数据有两个,除编码模型输出的数据外,解码模型的输入数据还包括通过滑动窗口采集的样本数据,滑动窗口采集的样本数据从数值编码层和位置编码层的拟合层输入解码模型,然后依次通过掩盖的多头自注意力机制层、数据正则层、以及多头自注意力机制层,编码模型输出的数据直接输入到解码模型的多头自注意力机制层,从而在解码模型的多头自注意力机制层编码模型输出的数据与滑动窗口采集的样本数据融合,然后融合后的数据依次通过数据正则层和数值解码拟合层。
[0058]
在本发明实施例中,输入解码器的采样数据同样可以通过采样窗口获取,此处采样窗口的大小可以设置为编码器采样窗口的一半,且为后一半,例如,编码器采样窗口采集的是图6中的第0-2行数据作为样本数据,则解码器采样窗口采集的是图6中第1-2行(编码器采样窗口采集的是3行数据,取其一般按照四舍五入,解码器采样窗口采集2行数据)的数据作为样本数据,输入解码器样本数据维度为[64,2,3]。
[0059]
在本发明实施例中,解码模型中数值编码层和位置编码层的拟合层对输入样本数据的处理与编码模型中数值编码层和位置编码层对样本数据的处理相同,样本数据[64,2,3]经过数值编码层和位置编码层的拟合层处理后输出的数据为[64,2,512];然后数据[64,2,512]输入到掩盖的多头自注意力机制层,如图8所示,编码模型中多头自注意力机制层在计算y2时,也会计算x2与x1之间q2与k1,v1的操作,而掩盖的多头自注意力机制层,在掩盖过后,更注重前后循序,及后面的q,不能与前面的k,v进行计算,例如,如下图9所示,注意力机制是可以全部参数都计算信息输出y,而掩盖过后的多头自注意力机制,无法计算之前的信息(yi不在包含x
《i
的信息/计算);从掩盖的多头自注意力机制层输出的数据通过第一数据正则层的归一化处理后,输入到多头自注意力机制层并在多头自注意力机制层与编码器输出的数据进行融合,其中,编码器和解码器的多头自注意力机制是可以堆叠的,如图8中输出的y,可以当做x进行不断的递归的进入多头自注意力机制层,取编码器的多头自注意力机制最后的一层k,v,解码器多头自注意力机制层最后输出的q进入一个新的多头自注意力机制层,例如如图10所示,由于编码器和解码器的时间维度可能不一样,例如编码器k,v时间维度为3,解码器q时间维度为2,无法进行矩阵运算,则将q缺失的维度进行补0,同样补到3维;从堆叠的多头自注意力机制层和第二数据正则层输出的数据进入数值解码拟合层,通过数值解码拟合层将[64,2,512]最后一个特征的维度降到2得到[64,2,2],完成解码,得到对应预测数据。
[0060]
本发明实施例提供的一种网络流量预测方法,通过对历史网络流量数据中的流量
数值进行压缩,将压缩后的历史网络流量数据输入到预设的预测模型进行预测处理,相当于减小了预设预测模型的处理的数值,有效提高网络流量预测的速度。且通过对transformer模型进行训练,利用训练好的transformer模型对压缩的历史网络流量数据进行处理,由于transformer模型的时间复杂度低,进一步提高对网络流量的预测效率。
[0061]
如图11所示,在一个实施例中,提供了一种网络流量预测装置,该网络流量预测装置可以集成于上述的计算机设备120中,具体可以包括获取模块510、数据压缩模块520以及预测模块530。
[0062]
获取模块510,用于获取历史网络流量数据,所述历史流量数据中包括不同时刻对应的流量数值;
[0063]
数据压缩模块520,对所述历史网络流量数据中的流量数值进行压缩;
[0064]
预测模块530,用于利用预设的预测模型对压缩的历史网络流量数据进行处理,确定预测流量数据。
[0065]
本发明实施例提供的一种网络流量预测装置,所包含的获取模块510、数据压缩模块520以及预测模块530的功能实现与上文网络流量预测方法中的步骤s202、步骤s204、步骤s206一一对应,对于该网络流量预测装置中的具体解释以及相关的细化、优化的内容参见上文网络流量预测装置中的具体实施例,此处不在赘述。
[0066]
图12示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的计算机设备120。如图12所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现网络流量预测方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行网络流量预测方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0067]
本领域技术人员可以理解,图12中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0068]
在一个实施例中,本技术提供的网络流量预测装置可以实现为一种计算机程序的形式,计算机程序可在如图12所示的计算机设备上运行。计算机设备的存储器中可存储组成该xx装置的各个程序模块,比如,图11所示的获取模块510、数据压缩模块520和预测模块530。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本技术各个实施例的网络流量预测方法中的步骤。
[0069]
例如,图12所示的计算机设备可以通过如图11所示的网络流量预测装置中的获取模块510执行步骤s202。计算机设备可通过数据压缩模块520执行步骤s204。计算机设备可通过预测模块530执行步骤s206。
[0070]
在一个实施例中,提出了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0071]
步骤s202,获取历史网络流量数据,所述历史流量数据中包括不同时刻对应的流量数值;
[0072]
步骤s204,对所述历史网络流量数据中的流量数值进行压缩;
[0073]
步骤s206,利用预设的预测模型对压缩的历史网络流量数据进行处理,确定预测流量数据。
[0074]
在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
[0075]
步骤s202,获取历史网络流量数据,所述历史流量数据中包括不同时刻对应的流量数值;
[0076]
步骤s204,对所述历史网络流量数据中的流量数值进行压缩;
[0077]
步骤s206,利用预设的预测模型对压缩的历史网络流量数据进行处理,确定预测流量数据。
[0078]
应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0079]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0080]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0081]
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
[0082]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献