文章目录
- MSSTN: Multi-Scale Spatial Temporal Network for Air Pollution Prediction
- 问题提出
- 网络结构
- S-Net
- T-Net
- F-Net
- 源码
- 数据集分析
- GeoMAN: Multi-level Attention Networks for Geo-sensory Time Series Prediction
- 问题提出
- 网络结构
- 空间注意力
- 编码器
- 时间注意力
- 外部因素融合
- 解码器
- Group-Aware Graph Neural Network for Nationwide City Air Quality Forecasting
- 核心思想
- 模型结构
- 自注意力网络
- 可微分分组网络
- 建模城市群之间的依赖关系
- 建模城市之间的依赖关系
- 解码器
- K-means对比
- 数据集分析
MSSTN: Multi-Scale Spatial Temporal Network for Air Pollution Prediction
问题提出
文章指出,对于空气质量数据集,无论是在时间维度和空间维度上,都存在着多尺度特性,例如,在时间方面存在短期波动,中期周期性和长期趋势,在空间方面存在城市规模和区域规模。
如上图(b),某个传感器的读数在1年尺度上显示长期趋势,在1天尺度上显示周期性,在1小时尺度上显示波动。如上图(c)个传感器组成的结构可分为城市尺度图和区域尺度图,城市尺度图每个节点代表一个传感器,区域尺度图每个节点代表一个城市(区域>城市)。由此可见在时间和空间维度上都存在多尺度的特征,据此,作者提出了一个多尺度时空网络(MSSTN)。
网络结构
MSSTN整体的网络结构比较简单,分为三个子网络:S-Net用来提取多尺度空间特征,T-Net用来提取多尺度时间特征,F-Net进行特征融合并给出最后的预测
S-Net
作者定义了多种图, 每个城市为一个图,即城市规模图,从每个城市中预先挑选一个传感器代表该城市,从而构成一个以城市为节点的区域规模图。
对不同的图做GCN(ChebNet),得到不同图的空间特征集合。
T-Net
T-Net的结构类似于TCN,但每层加入了一个门控非线性操作,具体公式如下
u l u^l ul为 l l l层的输入的时序信号, ∗ d *d ∗d为扩张卷积, σ \sigma σ为sigmoid激活函数
F-Net
将多尺度时间特征和空间特征和原始输入拼接后作为输入,经过一个多层感知器得到预测结果,为了确保有效的预测范围,作者采用了一个trick( μ \mu μ律对数量化),这块不是很懂
源码
数据集分析
数据集是以北京为中心的15个城市,文中单独提供了北京(bj)、石家庄(sjz)、太原(ty)、呼和浩特(hhht)、大连(dl)五个城市的数据,以组成城市尺度图(city-scale),加一个区域尺度(region-scale)的数据(mid、midscale)。
PM2.5中的数据shape为(时序长度,节点数,特征数)
GeoMAN: Multi-level Attention Networks for Geo-sensory Time Series Prediction
问题提出
文章指出,基于地理的时序预测,存在两个复杂的因素:
- 动态时空关联性
- 传感器之间的相关性,即空间相关性
- 传感器自身的相关性,即与历史时间的相关性
- 外部因素
传感器的读数会受到许多外部因素影响,像天气、时间等。这些因素需要考虑。
针对以上几点,作者提出了一个多级注意力网络(GeoMAN),该网络主要分为两个部分:
多级注意力机制和外部因素融合模块。
注:该网络本质还是单纯的时序预测,即每次都是对一个节点进行预测,只是预测这个结果时用到了空间的信息(所有传感器的属性值),故和交通预测直接得到多个节点的预测值有所不同。
网络结构
网络采用了编解码的架构,用LSTM为基础单元建模,整个网络结构图如下
空间注意力
-
局部空间注意力(这里的局部和图卷积上的局部不是一个概念,这里的局部就是指每个传感器多个特征,也就是争对各特征的注意力)
以下就是计算注意力的公式
h 、 s h、s h、s分别是LSTM中前一时间步上的隐藏状态和细胞状态, k k k为第k个特征
这里直接将得到各注意力分数乘到各特征上。 -
全局空间注意力
这里的全局注意力机制就类似图注意力了(GAT),计算各节点(传感器)之间的相关性。
类似于局部空间注意力,公式如下:
l l l为第 l l l个传感器。
同时作者考虑到各传感器之间的地理空间相似性 P i , j P_{i,j} Pi,j(例如以距离的倒数来衡量),同时通过一个可调的超参数 λ \lambda λ来调节两个之间的作用程度
编码器
编码器由多个LSTM单元组成,在输入每个LSTM单元之前都经过一个空间注意力,空间注意力将局部空间注意力和全局空间进行简单拼接。
时间注意力
随着编码器的长度增加,编解码的架构的性能会极速下降,为了解决这个问题,作者使用一个时间注意力机制。
外部因素融合
作者将多种外部因素(气象特征、时间特征、POIs等)引入进来,用一个简单高效的组件来融合这些因素,得到向量
解码器
解码器也是用LSTM来实现的,LSTM单元的两个输入分别是上一时间步的隐藏状态,上一步的输出、外部因素融合的向量、时间注意力的输出三者的拼接。
最终的预测
Group-Aware Graph Neural Network for Nationwide City Air Quality Forecasting
核心思想
提出城市群的概念,通过一个映射矩阵,讲不同城市按概率映射到不同的城市群,构建城市群图,以此捕获出城市中的一些隐藏依赖
模型结构
整个模型采用的编解码结构,编码器和解码器的结构类似,分为自注意力网络,可微分分组网络,组关系编码组件
自注意力网络
使用的就是transfromer中的自注意力
可微分分组网络
通过矩阵S将原先城市节点分配到不同的组里,注意这里是按概率分配,即每个节点属于所有组,只是所属某个组的概率不同
如上图6个节点分到两个组,每个节点属于不同组的概率和为1,
作者在这里引入了城市节点的地理位置信息
X i X_i Xi为自注意力的输出,L为城市位置信息,i 表示第i个城市,j 表示第j个组,Z表示组的表示
建模城市群之间的依赖关系
根据得到的组的表示Z,求出各组之间的依赖关系,同时引入时间信息
R i , j R_{i,j} Ri,j表示城市组i和城市组j之间的关系,根据这个依赖关系进行消息聚合和表示更新
KaTeX parse error: Expected group after '^' at position 2: Z^̲'_i 表示更新后的城市组的表示
建模城市之间的依赖关系
根据更新后的城市组的表示,获取每个城市基于城市组的表示
然后融合每个城市基于城市组的表示和原先的表示(自注意力的输出),进行消息聚合和表示更新,得到每个城市一个新的表示
解码器
解码器和编码器一样,但是去掉了最开始的自注意力机制,输入为编码器的输出,即 X 3 X^3 X3,映射矩阵S(解码器中取消梯度更新)、 关系R都采用编码器的结果不变。从而得出预测结果。
K-means对比
为验证可微分分组网络的效果,与k-means进行对比,对不同城市进行分组,同一颜色属于同一组。
上图可以看出,k-means不能捕获到海风效应,将南海沿海城市分成不同的城市组,而GAGNN则恰好相反,南海沿海城市同色,说明能捕获到这些隐藏的关联。
数据集分析
数据集是作者自己整理的
-
模型输入x
(数据量,历史时间长度24小时,节点数,特征维度) -
模型输出y
(数据量,预测时间长度6小时,节点数)值即为AQI的值。 -
时间数据u
(数据量,月、周、时三属性) -
连接的城市,即边edge_index
(连接的两城市,边的数量) -
边的值edge_w
-
经纬度
(城市数,经纬度)