相关文章推荐
慈祥的黄豆  ·  keras可视化pydot ...·  1 周前    · 
飞翔的海龟  ·  在Swift ...·  1 年前    · 
备案 控制台
学习
实践
活动
专区
工具
TVP
写文章

使用 LSTM 深度学习模型进行温度的时间序列单步和 多步 预测

本文展示了如何进行 多步 预测 并在模型中使用多个特征。 本文的简单版本是,使用过去48小时的数据和对未来1小时的 预测 (一步),我获得了温度误差的平均绝对误差0.48(中值0.34)度。 目标是使用过去的值来 预测 未来。数据是时间序列或序列。对于序列建模,我们将选择具有 LSTM 层的递归神经网络的Tensorflow实现。 = Input(shape=(n_lag, n_ft)) # Series signal lstm _layer = LSTM (n_layer, activation ='relu')( lstm _input) x = Dense(n_outputs)( lstm _layer) self.model = Model(inputs 预测 未来n_steps 最后本文的完整代码:https://github.com/Eligijus112/Vilnius-weather- LSTM 作者:Eligijus Bujokas deephub

1.3K 2 0

基于长短期记忆神经网络 LSTM 多步 长时间序列 预测

长短时记忆网络( LSTM )是一种能够学习和 预测 长序列的递归神经网络。LSTMs除了学习长序列外,还可以学习一次 多步 预测 ,这对于时间序列的 预测 非常有用。 在本教程中,您将了解如何使用Keras在Python中开发用于 多步 骤时间序列 预测 LSTM 。 完成本教程后,您将知道: 如何为 多步 时间序列 预测 准备数据。 如何建立 多步 时间序列 预测 LSTM 模型。 我们将设计一个 多步 骤的 预测 多步 LSTM 网络 在本节中,我们将使用持久性示例作为起点,并研究将 LSTM 适合于培训数据并对测试数据集进行 多步 预测 所需的更改。 在我们使用这些数据来培训 LSTM 之前,必须准备好这些数据。 LSTM 预测 下一步是利用fit LSTM 网络进行 预测 。使用合适的 LSTM 网络,可以通过调用model.predict()进行单个 预测

