均值和方差递推公式

均值和方差递推公式计算实时序列数据的均值和方差时 常使递推的方式 可以减少存储和降低计算复杂度 O n O 1

大家好,欢迎来到IT知识分享网。


前言

计算实时序列数据的均值和方差时,常使递推的方式,可以减少存储和降低计算复杂度( O(n)-> O(1) )。下面将给出递推公式和推导方法。


一、定义

均值

定义:给定一个包含n个样本的集合 X={X1, …Xn},均值就是这个集合中所有元素和的平均值。

公式:
μ = 1 n ∑ i = 1 n x i \begin{aligned} &\mu = \frac{1}{n}\sum_{i =1}^{n}x_{i} \end{aligned} μ=n1i=1nxi

方差

定义:方差是各个数据与其算术平均数的离差平方和的平均数。

公式:
σ 2 = 1 n ∑ i = 1 n ( x i − μ ) 2 \begin{aligned} &\sigma^{2} = \frac{1}{n}\sum_{i =1}^{n}(x_{i} – \mu )^{2} \end{aligned} σ2=n1i=1n(xiμ)2

备注:样本方差的分母是n-1。

二、递推公式

1.均值

令 前n个样本的均值为: μ n = 1 n ∑ i = 1 n x i (2.1) \begin{aligned} &\mu_{n} = \frac{1}{n}\sum_{i =1}^{n}x_{i} \end{aligned} \tag{2.1} μn=n1i=1nxi(2.1)

则,与前n-1个样本的均值的递推公式为:
μ n = 1 n ∑ i = 1 n x i     = 1 n ( ∑ i = 1 n − 1 x i + x n )     = 1 n [ ( n − 1 ) μ n − 1 + x n ]     = μ n − 1 + 1 n ( x n − μ n − 1 ) (2.2) \begin{aligned} &\mu_{n} = \frac{1}{n}\sum_{i =1}^{n}x_{i} \\ &~~~ = \frac{1}{n}\left ( \sum_{i =1}^{n-1}x_{i} + x_{n} \right ) \\ &~~~ = \frac{1}{n}\left [ (n-1)\mu_{n-1} + x_{n} \right ] \\ &~~~ = \mu_{n-1} + \frac{1}{n}(x_{n} – \mu_{n-1} ) \end{aligned} \tag{2.2} μn=n1i=1nxi   =n1(i=1n1xi+xn)   =n1[(n1)μn1+xn]   =μn1+n1(xnμn1)(2.2)

2.方差

令 前n个样本的方差为: σ n 2 = 1 n ∑ i = 1 n ( x i − μ n ) 2 (2.3) \begin{aligned} &\sigma^{2}_{n} = \frac{1}{n}\sum_{i =1}^{n}(x_{i} – \mu_{n} )^{2} \end{aligned} \tag{2.3} σn2=n1i=1n(xiμn)2(2.3)

将(2.2)代入(2.3),可得与前n-1个样本的方差的递推公式为:

σ n 2 = 1 n ∑ i = 1 n [ ( x i − μ n − 1 ) − 1 n ( x n − μ n − 1 ) ] 2     = 1 n ∑ i = 1 n [ ( x i − μ n − 1 ) 2 + 1 n 2 ( x n − μ n − 1 ) 2 − 2 n ( x i − μ n − 1 ) ( x n − μ n − 1 ) ] 2     = 1 n ∑ i = 1 n ( x i − μ n − 1 ) 2 + 1 n 2 ( x n − μ n − 1 ) 2 − 2 n 2 ( x n − μ n − 1 ) ∑ i = 1 n ( x i − μ n − 1 )     = n − 1 n σ n − 1 2 + n + 1 n 2 ( x n − μ n − 1 ) 2 − 2 n 2 ( x n − μ n − 1 ) ( x n − μ n − 1 )     = n − 1 n σ n − 1 2 + n − 1 n 2 ( x n − μ n − 1 ) 2 (2.4) \begin{aligned} &\sigma^{2}_{n} = \frac{1}{n}\sum_{i =1}^{n}\left [(x_{i} – \mu_{n-1})-\frac{1}{n}(x_{n} – \mu_{n-1} ) \right ]^{2} \\ &~~~ = \frac{1}{n}\sum_{i =1}^{n}\left [(x_{i} – \mu_{n-1})^{2}+\frac{1}{n^{2} }(x_{n}- \mu_{n-1} )^{2} – \frac{2}{n}(x_{i} – \mu_{n-1})(x_{n} – \mu_{n-1} ) \right ]^{2} \\ &~~~ = \frac{1}{n}\sum_{i =1}^{n}(x_{i} – \mu_{n-1})^{2} + \frac{1}{n^{2} }(x_{n}- \mu_{n-1} )^{2} – \frac{2}{n^{2}}(x_{n} – \mu_{n-1} )\sum_{i =1}^{n}(x_{i} – \mu_{n-1})\\ &~~~ = \frac{n-1}{n}\sigma^{2}_{n-1} + \frac{n+1}{n^{2}}(x_{n}- \mu_{n-1} )^{2} – \frac{2}{n^{2}}(x_{n} – \mu_{n-1} )(x_{n} – \mu_{n-1} )\\ &~~~ = \frac{n-1}{n}\sigma^{2}_{n-1} + \frac{n-1}{n^{2}}(x_{n}- \mu_{n-1} )^{2} \end{aligned} \tag{2.4} σn2=n1i=1n[(xiμn1)n1(xnμn1)]2   =n1i=1n[(xiμn1)2+n21(xnμn1)2n2(xiμn1)(xnμn1)]2   =n1i=1n(xiμn1)2+n21(xnμn1)2n22(xnμn1)i=1n(xiμn1)   =nn1σn12+n2n+1(xnμn1)2n22(xnμn1)(xnμn1)   =nn1σn12+n2n1(xnμn1)2(2.4)
式(2.4 ) 的推导第三行第3项到第四行第3项,具体推导可见式 ( 2.5 )
∑ i = 1 n ( x i − μ n − 1 ) = ∑ i = 1 n x i − n μ n − 1                      = x n + ∑ i = 1 n − 1 x i − n μ n − 1                      = x n − μ n − 1 + ∑ i = 1 n − 1 x i − ( n − 1 ) μ n − 1                      = x n − μ n − 1 \begin{aligned} &\sum_{i =1}^{n}(x_{i} – \mu_{n-1}) = \sum_{i =1}^{n}x_{i} – n\mu_{n-1} \\ &~~~~~~~~~~~~~~~~~~~~ = x_{n} + \sum_{i =1}^{n-1} x_{i} – n\mu_{n-1}\\ &~~~~~~~~~~~~~~~~~~~~ = x_{n} – \mu_{n-1} + \sum_{i =1}^{n-1} x_{i} – (n-1)\mu_{n-1} \\ &~~~~~~~~~~~~~~~~~~~~ = x_{n} – \mu_{n-1} \end{aligned} i=1n(xiμn1)=i=1nxinμn1                    =xn+i=1n1xinμn1                    =xnμn1+i=1n1xi(n1)μn1                    =xnμn1


总结

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/157034.html

(0)
上一篇 2025-02-08 18:26
下一篇 2025-02-08 18:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信