CN110222840B - 一种基于注意力机制的集群资源预测方法和装置 - Google Patents
一种基于注意力机制的集群资源预测方法和装置 Download PDFInfo
- Publication number
- CN110222840B CN110222840B CN201910413227.1A CN201910413227A CN110222840B CN 110222840 B CN110222840 B CN 110222840B CN 201910413227 A CN201910413227 A CN 201910413227A CN 110222840 B CN110222840 B CN 110222840B
- Authority
- CN
- China
- Prior art keywords
- attention
- time
- weight
- unit
- hidden layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开提供了一种基于注意力机制的集群资源预测方法和装置,采用改进的注意力机制,并将其集成到LSTM中,可以挖掘多个时间序列之间的相关性,并提出使用多个时间序列进行集群内资源需求预测的方案,有效提高了预测的准确率,能更加有效的辅助资源规划,从而提高集群的资源利用率,更有效地降低数据中心的运维成本。
Description
技术领域
本发明涉及集群资源管理技术领域,更具体的说是涉及一种基于注意力机制的集群资源预测方法和装置。
背景技术
目前的数据中心的体量越来越大,有效地对数据中心内的集群进行资源管理可以提高硬件资源的利用率,减少运维成本,提高运维的利润。其中一个有效提高资源利用率的方法就是对集群未来的资源需求进行预测,从而提前进行资源规划,减少资源的浪费。
目前进行集群资源需求预测主要是使用集群资源的时间序列数据。而常见的时间序列预测模型有ARIMA(整合移动平均自回归模型),VAR(向量自回归模型),GBRT(梯度提升回归树)LSTM(长短期记忆网络)等,他们都可以直接用于集群内的资源需求预测。
但是目前集群资源预测方法存在两个主要的问题:1.这些方法主要使用单个时间序列作为特征进行预测的(如ARIMA),几乎没有使用多个时间序列来进行资源需求预测的。预测的准确性依赖于这个时间序列的历史值是否蕴含明显的规律;2.目前虽然已有很多通用的多时间序列预测模型(如VAR),这些模型方法没有考虑数据中心内集群的特点,特别是没有考虑集群内应用负载之间的相关性和相互干扰,上述两个问题都会导致集群资源预测结果不准确。
因此,如何提供一种集群资源预测结果准确的方法是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种基于注意力机制的集群资源预测方法和装置,使用多个资源时间序列来进行未来资源需求量的预测,而且还针对集群内应用负载对资源使用的特点,采用改进的深度学习注意力机制来挖掘多个资源需求时间序列之间的相关性,能够有效提高资源预测的准确率。
为了实现上述目的,本发明采用如下技术方案:
一种基于注意力机制的集群资源预测方法,包括:
S1:将上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据、与目标实例同属于一个主机单元的所有时间序列数据以及历史时刻的目标时序作为输入注意力层的输入,得到第一输入向量;
S2:将所述第一输入向量输入到LSTM编码器,得到当前第一隐藏层状态;
S3:将所述当前第一隐藏层状态和上一时刻第二隐藏层状态输入到时间相关性注意力层,得到上下文向量;
S4:将所述上下文向量、上一时刻第二隐藏层状态和历史时刻的目标时序输入到LSTM解码器,得到当前第二隐藏层状态;
S5:将所述当前第二隐藏层状态和所述上下文向量进行线性变换,得到预测值。
优选的,步骤S1具体包括:
S11:将上一时刻第一隐藏层状态以及与目标实例同属于一个部署单元的所有时间序列数据作为部署单元注意力层的输入,得到部署单元注意力层输出向量;
S12:将上一时刻第一隐藏层状态以及与目标实例同属于一个主机单元的所有时间序列数据作为主机单元注意力层的输入,得到主机单元注意力输出向量;
S13:将上一时刻第一隐藏层状态以及历史时刻的目标时序作为自相关性注意力层的输入,得到自相关性注意力层输出向量;
S14:将部署单元注意力层输出向量、主机单元注意力输出向量和自相关性注意力层输出向量合并作为第一输入向量。
优选的,步骤S11具体包括:
基于上一时刻第一隐藏层状态和与目标实例同属于一个部署单元的所有时间序列数据计算第一注意力权重;
基于第一注意力权重,使用softmax函数计算出归一化部署单元注意力权重;
基于上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据以及归一化部署单元注意力权重,计算部署单元注意力层输出向量;
步骤S12具体包括:
计算与目标实例同属于一个主机单元的每个时间序列数据相对于历史目标时序的一阶时序相关性系数,并得到对应的主机单元内所有时间序列和历史目标时序的静态时间相关性权重;
基于上一时刻第一隐藏层状态和目标实例同属于一个主机单元的所有时间序列数据计算第二注意力权重;
基于静态时间相关性权重和第二注意力权重得到主机单元注意力权重,并进行归一化,得到归一化主机单元注意力权重;
基于上一时刻第一隐藏层状态、与目标实例同属于一个主机单元的所有时间序列数据、历史时刻的目标时序以及归一化主机单元注意力权重,计算主机单元注意力输出向量;
步骤S13具体包括:
计算不同时间窗口内的历史时刻目标时序之间的相关性系数,并得到对应的自相关权重;
基于上一时刻第一隐藏层状态和不同历史时刻目标时序计算第三注意力权重;
基于自相关权重和第三注意力权重得到自相关单元注意力权重,并进行归一化,得到归一化自相关单元注意力权重;
基于上一时刻第一隐藏层状态、历史时刻的目标时序、以及归一化自相关单元注意力权重,计算自相关性注意力层输出向量。
优选的,步骤S3具体包括:
基于上一时刻第二隐藏层状态计算时间注意力层权重,并进行归一化,得到归一化后的时间注意力层权重;
基于当前第一隐藏层状态和归一化后的时间注意力层权重计算上下文向量。
一种基于注意力机制的集群资源预测装置,包括:
第一输入向量计算模块,用于将上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据、与目标实例同属于一个主机单元的所有时间序列数据以及历史时刻的目标时序作为输入注意力层的输入,得到第一输入向量;
第一隐藏层状态计算模块,用于将所述第一输入向量输入到LSTM编码器,得到当前第一隐藏层状态;
上下文向量计算模块,用于将所述当前第一隐藏层状态和上一时刻第二隐藏层状态输入到时间相关性注意力层,得到上下文向量;
第二隐藏层状态计算模块,用于将所述上下文向量、上一时刻第二隐藏层状态和历史时刻的目标时序输入到LSTM解码器,得到当前第二隐藏层状态;
线性变换模块,用于将所述当前第二隐藏层状态和所述上下文向量进行线性变换,得到预测值。
优选的,所述第一输入向量计算模块具体包括:
第一计算单元,用于将上一时刻第一隐藏层状态以及与目标实例同属于一个部署单元的所有时间序列数据作为部署单元注意力层的输入,得到部署单元注意力层输出向量;
第二计算单元,用于将上一时刻第一隐藏层状态以及与目标实例同属于一个主机单元的所有时间序列数据作为主机单元注意力层的输入,得到主机单元注意力输出向量;
第三计算单元,用于将上一时刻第一隐藏层状态以及历史时刻的目标时序作为自相关性注意力层的输入,得到自相关性注意力层输出向量;
合并单元,用于将部署单元注意力层输出向量、主机单元注意力输出向量和自相关性注意力层输出向量合并作为第一输入向量。
优选的,所述第一计算单元具体包括:
第一注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和与目标实例同属于一个部署单元的所有时间序列数据计算第一注意力权重;
第一归一化权重计算子单元,用于基于第一注意力权重,使用softmax函数计算出归一化部署单元注意力权重;
第一注意力层输出向量计算子单元,用于基于上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据以及归一化部署单元注意力权重,计算部署单元注意力层输出向量;
所述第二计算单元具体包括:
静态时间相关性权重计算子单元,用于计算与目标实例同属于一个主机单元的每个时间序列数据相对于历史目标时序的一阶时序相关性系数,并得到对应的主机单元内所有时间序列和历史目标时序的静态时间相关性权重;
第二注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和目标实例同属于一个主机单元的所有时间序列数据计算第二注意力权重;
第二归一化权重子单元,用于基于静态时间相关性权重和第二注意力权重得到主机单元注意力权重,并进行归一化,得到归一化主机单元注意力权重;
第二注意力层输出向量计算子单元,用于基于上一时刻第一隐藏层状态、与目标实例同属于一个主机单元的所有时间序列数据、历史时刻的目标时序以及归一化主机单元注意力权重,计算主机单元注意力层输出向量;
所述第三计算单元具体包括:
自相关权重计算子单元,用于计算不同时间窗口内的历史时刻目标时序之间的相关性系数,并得到对应的自相关权重;
第三注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和不同历史时刻目标时序计算第三注意力权重;
第三归一化权重子单元,用于基于自相关权重和第三注意力权重得到自相关单元注意力权重,并进行归一化,得到归一化自相关单元注意力权重;
第三注意力层输出向量子单元,基于上一时刻第一隐藏层状态、历史时刻的目标时序、以及归一化自相关单元注意力权重,计算自相关性注意力层输出向量。
优选的,所述上下文向量计算模块具体包括:
第四归一化权重子单元,用于基于上一时刻第二隐藏层状态计算时间注意力层权重,并进行归一化,得到归一化后的时间注意力层权重;
上下文向量计算子单元,用于基于当前第一隐藏层状态和归一化后的时间注意力层权重计算上下文向量。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于注意力机制的集群资源预测方法和装置,采用改进的注意力机制,并将其集成到LSTM中,可以挖掘多个时间序列之间的相关性,并提出使用多个时间序列进行集群内资源需求预测的方案,有效提高了预测的准确率,能更加有效的辅助资源规划,从而提高集群的资源利用率,更有效地降低数据中心的运维成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种基于注意力机制的集群资源预测方法的流程图;
图2为本发明提供的计算第一输入向量的具体流程图;
图3为本发明提供的一种基于注意力机制的集群资源预测装置的示意图;
图4为本发明提供的第一输入向量计算模块的组成示意图;
图5为本发明提供的时间序列采集架构示意图;
图6为本发明提供的基于注意力机制的预测模型示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见附图1,本发明实施例公开了一种基于注意力机制的集群资源预测方法,包括:
S1:将上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据、与目标实例同属于一个主机单元的所有时间序列数据以及历史时刻的目标时序作为输入注意力层的输入,得到第一输入向量;
S2:将第一输入向量输入到LSTM编码器,得到当前第一隐藏层状态;
S3:将当前第一隐藏层状态和上一时刻第二隐藏层状态输入到时间相关性注意力层,得到上下文向量;
S4:将上下文向量、上一时刻第二隐藏层状态和历史时刻的目标时序输入到LSTM解码器,得到当前第二隐藏层状态;
S5:将当前第二隐藏层状态和上下文向量进行线性变换,得到预测值。
本发明在进行资源预测时,使用了多个资源和时间序列而不是一个时间序列来进行预测,此外,还针对集群内应用负载对资源使用的特点,采用改进的深度学习注意力机制来挖掘多个资源时间序列之间的相关性,最终有效的提高资源预测的准确率。
参见附图2,为了进一步优化上述技术方案,本发明的实施例进一步公开了步骤S1具体包括:
S11:将上一时刻第一隐藏层状态以及与目标实例同属于一个部署单元的所有时间序列数据作为部署单元注意力层的输入,得到部署单元注意力层输出向量;
S12:将上一时刻第一隐藏层状态以及与目标实例同属于一个主机单元的所有时间序列数据作为主机单元注意力层的输入,得到主机单元注意力输出向量;
S13:将上一时刻第一隐藏层状态以及历史时刻的目标时序作为自相关性注意力层的输入,得到自相关性注意力层输出向量;
S14:将部署单元注意力层输出向量、主机单元注意力输出向量和自相关性注意力层输出向量合并作为第一输入向量。
为了进一步优化上述技术方案,本发明的实施例进一步公开了步骤S11具体包括:
基于上一时刻第一隐藏层状态和与目标实例同属于一个部署单元的所有时间序列数据计算第一注意力权重;
基于第一注意力权重,使用softmax函数计算出归一化部署单元注意力权重;
基于上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据以及归一化部署单元注意力权重,计算部署单元注意力层输出向量;
步骤S12具体包括:
计算与目标实例同属于一个主机单元的每个时间序列数据相对于历史目标时序的一阶时序相关性系数,并得到对应的主机单元内所有时间序列和历史目标时序的静态时间相关性权重;
基于上一时刻第一隐藏层状态和目标实例同属于一个主机单元的所有时间序列数据计算第二注意力权重;
基于静态时间相关性权重和第二注意力权重得到主机单元注意力权重,并进行归一化,得到归一化主机单元注意力权重;
基于上一时刻第一隐藏层状态、与目标实例同属于一个主机单元的所有时间序列数据、历史时刻的目标时序以及归一化主机单元注意力权重,计算主机单元注意力输出向量;
步骤S13具体包括:
计算不同时间窗口内的历史时刻目标时序之间的相关性系数,并得到对应的自相关权重;
基于上一时刻第一隐藏层状态和不同历史时刻目标时序计算第三注意力权重;
基于自相关权重和第三注意力权重得到自相关单元注意力权重,并进行归一化,得到归一化自相关单元注意力权重;
基于上一时刻第一隐藏层状态、历史时刻的目标时序、以及归一化自相关单元注意力权重,计算自相关性注意力层输出向量。
为了进一步优化上述技术方案,本发明的实施例进一步公开了步骤S3具体包括:
基于上一时刻第二隐藏层状态计算时间注意力层权重,并进行归一化,得到归一化后的时间注意力层权重;
基于当前第一隐藏层状态和归一化后的时间注意力层权重计算上下文向量。
参见附图3,本发明实施例还公开了一种基于注意力机制的集群资源预测装置,包括:
第一输入向量计算模块,用于将上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据、与目标实例同属于一个主机单元的所有时间序列数据以及历史时刻的目标时序作为输入注意力层的输入,得到第一输入向量;
第一隐藏层状态计算模块,用于将第一输入向量输入到LSTM编码器,得到当前第一隐藏层状态;
上下文向量计算模块,用于将当前第一隐藏层状态和上一时刻第二隐藏层状态输入到时间相关性注意力层,得到上下文向量;
第二隐藏层状态计算模块,用于将上下文向量、上一时刻第二隐藏层状态和历史时刻的目标时序输入到LSTM解码器,得到当前第二隐藏层状态;
线性变换模块,用于将当前第二隐藏层状态和上下文向量进行线性变换,得到预测值。
参见附图4,为了进一步优化上述技术方案,本发明的实施例进一步公开了第一输入向量计算模块具体包括:
第一计算单元,用于将上一时刻第一隐藏层状态以及与目标实例同属于一个部署单元的所有时间序列数据作为部署单元注意力层的输入,得到部署单元注意力层输出向量;
第二计算单元,用于将上一时刻第一隐藏层状态以及与目标实例同属于一个主机单元的所有时间序列数据作为主机单元注意力层的输入,得到主机单元注意力输出向量;
第三计算单元,用于将上一时刻第一隐藏层状态以及历史时刻的目标时序作为自相关性注意力层的输入,得到自相关性注意力层输出向量;
合并单元,用于将部署单元注意力层输出向量、主机单元注意力输出向量和自相关性注意力层输出向量合并作为第一输入向量。
为了进一步优化上述技术方案,本发明的实施例进一步公开了第一计算单元具体包括:
第一注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和与目标实例同属于一个部署单元的所有时间序列数据计算第一注意力权重;
第一归一化权重计算子单元,用于基于第一注意力权重,使用softmax函数计算出归一化部署单元注意力权重;
第一注意力层输出向量计算子单元,用于基于上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据以及归一化部署单元注意力权重,计算部署单元注意力层输出向量;
第二计算单元具体包括:
静态时间相关性权重计算子单元,用于计算与目标实例同属于一个主机单元的每个时间序列数据相对于历史目标时序的一阶时序相关性系数,并得到对应的主机单元内所有时间序列和历史目标时序的静态时间相关性权重;
第二注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和目标实例同属于一个主机单元的所有时间序列数据计算第二注意力权重;
第二归一化权重子单元,用于基于静态时间相关性权重和第二注意力权重得到主机单元注意力权重,并进行归一化,得到归一化主机单元注意力权重;
第二注意力层输出向量计算子单元,用于基于上一时刻第一隐藏层状态、与目标实例同属于一个主机单元的所有时间序列数据、历史时刻的目标时序以及归一化主机单元注意力权重,计算主机单元注意力层输出向量;
第三计算单元具体包括:
自相关权重计算子单元,用于计算不同时间窗口内的历史时刻目标时序之间的相关性系数,并得到对应的自相关权重;
第三注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和不同历史时刻目标时序计算第三注意力权重;
第三归一化权重子单元,用于基于自相关权重和第三注意力权重得到自相关单元注意力权重,并进行归一化,得到归一化自相关单元注意力权重;
第三注意力层输出向量子单元,基于上一时刻第一隐藏层状态、历史时刻的目标时序、以及归一化自相关单元注意力权重,计算自相关性注意力层输出向量。
为了进一步优化上述技术方案,本发明的实施例进一步公开了上下文向量计算模块具体包括:
第四归一化权重子单元,用于基于上一时刻第二隐藏层状态计算时间注意力层权重,并进行归一化,得到归一化后的时间注意力层权重;
上下文向量计算子单元,用于基于当前第一隐藏层状态和归一化后的时间注意力层权重计算上下文向量。
本发明采用的预测方法使用注意力机制,可以挖掘多个具有相关关系的时间序列的相关性,并使用权重来表示这些时间序列对目标时序的相关性,进而利用这些相关关系来对目标时序进行预测,有效提高了预测的准确率。将本发明提供的模型应用在集群资源预测上,可以更加准确的预测集群未来的资源需求,能够更加有效地辅助资源规划,从而提高集群的资源利用率,更有效地降低数据中心的运维成本。
下面结合具体实现方法对本发明提供的技术方案做进一步详细说明。
在现代集群内,一个应用一般是由多个应用实例组成的,把这些属于一个应用内的多个应用实例归类为一个部署单元。而这些实例一般会分布在不同的物理主机上,所以每个物理主机上会有多个不同应用实例,把存在于一个物理主机上的应用实例归类为一个主机单元,那么一个部署单元和一个主机单元内的应用实例之间很有可能由相关关系的。所以,对于一个所要预测的目标实例来说,在采集这个目标实例的时间序列数据,也可以同时采集目标实例所在的部署单元的其他应用实例的时间序列数据和目标实例所在的主机单元的其他应用实例的时间序列数据,并最终将这些时序数据都用于目标实例的预测中。
在详细介绍本发明提供的方法之前,先声明本发明中的描述模型的输入和输出所用到的数学符号如下表所示:
表1
首先,如附图5所示,设计一个时间序列数据采集的架构:在每个主机上都部署一个本地时间序列数据数据库,所有主机的本地时间序列数据库可以将数据上传到全局时间序列数据库中。那么对于一个要进行资源预测的目标实例来说,它只需要在本地就可以获取自己的时间数据(目标序列)和与目标实例同属一个主机单元的所有时间序列数据Xi,然后从全局时间序列数据库中查询并获取与目标实例同属一个部署单元的所有时间序列数据Xo。
本发明根据这些数据设计一个基于注意力机制的预测模型,并命名为MLA-LSTM(Multi-level Attention LSTM,具有多层注意力的长短期记忆网络)
该模型设置一个大小为T的时间窗口,每个时间序列使用这个窗口内的T个值,然后预测目标实例下一时间点的值,也就是T+1时间点的值,这个过程可以抽象为:其中,F为需要训练的模型。
模型中包括两个LSTM:第一个LSTM作为编码器,用于处理输入的多个时间序列,并输出隐藏状态ht;第二个LSTM作为解码器,负责处理第一个LSTM输出的隐藏状态ht,并最终输出预测值,这个模型的示意图如图6所示。
一、LSTM编码器
定义LSTM编码器的计算过程为:
其中,ht是LSTM在时间点t的隐藏状态向量,设它的长度为m,为LSTM的输入,这个输入由三个注意力层的计算获得,下面将会详细介绍三个注意力层的计算过程。将LSTM编码器按时间维度展开,如图6所示。
对于LSTM编码器,合并三个注意力层为一个输入注意力层,来挖掘时间序列之间的相关性,这三个注意力层分别为:
(1)使用一种常见的注意力机制挖掘一个部署单元内的多个时间序列Xi的相关性,并将它称为部署单元注意力层。
(2)使用改进的注意力机制挖掘一个主机单元内的多个时间序列Xo的相关性,并将它称为主机单元注意力层。
(3)使用改进的注意力机制挖掘目标实例的时间序列的自相关性,并将它称为自相关性注意力层。
1、部署单元注意力层的计算公式如下:
其中,参数说明如下:
总结来说,部署单元注意力层的输入输出为:
2、主机单元注意力层的计算公式如下:
(1)首先需要计算每个时间序列相对于目标时序的一阶时序相关性系数CORT(thefirst order temporal correlation coefficient)。
以主机单元中第l个时间序列xo,l为例,要计算它与目标时间序列YT的一阶时序相关性系数时,需要对两个序列做一些裁剪处理。
首先把xo,l的最后一个值去掉,得到
去掉目标序列在T时刻的滞后值YT的第一个值,得到
然后计算与的CORT绝对值Co,l:
这个绝对值被当作时序xo,l和目标序列的在时间上的静态时间相关性权重。其中,CORT的计算方法是:
其中S1,S2两个长度为q的时间序列,S1,t,S2,t分别是S1,S2在时刻t的值。
最后,可以获得主机单元内所有时序和目标时序的静态时间相关性权重,并组合为一个向量Cout:
(2)使用常见的注意力机制计算出注意力权重。
还是以第l个时间序列xo,l为例,计算这个时间序列的在t时刻的注意力权重:
则整个主机单元的时间序列在t时刻的注意力权重可以组成一个在t时刻的注意力权重向量gt:
(3)组合上面两个步骤获得的时间相关性权重向量Cout和注意力权重向量gt。组合时通过一个线性变换来完成,变换后得到的新的权重向量θt:
为了使得这个向量的所有元素归一化,再使用一个softmax函数来映射,得到t时刻时主机单元内第l个时间序列的归一化权重值
(4)获得加权后的主机单元时间序列在t时刻的值向量:
通过上一个步骤获得的归一化权重这个权重与对应的第l个主机单元时间序列在t时刻的值相乘获得加权后的值。所有主机单元的时间序列在t时刻加权值可以组成一个向量
总结来说,主机单元注意力层的输入输出为:
3、自相关性注意力层的计算方法如下:
(1)和主机单元注意力层类似,先计算不同时间窗口内的目标时间序列之间的相关性系数。首先需要计算以时刻r为结尾的目标时间序列Yr和以时刻T为结尾的目标时间序列YT之间的CORT系数Ca,r:
Ca,T=||CORT(YT,Yr)||
那么时间窗口T内,每个时刻的对应的目标时间序列的CORT系数可以组成一个长度为T的自相关向量Cauto:
(2)使用常见的注意力机制计算出注意力权重。
(3)组合上面两个步骤获得的时间相关性权重向量Cauto和注意力权重向量μt。通过线性变换的方法来将两个权重向量转换为一个权重向量φt:
(4)获得加权后的目标时间序列向量:
上一个步骤获得的归一化权重描述了一个时间窗口T内,目标时间序列的时刻r的值对时刻T的值的影响程度,也就是目标时间序列自己与自己在不同时刻的相关性。用权重对Yt内r时刻的值进行加权,获得一个t时刻的输出向量
最后,三个注意力层的输出向量合并起来作为编码器LSTM的在t时刻的输入向量,其中
二、解码器LSTM
定义解码器LSTM为:
设h′t的是作为解码器的LSTM在时刻t的隐藏状态向量,设向量元素个数为n。需要注意的是它与编码器LSTM的隐藏状态向量ht有所区别。我们将这个解码器LSTM按时间维度展开,如图6所示。
集成一个时间相关性注意力层到这个LSTM里去,这个时间注意力层的权重计算方法如下:
通过上面方法获得的t时刻归一化权重可以与hp加权求和,获得一个上下文向量
时刻t的上下文向量ct和目标时间序列值yt合并,并通过一个线性变换,获得时刻t的解码器输入
正如前面所述,会被输入到解码器LSTM当中进行运算。也就是它和当前时刻t的隐藏状态向量h′t同时被用于更新下一时刻t+1的解码器LSTM隐藏状态h′t+1:
不断循环以上的更新过程,直到T时刻结束,获得T时刻的隐藏状态向量h′T和元胞状态向量cT。
最后解码器LSTM输出的T+1时刻的预测值计算方法如下:
总结来说,时间相关性注意力层的输入输出总结如下:
最后使用MSE(平均平方误差)作为模型的训练准则:
采用梯度下降算法来训练这个模型,确定上述神经网络的权重系数矩阵/向量/偏置的具体值。
接下来结合具体实例对本发明的技术方案做进一步阐述。
本实例采用的是阿里巴巴2018年发布的集群数据cluster-trace,随机选取了其中一个容器(id是c_66550)作为一个目标实例,将它的CPU利用率时间序列数据作为该目标实例的资源时序数据。将这个目标实例同属一个部署单元的实例和同属一个主机单元的实例找出,并将这些实例的时序数据提取出来,最后将其分别处理为间隔是300秒的时间序列数据。
最终获取的同一个部署单元的时间序列33个,同属一个主机的23个,以及目标实例的时间序列1个。将这些时间序列按照时间对齐,并统一的划分为三个数据集:训练集,验证集和测试集。其中训练集有10141个时间点,验证集563个时间点,测试集564个时间点。每个数据集都有相同的时间序列个数。
模型有多个超参数,设置窗口大小为T={25,35,45,60},编码器和解码器LSTM的隐藏层的隐藏状态向量和元胞状态向量大小为m=n={32,64,128},分别使用MSE和MAE(平均绝对值误差)作为误差准则,并使用批随机梯度下降算法来优化训练模型,其中学习率为5e-4。
最后,使用网格搜索的方法训练模型,并取每个模型在验证集上获得最好效果的超参数作为模型的最优参数。然后在测试集中预测,最后用MSE累计测试集中的误差。
在实验中,为了区分使用单序列和多序列进行预测的LSTM,将使用单序列的记为LSTM-Un,使用多序列的记为LSTM-Mul。
实验结果如下表所示:
实验结果表明,无论是相对于3个单序列的模型还是2个多序列模型,本发明提出的模型的误差都比他们小很多:其中在MSE下,比最好的VAR好98.26%;在MAE下,比最好的VAR好74.40%,具有很高的预测准确度,从而证明了本发明提出的基于注意力机制的多时间序列预测模型的有效性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种基于注意力机制的集群资源预测方法,其特征在于,包括:
S1:将上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据、与目标实例同属于一个主机单元的所有时间序列数据以及历史时刻的目标时序作为输入注意力层的输入,得到第一输入向量;
步骤S1具体包括:
S11:将上一时刻第一隐藏层状态以及与目标实例同属于一个部署单元的所有时间序列数据作为部署单元注意力层的输入,得到部署单元注意力层输出向量;
S12:将上一时刻第一隐藏层状态以及与目标实例同属于一个主机单元的所有时间序列数据作为主机单元注意力层的输入,得到主机单元注意力输出向量;
S13:将上一时刻第一隐藏层状态以及历史时刻的目标时序作为自相关性注意力层的输入,得到自相关性注意力层输出向量;
S14:将部署单元注意力层输出向量、主机单元注意力输出向量和自相关性注意力层输出向量合并作为第一输入向量;
S2:将所述第一输入向量输入到LSTM编码器,得到当前第一隐藏层状态;
S3:将所述当前第一隐藏层状态和上一时刻第二隐藏层状态输入到时间相关性注意力层,得到上下文向量;
S4:将所述上下文向量、上一时刻第二隐藏层状态和历史时刻的目标时序输入到LSTM解码器,得到当前第二隐藏层状态;
S5:将所述当前第二隐藏层状态和所述上下文向量进行线性变换,得到预测值。
2.根据权利要求1所述的一种基于注意力机制的集群资源预测方法,其特征在于,步骤S11具体包括:
基于上一时刻第一隐藏层状态和与目标实例同属于一个部署单元的所有时间序列数据计算第一注意力权重;
基于第一注意力权重,使用softmax函数计算出归一化部署单元注意力权重;
基于上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据以及归一化部署单元注意力权重,计算部署单元注意力层输出向量;
步骤S12具体包括:
计算与目标实例同属于一个主机单元的每个时间序列数据相对于历史目标时序的一阶时序相关性系数,并得到对应的主机单元内所有时间序列和历史目标时序的静态时间相关性权重;
基于上一时刻第一隐藏层状态和目标实例同属于一个主机单元的所有时间序列数据计算第二注意力权重;
基于静态时间相关性权重和第二注意力权重得到主机单元注意力权重,并进行归一化,得到归一化主机单元注意力权重;
基于上一时刻第一隐藏层状态、与目标实例同属于一个主机单元的所有时间序列数据、历史时刻的目标时序以及归一化主机单元注意力权重,计算主机单元注意力输出向量;
步骤S13具体包括:
计算不同时间窗口内的历史时刻目标时序之间的相关性系数,并得到对应的自相关权重;
基于上一时刻第一隐藏层状态和不同历史时刻目标时序计算第三注意力权重;
基于自相关权重和第三注意力权重得到自相关单元注意力权重,并进行归一化,得到归一化自相关单元注意力权重;
基于上一时刻第一隐藏层状态、历史时刻的目标时序、以及归一化自相关单元注意力权重,计算自相关性注意力层输出向量。
3.根据权利要求1~2任意一项所述的一种基于注意力机制的集群资源预测方法,其特征在于,步骤S3具体包括:
基于上一时刻第二隐藏层状态计算时间注意力层权重,并进行归一化,得到归一化后的时间注意力层权重;
基于当前第一隐藏层状态和归一化后的时间注意力层权重计算上下文向量。
4.一种基于注意力机制的集群资源预测装置,其特征在于,包括:
第一输入向量计算模块,用于将上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据、与目标实例同属于一个主机单元的所有时间序列数据以及历史时刻的目标时序作为输入注意力层的输入,得到第一输入向量;
所述第一输入向量计算模块具体包括:
第一计算单元,用于将上一时刻第一隐藏层状态以及与目标实例同属于一个部署单元的所有时间序列数据作为部署单元注意力层的输入,得到部署单元注意力层输出向量;
第二计算单元,用于将上一时刻第一隐藏层状态以及与目标实例同属于一个主机单元的所有时间序列数据作为主机单元注意力层的输入,得到主机单元注意力输出向量;
第三计算单元,用于将上一时刻第一隐藏层状态以及历史时刻的目标时序作为自相关性注意力层的输入,得到自相关性注意力层输出向量;
合并单元,用于将部署单元注意力层输出向量、主机单元注意力输出向量和自相关性注意力层输出向量合并作为第一输入向量;
第一隐藏层状态计算模块,用于将所述第一输入向量输入到LSTM编码器,得到当前第一隐藏层状态;
上下文向量计算模块,用于将所述当前第一隐藏层状态和上一时刻第二隐藏层状态输入到时间相关性注意力层,得到上下文向量;
第二隐藏层状态计算模块,用于将所述上下文向量、上一时刻第二隐藏层状态和历史时刻的目标时序输入到LSTM解码器,得到当前第二隐藏层状态;
线性变换模块,用于将所述当前第二隐藏层状态和所述上下文向量进行线性变换,得到预测值。
5.根据权利要求4所述的一种基于注意力机制的集群资源预测装置,其特征在于,所述第一计算单元具体包括:
第一注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和与目标实例同属于一个部署单元的所有时间序列数据计算第一注意力权重;
第一归一化权重计算子单元,用于基于第一注意力权重,使用softmax函数计算出归一化部署单元注意力权重;
第一注意力层输出向量计算子单元,用于基于上一时刻第一隐藏层状态、与目标实例同属于一个部署单元的所有时间序列数据以及归一化部署单元注意力权重,计算部署单元注意力层输出向量;
所述第二计算单元具体包括:
静态时间相关性权重计算子单元,用于计算与目标实例同属于一个主机单元的每个时间序列数据相对于历史目标时序的一阶时序相关性系数,并得到对应的主机单元内所有时间序列和历史目标时序的静态时间相关性权重;
第二注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和目标实例同属于一个主机单元的所有时间序列数据计算第二注意力权重;
第二归一化权重子单元,用于基于静态时间相关性权重和第二注意力权重得到主机单元注意力权重,并进行归一化,得到归一化主机单元注意力权重;
第二注意力层输出向量计算子单元,用于基于上一时刻第一隐藏层状态、与目标实例同属于一个主机单元的所有时间序列数据、历史时刻的目标时序以及归一化主机单元注意力权重,计算主机单元注意力层输出向量;
所述第三计算单元具体包括:
自相关权重计算子单元,用于计算不同时间窗口内的历史时刻目标时序之间的相关性系数,并得到对应的自相关权重;
第三注意力权重计算子单元,用于基于上一时刻第一隐藏层状态和不同历史时刻目标时序计算第三注意力权重;
第三归一化权重子单元,用于基于自相关权重和第三注意力权重得到自相关单元注意力权重,并进行归一化,得到归一化自相关单元注意力权重;
第三注意力层输出向量子单元,基于上一时刻第一隐藏层状态、历史时刻的目标时序、以及归一化自相关单元注意力权重,计算自相关性注意力层输出向量。
6.根据权利要求4~5任意一项所述的一种基于注意力机制的集群资源预测装置,其特征在于,所述上下文向量计算模块具体包括:
第四归一化权重子单元,用于基于上一时刻第二隐藏层状态计算时间注意力层权重,并进行归一化,得到归一化后的时间注意力层权重;
上下文向量计算子单元,用于基于当前第一隐藏层状态和归一化后的时间注意力层权重计算上下文向量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910413227.1A CN110222840B (zh) | 2019-05-17 | 2019-05-17 | 一种基于注意力机制的集群资源预测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910413227.1A CN110222840B (zh) | 2019-05-17 | 2019-05-17 | 一种基于注意力机制的集群资源预测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110222840A CN110222840A (zh) | 2019-09-10 |
CN110222840B true CN110222840B (zh) | 2023-05-05 |
Family
ID=67821396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910413227.1A Active CN110222840B (zh) | 2019-05-17 | 2019-05-17 | 一种基于注意力机制的集群资源预测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110222840B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909046B (zh) * | 2019-12-02 | 2023-08-11 | 上海舵敏智能科技有限公司 | 时间序列的异常检测方法及装置、电子设备、存储介质 |
CN111638958B (zh) * | 2020-06-02 | 2024-04-05 | 中国联合网络通信集团有限公司 | 云主机负载处理方法、装置、控制设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017097693A (ja) * | 2015-11-26 | 2017-06-01 | Kddi株式会社 | 異なる周期階層のデータによる学習を行うデータ予測装置、情報端末、プログラム及び方法 |
CN107730087A (zh) * | 2017-09-20 | 2018-02-23 | 平安科技(深圳)有限公司 | 预测模型训练方法、数据监控方法、装置、设备及介质 |
CN108182260A (zh) * | 2018-01-03 | 2018-06-19 | 华南理工大学 | 一种基于语义选择的多变量时间序列分类方法 |
CN109685252A (zh) * | 2018-11-30 | 2019-04-26 | 西安工程大学 | 基于循环神经网络和多任务学习模型的建筑能耗预测方法 |
CN109740419A (zh) * | 2018-11-22 | 2019-05-10 | 东南大学 | 一种基于Attention-LSTM网络的视频行为识别方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10558750B2 (en) * | 2016-11-18 | 2020-02-11 | Salesforce.Com, Inc. | Spatial attention model for image captioning |
CN110490213B (zh) * | 2017-09-11 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 图像识别方法、装置及存储介质 |
CN108154435A (zh) * | 2017-12-26 | 2018-06-12 | 浙江工业大学 | 一种基于循环神经网络的股指价格预测方法 |
CN108090558B (zh) * | 2018-01-03 | 2021-06-08 | 华南理工大学 | 一种基于长短期记忆网络的时间序列缺失值自动填补方法 |
CN108491680A (zh) * | 2018-03-07 | 2018-09-04 | 安庆师范大学 | 基于残差网络和注意力机制的药物关系抽取方法 |
CN108804495B (zh) * | 2018-04-02 | 2021-10-22 | 华南理工大学 | 一种基于增强语义的自动文本摘要方法 |
CN109697304A (zh) * | 2018-11-19 | 2019-04-30 | 天津大学 | 一种制冷机组多传感器数据预测模型的构建方法 |
-
2019
- 2019-05-17 CN CN201910413227.1A patent/CN110222840B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017097693A (ja) * | 2015-11-26 | 2017-06-01 | Kddi株式会社 | 異なる周期階層のデータによる学習を行うデータ予測装置、情報端末、プログラム及び方法 |
CN107730087A (zh) * | 2017-09-20 | 2018-02-23 | 平安科技(深圳)有限公司 | 预测模型训练方法、数据监控方法、装置、设备及介质 |
CN108182260A (zh) * | 2018-01-03 | 2018-06-19 | 华南理工大学 | 一种基于语义选择的多变量时间序列分类方法 |
CN109740419A (zh) * | 2018-11-22 | 2019-05-10 | 东南大学 | 一种基于Attention-LSTM网络的视频行为识别方法 |
CN109685252A (zh) * | 2018-11-30 | 2019-04-26 | 西安工程大学 | 基于循环神经网络和多任务学习模型的建筑能耗预测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110222840A (zh) | 2019-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109587713B (zh) | 一种基于arima模型的网络指标预测方法、装置及存储介质 | |
CN110941928B (zh) | 一种基于dropout-SAE和Bi-LSTM的滚动轴承剩余寿命预测方法 | |
CN101620045B (zh) | 基于时间序列的步进应力加速退化试验可靠性评估方法 | |
CN112434848B (zh) | 基于深度信念网络的非线性加权组合风电功率预测方法 | |
CN105071983A (zh) | 一种面向云计算在线业务的异常负载检测方法 | |
CN109886464B (zh) | 基于优化奇异值分解生成特征集的低信息损失短期风速预测方法 | |
US10161269B2 (en) | Output efficiency optimization in production systems | |
CN110222840B (zh) | 一种基于注意力机制的集群资源预测方法和装置 | |
CN112417028A (zh) | 一种风速时序特征挖掘方法及短期风电功率预测方法 | |
CN116316591A (zh) | 基于混合双向门控循环的短期光伏功率预测方法及*** | |
CN104199870A (zh) | 基于混沌搜索的ls-svm预测模型的建立方法 | |
CN114415488A (zh) | 一种原子钟钟差数据异常检测及修正方法和*** | |
CN116169670A (zh) | 一种基于改进神经网络的短期非居民负荷预测方法及*** | |
CN111563631A (zh) | 基于变分模态分解的风力发电功率预测方法及设备 | |
CN112612781A (zh) | 数据修正方法、装置、设备及介质 | |
CN104239689B (zh) | 基于优化相关向量机的短期风速预测方法 | |
CN113837434A (zh) | 太阳能光伏发电预测方法、装置、电子设备和存储介质 | |
CN116384574A (zh) | 一种基于w-lstm的非参数负荷区间预测方法 | |
CN117010442A (zh) | 设备剩余寿命预测模型训练方法、剩余寿命预测方法及*** | |
CN116992757A (zh) | 基于深度学习和滚动优化的井口压力预测方法和装置 | |
Zhu et al. | Wind Speed Short-Term Prediction Based on Empirical Wavelet Transform, Recurrent Neural Network and Error Correction | |
CN116011655A (zh) | 基于两阶段智能特征工程的负荷超短期预测方法及*** | |
CN116578858A (zh) | 基于图神经网络的空压机故障预测与健康度评价方法及*** | |
CN115829157A (zh) | 基于变分模态分解和Autoformer模型的化工水质指标预测方法 | |
CN114971062A (zh) | 一种光伏功率预测方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |