解釋:指數加權移動平均(EWMA)

指數加權移動平均(EWMA, Exponential Weighted Moving Average) 是一種常用于時間序列平滑、異常檢測、過程控制等領域的統計方法。相比普通移動平均,它對最近的數據賦予更高權重,對舊數據逐漸“淡化”。


? 一、通俗理解

想象你在追蹤一個傳感器的溫度信號:

  • 如果今天的溫度變化劇烈,你可能更關注今天的數據;
  • 昨天、前天的數據也重要,但權重要低一些;
  • EWMA 就是一個“記憶逐漸衰退”的平均方法。

? 二、公式講解

假設:

  • 當前時間點為 t t t
  • 當前觀測值為 x t x_t xt?
  • 當前 EWMA 為 s t s_t st?
  • 平滑系數為 α \alpha α,范圍在 ( 0 , 1 ] (0, 1] (0,1]

EWMA 計算公式:

s t = α ? x t + ( 1 ? α ) ? s t ? 1 s_t = \alpha \cdot x_t + (1 - \alpha) \cdot s_{t-1} st?=α?xt?+(1?α)?st?1?

其中:

  • s t s_t st?:當前的平滑值
  • s t ? 1 s_{t-1} st?1?:上一個時刻的平滑值
  • x t x_t xt?:當前觀測值
  • α \alpha α:控制“記憶力”的程度

? 三、平滑系數 ( \alpha ) 的意義

α \alpha α解釋適用場景
趨近于 1強調最新值,反應更靈敏快速檢測突變、異常檢測
趨近于 0更平滑,強調長期趨勢長期趨勢分析、去除波動噪聲

? 四、初始值設定

  • 一般 s 0 = x 0 s_0 = x_0 s0?=x0?,即用第一個觀測值作為初始均值;
  • 或者可以使用簡單平均的結果作為初始值,增強穩定性。

? 五、特點總結

特點描述
權重指數衰減越舊的數據權重越小
實時更新只依賴當前值和上一個 EWMA,適合在線計算
響應迅速可控通過 α \alpha α 控制對突變的響應程度
常用于過程監控比如在質量控制圖(如 EWMA控制圖)中監測變量是否偏離控制線

? 六、圖示(如果可視化)

如果畫出數據曲線和 EWMA 曲線,會看到:

  • 原始數據波動較大
  • EWMA 曲線更平滑,且在數據趨勢變動時會“有延遲地”跟著變

? 七、簡單 Python 示例

import numpy as np
import matplotlib.pyplot as plt# 模擬數據
np.random.seed(0)
x = np.random.randn(100).cumsum()# 計算 EWMA
alpha = 0.2
s = np.zeros_like(x)
s[0] = x[0]
for t in range(1, len(x)):s[t] = alpha * x[t] + (1 - alpha) * s[t - 1]# 畫圖
plt.plot(x, label="原始數據")
plt.plot(s, label="EWMA (α=0.2)", linewidth=2)
plt.legend()
plt.title("指數加權移動平均(EWMA)示意圖")
plt.show()

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

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

相關文章

Spring Boot 項目基于責任鏈模式實現復雜接口的解耦和動態編排!

全文目錄: 開篇語前言一、責任鏈模式概述責任鏈模式的組成部分: 二、責任鏈模式的核心優勢三、使用責任鏈模式解耦復雜接口1. 定義 Handler 接口2. 實現具體的 Handler3. 創建訂單對象4. 在 Spring Boot 中使用責任鏈模式5. 配置責任鏈6. 客戶端調用 四、…

COMSOL仿真遇到的兩個小問題

最近跑熱仿真的時候跑出了兩個問題,上網查發現也沒什么解決方式,最后自己誤打誤撞的摸索著解決了,在這里分享一下。 問題一 我當時一準備跑仿真就彈出了這個東西,但在此之前從未遇到 然后我試著在它說的路徑中建立recoveries文件…

如何在英文學術寫作中正確使用標點符號?

標點符號看似微不足道,但它們是書面語言的無名英雄。就像熟練的指揮家指揮管弦樂隊一樣,標點符號可以確保您的寫作流暢、傳達正確的含義并引起讀者的共鳴。正如放錯位置的音符會在音樂中造成不和諧一樣,放錯位置的逗號或缺少分號也會使您的寫…

【深度學習與大模型基礎】第10章-期望、方差和協方差

一、期望 ——————————————————————————————————————————— 1. 期望是什么? 期望(Expectation)可以理解為“長期的平均值”。比如: 擲骰子:一個6面骰子的點數是1~6&#x…

JAVA虛擬機(JVM)學習

