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

一种基于张量分解的数据还原方法及系统

2022-07-23 00:27:30 来源:中国专利 TAG:


1.本发明涉及噪声数据领域领域,具体涉及一种基于张量分解的数据还原方法及系统。


背景技术:

2.随着现代系统的复杂性和规模日益增加,系统产生的数据可能由于自身或者外部原因导致缺失。如当前广泛部署的内容分发网络系统cdn(content delivery network),被引入访问流量较小的域名通常在凌晨等时间段访问量较小,导致其流量或者时延等指标数据在时间序列上不连续,难以对其进行常规的监控工作。
3.传统的稀疏数据处理方法包括对缺失值填0,或者取前后两个时间戳对应数据的均值等方法,从而使得某个指标的时间序列保持连续性。但是,在内容分发网络系统中,访问量较小的域名在凌晨等时间段产生的数据偏小,或者缺失,当对其填0值时,会导致监控系统误告警。当对其填充为前后两个时间戳数据的均值时,也会造成较大时间序列的错误数据,导致误报。


技术实现要素:

4.为了解决上述技术问题,本发明提供一种基于张量分解的数据还原方法及系统。
5.本发明技术解决方案为:一种基于张量分解的数据还原方法,包括:
6.步骤s1:获取内容分发网络的原始流量数据,基于所述原始流量数据中的域名、时间和服务器ip地址构建三阶张量其中,n、p、q分别为域名、时间和cdn服务器ip地址的维度;
7.步骤s2:基于所述原始流量数据的时间与流量,构建二维矩阵
8.步骤s3:采用梯度下降法对x和y进行求解,得到核心三阶张量a,二维矩阵r、二维矩阵s和二维矩阵t,根据a、r、s和t对x进行还原,填补缺失值,得到还原后的三阶张量x'。
9.本发明与现有技术相比,具有以下优点:
10.本发明公开了一种基于张量分解的数据还原方法,利用高阶张量模型对稀疏数据进行建模,并结合历史数据形成的二维矩阵对其进行分解,由于历史数据较为完整,使得最终得到的核心张量和二维矩阵较为准确,相比传统的填零或者补临近时间戳均值的方法具有明显的优势。
附图说明
11.图1为本发明实施例中一种基于张量分解的数据还原方法的流程图;
12.图2为本发明实施例中三阶张量模型示意图;
13.图3为本发明实施例中二维矩阵模型意图;
14.图4为本发明实施例中一种基于张量分解的数据还原系统的结构框图。
具体实施方式
15.本发明提供了一种基于张量分解的数据还原方法,利用张量分解算法,建立高阶张量模型,并结合历史数据形成二维矩阵对稀疏数据进行填补,以提升数据利用效率。
16.为了使本发明的目的、技术方案及优点更加清楚,以下通过具体实施,并结合附图,对本发明进一步详细说明。
17.实施例一
18.如图1所示,本发明实施例提供的一种基于张量分解的数据还原方法,包括下述步骤:
19.步骤s1:获取内容分发网络的原始流量数据,基于原始流量数据中的域名、时间和服务器ip地址构建三阶张量其中,n、p、q分别为域名、时间和cdn服务器ip地址的维度;
20.步骤s2:基于原始流量数据的时间与流量,构建二维矩阵
21.步骤s3:采用梯度下降法对x和y进行求解,得到核心三阶张量a,二维矩阵r、二维矩阵s和二维矩阵t,根据a、r、s和t对x进行还原,填补缺失值,得到还原后的三阶张量x'。
22.在一个实施例中,上述步骤s1:获取内容分发网络的原始流量数据,基于原始流量数据中的域名、时间和服务器ip地址构建三阶张量其中,n、p、q分别为域名、时间和cdn服务器ip地址的维度,具体包括:
23.读取内容分发网络cdn的原始流量数据,本发明实施例中使用但不限于使用原始流量数据中的三个维度:域名、时间、服务器ip进行数据建模,实际应用中可以增加或者删除相应的维度。根据上述三个维度建立三阶张量模型,如图2所示的三阶张量其中n、p、q分别表示图2中的域名、时间、cdn服务器ip地址的维度,图2中立方体上的每个点表示某个特定的域名在某个cdn服务器ip地址、某个特定的时间产生的流量大小,可以看出,该流量值在时间轴上很有可能出现不连续的现象。其中,时间轴表示每天24小时的不同粒度,如可以采用每5分钟表示一个刻度。
24.在一个实施例中,上述步骤s2:基于原始流量数据的时间与流量,构建二维矩阵具体包括:
25.根据原始流量数据的历史数据,如过去一个月的日志,归纳出时间与流量的二维矩阵,如图3所示的y,由于历史时间段较长(可以取一个月或者更长范围的日志),所以二维矩阵y可以保证大部分值都是连续的,将其对张量x进行补充,可以很好的填补x的缺失值。本发明实施例使用但不限于使用时间粒度,实际应用中可以增加域名、cdn服务器ip等维度,对高阶张量进行辅助分解。
26.在一个实施例中,上述步骤s3:采用梯度下降法对x和y进行求解,得到核心三阶张量a,二维矩阵r、二维矩阵s和二维矩阵t,根据a、r、s和t对x进行还原,填补缺失值,得到还原后的三阶张量x',具体包括:
27.步骤s31:采用塔克分解法对x进行建模,得到目标函数,如公式(1)所示:
[0028][0029]
其中,||.||2表示张量的二范数,表示防止过拟合的惩罚项;a为核心三阶张量,wr、ws、w
t
分别为二维矩阵r、s、t的维度,f为二维辅助矩阵;λ1、λ2表示控制规范化因子贡献的参数;符号
×
l
表示张量与矩阵乘积,l表示方向;
[0030]
步骤s32:对a、s、r、t进行初始化,赋予随机值,并对损失函数值l
t
进行初始化,损失函数为均方误差函数,设置梯度下降步长ρ,设置终止条件ε;
[0031]
步骤s33:判断l
t 1-l
t
《ε是否成立;如果成立,则转至步骤s37;否则转至步骤s34;
[0032]
步骤s34:针对三阶张量x里的每个非零元素q,按照公式(2)~(7)顺序进行计算:
[0033]zijk
=a
×
r r
i*
×
s s
j*
×
t t
k*
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0034]ri*
=r
i*-ρλ2r
i*-ρ(z
ijk-q)
×a×
s s
j*
×
t t
k*
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0035]sj*
=s
j*-ρλ2s
j*-ρ(z
ijk-q)
×a×
r r
i*
×
t t
k*
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0036]
t
k*
=t
k*-ρλ2t
k*-ρ(z
ijk-q)
×a×
r r
i*
×
s s
j*-ρλ1(t
k*
×
f-y
k*
)
×fꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0037]
a=a-ρλ1a-ρ(z
ijk-q)
×ri*
×sj*
×
t
k*
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0038]
f=f-ρλ2f-ρλ1(t
k*
×
f-y
k*
)
×
t
k*
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7);
[0039]
步骤s35:针对三阶张量x和x',更新损失函数值其中x'=a
×
r r
×
s s
×
t t,yi表示x中的元素,表示x'中对应的元素,m为x中非零元素个数;
[0040]
步骤s36:转至步骤s33;
[0041]
步骤s37:输出a、r、s、t;
[0042]
步骤s38:根据a、r、s、t对x填补缺失值,得到还原后的三阶张量x'=a
×
r r
×
s s
×
t t。
[0043]
本发明公开了一种基于张量分解的数据还原方法,利用高阶张量模型对稀疏数据进行建模,并结合历史数据形成的二维矩阵对其进行分解,由于历史数据较为完整,使得最终得到的核心张量和二维矩阵较为准确,相比传统的填零或者补临近时间戳均值的方法具有明显的优势。
[0044]
实施例二
[0045]
如图4所示,本发明实施例提供了一种基于张量分解的数据还原系统,包括下述模块:
[0046]
构建三阶张量模块41,用于获取内容分发网络的原始流量数据,基于原始流量数据中的域名、时间和服务器ip地址构建三阶张量其中,n、p、q分别为域名、时间和cdn服务器ip地址的维度;
[0047]
构建二维矩阵模块42,用于基于原始流量数据的时间与流量,构建二维矩阵
[0048]
还原三阶张量模块43,用于采用梯度下降法对x和y进行求解,得到核心三阶张量a,二维矩阵r、二维矩阵s和二维矩阵t,根据a、r、s和t对x进行还原,填补缺失值,得到还原后的三阶张量x'。
[0049]
提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修改,均应涵盖在本发明的范围之内。
再多了解一些

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

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

相关文献