数据集
首先介绍一下我们的数据集,可以在我的github下载
该数据集是一个污染数据集,我们需要用该多维时间序列去预测pollution这个维度
构建训练数据
首先我们删去数据中date,wnd_dir维(注:为了演示方便故不使用wnd_dir,其实可以通过代码将其转换为数字序列)
data
再对于数据进行归一化处理,这里因为工程需要,笔者自写了最大最小归一化,可以使用
sklearn的归一化函数代替
#多维归一化 返回数据和最大最小值
#多维归一化 返回数据和最大最小值
def NormalizeMult(data):
data = np.array(data)
normalize = np.arange(2*data.shape[1],dtype='float64')
normalize = normalize.reshape(data.shape[1],2)
print(normalize.shape)
for i in range(0,data.shape[1]):
#第i列
list = data[:,i]
listlow,listhigh = np.percentile(list, [0, 100])
# print(i)
normalize[i,0] = listlow
normalize[i,1] = listhigh
delta = listhigh - listlow
if delta != 0:

该博客介绍了如何使用Keras构建一个结合CNN、双向LSTM和注意力机制的模型,应用于多维时间序列预测,特别是针对污染数据集的pollution维度预测。通过滑动时间窗口方法处理数据,然后利用定制的归一化方法预处理。网络结构参照了其他相关工作,并给出了训练过程。代码已上传至GitHub。
最低0.47元/天 解锁文章
2684

被折叠的 条评论
为什么被折叠?



