WOA-Transformer鯨魚算法優化編碼器時間序列預測(Matlab實現)

WOA-Transformer鯨魚算法優化編碼器時間序列預測(Matlab實現)

目錄

    • WOA-Transformer鯨魚算法優化編碼器時間序列預測(Matlab實現)
      • 預測效果
      • 基本介紹
      • 程序設計
      • 參考資料

預測效果

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

基本介紹

1.Matlab實現WOA-Transformer鯨魚算法優化編碼器時間序列預測,運行環境Matlab2023b及以上;
2.excel數據,方便替換,可在下載區獲取數據和程序內容。
3.優化參數為注意力機制頭數、學習率、正則化系數,圖很多,包括預測效果圖、誤差分析圖、決定系數圖。
4.data為數據集,輸入輸出單個變量,時間序列預測,main.m為主程序,運行即可,所有文件放在一個文件夾,運行環境為Matlab2023b及以上。
5.代碼特點:參數化編程、參數可方便更改、代碼編程思路清晰、注釋明細。可在下載區獲取數據和程序內容。
6.命令窗口輸出R2、MSE、RMSE、MAE、MAPE、MBE等多指標評價;
注:程序和數據放在一個文件夾

程序設計

  • 完整源碼和數據獲取方式私信博主回復WOA-Transformer鯨魚算法優化編碼器時間序列預測(Matlab實現)
