MISO 结构的 NLMS 算法

信息处理 离散信号 卷积
2022-02-09 17:58:26

我正在尝试为多输入单输出(MISO)结构实现 NLMS 算法。

我们取一个参考信号 x,然后我们从中生成一组新的 P 个输入信号,如下所示:x_op (k) = x(k)^p。k 表示我们的参考信号 x 的第 k 个样本。

对于 P = 1 的情况,我们的自适应滤波器只是一个长度为 N 的向量。但是对于 P > 1,我们有一个包含所有自适应滤波器的矩阵 H (N x P)。(其中 N 是每个过滤器的长度)。

现在我很困惑每次迭代(对于每个样本)的估计输出的维度。对于 P = 1 的情况,我们可以简单地写成:

y_hat = h_hat' * xk; 其中 xk 具有 x 的最后 N 个样本。

然后 y_hat 是一个标量。当 H 不再是矩阵而不是向量时,这种情况会怎样呢?

按照我的理解,这种情况下的 y_hat 不再是标量。但如果它不是一个标量,那么我应该如何定义每个样本 k 的误差,以便编写适应律方程?

1个回答

我可以为您提供编码示例,但它解决的问题比您发布的更普遍。它适用于将两个输入 x(t)、y(t) 转换为单个输出 z(t) 并由 Urysohn 积分方程定义的一般动态系统。Hammerstein 是 Urysohn 的特例,线性系统是 Hammerstein 的特例。代码和一些解释在这里: http: //ezcodesample.com/NAF/MISO.html http://ezcodesample.com/NAF/Wiener.html http://ezcodesample.com/NAF/reallife2.html

最一般的情况是动态系统是将输入 x(t) 的片段从 t - T 转换为 t 到标量 z(t) http://ezcodesample.com/NAF/kolmogorov.html