OOA-CNN-LSTM-Attention、CNN-LSTM-Attention、OOA-CNN-LSTM、CNN-LSTM四模型多變量時序預測一鍵對比

OOA-CNN-LSTM-Attention、CNN-LSTM-Attention、OOA-CNN-LSTM、CNN-LSTM四模型多變量時序預測一鍵對比

目錄

    • OOA-CNN-LSTM-Attention、CNN-LSTM-Attention、OOA-CNN-LSTM、CNN-LSTM四模型多變量時序預測一鍵對比
      • 預測效果
      • 基本介紹
      • 程序設計
      • 參考資料

預測效果

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

基本介紹

基于OOA-CNN-LSTM-Attention、CNN-LSTM-Attention、OOA-CNN-LSTM、CNN-LSTM四模型多變量時序預測一鍵對比(僅運行一個main即可)

Matlab代碼,每個模型的預測結果和組合對比結果都有!

1.無需繁瑣步驟,只需要運行一個main即可一鍵出所有圖像。

2.程序已經調試好,無需更改代碼替換數據集即可運行!!!數據格式為excel!

3.OOA優化參數為:隱藏層節點數,學習率,正則化系數。

4.魚鷹優化算法(Osprey optimization algorithm, OOA)是一種新智能優化算法,靈感來源于魚鷹在海上捕食時的策略,2023年發表在ESCI期刊上!

5.運行環境要求MATLAB版本為2023b及其以上。
評價指標包括:R2、MAE、MSE、RPD、RMSE等,圖很多
代碼中文注釋清晰,質量極高,贈送測試數據集,可以直接運行源程序。替換你的數據即可用 適合新手小白
在這里插入圖片描述
在這里插入圖片描述

程序設計

  • 完整代碼私信回復OOA-CNN-LSTM-Attention、CNN-LSTM-Attention、OOA-CNN-LSTM、CNN-LSTM四模型多變量時序預測一鍵對比