入門 什么是JVM JVM:Java Virtual Machine,Java虛擬機。 JVM是JRE(Java Runtime Environment)的一部分,安裝了JRE就相當于安裝了JVM,就可以運行Java程序了。JVM的作用:加載并執行Java字節碼(.class&#…

【數據結構與算法】——堆(補充)

前言 上一篇文章講解了堆的概念和堆排序,本文是對堆的內容補充 主要包括:堆排序的時間復雜度、TOP 這里寫目錄標題 前言正文堆排序的時間復雜度TOP-K 正文 堆排序的時間復雜度 前文提到,利用堆的思想完成的堆排序的代碼如下(包…

什么是柜臺債

柜臺債(柜臺債券業務)是指通過銀行等金融機構的營業網點或電子渠道,為投資者提供債券買賣、托管、結算等服務的業務模式。它允許個人、企業及機構投資者直接參與銀行間債券市場的交易,打破了以往僅限機構參與的壁壘。以下是綜合多…

【Android讀書筆記】讀書筆記記錄

文章目錄 一. Android開發藝術探索1. Activity的生命周期和啟動模式1.1 生命周期全面分析 一. Android開發藝術探索 1. Activity的生命周期和啟動模式 1.1 生命周期全面分析 onPause和onStop onPause后會快速調用onStop,極端條件下直接調用onResume 當用戶打開新…

Java對象內存結構詳解

Java對象內存結構詳解 Java對象在JVM內存中的存儲結構可以分為三個部分:對象頭(Header)、實例數據(Instance Data)和對齊填充(Padding)。以下是64位JVM(開啟壓縮指針)下…

【TI MSPM0】Printf重定向學習

一、新建工程 通過XDS110與電腦進行通信。 選擇這兩個引腳 需要添加這兩個頭文件 在程序中添加這三個函數即可對printf進行重定向 二、封裝函數 另一種方法 封裝一個函數,定義一個數組

深度強化學習基礎 0:通用學習方法

過去自己學習深度強化學習的痛點: 只能看到各種術語、數學公式勉強看懂,沒有建立清晰且準確關聯 多變量交互關系浮于表面,有時候連環境、代理控制的變量都混淆 模型種類繁多,概念繁雜難整合、對比或復用,無框架分析所…

asm匯編源代碼之-字庫轉換程序

將標準的16x16點陣漢字庫(下載16x16漢字庫)轉換成適合VGA文本模式下顯示的點陣漢字庫 本程序需要調用file.asm中的子程序,所以連接時需要把file連接進來,如下 C:\> tlink chghzk file 調用參數描述如下 C:\> chghzk ; 無調用參數,轉換標準庫文件(SRC16.FNT)為適合VGA…

uniapp轉換markdown

效果 AI智能體 微信小程序 流式 1.安裝Node.js 參考:2024最新版Node.js下載安裝及環境配置教程(非常詳細)_node.js 安裝-CSDN博客 2.需要克隆項目到本地或直接到項目地址下載壓縮包。 參考:uniapp中解析markdown支持網頁和小程序_uniapp ma…

用java代碼如何存取數據庫的blob字段

一.業務 在業務中我們被要求將文件或圖片等轉成 byte[] 或 InputStream存到數據庫的Blob類型的字段中. 二.Blob類型介紹 在 MySQL 中,Blob 數據類型用于存儲二進制數據。MySQL 提供了四種不同的 Blob 類型: TINYBLOB: 最大存儲長度為 255 個字節。BL…

qemu(2) -- 定制開發板

1. 前言 qemu支持自定義開發板,本文就記錄一下折騰的過程。基于qemu-10.0.0-rc3添加x210vb3s開發板。 2. 添加板卡文件 網上參考了一些文章,有些文章使用的版本和我的不一樣,折騰起來費了點時間,最后發現還是直接參考qemu中已有…

Python在糖尿病分類問題上尋找具有最佳 ROC AUC 分數和 PR AUC 分數(決策樹、邏輯回歸、KNN、SVM)

Python在糖尿病分類問題上尋找具有最佳 ROC AUC 分數和 PR AUC 分數(決策樹、邏輯回歸、KNN、SVM) 問題模板解題思路1. 導入必要的庫2. 加載數據3. 劃分訓練集和測試集4. 數據預處理5. 定義算法及其參數6. 存儲算法和對應指標7. 訓練模型并計算指標8. 找…

CPU(中央處理器)

一、CPU的定義與核心作用 CPU 是計算機的核心部件,負責 解釋并執行指令、協調各硬件資源 以及 完成數據處理,其性能直接影響計算機的整體效率。 核心功能: 從內存中讀取指令并譯碼。執行算術邏輯運算。控制數據在寄存器、內存和I/O設備間的…

上層 Makefile 控制下層 Makefile 的方法

在復雜的項目中,通常會將項目劃分為多個模塊或子項目,每個模塊都有自己的 Makefile。上層 Makefile 的作用是協調和控制這些下層 Makefile 的構建過程。下面是幾種常見的示例,實現上層 Makefile 對下層 Makefile 的控制。 直接調用&#xff1…

prompts提示詞經典模板

prompts.py 中的提示詞模板詳解 文件中定義了兩個核心提示詞模板:REASON_PROMPT 和 RELEVANT_EXTRACTION_PROMPT。這兩個模板在 DeepResearcher 的推理過程中扮演著關鍵角色。下面我將詳細解析這兩個模板的結構和功能。 REASON_PROMPT 詳解 REASON_PROMPT 是用于指…

使用python獲取電腦硬盤信息

import psutil# 獲取硬盤信息 disk_partitions psutil.disk_partitions() print(disk_partitions) for partition in disk_partitions:print(f"設備: {partition.device}")print(f"掛載點: {partition.mountpoint}")print(f"文件系統類型: {partitio…