網站首頁 編程語言 正文
前言
PyEMD是經驗模態分解 (EMD)及其變體的Python實現,EMD最流行的擴展之一是集成經驗模態分解 (EEMD),它利用了噪聲輔助執行的集成。
顧名思義,這個包中的方法獲取數據(信號)并將其分解為一組組件。所有這些方法理論上都應該將信號分解為同一組分量,但實際上有很多細微差別和不同的方法來處理噪聲。無論采用何種方法,獲得的分量通常稱為本征模態函數(IMF),以強調它們包含固有(自身)屬性,即特定振蕩(模態)。(以上來自官方文檔)
兩種實現形式
最近嘗試實現CEEMDAN,CEEMADN也是EMD的一種變體。按照官方API,有以下兩種形式的寫法:
大部分博客采用的是第一種寫法:
ceemdan = CEEMDAN()
ceemdan.ceemdan(load)
imfs, res = ceemdan.get_imfs_and_residue()
vis = Visualisation()
vis.plot_imfs(imfs, res)
這種寫法得到的圖為:
第二種寫法,也是官方的寫法:
ceemdan = CEEMDAN()(load)
imfs, res = ceemdan[:-1], ceemdan[-1]
vis = Visualisation()
vis.plot_imfs(imfs, res)
得到的圖示為:
可以發現,兩張圖最大的區別在于Res。一般論文中給出的圖示是第二種。
我們嘗試輸出第一種方法中的Res:
[ 0.00000000e+00 -2.84217094e-14 ?0.00000000e+00 ... -2.84217094e-14
? 0.00000000e+00 ?0.00000000e+00]
可以發現其量級特別小,還原時我們可以不加上這一部分。而方法二中的Res顯然量級是最大的,還原時必須加上。
因此,方法一中的Res是我們一般人所理解的殘余量,在真正進行建模時可以不考慮。
方法一中畫圖時如果我們不包含殘余量,即:
vis.plot_imfs(imfs=imfs, residue=res, include_residue=False)
我們將得到:
區別
在github上經過交流后,得到如下結論:
方法一中的Res是真正意義上的殘余量,或許叫殘差更合適一點,也就是分解之后不能再分解的部分。在PyEMD的源碼中被定義為:
S * scale_s - np.sum(self.C_IMF, axis=0)
因此,ceemdan.get_imfs_and_residue()實際上得到的是最終的IMF和重建誤差,而不是殘差。
殘差的正確獲取方式是ceemdan[-1]。
原文鏈接:https://blog.csdn.net/Cyril_KI/article/details/124370191
相關推薦
- 2024-01-30 df -h的值詳細介紹
- 2022-09-18 Python中np.linalg.norm()用法實例總結_python
- 2022-09-02 一文詳解Python中的重試機制_python
- 2022-07-12 純css控制文字顯示隱藏
- 2022-08-28 PostgreSQL常用字符串分割函數整理匯總_PostgreSQL
- 2022-10-11 Android自動縮放上下限折線圖示例_Android
- 2023-01-15 Python?pytest.main()運行測試用例_python
- 2022-03-31 python猜單詞游戲的實現_python
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支