基于 LSTM 的多特征序列预测-SHAP可视化!

往期精彩内容:

单步预测-风速预测模型代码全家桶-CSDN博客

半天入门!锂电池剩余寿命预测(Python)-CSDN博客

超强预测模型:二次分解-组合预测-CSDN博客

VMD + CEEMDAN 二次分解,BiLSTM-Attention预测模型-CSDN博客

超强预测算法:XGBoost预测模型-CSDN博客

基于麻雀优化算法SSA的预测模型——代码全家桶-CSDN博客

VMD + CEEMDAN 二次分解,CNN-Transformer预测模型-CSDN博客

独家原创 | SCI 1区 高创新预测模型!-CSDN博客

风速预测(八)VMD-CNN-Transformer预测模型-CSDN博客

高创新 | CEEMDAN + SSA-TCN-BiLSTM-Attention预测模型-CSDN博客

VMD + CEEMDAN 二次分解,Transformer-BiGRU预测模型-CSDN博客

独家原创 | 基于TCN-SENet +BiGRU-GlobalAttention并行预测模型-CSDN博客

VMD + CEEMDAN 二次分解——创新预测模型合集-CSDN博客

独家原创 | BiTCN-BiGRU-CrossAttention融合时空特征的高创新预测模型-CSDN博客

CEEMDAN +组合预测模型(CNN-Transfromer + XGBoost)-CSDN博客

时空特征融合的BiTCN-Transformer并行预测模型-CSDN博客

独家首发 | 基于多级注意力机制的并行预测模型-CSDN博客

独家原创 | CEEMDAN-CNN-GRU-GlobalAttention + XGBoost组合预测-CSDN博客

多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合-CSDN博客

独家原创 | CEEMDAN-Transformer-BiLSTM并行 + XGBoost组合预测-CSDN博客

涨点创新 | 基于 Informer-LSTM的并行预测模型-CSDN博客

独家原创 | 基于 Informer + TCN-SENet的并行预测模型-CSDN博客

即插即用 | 时间编码+LSTM+全局注意力-CSDN博客

粉丝福利 | 再添 Seq2Seq 多步预测模型-CSDN博客

暴力涨点! | 基于 Informer+BiGRU-GlobalAttention的并行预测模型-CSDN博客

热点创新 | 基于 KANConv-GRU并行的多步预测模型-CSDN博客

重大更新!锂电池剩余寿命预测新增 CALCE 数据集_calce数据集-CSDN博客

如何利用 LSTM 预测上证指数未来值-CSDN博客

注意:本次教程通过 LSTM 模型针对往期多特征序列预测任务进行 SHAP 可视化分析,根据我们提供的代码,可以直接迁移到我们往期其他多特征序列预测的模型上!

前言

本文基于前期介绍的电力变压器(文末附数据集),介绍一种基于 LSTM 预测模型的 SHAP 可视化分析教程。电力变压器数据集的详细介绍可以参考下文:

电力变压器数据集介绍和预处理

数据集是使用.csv形式进行存储的,包括了除时间列外 “HUFL”, “HULL”, “MUFL”, “MULL”, “LUFL”, “LULL” 和 “OT”7个特征。

多特征变量数据集制作与预处理

1.1 导入数据集

取油温数据 OT 为目标预测值!

1.2 数据集制作

按照 8:2 划分训练集,测试集,滑动窗口设置为12

基于Pytorch的 LSTM 预测模型

2.1 定义 LSTM 预测模型

2.2 设置参数,训练模型

注意调整参数:

  • 可以修改LSTM层数和每层神经元个数;

  • 增加更多的 epoch (注意防止过拟合)

  • 可以改变滑动窗口长度(设置合适的窗口长度)

3 模型评估与可视化

3.1 结果可视化

3.2 模型评估

4 SHAP 可视化分析

SHAP 特征重要性-Summary Plot

将 SHAP 值矩阵传递给条形图函数会创建一个全局特征重要性图,其中每个特征的全局重要性被视为该特征在所有给定样本中的平均绝对值。

上面使用Summary Plot方法并设置参数plot_type="bar"绘制典型的特征重要性条形图,而他默认绘制Summary_plot图,他是结合了特征重要性和特征效果,取代了条形图。

Summary_plot 为每一个样本绘制其每个特征的Shapley value,它说明哪些特征最重要,以及它们对数据集的影响范围。

