![](https://img-blog.csdnimg.cn/direct/56f00530638b4bef87c72fb29ab3032c.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
时间序列预测
文章平均质量分 95
时间序列预测现有的大量方法没有真正的预测未来值,只是用历史数据做验证, 利用时间序列分解算法存在信息泄露的问题等一些问题。本专栏利用深度学习、Transformer、序列分解、模型融合等方法实现时间序列真正预测未来值。
几度春风里
几度春风里,看花谢花开,含羞的程序员,惹人爱!
展开
-
时间序列预测专栏介绍 — 算法原理、源码解析、项目实战
时间序列预测 — ARIMA-LSTM实现多变量多步负荷预测(Tensorflow)时间序列预测 — ARIMA-LSTM-attention 实现多变量多步负荷预测。时间序列预测 — CNN-LSTM实现多变量多步负荷预测(Tensorflow)时间序列预测 — ARIMA-WOA-CNN-LSTM实现多变量多步负荷预测。时间序列预测 — ARIMA-CNN-LSTM实现多变量多步负荷预测。时间序列预测 — ARIMA-WOA-LSTM实现多变量多步负荷预测。原创 2023-12-07 10:43:23 · 1796 阅读 · 2 评论 -
时间序列预测 — 时间序列预测存在的问题:如何真正预测未来值?
时间序列是指按照时间顺序排列的一系列数据点,通常是在连续的时间间隔内收集的数据。这些数据点可以代表各种现象,如股票价格、负荷、光伏、风电等,它们可以展现出随时间变化的趋势、周期性和随机性。如下的电力负荷数据在时间序列分析中,常用的模型包括深度学习方法(LSTM、GRU、BiLSTM等)、Transformer方法(Attention、informer、autoformer等)、时间序列分解方法( VMD、EEMD、CEEMDAN等)这些模型可以帮助我们对时间序列数据进行建模,并进行未来的预测。原创 2024-01-23 16:24:37 · 988 阅读 · 4 评论 -
时间序列预测 — 时间序列预测研究综述
指对某种事物发展变化过程进行观测并按照一定频率采集得出的一组随机变量。就是从众多数据中挖掘出其蕴含的核心规律并且依据已知的因素对未来的数据做出准确的估计。由于大量物联网数据采集设备的接入、多维数据的爆炸增长和对预测精度的要求愈发苛刻,经典的参数模型以及传统机器学习算法难以满足预测任务的高效率和高精度需求。近年来,以卷积神经网络、循环神经网络和 Transformer模型为代表的深度学习算法在时间序列预测任务中取得了丰硕的成果。原创 2023-11-10 20:42:00 · 6511 阅读 · 0 评论 -
时间序列预测 — 时间序列数据预处理
Z分数(z-score),是一个分数与平均数的差再除以标准差的过程 → z=(x-μ)/σ,其中x为某一具体分数,μ为平均数,σ为标准差,Z值的量代表着原始分数和母体平均值之间的距离,是以标准差为单位计算。可以通过df.info()函数大概查看缺失值情况,df.info()可以查看列的数据类型,数据数量信息,df.describe()函数用于查看数据的统计信息。首先计算基本的统计量,然后绘值箱型图。异常值是指样本中的个别值,其数值明显偏离其余的观测值,异常值也称离群点,异常值的分析也称为离群点的分析。原创 2023-12-04 19:12:06 · 2007 阅读 · 0 评论 -
时间序列预测 — 预测数据集(负荷、风电、光伏、销量等)
GEFCom2014 “负荷预测数据”为竞赛的公共数据集,GEFCom2014 的负荷预测轨迹为概率负荷预测。原创 2023-11-13 14:51:35 · 3642 阅读 · 12 评论 -
时间序列预测 — LSTM实现单变量滚动风电预测(Tensorflow):单变量滚动
实验数据集采用数据集5:风电机组运行数据集(下载链接),包括风速、风向、温度、湿度、气压和真实功率等共30万余条。原创 2023-11-26 17:17:11 · 1784 阅读 · 4 评论 -
时间序列预测 — LSTM实现多变量多步负荷预测(Tensorflow):直接多输出
实验数据集采用数据集6:澳大利亚电力负荷与价格预测数据(下载链接),包括数据集包括日期、小时、干球温度、露点温度、湿球温度、湿度、电价、电力负荷特征,时间间隔30min。单独查看部分负荷数据,发现有较强的规律性。原创 2023-11-27 17:11:29 · 2133 阅读 · 11 评论 -
时间序列预测 — LSTM实现多变量多步负荷预测(Tensorflow):多输入多输出
整体的思路也就是取出预测前48*7行数据预测未来的6行数据,然后见6行数据添加进历史数据,再预测6行数据,滚动预测。(注意多变量预测多变量预测的是多列,预测单变量只有一列)通过前7天的48*7行数据预测后1天的数据48个,需要对数据集进行滚动划分(也就是前48*7行的数据和后6行的数据训练,后面预测时就可通过48*7行数据测未来的6行标签,然后将6行预测值添加到历史数据中,历史数据变为48*7+6个,再取出后48*7行数据进行预测,得到6行预测值,滚动进行预测直到预测完成,注意此时的预测值是行而不是个)原创 2024-01-06 20:37:58 · 2270 阅读 · 1 评论 -
时间序列预测 — GRU实现多变量多步光伏预测(Tensorflow)
实验数据集采用数据集7:澳大利亚光伏数据集(下载链接),包括数据集包括时间、场站名称、辐照强度(Wh/㎡)、 环境温度(℃)、全场功率(kW)等5个特征,时间间隔5min。注意:辐照强度(Wh/㎡)、 环境温度(℃)、全场功率(kW)特征名前有个空格# 可视化数据if row == 1 and col == 1: # 处理只有1行1列的情况axes = [axes] # 转换为列表,方便统一处理else:ax.axis('off') # 如果数据列数小于子图数量,关闭多余的子图。原创 2023-12-06 11:30:53 · 1606 阅读 · 0 评论 -
时间序列预测 — BiLSTM实现多变量多步光伏预测(Tensorflow)
通过前5天的timesteps数据预测后一天的数据predict_steps个,需要对数据集进行滚动划分(也就是前timesteps行的特征和后predict_steps行的标签训练,后面预测时就可通过timesteps行特征预测未来的predict_steps个标签)。通过前5天的96*5数据预测后一天的数据96个,需要对数据集进行滚动划分(也就是前96*5行的特征和后96行的标签训练,后面预测时就可通过96*5行特征预测未来的96个标签)构造训练数据,也是真正预测未来的关键。网络模块的链式形式。原创 2023-12-09 20:11:16 · 1627 阅读 · 6 评论 -
时间序列预测 — CNN-LSTM实现多变量多步光伏预测(Tensorflow)
最后一层是 LSTM 层, 这一层是根据 CNN 处理后的特征数据,对其模型进行进一步的维度修偏, 权重修正等工作, 为下一步输出精度较高的预测值做好准备, 在 LSTM 训练的过程中, 由于其神经网络内部包括了输入、 遗忘和输出门, 通常的做法是通过增减遗忘门和输入门的个数, 来控制算法的精度。构造训练数据,也是真正预测未来的关键。数据处理前,需要对数据进行归一化,按照上面的方法划分数据,这里返回划分的数据和归一化模型,因为是多变量,特征和标签分开归一化,不然后面归一化会有信息泄露的问题。原创 2023-12-12 19:22:11 · 2884 阅读 · 2 评论 -
时间序列预测 — VMD-LSTM实现单变量多步光伏预测(Tensorflow):单变量转为多变量
通过前5天的timesteps数据预测后一天的数据predict_steps个,需要对数据集进行滚动划分(也就是前timesteps行的特征和后predict_steps行的标签训练,后面预测时就可通过timesteps行特征预测未来的predict_steps个标签)。通过前5天的96*5数据预测后一天的数据96个,需要对数据集进行滚动划分(也就是前96*5行的特征和后96行的标签训练,后面预测时就可通过96*5行特征预测未来的96个标签)预测并计算误差,并进行可视化,将这些步骤封装为函数。原创 2023-12-08 16:39:21 · 2028 阅读 · 15 评论 -
时间序列预测 — VMD-LSTM实现单变量多步光伏预测(Tensorflow):单变量转为多变量预测多变量
整体的思路也就是取出预测前96*6行数据预测未来的12行数据,然后见12行数据添加进历史数据,再预测12行数据,滚动预测。通过前7天的96*7行数据预测后一天的数据12个,需要对数据集进行滚动划分(也就是前96*7行的数据和后12*7行的数据训练,后面预测时就可通过96*7行数据测未来的12*7个标签,然后将12行预测值添加到历史数据中,历史数据变为96*7+12个,再取出后96*7个数据进行预测,得到12行预测值,滚动进行预测直到预测完成,注意此时的预测值是行而不是个)然后对数据进行预测,得到预测结果。原创 2024-01-06 17:42:12 · 1792 阅读 · 5 评论 -
时间序列预测 — BiLSTM-Attention实现单变量负荷预测(Tensorflow)
所有文章提供源代码、数据集、效果可视化 文章多次上领域内容榜、每日必看榜单、全站综合热榜现有的大量方法没有真正的预测未来值,只是用历史数据做验证。原创 2024-01-17 22:31:13 · 1255 阅读 · 0 评论 -
时间序列预测 — CNN-LSTM-Attention实现多变量负荷预测(Tensorflow):多变量滚动
所有文章提供源代码、数据集、效果可视化 文章多次上领域内容榜、每日必看榜单、全站综合热榜现有的大量方法没有真正的预测未来值,只是用历史数据做验证。原创 2024-01-22 20:48:34 · 1111 阅读 · 1 评论 -
时间序列预测 — ARIMA模型原理
ARIMA模型是最经典的统计学时序模型,也是最经典的、适用于单变量时间序列数据的模型。在实际面对的数据基本上是多变量时序数据、需要预测的问题也不仅仅与时间相关,但ARIMA模型能很好的帮助我们理解时间序列预测。ARIMAAutoregressiveIntegratedMovingA差分自回归移动平均模型结合了AR模型(自回归模型)和MA模型(移动平均模型)的基本思想:一个时间点上的标签值既受过去一段时间内的标签值影响,也受过去一段时间内的偶然事件(可以理解为噪音)的影响。原创 2023-11-15 11:53:52 · 2848 阅读 · 0 评论 -
时间序列预测 — ARIMA实现单输入单输出负荷预测
ARIMA作为成熟的统计学模型已被各种软件以各种方式实现,在Python中我们最常使用的一般是库。statsmodels是Python中专用于统计模型估计、统计测试和统计数据探索的库。现在我们就使用数据集1 () 中的负荷数据进行实验,来实现statsmodel下的ARIMA模型。我们在ARIMA建模之前完成,并在ARIMA建模完成之后完成一系列验证白噪声的混成检验。原创 2023-11-17 17:02:09 · 466 阅读 · 0 评论 -
时间序列预测 — Informer模型原理
长序列时间序列预测(LSTF)需要模型具有很高的预测能力,即精确的捕捉输出和输入之间长时间依赖关系的能力。Transformer能很好的提高预测精度,然而Transformer存在几个严重问题,二次时间复杂度、高内存使用和编码器-解码器架构的固有限制。ProbSparse稀疏自注意机制,其时间复杂度和内存使用为,在序列依赖性对齐方面具有可比性能;自注意力提取突出显示主导关注,通过减半级联层输入有效处理极长输入序列;原创 2023-11-20 11:43:00 · 1276 阅读 · 0 评论 -
时间序列预测 — Informer源码详解与运行
首先导入代码的基本函数和数据类型,在exp文件下exp_informer import中的类Exp_Informer中,定义了模型参数、get_data、model_optim、train、test、eval等函数。前面介绍了训练、测试和预测的的流程,那么每一批次是数据是如何利用Informer模型进行训练的呢?主要实现了Informer模型的测试过程,包括测试数据加载、模型测试、损失计算、保存测试结果的过程。利用Informer模型的最佳训练参数进行预测,包括预测数据加载、模型预测、保存预测结果的过程。原创 2023-11-21 22:13:10 · 2455 阅读 · 11 评论 -
时间序列预测 — Informer实现多变量负荷预测(PyTorch)
可以在删除元素之前先检查一下列表中是否包含要删除的元素,或者使用 try-except 语句来捕获异常,以便在元素不存在时不会导致程序中断。),数据集包含日期、最高温度℃ 、最低温度℃、平均温度℃ 、相对湿度(平均) 、降雨量(mm)、日需求负荷(KWh),时间间隔为1H。(1) 根据提示,要将数据更改'utf-8'格式,最简便的方法将数据用记事本打开,另存为是通过UTF-8格式保存。具体来说,'utf-8' 编解码器无法解码文件中的某些字节,因为它们不符合 UTF-8 编码的规则。原创 2023-11-26 10:46:40 · 2176 阅读 · 0 评论