基于 GADF+Swin-CNN-GAM 的高创新电能扰动信号识别模型!

news2024/9/9 4:38:41

 往期精彩内容:

电能质量扰动信号数据介绍与分类-Python实现-CSDN博客

Python电能质量扰动信号分类(一)基于LSTM模型的一维信号分类-CSDN博客

Python电能质量扰动信号分类(二)基于CNN模型的一维信号分类-CSDN博客

Python电能质量扰动信号分类(三)基于Transformer的一维信号分类模型-CSDN博客

Python电能质量扰动信号分类(四)基于CNN-BiLSTM的一维信号分类模型-CSDN博客

Python电能质量扰动信号分类(五)基于CNN-Transformer的一维信号分类模型-CSDN博客

基于FFT + CNN -Transformer时域、频域特征融合的电能质量扰动识别模型-CSDN博客

基于格拉姆矩阵GADF+Swin Transformer窗口注意力和CNN-GAM全局注意力的电能质量扰动信号识别模型!

电能质量扰动信号:

格拉姆矩阵GAF变换二维图像数据

马尔可夫转换场 MTF:

递归图 RP:

在基于格拉姆矩阵GAF、连续小波变换CWT、短时傅里叶变换STFT+Swin Transformer窗口注意力和CNN-GAM全局注意力的轴承故障诊断模型基础上!

再新添基于马尔可夫转换场 MTF 和递归图 RP 的时频图像处理(提供更改数据集接口,可一键替换信号数据和不同图像的变换处理,来进行与Swin-CNN-GAM模型的结合)

● 数据集:电能质量扰动信号

● 环境框架:python 3.9  pytorch 1.8 及其以上版本均可运行

● 准确率:测试集100%

● 使用对象:论文需求、毕业设计需求者

● 代码保证:代码注释详细、即拿即可跑通。

模型创新点还未发表,有毕业设计或者发小论文需求的同学必看,模块丰富,创新度高,性能优越!

创新点:

(1)通过格拉姆矩阵GADF把一维时序扰动信号转化为二维图像;

(2)分支一:图像数据通过顶会模型 Swin Transformer 的窗口注意力机制提取信号图像局部特征;

(3)分支二:同时信号图数据像通过基于全局注意力机制 GAM-Attention 的 CNN2d 卷积池化网络;

(4)然后两个分支提取的全局空间特征和局部特征通过融合后进行自适应平均池化,使模型能够更好地融合不同层次的特征表示,提高模型性能和泛化能力。

(独家原创)

注意:此次产品,我们还有配套的模型讲解(方便学习网络结构)和参数调节讲解,进行详细的解释!

我们还提供关于一维时序信号的 格拉姆矩阵GAF、连续小波变换CWT、短时傅里叶变换STFT等相关时频图像的分类处理方法,提供更改数据集接口,可一键替换信号数据和不同图像的变换处理,来进行此创新模型的实验验证!

代码配有

(1)训练可视化:

混淆矩阵:

一维扰动信号数据

2.1 导入数据

格拉姆矩阵GAF变换二维图像数据

连续小波变换CWT时频图数据

 基于GADF+Swin-CNN-GAM的分类网络模型
 

设置参数,训练模型

50个epoch,准确率100%,用GADF+Swin-CNN-GAM网络分类效果显著,创新模型能够充分提取扰动信号的全局空间和局部特征,收敛速度快,性能优越,精度高,效果明显!

模型评估

准确率、精确率、召回率、F1 Score

代码、数据如下:

对数据集和代码感兴趣的,可以关注最后一行

# 加载数据
import torch
from joblib import dump, load
import torch.utils.data as Data
import numpy as np
import pandas as pd
import torch
import torch.nn as nn
# 参数与配置
torch.manual_seed(100)  # 设置随机种子,以使实验结果具有可重复性
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
 
#代码和数据集:https://mbd.pub/o/bread/mbd-ZZ2amJxs

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

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

相关文章

【计算机毕设论文】基于SpringBoot的诗词管理系统

💗博主介绍:✌全平台粉丝5W,高级大厂开发程序员😃,博客之星、掘金/知乎/华为云/阿里云等平台优质作者。 【源码获取】小伙伴可以关注我 感兴趣的可以先收藏起来,同学门有不懂的毕设选题,项目以及论文编写等…

轻松入门Linux—CentOS,直接拿捏 —/— <1>

一、什么是Linux Linux是一个开源的操作系统,目前是市面上占有率极高的服务器操作系统,目前其分支有很多。是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统 Linux能运行主要的UNIX工具软件、应用程序和网络协议 Linux支持 32…

小程序开发_05协同工作和发布

一、开发流程 二、权限管理 三、不同成员的权限 四、小程序发布上线的步骤 上传代码--->提交审核-->发布1. 上传代码 提交审核 三、发布上线

文件IO相关作业

1> 使用文件IO完成&#xff0c;将源文件中的所有内容进行加密&#xff08;大写转小写、小写转大写&#xff09;后写入目标文件中 源文件内容不变 #include<myhead.h>int main(int argc, const char *argv[]) {//判断传入的是否是两个文件if(argc!3){write(2,"inp…

期末复习资料——计算机系统基础

第一章 1、下列关于机器字长、指令字长和存储字长的说法中&#xff0c;正确的时_②、③_ ①三者在数值上总是相等的。②三者在数值上可能不相等。③存储字长是存放在一个存储单元中的二进制代码位数。④数据字长就是MDR的位数。 机器字长、指令字长和存储字长&#xff0c;三…

【区块链+绿色低碳】碳低链 | FISCO BCOS应用案例

