分解+降維+預測!多重創新!直接寫核心!EMD-KPCA-Transformer多變量時間序列光伏功率預測

分解+降維+預測!多重創新!直接寫核心!EMD-KPCA-Transformer多變量時間序列光伏功率預測

目錄

    • 分解+降維+預測!多重創新!直接寫核心!EMD-KPCA-Transformer多變量時間序列光伏功率預測
      • 效果一覽
      • 基本介紹
      • 程序設計
      • 參考資料

效果一覽

在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述

基本介紹

1.MATLAB實現EMD-KPCA-Transformer多變量時間序列光伏功率預測;

2.多變量時間序列預測 就是先emd把原輸入全分解變成很多維作為輸入KPCA降維 再輸入Transformer預測 ;

3.運行環境Matlab2023b及以上,輸出RMSE、R2、MAPE、MAE等多指標對比,

先運行main1_EMD,進行emd分解;再運行main2_KPCA降維;再運行main3_EMD_KPCA_Transformer建模預測。

注意:一種算法不是萬能的,不同的數據集效果會有差別,后面的工作就是需要調整參數;

4.運行環境為Matlab2023b及以上;

5.數據集為excel,光伏數據集,輸入多個特征,輸出單個變量,考慮歷史特征的影響,多變量時間序列預測,所有文件放在一個文件夾;

6.命令窗口輸出R2、RMSE、MAE、MAPE等多指標評價。

購&買后可加點擊文章底部卡片博主咨詢交流。注意:其他非官方渠道購&買的盜版代碼不含模型咨詢交流服務,大家注意甄別,謝謝。

在這里插入圖片描述

程序設計

  • 完整程序和數據下載私信博主回復分解+降維+預測!多重創新!直接寫核心!EMD-KPCA-Transformer多變量時間序列光伏功率預測

clc;
clear 
close all%% Transformer預測
tic
load origin_data.mat
load emd_data.mat
load KPCA_data.mat%% EMD-KPCA-Transformer預測
tic
disp('…………………………………………………………………………………………………………………………')
disp('EMD-KPCA-Transformer預測')
disp('…………………………………………………………………………………………………………………………')data=[KPCA_data X(:,end)];num_samples = length(data);    % 樣本個數 
kim = 5;                       % 延時步長(kim個歷史數據作為自變量)
zim =  1;                      % 跨zim個時間點進行預測
or_dim = size(data,2);
res=[];
%  重構數據集
for i = 1: num_samples - kim - zim + 1res(i, :) = [reshape(data(i: i + kim - 1,:), 1, kim*or_dim), data(i + kim + zim - 1,:)];
end% 訓練集和測試集劃分
outdim = 1;                                  % 最后一列為輸出
num_size = 0.7;                              % 訓練集占數據集比例
num_train_s = round(num_size * num_samples); % 訓練集樣本個數
f_ = size(res, 2) - outdim;                  % 輸入特征維度P_train = res(1: num_train_s, 1: f_)';
T_train = res(1: num_train_s, f_ + 1: end)';
M = size(P_train, 2);P_test = res(num_train_s + 1: end, 1: f_)';
T_test = res(num_train_s + 1: end, f_ + 1: end)';
N = size(P_test, 2);%%  數據歸一化
[P_train, ps_input] = mapminmax(P_train, 0, 1);
P_test = mapminmax('apply', P_test, ps_input);[t_train, ps_output] = mapminmax(T_train, 0, 1);
t_test = mapminmax('apply', T_test, ps_output);

參考資料

[1] https://blog.csdn.net/kjm13182345320/article/details/128163536?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/kjm13182345320/article/details/128151206?spm=1001.2014.3001.5502

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/38417.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/38417.shtml
英文地址,請注明出處:http://en.pswp.cn/web/38417.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【簡單講解神經網絡訓練中batch的作用】

🎥博主:程序員不想YY啊 💫CSDN優質創作者,CSDN實力新星,CSDN博客專家 🤗點贊🎈收藏?再看💫養成習慣 ?希望本文對您有所裨益,如有不足之處,歡迎在評論區提出…

Maven依賴解析過程詳細講解

Maven依賴解析是一個遞歸的過程,涉及從項目的POM文件開始,逐步解析直接依賴和傳遞依賴。以下是詳細的解析過程: 讀取項目的POM文件: Maven首先讀取項目的POM文件 (pom.xml),該文件定義了項目的直接依賴。 解析直接依賴…

STM32第十五課:LCD屏幕及應用