%%  清空環境變量
warning off             % 關閉報警信息
close all               % 關閉開啟的圖窗
clear                   % 清空變量
clc                     % 清空命令行%%  導入數據(時間序列的單列數據)
result = xlsread('data.xlsx');%%  數據分析
num_samples = length(result);  % 樣本個數 
kim = 4;                      % 延時步長(kim個歷史數據作為自變量)
zim =  1;                      % 跨zim個時間點進行預測%%  劃分數據集
for i = 1: num_samples - kim - zim + 1res(i, :) = [reshape(result(i: i + kim - 1), 1, kim), result(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);%% 節點個數
inputnum  = size(p_train, 1); % 輸入層節點數
hiddennum = 15;                % 隱藏層節點數
outputnum = size(t_train, 1); % 輸出層節點數
% CSDN 機器學習之心

參考資料

[1] https://blog.csdn.net/kjm13182345320/article/details/128577926?spm=1001.2014.3001.5501
[2] https://blog.csdn.net/kjm13182345320/article/details/128573597?spm=1001.2014.3001.5501

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

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

相關文章

25/1/15 嵌入式筆記 初學STM32F108

GPIO初始化函數 GPIO_Ini:初始化GPIO引腳的模式,速度和引腳號 GPIO_Init(GPIOA, &GPIO_InitStruct); // 初始化GPIOA的引腳0 GPIO輸出控制函數 GPIO_SetBits:將指定的GPIO引腳設置為高電平 GPIO_SetBits(GPIOA, GPIO_Pin_0); // 將GPIO…

mac m4 安裝 node

brew install node // 安裝 node //安裝的路徑在: /opt/homebrew/bin/node brew install node14 // brew install node22 // 安裝指定版本 如果需要設置環境變量:通過: which node 查找路徑 export PATH"/usr/local/opt/…

haproxy+nginx網站架構,實現負載均衡實驗筆記

前提準備: 兩臺nginx,一臺haproxynginx1:192.168.180.120nginx2:192.168.180.130,NFShaproxy:192.168.180.110 nginx(兩臺nginx的操作是一樣的): 1. 安裝nginx #先安…

【C++篇】紅黑樹的實現

目錄 前言: 一,紅黑樹的概念 1.1,紅黑樹的規則 1.2,紅黑樹的最長路徑 1.3,紅黑樹的效率分析 二,紅黑樹的實現 2.1,紅黑樹的結構 2.2,紅黑樹的插入 2.2.1,大致過程…

如何在谷歌瀏覽器中設置自定義安全警告

隨著網絡環境的日益復雜,瀏覽器的安全問題也愈發引人關注。谷歌瀏覽器作為一款廣泛使用的瀏覽器,其自定義安全警告功能為用戶提供了更加個性化和安全的瀏覽體驗。本文將詳細介紹如何在谷歌瀏覽器中設置自定義安全警告,幫助用戶更好地保護自己…

Spring 6 第1章——概述

一.Spring是什么 Spring是一款主流的Java EE輕量級(體積小、不需要依賴其它組件)開源框架Spring的目的是用于簡化Java企業級應用的開發難度和開發周期Spring的用途不僅限于服務端的開發,從簡單性、可測試性和松耦合的角度而言,任…

C語言預處理藝術:編譯前的魔法之旅

大家好,這里是小編的博客頻道 小編的博客:就愛學編程 很高興在CSDN這個大家庭與大家相識,希望能在這里與大家共同進步,共同收獲更好的自己!!! 本文目錄 引言正文一、預處理的作用與流程&#xf…

基于Springboot + vue實現的旅游網站

🥂(???)您的點贊👍?評論📝?收藏?是作者創作的最大動力🤞 💖📕🎉🔥 支持我:點贊👍收藏??留言📝歡迎留言討論 🔥🔥&…

docker-compose和docker倉庫

一、docker-compose 1.概述 docker-compose是一個自動編排工具,可以根據dockerfile自動化部署docker容器。 主要功能 配置定義 使用YAML文件(通常命名為docker - compose.yml)來描述應用程序的服務、網絡和卷等配置。 容器編排 可以同時…

MAC AndroidStudio模擬器無網絡

先確認PC端是正常訪問網絡的; 模擬器端修改Wifi設置:設置 - 網絡和互聯網 - WALN設置 按照上圖修改; IP設置:從DHCP修改為靜態,IP地址:10.0.2.16 ,網關:10.0.2.2 , DNS…

Wireshark 使用教程:網絡分析從入門到精通

一、引言 在網絡技術的廣闊領域中,網絡協議分析是一項至關重要的技能。Wireshark 作為一款開源且功能強大的網絡協議分析工具,被廣泛應用于網絡故障排查、網絡安全檢測以及網絡協議研究等諸多方面。本文將深入且詳細地介紹 Wireshark 的使用方法&#x…

Java 面試題 - ArrayList 和 LinkedList 的區別,哪個集合是線程安全的?

Java 面試題 - ArrayList 和 LinkedList 的區別,哪個集合是線程安全的? 在 Java 開發中,ArrayList和LinkedList是兩個常用的集合類,它們在數據結構和性能上有諸多不同,同時線程安全性也各有特點。深入理解這些差異&am…

nvim 打造成可用的IDE(2)

上一個 文章寫的太長了, 后來再寫東西 就一卡一卡的,所以新開一個。 主要是關于 bufferline的。 之前我的界面是這樣的。 這個圖標很不舒服有。 后來發現是在這里進行配置。 我也不知道,這個配置 我是從哪 抄過來的。 測試結果&#xff1…

升級 SpringBoot3 全項目講解 — 為什么 SpringBoot3 應該拋棄 Maven,搭配 Gradle 來使用?

學會這款 🔥全新設計的 Java 腳手架 ,從此面試不再怕! 隨著 Spring Boot 3 的發布,許多開發者開始考慮如何將現有項目升級到最新版本。Spring Boot 3 帶來了許多新特性,包括對 Java 17 的支持、更好的性能優化以及對 G…

Java學習筆記(二十三)

1 CacheEvict CacheEvict是Spring框架中用于清空緩存的注解。以下是對CacheEvict注解的詳細介紹: 1.1 作用 CacheEvict注解的主要作用是刪除緩存中的數據。在方法執行后或執行前(根據配置),它可以清空指定的緩存項或整個緩存區…

如何優化Elasticsearch大文檔查詢?

記錄一次業務復雜場景下DSL優化的過程 背景 B端商城業務有一個場景就是客戶可見的產品列表是需要N多閘口及各種其它邏輯組合過濾的,各種閘口數據及產品數據都是存儲在ES的(有的是獨立索引,有的是作為產品屬性存儲在產品文檔上)。 在實際使用的過程中&a…

openCvSharp 計算機視覺圖片找茬

一、安裝包 <PackageReference Include"OpenCvSharp4" Version"4.10.0.20241108" /> <PackageReference Include"OpenCvSharp4.runtime.win" Version"4.10.0.20241108" /> 二、準備兩張圖片 三、編寫代碼 using OpenCv…

實戰:FRP內網穿透部署-支持ssh、web訪問

目錄 1 準備工作2 公網服務器部署server端2.1 frps.ini配置 3 內網客戶端部署client端3.1 frpc.ini配置&#xff08;內網服務器01&#xff09;3.2 frpc.ini配置&#xff08;內網服務器02&#xff09; 4 服務啟動腳本4.1 公網服務器 server4.2 內網服務器 client 2 systemctl常見…

Uniapp中實現加載更多、下拉刷新、返回頂部功能

一、加載更多&#xff1a; 在到達底部時&#xff0c;將新請求過來的數據追加到原來的數組即可&#xff1a; import {onReachBottom } from "dcloudio/uni-app";const pets ref([]); // 顯示數據function network() {uni.request({url: "https://api.thecatap…

C# 多線程 Task TPL任務并行

先總結一下 之前發展過程的要點 1&#xff1a; 為了保證多線程正確順序執行 線程同步 2&#xff1a; 為了節省操作系統線程資源 線程池 異步 方式管理 正常來講 使用這倆個要點 進行使用 多線程可以滿足開發使用需求 但是 新的問題產生了 那就是 多個異步操作 需要編寫大量的代…