区间概率预测python|QR-CNN-BiLSTM+KDE分位数-卷积-双向长短期记忆神经网络-时间序列区间概率预测+核密度估计

news2024/11/19 9:32:32

区间预测python|QR-CNN-BiLSTM+KDE分位数-卷积-双向长短期记忆神经网络-核密度估计-回归时间序列区间预测

模型输出展示:

(图中是只设置了20次迭代的预测结果,宽度较宽,可自行修改迭代参数,获取更窄的预测区间)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注:可输出所有时间点的概率预测结果,数量较多,程序中为了随机采样了部分时间点绘制了预测结果

模型详细介绍:

模型详细介绍如下:
1、	输入:多变量(多特征),输出:单变量(单特征),即多变量回归
2、	实现了:区间预测(采用分位数回归)+概率预测(采用核密度估计)
3、	绘图:区间预测结果+多个概率预测结果
4、	评价指标为:85%90%95%三个置信水平下的PICP、PINAW及CRPS值
5、	本程序采用数据为:光伏数据(包含辐照度、温度等多个变量),数据为附赠
6、	Python程序,基于tensorflow(会发包版本)
7、	数据可直接读取excel文件,更换简单,只保证在我的数据上能运行出较为理想结果(若需更好的结果自行调试),其他数据集效果自己调试。
8、程序中包含数据预处理部分,包含缺失值处理、归一化与反归一化等
9、本程序分位数个数设置为200个,这个可以自行调整。

模型用途:

1、	光伏预测
2、	负荷预测
3、	风电预测等

模型原理介绍:

QR-CNN-BiLSTM模型是一个结合了Quantile Regression (QR),卷积神经网络 (CNN) 和双向长短期记忆网络 (BiLSTM) 的混合模型,它可以用于进行区间预测。区间预测不同于点预测,它提供了一个预测区间来表示未来值的不确定性,而不是给出一个具体的数值。这种模型特别适用于时间序列数据,可以捕捉数据的时间依赖性和非线性特征。除此之外,模型采用了核密度估计实现了概率预测。

模型实现流程:

1、数据预处理:

数据标准化:将时间序列数据标准化,以便模型更容易学习。
序列化:将时间序列数据转换为可供模型学习的序列样本。
缺失值填补:补充缺失值
2、 构建模型:
Quantile Regression
(QR):分位数回归用于估计条件分位数函数。在区间预测中,我们通常对特定的分位数(如5%和95%)感兴趣,这样可以构建一个90%的预测区间。
卷积神经网络 (CNN):CNN可以从序列数据中提取局部特征。在时间序列分析中,卷积层可以帮助模型捕捉到短期的趋势和模式。
在这里插入图片描述在这里插入图片描述
双向长短期记忆网络
(BiLSTM):BiLSTM是一种特殊的RNN,它能够学习长期依赖关系。BiLSTM通过两个方向的LSTM层来处理数据,一个处理正向序列,另一个处理反向序列。这样可以同时捕捉到过去和未来的信息。
在这里插入图片描述
3、训练模型:
定义损失函数:在QR中,损失函数是基于分位数的,这意味着不同的分位数会有不同的损失函数。
优化器选择:选择一个适合的优化器,如Adam,来最小化损失函数。
训练过程:使用训练数据来训练模型,通过反向传播算法来更新模型的权重。
4、预测、评估:
使用训练好的模型进行预测,对于每个预测点,模型会输出多个分位数的预测值,形成预测区间。
还会使用核密度估计实现概率密度预测
评估模型的性能,可以通过计算预测区间覆盖实际值的比例、区间宽度等指标来进行。
5、超参数调整:
根据模型的性能,可能需要调整模型的超参数,如学习率、批大小、隐藏层的单元数等,以获得更好的预测效果。

程序源码(完整程序和数据,请私信博主获取,也可闲鱼搜索:阿鹿学术2,直接下单):

私信未及时回复可添加k—o—u—k–o—u:1493502034

def create_cnn_bilstm_model(input_shape, cnn_filters, cnn_kernel_size, cnn_activation, max_pool_size,
                          lstm_units, dropout_rate, dense_units, dense_activation1, dense_activation2, learning_rate):
    model = Sequential()
    model.add(MaxPooling1D(pool_size=max_pool_size,padding='same'))
    model.add(Dense(units=dense_units, activation=dense_activation1))
    model.add(Dropout(dropout_rate))
    ……
    optimizer = Adam(learning_rate=learning_rate)
    model.compile(optimizer=optimizer, loss=loss)
    return model

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1567200.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于java实现的弹幕视频网站

开发语言:Java 框架:ssm 技术:JSP JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclip…

mongoDB 优化(2)索引

执行计划 语法: db.collection_xxx_t.find({"param":"xxxxxxx"}).explain(executionStats) 感觉这篇文章写得很好,可以参考 MongoDB——索引(单索引,复合索引,索引创建、使用)_mongo …

【办公类-48-01】20240404每月电子屏台账汇总成docx(问卷星xlsx导入docx,每页20条)

