目录
一、基于PyTorch搭建注意力机制(Attention)模型实现风速时间序列预测
一、基于PyTorch搭建注意力机制(Attention)模型实现风速时间序列预测
注意力机制(Attention)的提出,使得它在很多任务上面都大放异彩,对于较为流行的NLP模型 Transformer
内部就是基于多头注意力机制,这使得它能够在很多任务上面学习到更多的信息。
上有Google的 Attention is All You Need
,下有 BERT
这种大NLP表征模型,使得注意力机制在NLP的地位就像卷积在图像识别领域的单位一样不可或缺。
Attention相当于RNN和CNN的加强版,自2017年Google机器翻译团队发表的《Attention is All You Need》,注意力机制成为了RNN类和CNN类模型之外的又一新的模型大类。
Attention的出生是应用在NLP领域,它是代替了RNN类网络,由于时间序列也是使用RNN类网络,所以本项目尝试将Attention应用到时间序列任务上,试试效果如何。
本项目依旧是使用过去20天的数据来预测未来1天的数据,且每天的特征我们是只用到了一个变量 WIND
风速,也就是单变量预测。
二、配置类
下面是本项目需要使用的参数以及相关变量,为了方便我们将所有参数封装到一个类中,也可以使用 argparse
参数解析方式。
为了说明数据各个阶段的维度变化,特此定义了如下变量大小,小伙伴需要记住下面变量的值一遍理解下文说明各个阶段的维度大小。
class Config