y 轴上的位置由特征确定,x 轴上的位置由每 Shapley value 确定。颜色表示特征值(红色高,蓝色低),颜色使我们能够匹配特征值的变化如何影响风险的变化。重叠点在 y 轴方向抖动,因此我们可以了解每个特征的 Shapley value分布,并且这些特征是根据它们的重要性排序的。

5 SHAP 可视化分析 更新范围

该模型已经在如下四个全家桶,和部分高创新模型里面更新,请购买过的同学及时更新下载:

(1) 独家原创 | SCI 1区 高创新预测模型

基于交叉注意力融合时空特征的TCN-Transformer并行预测模型

图片

(2) 独家原创 | 基于TCN-SENet +BiGRU-GlobalAttention并行预测模型

TCN-SENet  +BiGRU-GlobalAttention并行预测模型

图片

(3) 基于多级注意力机制的并行预测模型

独家首发  | 基于多级注意力机制的并行预测模型

图片

(4)单步预测全家桶

最强更新 | 一次拥有,全面掌握 Python 时间序列预测

图片

(5)多步预测全家桶

热点创新 | 基于 KANConv-GRU并行的多步预测模型

图片

(6)麻雀优化算法—创新预测模型全家桶

基于 Python 优化算法的创新预测模型

图片

(7)二次分解——创新模型预测全家桶

VMD + CEEMDAN 二次分解,TCN-Transformer并行预测模型

图片

6 代码、数据整理如下:

点击下方卡片获取代码!

图片

​​​​​

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

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

相关文章

C++ 编程指南35 - 为保持ABI稳定,应避免模板接口

一:概述 模板在 C 中是编译期展开的,不同模板参数会生成不同的代码,这使得模板类/函数天然不具备 ABI 稳定性。为了保持ABI稳定,接口不要直接用模板,先用普通类打个底,模板只是“外壳”,这样 AB…

【iOS】OC高级编程 iOS多线程与内存管理阅读笔记——自动引用计数(二)

自动引用计数 前言ARC规则所有权修饰符**__strong修饰符**__weak修饰符__unsafe_unretained修饰符__autoreleasing修饰符 规则属性数组 前言 上一篇我们主要学习了一些引用计数方法的内部实现,现在我们学习ARC规则。 ARC规则 所有权修饰符 OC中,为了处…

可信空间数据要素解决方案

可信空间数据要素解决方案 一、引言 随着数字经济的蓬勃发展,数据已成为重要的生产要素。可信空间数据要素解决方案旨在构建一个安全、可靠、高效的数据流通与应用环境,促进数据要素的合理配置和价值释放,推动各行业的数字化转型和创新发展…

mysql删除表后重建表报错Tablespace exists

