添加元素时,如何在O(1)中更新EWMA(指数加权移动平均值)?

时间:2019-02-28 12:15:54

标签: algorithm time-complexity

ewma的参数化在此处定义(https://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average)。 给定向量的ewma的计算非常简单。但是,如果alpha等于2 /(n + 1),其中n是向量中元素的数量,当将新元素添加到向量中时,如何更新O(1)(恒定时间复杂度)中的ewma。向量?(当然,添加新元素时不会删除任何元素。) 如果alpha是常数,这很容易,但是我必须将alpha从2 /(n + 1)更新为2 /(n + 2)。 如果问题是关于sma(简单移动平均线)的,我可以在O(1)中更新它 sma =(sma * n + new_element)/(n +1)。但是,我正在努力应对ewma案。 答案不一定是完美的。我的意思是,近似值是允许的。如果您对解决此问题有任何想法,请帮助我。谢谢。

0 个答案:

没有答案