在碳中和、碳达峰国家战略的号召下&#xff0c;碳中和数字化、协同低碳的发展如火如荼。但是在金融业的实际场景应用中&#xff0c; 存在数据收集效率低、数据核查困难、服务单一等问题&#xff0c;痛点集中为两个&#xff1a;一是数据冗杂&#xff0c;可能会存在数据篡改&…

【python报错已解决】`AttributeError: ‘DataFrame‘ object has no attribute ‘ix‘`

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引言&#xff1a; 在数据分析或者数据处理的过程中&#xff0c;我们经常会遇到各种各样的报错信息&#xff0c;这些报错信息往…

【漏洞复现】APP分发签名系统index-uplog.php存在任意文件上传漏洞

漏洞描述 APP分发签名系统index-uplog.php存在任意文件上传漏洞 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,不得利用网络从事危害国家安全、荣誉和利益,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵…

游戏类App出海广告变现,新手开发者如何选对聚合广告平台?

无论是轻量化小游戏还是中重度游戏&#xff0c;厂商的终极目标都是盈利。从商业化角度来说&#xff0c;单一的变现模式存在一些问题。纯内购驱动的游戏除了少数大竞技品类&#xff0c;大多是为垂直玩家设计&#xff0c;难以扩量。而纯广告变现驱动的游戏&#xff0c;在抗风险方…

所谓有趣的灵魂,实际上就是这个人的信息密度和知识层面,都远高于你!

1. 信息界的“百科全书” 信息密度&#xff1a;大脑里的“硬盘” 我们先来八一八什么是信息密度。想象一下&#xff0c;如果大脑是个硬盘&#xff0c;那么信息密度高的人&#xff0c;硬盘里存的可都是高清大片和无损音乐&#xff0c;随时准备给你来一场视听盛宴。 知识层面&am…

vue3数据结构的渲染01

处理数据&#xff1a; //现有原始数据showCertificateUrl “url01;url02” 使用以下代码将两条通过分号";"分割的url进行处理 const parseUrls () > {urls.value [];// 每次重新赋值前一定要清空之前的旧数据&#xff01;if (!showCertificateUrl.value) {retu…

[前端]解决Iframe即使设置高度100%,但还是显示滚动条scrollbar的问题

前言 好烦,你看看这两个重复的滚动条. 一个是来自iframe,另一个来自父级的div(overflow: auto;) 我已经在css中设置了iframe的height: 100%;border: none;,但无论如何还是显示出了父级的scrollbar 解决 将iframe的display: block;即可. 或者vertical-align: bottom;

安全测试与渗透测试的区别

在这个数字化时代&#xff0c;网络安全如同数字世界的守护神&#xff0c;其重要性不言而喻。而在这场没有硝烟的战争中&#xff0c;安全测试与渗透测试作为两大核心利器&#xff0c;常常被提及却又容易混淆。今天&#xff0c;就让我们揭开它们的神秘面纱&#xff0c;一探二者之…

2024.7.30 作业

1> 使用文件IO完成&#xff0c;将源文件中的所有内容进行加密&#xff08;大写转小写、小写转大写&#xff09;后写入目标文件中&#xff0c;源文件内容不变 #include <myhead.h> int main(int argc,const char *argv[]) {int fd1 -1,fd2 -1;if((fd1 open(".…

【和相同的二元子数组】python刷题记录

R2-前缀和专题 目录 前缀和哈希表 双指针 ps: 第一眼过去&#xff0c;这题应该能用双指针解出来&#xff0c;应该也能用前缀和解题。 前缀和哈希表 适用于 nums[i] 值不固定为 0 和 1 的其他情况 class Solution:def numSubarraysWithSum(self, nums: List[int], goal: i…

Vue入门记录(一)

效果 本文为实现如下前端效果的学习实践记录&#xff1a; 实践 入门的最佳实践我觉得是先去看官网&#xff0c;官网一般都会有快速入门指引。 根据官网的快速上手文档&#xff0c;构建一个新的Vue3TypeScript&#xff0c;查看新建的项目结构&#xff1a; 现在先重点关注comp…

前端科举八股文-手撕代码篇

前端科举八股文-手撕代码篇 手撕排序算法选择排序思路 冒泡排序思路 快速排序思路 手撕bind方法思路解析 手撕js的继承方案构造继承实现原理 原型继承实现原理 组合继承实现原理 寄生组合继承实现原理 手撕instanceOf实现原理 手撕new 操作符手撕防抖实现原理 手撕节流实现原理…

Java8 新特性,看这篇文章就够了

Java8 是 Java 编程语言的一个重要版本&#xff0c;于 2014 年 3 月发布。它引入了许多新的功能和改进&#xff0c;其中包括 Lambda 表达式、Stream API、新的日期/时间 API 和 Nashorn JavaScript 引擎等。 Java 8 的主要特点如下&#xff1a; Lambda 表达式&#xff1a;Lamb…

Linux进程--exec族函数

exec族函数函数的作用&#xff1a; 我们用fork函数创建新进程后&#xff0c;经常会在新进程中调用exec函数去执行另外一个程序。当进程调用exec函数时&#xff0c;该进程被完全替换为新程序。因为调用exec函数并不创建新进程&#xff0c;所以前后进程的ID并没有改变。 原文链…

电测量数据交换DLMSCOSEM组件第53部分:DLMSCOSEM应用层(下)

3.DLMS/COSEM应用层协议规范 3.1控制功能 3.1.1客户机侧功能的状态定义 图37显示了客户机侧CF的状态机。 客户机CF(和AL包含CF)的状态定义如下: ——INACTIVE:在该状态下,CF完全没有活动;它既不给AP提供服务,也不使用协议支撑层服务; ——IDLE:在没有AA存在…