文章目錄 需求一、LCD顯示屏二、全屏圖片三、數據顯示1.顯示歡迎詞2.顯示溫濕度3.顯示當前時間 四、需求實現代碼 需求 1.在LCD屏上顯示一張全屏圖片。 2.在LCD屏上顯示當前時間,溫度,濕度。 一、LCD顯示屏 液晶顯示器,簡稱 LCD(Liquid Cry…

node_sqlite3.node is not a valid win32 application

electron打包報錯 使用electron在linux平臺打包含有sqlite3的項目為win32應用時在運行階段,有時會遇到下面的錯誤 node_sqlite3.node is not a valid win32 application出現該錯誤的原因主要是在64bit的linux環境中,sqlite3默認build出來的二進制文件不…

【Windows】Visual Studio Installer下載緩慢解決辦法

【Windows】Visual Studio Installer下載緩慢解決辦法 1.背景2.分析3.結果 1.背景 使用visual studio在線安裝包進行IDE安裝,發現下載幾乎停滯,網速幾乎為零。 經過排查并不是因為實際網絡帶寬導致。 這里涉及DNS知識; DNS(Dom…

消防認證-防火卷簾

一、消防認證 消防認證是指消防產品符合國家相關技術要求和標準,且通過了國家認證認可監督管理委員會審批,獲得消防認證資質的認證機構頒發的證書,消防產品具有完好的防火功能,是住房和城鄉建設領域驗收的重要指標。 二、認證依據…

TP8 JS(html2canvas) 把DIV內容生成二維碼并與背景圖、文字組合生成分享海報

方法一:前端JS生成(推薦) 注意: 1.這個網頁只能截圖圖片效果代碼,其它任何html效果都不能有,不然截圖就不準確 2.如果要生成的圖片DIV內容中引用了第三個方的圖片,就是不使用同一個域名下的圖片,需要把后…

Python爬取淘寶商品評價信息實戰:從零到一的高效教程

引言:揭秘淘寶數據金礦 在電商領域,用戶評價是衡量產品優劣的金標準。作為Python爬蟲工程師,掌握從淘寶這座數據金礦中挖掘寶貴評價信息的技能至關重要。本文將帶你手把手實操,用Python爬蟲技術獲取淘寶商品的評價信息&#xff0…

Docker多階段構建Node.js應用程序

Node.js 應用程序 創建一個目錄來存放你的項目文件,然后在該目錄下創建以下文件。 package.json {"name": "docker-node-test","version": "1.0.0","description": "A simple Node.js app for Docker mu…

【折騰筆記】使用 PicList + Lsky Pro 對圖片進行雙重壓縮

前言 因為服務器的帶寬比較小,為了提高網站的訪問速度,網站內的圖片進行壓縮是必不可少的。另外將圖片轉換成WebP的格式可以減小文件大小、加快加載速度、支持高級特性(如透明度和動畫),以及減少存儲需求,為網站提供了顯著的性能。需要提前安裝好PicList客戶端和Lsky Pr…

最快33天錄用!一投就中的醫學4區SCI,幾乎不退稿~

【SciencePub學術】今天小編給大家推薦2本生物醫學領域的SCI,此期刊為我處目前合作的重點期刊!影響因子0-3.0之間,最重要的是審稿周期較短,對急投的學者較為友好! 醫學醫藥類SCI 01 / 期刊概況 【期刊簡介】IF&…

那些好用的 Vue3 的工具搭子!!【送源碼】

2020 年 9 月 18 日 Vue3 的正式發布已經過去了大約 3 年 9 個月左右!!! 隨著 Vue3 版本的逐漸成熟,我們的前端世界也迎來了一系列令人振奮的更新和工具。Vue 生態圈的持續擴大,無疑為前端開發人員帶來了前所未有的便…

通過pycharm使用git和github的步驟

一、在Pycharm工具中配置集成Git和GitHub。 1.集成Git。 打開Pycharm, 點擊File-->Settins-->Version Control-->Git 然后在 Path to Git executable中選擇本地的git.exe路徑。如下圖: 2.集成GitHub 打開Pycharm, 點擊File-->Settins-->Version…

探索未來遠程調試新紀元——《串口網口遠程調試軟件》:無縫連接,高效調試

文章目錄 前言一、無縫連接,突破距離限制二、高效調試,提升工作效率三、安全可靠,保護數據安全四、用戶友好,簡化操作流程五、軟件地址六、遠程調試軟件 七、基本操作1、訂閱主題2、連接3、串口調試4、網口調試 八、軟件地址結束語…

PO模式登錄測試

項目實踐 登陸項目測試 get_driver import page from selenium import webdriverclass GetDriver:driver Noneclassmethoddef get_driver(cls):if cls.driver is None:cls.driver webdriver.Edge()cls.driver.maximize_window()cls.driver.get(page.url)return cls.drivercl…

Java高風險漏洞與修復之——LDAP injection(LDAP注入)

LDAP注入介紹 LDAP注入是一種攻擊技術,它可以利用應用程序中的安全漏洞對LDAP(輕量級目錄訪問協議)服務進行惡意查詢或修改操作。當應用程序未能適當地清理用戶的輸入內容,將其嵌入到LDAP查詢中時,就可能發生LDAP注入。攻擊者通過注入未經授權的指令或條件來操縱查詢結果…

【代碼隨想錄訓練營】【Day 66】【圖論-3】| 卡碼 101-104

【代碼隨想錄訓練營】【Day 66】【圖論-3】| 卡碼 101-104 需強化知識點 103,104 優化思路 題目 101. 孤島的總面積 此處 area 多余 def dfs(grid, x, y, area):dirs [[0, 1], [0, -1], [1, 0], [-1, 0]]m, n len(grid), len(grid[0])area[0] 1grid[x][y] …

k8s學習筆記——k8s升級

前一段時間,由于搭建k8s集群的硬件設備故障,老化導致k8s需要重裝。使用原來的kubeadm安裝方式卻發現裝不了了。查了一下官方文檔,說從v1.24版本之后,kubelet移除了容器引擎,容器及鏡像管理將有第三方工具來接管&#x…

Vue.js有哪些優點和缺點

Vue.js 作為一個流行的前端框架,具有許多優點和一些潛在的缺點。以下是 Vue.js 的一些主要優點和缺點: 優點: 輕量級和靈活性:Vue.js 的核心庫專注于視圖層,這使得它非常輕量級(壓縮后只有幾十KB&#xff…

Web 反爬指南

本質上說,防抓的目的在于增加腳本或機器獲取你網站內容的難度,而不要影響真實用戶的使用或搜索引擎的收錄 不幸的是這挺難的,你需要在防抓和降低真實用戶以及搜索引擎的可訪問性之間做一下權衡。 為了防爬(也稱為網頁抓取、屏幕…