交通预测-STDN-论文阅读

1.文章标题

《Revisiting Spatial-Temporal Similarity: A Deep Learning Framework for Traffic Prediction》

2.简介

虽然现有的工作对空间依赖以及时间动态做出了强有力的假设,但在实践过程中,空间依赖性可能是动态的,时间的周期性特性是动态变化的;
本文提出了一种新的时空动态网络(STDN),引入一种流动门控机制来学习位置之间的动态依赖,设计了一种周期转移注意机制来处理长期的周期性时间转移;
经过真实交通数据集上的实验结果验证,方法有效。

4.主体部分

在这里插入图片描述
将城市分割成一个ab的网格图,总共有n = ab个区域
(1)时空依赖 —— 采用局部CNN来建模
在每一个时间端 t,将区域 i 和 它的邻居们看成一个 有两个通道的S*S的图,一个通道是开始容量信息,另一个是结束容量信息。目标区域是这张图的中心。
学习函数为:
在这里插入图片描述

(2)Spatial Dynamic Similarity: Flow Gating Mechanism
使用局部CNN对区域间的交通流进行建模,如果两个区域之间存在更多的流动,它们之间的关系就会更强(即,它们更相似)

对每个时间段内的两个区域的交通流,进行建模
在这里插入图片描述
学习函数为
在这里插入图片描述
由于加入了交通流门控机制,公式(1)进一步写为
在这里插入图片描述
在K个卷积层叠加后,使用扁平层后的全连接层来推断区域 i 的空间表示

(3)短期时间依赖 —— LSTM

学习函数为:
在这里插入图片描述
(4)长期时空动态 —— LSTM
由于上文都是对短期间隔进行时空信息进行建模,而没有考虑长期信息,而交通流量数据并不是严格的周期性的,例如,工作日的高峰时间通常是在下午,但可能从下午4点半到下午6点不等。由于事故或交通拥堵,周期性信息的时间转移在交通序列中普遍存在。下图显示了在不同天数和数周之间的时间变化:
在这里插入图片描述因此我们加入了周期性转移的注意机制(PSAM),在之前的时间间隔里进一步选择一些时间间隔:
我们在Q中进一步选择Q时间间隔。例如,如果预测时间是晚上9点-9:30,我们选择预测时间前后1小时(即晚上8:00-10:30和|Q|=5。
局部模型图解如下:
在这里插入图片描述

学习函数为:
在这里插入图片描述
每天的交通流量为所选的时间间隔的流通加权求和
在这里插入图片描述
然后,我们使用另一个LSTM,通过使用这些周期表示作为输入来保存顺序信息。
在这里插入图片描述
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/b53b2b9fa8be484c9469977d9091ecb5.png

最终的预测函数:
在这里插入图片描述
(5)损失函数
在这里插入图片描述
也不知道对不对,就酱紫记录一下吧。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
投资组合的月收益率标准差是衡量投资组合风险的一个重要指标。在计算投资组合月收益率标准差时,需要先计算出每个资产的月收益率,然后再计算投资组合的加权平均标准差。 假设有n个资产,每个资产的月收益率为r1, r2, ..., rn,对应的权重为w1, w2, ..., wn。则投资组合月收益率标准差的计算公式如下: ``` portfolio_std = sqrt(w1^2 * std1^2 + w2^2 * std2^2 + ... + wn^2 * stdn^2 + 2*w1*w2*std1*std2*rho12 + 2*w1*w3*std1*std3*rho13 + ... + 2*wn-1*wn*stdn-1*stdn*rhon-1,n) ``` 其中,std1, std2, ..., stdn分别表示每个资产的月收益率标准差,rho12, rho13, ..., rhon-1,n为每两个资产之间的相关系数。 在Python中,可以使用NumPy库和Pandas库来计算投资组合月收益率标准差,示例代码如下: ```python import numpy as np import pandas as pd # 定义资产收益率和权重 returns = pd.DataFrame({ 'Asset1': [0.05, 0.04, 0.02, 0.03, 0.01], 'Asset2': [0.06, 0.03, 0.04, 0.02, 0.01] }) weights = pd.Series([0.6, 0.4]) # 计算资产收益率标准差 stds = np.std(returns, axis=0) # 计算相关系数 corr = np.corrcoef(returns.T) # 计算投资组合月收益率标准差 portfolio_std = np.sqrt(np.dot(weights.T, np.dot(corr, weights)) * np.dot(stds.T, stds)) ``` 在以上代码中,定义了两个资产的收益率和权重,使用np.std()方法计算出每个资产的月收益率标准差stds,使用np.corrcoef()方法计算出资产之间的相关系数corr。然后,使用np.dot()方法计算出投资组合月收益率标准差portfolio_std。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值