3.3K 5 1
  • 广告
    关闭

    上云精选

    2核2G云服务器 每月9.33元起,个人开发者专属3年机 低至2.3折

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    时间序列 多步 预测 的五种策略

    在一些时间序列问题中,必须 预测 多个时间步长。与单步 预测 相比,这些称为 多步 时间序列 预测 问题。 第一种:直接 多步 预测 直接 多步 预测 的本指还是单步 预测 多步 转单步,比如上面我们要 预测 3个时间点的序列的值,则我们就构建3个模型: model1:[1,2,3,4,5,6,7,8,9],[X] model2 第二种:递归 多步 预测 递归 多步 预测 ,递归 多步 预测 的本质还是简单的单步 预测 ,但是和第一种情况不同,递归 多步 预测 不需要 预测 时间步个模型,仅仅一个模型就够了。 这是常见的使用nn进行 多步 预测 的网络设计,特点就只是输出层的nn根据 预测 的时间步数进行设置而已。 有没有发现和序列标注问题的形式非常类似? input output [1,2,3][4,5,6] [2,3,4],[5,6,7] [3,4,5],[6,7,8] ..... [8,9,10],[X,Y,Z] 在seq2seq的结构中,我们使用 LSTM

    1K 2 0

    使用 LSTM 预测 天气

    本篇中的长短时记忆网络( LSTM )使用144个温度数据点(一天的数据)历史记录来 预测 未来(接下来)6个温度数据点(一个小时的数据)。 1小时有6次观测数据,1天有6x24=144次观测数据 print(df.shape) #(420551, 15),2920天(8年)的天气数据 假设我们需要 预测 未来6小时的气温,为了做 预测 ,我们可以选择 simple_ lstm _model = tf.keras.models.Sequential([ tf.keras.layers. LSTM (units=8, input_shape=x_train_uni.shape ='adam', loss='mae')#模型编译,设定优化器和损失类型 #做个简单的 预测 来检查模型的输出 for x, y in val_univariate.take(1): print(simple_ lstm _model.predict 其中,历史数据(144个点)用线表示,真实值(6个点)用X表示, 预测 值(6个点)用O表示。最简单的,可以增大EVALUATION_INTERVAL和EPOCHS来提高 预测 精度。 ?

    4K 2 0

    LSTM 时间序列 预测

    这篇文章主要讲解用 LSTM 如何进行时间序列 预测 数据直接放在代码里,省去了下载文件并读取的麻烦。 并且我对数据进行了归一化处理 我们希望输入前9年的数据,让 LSTM 预测 后3年的客流,那么我们可以先用前9年中每个月的数据训练 LSTM ,让它根据前几个月 预测 下一个月的客流。 等训练完成后,我们让 LSTM 根据前9年的数据 预测 出下一个月的客流,把刚刚输出的 预测 客流作为输入,迭代求得后3年的客流 请注意,通常情况下Tensor的第一个维度是批次大小batch size,但是PyTorch ),并且至少存在一层具有任何一种"挤压"性质的激活函数的2层全连接层就能拟合任何的连续函数 为了进行时间序列 预测 ,我们在 LSTM 后面街上两层全连接层(1层也行),用于改变最终 LSTM 输出Tensor的维度 我们可以在同一批次中,训练 LSTM 预测 不同月份的客流量。1~t月的输入对应了t+1月的客流量。

    2.3K 3 3

    股票 预测 lstm (时间序列的 预测 步骤)

    LSTM 如果对 LSTM 原理不懂得小伙伴可以看博主下一篇博客,因为博主水平有限,结合其他文章尽量把原理写的清楚些。 既然是时间序列 预测 ,我们最关心的是 预测 值在时间维度上的走势如何,那我们只要最后一列volume和第一列date这两列就好了。 绿色是测试的 预测 值,蓝色的是原始数据,和前面说的一样,趋势大概相同,但是峰值有误差。还有一个问题就是博主这里的代码是将 预测 值提前一天画的。 因为真实 预测 出来会有滞后性,就看起来像是原始数据往后平移一天的缘故。但博主查阅了很多资料,暂时没发现很方便能消除 lstm 滞后性的办法。 所以博主姑且认为测试集 预测 值提前一天的效果为最佳效果,这也是为什么上面代码要+1的原因。如果小伙伴们知道如何方便快捷消除 lstm 时间序列 预测 的滞后性,记得给博主留言噢。

    652 2 0

    时间序列 预测 ——双向 LSTM (Bi- LSTM )「建议收藏」

    本文展示了使用双向 LSTM (Bi- LSTM )进行时间序列 预测 的全过程,包含详细的注释。 整个过程主要包括:数据导入、数据清洗、结构转化、建立Bi- LSTM 模型、训练模型(包括动态调整学习率和earlystopping的设置)、 预测 、结果展示、误差评估等完整的时间序列 预测 流程。 # 特征数 input_size = X_train.shape[2] # 时间步长:用多少个时间步的数据来 预测 下一个时刻的值 time_steps = X_train.shape[1] # 隐藏层 cell_size = 128 batch_size=24 bilstm = keras.Sequential() bilstm.add(Bidirectional(keras.layers. LSTM =sum(abs(per_real_loss))/len(per_real_loss) print(avg_per_real_loss) 0.12909395542298405 #计算指定置信水平下的 预测 准确率

    1.1K 4 0

    Keras 实现 LSTM 时间序列 预测

    本文将介绍如何用 keras 深度学习的框架搭建 LSTM 模型对时间序列做 预测 。 1 项目简单介绍 1.1 背景介绍 本项目的目标是建立内部与外部特征结合的多时序协同 预测 系统。 课题通过进行数据探索,特征工程,传统时序模型探索,机器学习模型探索,深度学习模型探索(RNN, LSTM 等),算法结合,结果分析等步骤来学习时序 预测 问题的分析方法与实战流程。 ,其他与 预测 一样。 时间跨度为2016年9月1日 - 2016年11月30日 训练与 预测 都各自包含46组数据,每组数据代表不同数据源,组之间的温度与湿度信息一样而输出不同. 2 导入库并读取查看数据 5 模型 预测 并可视化 蓝色曲线为真实输出 绿色曲线为训练数据的 预测 输出 黄色曲线为验证数据集的 预测 输出 红色曲线为测试数据的 预测 输出(能看出来模型 预测 效果还是比较好的)

    1.7K 1 1

    使用 LSTM 预测 正弦曲线

    之前介绍过用 LSTM 预测 天气的例子,该例子中数据集的处理和曲线绘制函数稍微有点复杂。这篇我们使用标准正弦函数做数据集,让代码更简单,来加深我们对 LSTM 的理解。 模型,并拟合/训练模型: #创建一个简单的 LSTM 网络模型 simple_ lstm _model = tf.keras.models.Sequential([ tf.keras.layers. LSTM ,绘制最后的历史数据并 预测 未来: (未来)") plt.legend(loc="upper right") plt.title(" LSTM sine曲线 预测 ",fontsize =18) plt.xlabel('Time') 我们可以看到 注意,除了首个 预测 点以外,对其它点进行 预测 时,除了用到历史数据外,也会用到一些 预测 值,所以 预测 多个点时,误差会积累 (图中 预测 的幅值大过1)。

    1.4K 3 0

    Pytorch实现 LSTM 时间序列 预测

    摘要:本文主要基于Pytorch深度学习框架,实现 LSTM 神经网络模型,用于时间序列的 预测 。 上一部分简单地介绍了 LSTM 的模型结构,下边将具体介绍使用 LSTM 模型进行时间序列 预测 的具体过程。 对于时间序列,本文选取正弦波序列,事先产生一定数量的序列数据,然后截取前部分作为训练数据训练 LSTM 模型,后部分作为真实值与模型 预测 结果进行比较。 seq为序列数据,k为 LSTM 模型循环的长度,使用1~k的数据 预测 2~k+1的数据。 此处调用nn. LSTM 构建 LSTM 神经网络,模型另增加了线性变化的全连接层Linear(),但并未加入激活函数。由于是单个数值的 预测 ,这里input_size和output_size都为1. ?

    6.9K 7 0

    使用 LSTM 进行股价、汇率 预测

    最近因为做项目的需要,要做一些数据 预测 ,因此就去学习了一下相关的知识。主要就是采用 LSTM 来做时间序列的 预测 。 在不同epoch下,对2017年的数据进行 预测 的结果像下面的图片中所示的那样:(根据之前60天的真实数据来 预测 第二天的数据) 其中,蓝色的是真实曲线,绿色的是 预测 曲线。 确实能够达到一个很不错的 预测 效果。 预测 接下来一个月的英镑汇率 上面的股价 预测 ,是基于前面60天的真实数据来 预测 下一天的真实数据。那么要是 预测 接下来一个月的汇率呢? 由于 预测 的是接下来的30天,并且汇率本身的变化程度就比较小(每天相差几分钱),因此,在测试集上,只能说是 预测 的变化趋势基本一致,但是具体的值的话, 预测 的不准。

    279 2 0

    使用 LSTM 预测 比特币价格

    本文以“时间序列 预测 LSTM 神经网络”这篇文章为基础。如果没有阅读,我强烈建议你读一读。 考虑到近期对比特币货币的泡沫的讨论,我写了这篇文章,主要是为了 预测 比特币的价格和张量,我使用一个不只是看价格还查看BTC交易量和货币(在这种情况下为美元)的多维 LSTM 神经网络,并创建一个多变量序列机器学习模型 然后将数据馈送到网络中,这个网络具有:一个输入 LSTM 层接收模型数据[dimension,sequence_size,training_rows],隐藏的第二个 LSTM 层的数据,以及具有tanh函数的完全连接输出层 第二种 预测 类型是t+n的 多步 超前 预测 ,我们在移动窗口填充真实数据窗口预置的 预测 ,并绘制N个步骤。结果如下: 那么,我们可以看到,逐点 预测 时, 预测 做的很合理。有时候会有些出入,但总体遵循真实数据。 该项目的完整代码:Multidimensional- LSTM -BitCoin-Time-Series。

    791 7 0

    lstm 多变量时间序列 预测 (时间序列如何 预测 )

    lstm 时间序列 预测 模型 时间序列- LSTM 模型 (Time Series – LSTM Model) Now, we are familiar with statistical modelling 现在我们已经了解了 LSTM 模型的内部工作原理,让我们实现它。 为了理解 LSTM 的实现,我们将从一个简单的示例开始-一条直线。 让我们看看, LSTM 是否可以学习直线的关系并对其进行 预测 。 让我们根据回溯期的值将时间序列数据转换为监督学习数据的形式,回溯期的值本质上是指可以 预测 时间“ t”时的滞后次数。 现在,让我们看看我们的 预测 是什么样的。 翻译自: https://www.tutorialspoint.com/time_series/time_series_ lstm _model.htm lstm 时间序列 预测 模型 发布者:全栈程序员栈长,转载请注明出处

    720 6 0

    TensorFlow实战——RNN( LSTM )—— 预测 sin函数

    http://blog.csdn.net/u011239443/article/details/73650806 关于 LSTM 可以参阅:http://blog.csdn.net/u011239443 TIMESTEPS]]) return np.array(X,dtype=np.float32),np.array(y,dtype=np.float32) 我们要做的任务为根据前TIMESTEPS-1个采样点来 预测 第 调用predict 预测 结果: predicted = [[pred] for pred in regressor.predict(test_X)] 接下来我们来看看函数 lstm _model: lstm _model(X,y): # 创建深度 LSTM ,深度为 HIDDEN_SIZE lstm _cell = tf.contrib.rnn.BasicLSTMCell(HIDDEN_SIZE 返回值为( 预测 结果,损失值,训练操作):predictions,loss,train_op 预测 & 评价 predicted = [[pred] for pred in regressor.predict

    721 2 0