作品展示——docx台账汇总,每页20条 背景需求: 近期上级要求“一屏一码”,幼儿园每个电子屏使用后都要进行开机、关机的记录。安全主任分配工作后,每个园区的每个电子屏都有专人负责登记。 为了便于每月末的台账提交(…

使用Java拓展本地开源大模型的网络搜索问答能力

背景 开源大模型通常不具备最新语料的问答能力。因此需要外部插件的拓展,目前主流的langChain框架已经集成了网络搜索的能力。但是作为一个倔强的Java程序员,还是想要用Java去实现。 注册SerpAPI Serpapi 提供了多种搜索引擎的搜索API接口。 访问 Ser…

华为服务器RAID配置教程 服务器硬盘故障处理帮助 浪潮RAID配置教程 磁盘阵列配置通用教程

前言(本文档持续更新) 本文主要记录服务器配置RAID(磁盘阵列)过程中存在的细节问题及官方文档无法解决的问题的解决方案 配置环境 华为 RH2288 v3服务器配置RAID组 如何快速配置 1.找到服务器品牌的阵列卡型号,找不到…

使用vuepress搭建个人的博客(一):基础构建

前言 vuepress是一个构建静态资源网站的库 地址:VuePress 一般来说,这个框架非常适合构建个人技术博客,你只需要把自己写好的markdown文档准备好,完成对应的配置就可以了 搭建 初始化和引入 创建文件夹press-blog npm初始化 npm init 引入包 npm install -D vuepress…

【大数据存储】实验六:Hive

Hive的安装和基本操作实验 一、实验目的 了解Hive的安装和基本操作 二、实验原理 Hive定义了一套自己的SQL,简称HQL,它与关系型数据库的SQL略有不同,但支持了绝大多数的语句如DDL、DML以及常见的聚合函数、连接查询、条件查询。 DDL操作…

跨境金融区块链服务平台

跨境金融服务是因企业及个人跨境经营、交易、投资、往来等活动而产生的资金使用、调拨、配置等需求,而提供的金融服务。近年来,随着我国经济的快速稳步增长和全球化经济一体化的不断深入发展,跨境金融业务增长迅速,监管也开始转化…

某虚假交友APP(信息窃取)逆向分析

应用初探 在群里水群的时候 群u发了一个交友APP 于是拿来分析一下 可以看到应用打开后又一个登录的界面 需要用户输入手机号与验证码进行登录 #在线云沙箱分析 将APK放入某安信云沙箱中分析 提示应用请求了过多的敏感权限 逆向分析 直接拖入Jadx分析 好在程序没有加固 也没…

HomePlug AV

目录 HomePlug AV的基本概念基本术语网络概念网络实例 HomePlug AV物理层(PHY)HomePlug AV OFDM收发器架构PHY的调制模式FC调制和ROBO调制物理层的特点OFDM频域/时域转换开窗/槽式OFDM信号和噪声PHY发送控制——信道自适应PHY帧格式(Symbol&a…

yolov9文献阅读记录

本文记录了yolov9文献的阅读过程,对主要内容进行摘选翻译,帮助理解原理和应用,包括摘要、主要贡献、网络结构、主要模块,问题描述和试验对比等内容。 文献摘要前言摘选主要贡献相关工作可逆性结构辅助监督 问题描述信息瓶颈原理可…

虹科Pico汽车示波器 | 免拆诊断案例 | 2019款别克GL8豪华商务车前照灯水平调节故障

一、故障现象 一辆2019款别克GL8豪华商务车,搭载LTG发动机,累计行驶里程约为10.7万km。车主反映,车辆行驶过程中组合仪表提示前照灯水平调节故障。 二、故障诊断 接车后试车,起动发动机,组合仪表上提示“前照灯水平…

Hadoop和zookeeper集群相关执行脚本(未完,持续更新中~)

1、Hadoop集群查看状态 搭建Hadoop数据集群时,按以下路径操作即可生成脚本 [test_1analysis01 bin]$ pwd /home/test_1/hadoop/bin [test_01analysis01 bin]$ vim jpsall #!/bin/bash for host in analysis01 analysis02 analysis03 do echo $host s…

Linux驱动学习:从Linux主机nfs共享文件到uboot

第一步:在Linux主机上开启NFS服务,使用如下命令安装NFS服务: sudo apt-get install nfs-kernel-server rpcbind 第二步:创建一个文件夹用于共享,直接以nfs命名就行: 第三步:打开nfs服务配置文…

《超预测》预见未来的艺术和科学 - 三余书屋 3ysw.net

超预测:预见未来的艺术和科学 大家好,本次解读的书籍是《超预测》。我将花费大约20分钟的时间为您梳理书中的核心内容,探讨一般人如何超越专家学者成为超级预测家,并探索他们所采用的思维方式和预测方法。在开始之前,…

阻止EDR注入dll

文章目录 前记blockdllsACG结论测试代码reference 前记 许多EDR产品常见的操作是将他们的DLL注入到其想监测的进程中,寻找前辈们的防注入思路发现大概有以下两种,分别是: 1、PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINAR…

掌握机器学习新星:使用Python和Scikit-Learn进行图像识别

正文: 随着智能手机和社交媒体的普及,图像数据的生成速度比以往任何时候都快。为了自动化处理这些数据,我们需要强大的图像识别系统。机器学习提供了一种有效的方法来识别和分类图像中的对象。Scikit-Learn是一个流行的Python库,它…

OpenCASCADE源码分析:总论

OpenCASCADE是20世纪90年代由法国Matra Datavision公司开发的三维曲面/实体造型引擎,目前,国内许多CAE软件将其用作几何模块的开发。 本文拟从系统设计的角度,对OpenCASCADE架构(核心组件、关键流程等)进行概要性总结。 注1:限于…

Xshell Mobaxterm等终端工具连接不上服务器,显示 SSH服务器拒绝密码。请再试一次。解决办法

问题解决办法: (1)需要查看配置SSH密钥时,输入的password密码和当前users_name cd /home/: 查看当前系统下的用户名 注意上图中的登录名是服务器端linux下自己设置的user_name用户名: 所以需要将fl改为&#xff1a…

UE4_自定义反射和折射和法线图

UE4 自定义反射和折射和法线图 2020-05-22 09:36 将ReflectionVector和反射图像进行ViewAlignedReflection,输出的textrue和相机位置CameraPosition的onePlus进行Dot点乘之后乘以一个float系数反射度,输出给固有色,就有反射效果了。球型反射。 折射&…