版本 mysql:8.0.23 复现步骤 1、删除表 DROP TABLE IF EXISTS xxx_demo; 2、新建表 CREATE TABLE xxx_demo (id bigint NOT NULL AUTO_INCREMENT COMMENT 主键id,creator varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT COMMENT 创建者,c…

【Leetcode-Hot100】缺失的第一个正数

题目 解答 有一处需要注意,我使用注释部分进行交换值,报错:超出时间限制。有人知道是为什么吗?难道是先给nums[i]赋值后,从而改变了后一项的索引? class Solution(object):def firstMissingPositive(sel…

从单模态到多模态:五大模型架构演进与技术介绍

前言 1. ResNet — 残差神经网络背景核心问题与解决方案原理模型架构ResNet 系列变体技术创新与影响 2. ViT — Vision Transformer背景核心思想发展历程Transformer的起源:ViT的出现:ViT的进一步发展: 模型架构技术创新与影响 3. Swin Trans…

JavaScript事件循环

目录 JavaScript 执行机制与事件循环 一、同步与异步代码 1. 同步代码(Synchronous Code) 2. 异步代码(Asynchronous Code) 二、事件循环(Event Loop) 1. 核心组成 2. 事件循环基本流程 3. 运行机制…

Java Collection(7)——Iterable接口

1.Iterator接口 1.1 Iterator接口和其他集合类的关系 Java集合类中,Iterable接口属于顶层接口,除Map接口外,其他都实现了Iterable接口,这意味着它们都可以重写和使用Iterable接口中的方法 1.2 Iterable接口简介 在JDK1.7以前&a…

若依微服务版启动小程序后端

目录标题 本地启动,dev对应 nacos里的 xxx-xxx-dev配置文件 本地启动,dev对应 nacos里的 xxx-xxx-dev配置文件

STM32基础教程——DMA+ADC多通道

目录 前言 ​编辑 技术实现 连线图 代码实现 技术要点 实验结果 问题记录 前言 DMA(Direct Memory Access)直接存储器存取,用来提供在外设和存储器 之间或者存储器和存储器之间的高速数据传输。无需CPU干预,数据可以通过DMA快速地移动&#xff0…

23黑马产品经理Day01

今天过了一遍23黑马产品经理的基础视频 问题思考维度 抓住核心用户 为什么需要抓住核心用户? 主要原因:用户越来越细分,保持市场竞争力,产品开发推广更聚焦 做产品为什么要了解用户:了解用户的付费点,…

C/C++ 通用代码模板

✅ C 语言代码模板&#xff08;main.c&#xff09; 适用于基础项目、算法竞赛或刷题&#xff1a; #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdbool.h> #include <math.h>// 宏定义区 #define MAX_N 1000 #defi…

【数据结构_7】栈和队列(上)

一、概念 栈和队列&#xff0c;也是基于顺序表和链表实现的 栈是一种特殊的线性表&#xff0c;其只允许在固定的一段进行插入和删除元素操作。 遵循后进先出的原则 此处所见到的栈&#xff0c;本质上就是一个顺序表/链表&#xff0c;但是&#xff0c;实在顺序表/链表的基础…

git UserInterfaceState.xcuserstate 文件频繁更新

1> 退出 Xcdoe&#xff0c;打开终端&#xff08;Terminal&#xff09;&#xff0c;进入到你的项目目录下。 2> 在终端键入 git rm --cached <YourProjectName>.xcodeproj/project.xcworkspace/xcuserdata/<YourUsername>.xcuserdatad/UserInterfaceState.x…

【Ai】MCP实战:手写 client 和 server [Python版本]

什么是mcp MCP 是一个开放协议&#xff0c;它为应用程序向 LLM 提供上下文的方式进行了标准化。你可以将 MCP 想象成 AI 应用程序的 USB-C 接口。就像 USB-C 为设备连接各种外设和配件提供了标准化的方式一样&#xff0c;MCP 为 AI 模型连接各种数据源和工具提供了标准化的接口…

ESP8266/32作为AVR编程器(ISP programmer)的使用介绍

ESP8266作为AVR编程器( ISP programmer)的使用介绍 &#x1f33f;ESP8266自带库例程&#xff1a;https://github.com/esp8266/Arduino/tree/master/libraries/ESP8266AVRISP&#x1f4cd;支持ESP8266/32的ESP_AVRISP其它开源工程&#xff08;个人没有再去验证&#xff09;&…

08-JVM 面试题-mk

文章目录 1.JVM 的各部分组成2.运行时数据区2.1.什么是程序计数器?2.2.你能给我详细的介绍Java堆吗?2.3.能不能解释一下方法区?2.3.1常量池2.3.2.运行时常量池2.4.什么是虚拟机栈?2.4.1.垃圾回收是否涉及栈内存?2.4.2.栈内存分配越大越好吗?2.4.3.方法内的局部变量是否线…

Vue3 nextTick

nextTick 是 Vue 中非常重要的一个 API&#xff0c;它允许你在 DOM 更新周期后执行延迟回调。 核心源码位置 Vue3 的 nextTick 实现主要在 packages/runtime-core/src/scheduler.ts 文件中。 基本实现 const resolvedPromise Promise.resolve() as Promise<any> let …

DISCO:利用大型语言模型提取反事实

DISCO: Distilling Counterfactuals with Large Language Models - ACL Anthologyhttps://aclanthology.org/2023.acl-long.302/ 1. 概述 尽管在自然语言处理(NLP)领域针对各种推理任务取得了巨大进展(Wang 等, 2018, 2019a;Xu 等, 2020),但数据集偏差仍然是构建鲁棒模型…

【Django】框架-路由系统核心概念解析

1. 最基本路由关系 路由是URL地址与处理逻辑&#xff08;视图函数&#xff09;的对应关系。 本质&#xff1a;将用户请求的URL路径映射到具体的处理程序&#xff08;如Django视图函数&#xff09;。 示例&#xff1a; # urls.py urlpatterns [ path(home/, views.home_…