%%  清空環境變量
warning off             % 關閉報警信息
close all               % 關閉開啟的圖窗
clear                   % 清空變量
clc                     % 清空命令行%%  導入數據
result = xlsread('數據集.xlsx');%%  數據分析
num_samples = length(result);  % 樣本個數
kim = 2;                       % 延時步長(前面多行歷史數據作為自變量)
zim =  1;                      % 跨zim個時間點進行預測
nim = size(result, 2) - 1;     % 原始數據的特征是數目%%  劃分數據集
for i = 1: num_samples - kim - zim + 1res(i, :) = [reshape(result(i: i + kim - 1 + zim, 1: end - 1)', 1, ...(kim + zim) * nim), result(i + kim + zim - 1, end)];
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, -1, 1);%將訓練集和測試集的數據調整到01之間
p_test = mapminmax('apply', P_test, ps_input);[t_train, ps_output] = mapminmax(T_train, -1, 1);% 對測試集數據做歸一化
t_test = mapminmax('apply', T_test, ps_output);%%  數據平鋪
%   將數據平鋪成1維數據只是一種處理方式
%   也可以平鋪成2維數據,以及3維數據,需要修改對應模型結構
%   但是應該始終和輸入層數據結構保持一致
p_train =  double(reshape(p_train, f_, 1, 1, M));
p_test  =  double(reshape(p_test , f_, 1, 1, N));
t_train =  double(t_train)';
t_test  =  double(t_test )';%%  數據格式轉換
for i = 1 : MLp_train{i, 1} = p_train(:, :, 1, i);
endfor i = 1 : NLp_test{i, 1}  = p_test( :, :, 1, i);
end

參考資料

[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/news/902274.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/902274.shtml
英文地址,請注明出處:http://en.pswp.cn/news/902274.shtml

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

相關文章

20250421在榮品的PRO-RK3566開發板的Android13下頻繁重啟RKNPU fde40000.npu: Adding to iommu gr

20250421在榮品的PRO-RK3566開發板的Android13下頻繁重啟RKNPU fde40000.npu: Adding to iommu gr 2025/4/21 14:50 緣起:電池沒電了,導致榮品的PRO-RK3566的核心板頻繁重啟。 內核時間4s就重啟。100%復現。 PRO-RK3566 Android13啟動到這里 復位&#…

動態監控進程

1.介紹: top和ps命令很相似,它們都是用來顯示正在執行的進程,top和ps最大的不同之處,在于top在執行中可以更新正在執行的進程. 2.基本語法: top [選項] 選項說明 ??僵死進程:內存沒有釋放,但是進程已經停止工作了,需要及時清理 交互操作說明 應用案…

657SJBH西藏藏藥特產銷售管理系統

畢業論文(設計)文獻綜述 西藏藏藥特產銷售管理系統的設計與實現 近年來,隨著網絡技術特別是Internet技術的普及和發展,電子商務的開發和應用成為一個熱門領域,在線藏藥特產銷售系統就是這其中的一員。 藏藥產業在西藏…

棧和隊列--數據結構初階(2)(C/C++)

文章目錄 前言理論部分棧的模擬實現STL中的棧容器隊列的模擬實現STL中的隊列容器 作業部分 前言 這期的話會給大家講解棧和隊列的模擬實現和在STL中棧和隊列怎么用的一些知識和習題部分(這部分側重于理論知識,習題倒還是不難) 理論部分 棧的模擬實現 typedef int…

RNN的理解

對于RNN的理解 import torch import torch.nn as nn import torch.nn.functional as F# 手動實現一個簡單的RNN class RNN(nn.Module):def __init__(self, input_size, hidden_size, output_size):super(RNN, self).__init__()# 定義權重矩陣和偏置項self.hidden_size hidden…

二叉查找樹和B樹

二叉查找樹(Binary Search Tree, BST)和 B 樹(B-tree)都是用于組織和管理數據的數據結構,但它們在結構、應用場景和性能方面有顯著區別。 二叉查找樹(Binary Search Tree, BST) 特點&#xff1…

一段式端到端自動駕駛:VAD:Vectorized Scene Representation for Efficient Autonomous Driving

論文地址:https://github.com/hustvl/VAD 代碼地址:https://arxiv.org/pdf/2303.12077 1. 摘要 自動駕駛需要對周圍環境進行全面理解,以實現可靠的軌跡規劃。以往的方法依賴于密集的柵格化場景表示(如:占據圖、語義…

OpenCV訓練題

一、創建一個 PyQt 應用程序,該應用程序能夠: 使用 OpenCV 加載一張圖像。在 PyQt 的窗口中顯示這張圖像。提供四個按鈕(QPushButton): 一個用于將圖像轉換為灰度圖一個用于將圖像恢復為原始彩色圖一個用于將圖像進行…

opencv函數展示4

一、形態學操作函數 1.基本形態學操作 (1)cv2.getStructuringElement() (2)cv2.erode() (3)cv2.dilate() 2.高級形態學操作 (1)cv2.morphologyEx() 二、直方圖處理函數 1.直方圖…

iPhone 13P 換超容電池,一年實記的“電池循環次數-容量“柱狀圖

繼上一篇 iPhone 13P 更換"移植電芯"和"超容電池"🔋體驗,詳細記錄了如何更換這兩種電池,以及各自的優略勢對比。 一晃一年過去,時間真快,這次分享下記錄了使用超容電池的 “循環次數 - 容量(mAh)…

基于 pnpm + Monorepo + Turbo + 無界微前端 + Vite 的企業級前端工程實踐

基于 pnpm Monorepo Turbo 無界微前端 Vite 的企業級前端工程實踐 一、技術演進:為什么引入 Vite? 在微前端與 Monorepo 架構落地后,構建性能成為新的優化重點: Webpack 構建瓶頸:復雜配置導致開發啟動慢&#…

(五)機器學習---決策樹和隨機森林

在分類問題中還有一個常用算法:就是決策樹。本文將會對決策樹和隨機森林進行介紹。 目錄 一.決策樹的基本原理 (1)決策樹 (2)決策樹的構建過程 (3)決策樹特征選擇 (4&#xff0…

Vue3使用AntvG6寫拓撲圖,可添加修改刪除節點和邊

npm安裝antv/g6 npm install antv/g6 --save 上代碼 <template><div id"tpt1" ref"container" style"width: 100%;height: 100%;"></div> </template><script setup>import { Renderer as SVGRenderer } from …

Arduino編譯和燒錄STM32——基于J-link SWD模式

一、安裝Stm32 Arduino支持 在arduino中添加stm32的開發板地址&#xff1a;https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json 安裝stm32開發板支持 二、安裝STM32CubeProgrammer 從stm32網站中安裝&#xff1a;https://ww…

智慧城市氣象中臺架構:多源天氣API網關聚合方案

在開發與天氣相關的應用時&#xff0c;獲取準確的天氣信息是一個關鍵需求。萬維易源提供的“天氣預報查詢”API為開發者提供了一個高效、便捷的工具&#xff0c;可以通過簡單的接口調用查詢全國范圍內的天氣信息。本文將詳細介紹如何使用該API&#xff0c;以及其核心功能和調用…

Vue 組件化開發

引言 在當今的 Web 開發領域&#xff0c;構建一個功能豐富且用戶體驗良好的博客是許多開發者的目標。Vue.js 作為一款輕量級且高效的 JavaScript 框架&#xff0c;其組件化開發的特性為我們提供了一種優雅的解決方案。通過將博客拆分成多個獨立的組件&#xff0c;我們可以提高代…

Deno 統一 Node 和 npm,既是 JS 運行時,又是包管理器

Deno 是一個現代的、一體化的、零配置的 JavaScript 運行時、工具鏈&#xff0c;專為 JavaScript 和 TypeScript 開發設計。目前已有數十萬開發者在使用 Deno&#xff0c;其代碼倉庫是 GitHub 上 star 數第二高的 Rust 項目。 Stars 數102620Forks 數5553 主要特點 內置安全性…

應用篇02-鏡頭標定(上)

本節主要介紹相機的標定方法&#xff0c;包括其內、外參數的求解&#xff0c;以及如何使用HALCON標定助手實現標定。 計算機視覺——相機標定(Camera Calibration)_攝像機標定-CSDN博客 1. 原理 本節介紹與相機標定相關的理論知識&#xff0c;不一定全&#xff0c;可以參考相…

PG CTE 遞歸 SQL 翻譯為 達夢版本

文章目錄 PG SQLDM SQL總結 PG SQL with recursive result as (select res_id,phy_res_code,res_name from tbl_res where parent_res_id (select res_id from tbl_res where phy_res_code org96000#20211203155858) and res_type_id 1 union all select t1.res_id, t1.p…

C# Where 泛型約束

在C#中&#xff0c;Where關鍵字主要有兩種用途 1、在泛型約束中限制類型參數 2、在LINQ查詢中篩選數據 本文主要介紹where關鍵字在在泛型約束中的使用 泛型定義中的 where 子句指定對用作泛型類型、方法、委托或本地函數中類型參數的參數類型的約束。通過使用 where 關鍵字和…