2024-06-16 11:15:47 发布
网友
如下所示,我的任务是使用AR建模来去除噪声信号中的伪影。假设我在原始数据中有心电图或肌电图。在IEEE上,我发现这可以通过小波变换、巴特沃斯滤波器或经验模式分解实现
https://www.kaggle.com/residentmario/denoising-algorithms#Machine-learning-models
原始肌电图:
支持我用自动回归模型做什么?据我目前的理解,它是用来预测数据的
As I understand it right now it is used to forecast the data.
是的,这是AR(p)模型的常见情况;但为了进行预测,应该对其参数进行估计,并根据您提供给它的观察结果进行预测。因此,您可以获得所谓的“拟合值”,并将其用作手头信号的“去噪”版本。这是因为AR(p)是这样的:
AR(p)
y_t = \phi_1 * y_{t-1} + \phi_2 * y_{t-2} + ... + \phi_p * y_{t-p} + e_t
其中\phi_j是要估计的AR参数,并且e_t被假定为具有一定方差的白噪声。您可以将此e_t视为基础信号顶部的噪声,因此拟合值在某种程度上是去噪的
\phi_j
e_t
在软件实施之前,我们应该注意AR(p)是对广义平稳序列进行建模的,因此如果存在非平稳行为(例如趋势/季节性),则应首先明确删除(例如差分),或者隐式删除(例如ARI(p, d)建模)
ARI(p, d)
这是一个故意发出噪音的信号:
下面是AR(2)模型的拟合值:
AR(2)
这是我从“AR模型去噪”中理解的;假设模型中的e_t分量表示噪声,因此拟合值给出“去噪”版本
至于编码部分:有许多方法可以将AR(p)模型与Python库相匹配,但最方便的方法可能是通过^{}:
from statsmodels.tsa.ar_model import AutoReg model = AutoReg(your_data, lags=p) result = model.fit() fitted_values = result.fittedvalues
决定AR(p)的顺序是另一个问题,但是一个快速的方法是查看数据的PACF图,看看它在哪个延迟之后消失,例如
这将表示AR(2)模型
是的,这是
AR(p)
模型的常见情况;但为了进行预测,应该对其参数进行估计,并根据您提供给它的观察结果进行预测。因此,您可以获得所谓的“拟合值”,并将其用作手头信号的“去噪”版本。这是因为AR(p)
是这样的:其中
\phi_j
是要估计的AR参数,并且e_t
被假定为具有一定方差的白噪声。您可以将此e_t
视为基础信号顶部的噪声,因此拟合值在某种程度上是去噪的在软件实施之前,我们应该注意
AR(p)
是对广义平稳序列进行建模的,因此如果存在非平稳行为(例如趋势/季节性),则应首先明确删除(例如差分),或者隐式删除(例如ARI(p, d)
建模)这是一个故意发出噪音的信号:
下面是
AR(2)
模型的拟合值:这是我从“AR模型去噪”中理解的;假设模型中的
e_t
分量表示噪声,因此拟合值给出“去噪”版本至于编码部分:有许多方法可以将} :
AR(p)
模型与Python库相匹配,但最方便的方法可能是通过^{决定
AR(p)
的顺序是另一个问题,但是一个快速的方法是查看数据的PACF图,看看它在哪个延迟之后消失,例如这将表示
AR(2)
模型相关问题 更多 >
编程相关推荐