文档帮助中心文档
自适应滤波器的估计均方误差
mse = mesim (adaptFilt,x,d)
[mse,meanw,w,tracek] = mesim (adaptFilt,x,d)
[___= msesim(adaptFilt,x,m)
例子
均方误差= msesim (adaptFilt,x,d)中给定输入和期望响应信号序列,估计自适应滤波器在每个时刻的均方误差x而且d.
均方误差= msesim (adaptFilt,x,d)
均方误差
adaptFilt
x
d
[均方误差,meanw,w,tracek= messim (adaptFilt,x,d)还计算了系数向量均值的序列,meanw,自适应滤波系数,w,总系数误差幂,tracek,对应自适应滤波器的模拟行为。
[均方误差,meanw,w,tracek= messim (adaptFilt,x,d)
meanw
w
tracek
[___= messim (adaptFilt,x,米)指定用于计算的可选抽取因子均方误差,meanw,tracek.如果米> 1,每米这些序列中的每一个的值都被保存。如果省略,的值米默认值为1。
[___= messim (adaptFilt,x,米)
米
全部折叠
均方误差(MSE)测量自适应滤波器的期望信号和主要输入信号之间误差平方的平均值。减少这个误差可以将主要输入收敛到所需的信号。确定各时刻的MSE预测值和模拟MSE值msepred而且msesim功能。将这些MSE值相互比较,并相对于最小MSE值和稳态MSE值进行比较。此外,计算由系数协方差矩阵的迹所给出的系数误差的平方和。
msepred
msesim
请注意:如果您正在使用R2016a或更早的版本,请使用等效的步骤语法替换对对象的每个调用。例如,obj (x)就变成了步骤(obj, x).
obj (x)
步骤(obj, x)
初始化
创建一个dsp。FIRFilter表示未知系统的系统对象™。传递信号,x,到FIR滤波器。未知系统的输出是期望的信号,d,为未知系统(FIR滤波器)输出与加性噪声信号的和,n.
dsp。FIRFilter
n
Num = fir1(31,0.5);Fir = dsp。FIRFilter (“分子”, num);Iir = dsp。IIRFilter (“分子”sqrt (0.75),...“分母”-0.5 [1]);X = iir(sign(randn(2000,25)));N = 0.1*randn(size(x));D = fir(x) + n;
LMS滤波器
创建一个dsp。LMSFilter对象来创建一个滤波器,以适应输出所需的信号。设置自适应滤波器的长度为32个点,步长为0.008,用于分析和模拟的抽取因子为5。的变量simmse表示未知系统输出之间的模拟MSE,d,自适应滤波器的输出。的变量均方误差给出相应的预测值。
dsp。LMSFilter
simmse
L = 32;Mu = 0.008;M = 5;LMS = dsp。LMSFilter (“长度”l,“StepSize”μ);[mmse,emse,meanW,mse,traceK] = msepred(lms,x,d,m);[simmse,meanWsim,Wsim,traceKsim] = msesim(lms,x,d,m);
绘制MSE结果
比较模拟MSE、预测MSE、最小MSE和最终MSE的值。最终的均方误差值由最小均方误差和最大均方误差之和给出。
Nn = m:m:size(x,1);simmse semilogy (nn,大小(x, 1) [0], [(emse + mmse)...(emse + mmse)], nn, mse,大小(x, 1) [0], [mmse mmse])标题(“均方误差性能”(0 size(x,1) 0.001 10])“MSE (Sim)。”,“最后的MSE”,MSE的,“最小MSE。”)包含(“时间指数”) ylabel (平方误差值)
预测的MSE与模拟的MSE遵循相同的轨迹。这两个轨迹都收敛于稳态(最终)MSE。
画出系数轨迹
meanWsim模拟系数的平均值是否为msesim.meanW预测系数的平均值是否为msepred.
meanWsim
meanW
比较LMS滤波器系数12、13、14和15的模拟和预测平均值。
情节(nn meanWsim (: 12),“b”、神经网络、meanW (: 12),“r”神经网络,...meanWsim (:, 13:15),“b”、神经网络、meanW (:, 13:15),“r”) PlotTitle ={的平均系数轨迹;...'W(12), W(13), W(14), W(15)'}
PlotTitle =2 x1细胞{'} {'W(12), W(13), W(14)和W(15)'}的平均系数轨迹
标题(PlotTitle)传说(“模拟”,“理论”)包含(“时间指数”) ylabel (的系数值)
在稳态下,两条轨迹都收敛。
平方系数误差之和
比较所给出的系数误差平方和msepred而且msesim.这些值由系数协方差矩阵的迹给出。
traceK traceKsim semilogy(神经网络,神经网络,“r”)标题(“平方和系数误差”)轴([0 size(x,1) 0.0001])“模拟”,“理论”)包含(“时间指数”) ylabel (平方误差值)
通过使用滤波x LMS算法执行主动噪声控制来识别未知系统。自适应滤波器的目标是使自适应滤波器的输出与未知系统(或待识别系统)的输出之间的误差信号最小化。一旦误差信号最小,未知系统就会收敛到自适应滤波器。
创建一个dsp。FIRFilter系统对象,表示要标识的系统。传递信号,x,到FIR滤波器。未知系统的输出是期望的信号,d,为未知系统(FIR滤波器)输出与加性噪声信号的和,n.
自适应滤波器
创建一个dsp。FilteredXLMSFilter对象创建一个使用filter -x LMS算法的自适应过滤器。设置自适应滤波器的长度为32个点,步长为0.008,用于分析和模拟的抽取因子为5。的变量simmse表示未知系统的输出,d,自适应滤波器的输出。
dsp。FilteredXLMSFilter
L = 32;Mu = 0.008;M = 5;FXLMS = dsp。FilteredXLMSFilter (l,“StepSize”μ);[simmse,meanWsim,Wsim,traceKsim] = msesim(fxlms,x,d,m);情节(m *(1:长度(simmse)), 10 * log10 (simmse))包含(“迭代”) ylabel (“MSE (dB)”)绘制filter -x LMS filter的学习曲线用于系统标识标题(“学习曲线”)
随着每一次迭代的适应,价值的提升simmse减小到最小值,表明未知系统已经收敛到自适应滤波器。
请注意:如果您正在使用R2016a或更早的版本,请将对对象的每个调用替换为等效的调用一步语法。例如,obj (x)就变成了步骤(obj, x).
一步
Ha = fir1(31,0.5);要识别的FIR系统Fir = dsp。FIRFilter (“分子”,哈);Iir = dsp。IIRFilter (“分子”sqrt (0.75),...“分母”-0.5 [1]);X = iir(sign(randn(2000,25)));观测噪声信号%N = 0.1*randn(size(x));%期望信号D = fir(x)+n;过滤器长度%L = 32;%用于分析的抽取因子%和模拟结果M = 5;ha = dsp.AdaptiveLatticeFilter(l);[simmse,meanWsim,Wsim,traceKsim] = msesim(ha,x,d,m);情节(m *(1:长度(simmse)), 10 * log10 (simmse));包含(“迭代”);ylabel (“MSE (dB)”);绘制用于的学习曲线自适应晶格滤波器用于系统辨识标题(“学习曲线”)
Fir = fir1(31,0.5);要识别的FIR系统firFilter = dsp。FIRFilter (“分子”、冷杉);iirFilter = dsp。IIRFilter (“分子”sqrt (0.75),...“分母”-0.5 [1]);x = iirFilter(sign(randn(2000,25)));观测噪声信号%N = 0.1*randn(size(x));%期望信号d = firFilter(x)+n;过滤器长度%L = 32;Block LMS步长Mu = 0.008;%用于分析的抽取因子%和模拟结果M = 32;Fir = dsp。BlockLMSFilter(l,“StepSize”μ);[simmse,meanWsim,Wsim,traceKsim] = msesim(fir,x,d,m);情节(m *(1:长度(simmse)), 10 * log10 (simmse));包含(“迭代”);ylabel (“MSE (dB)”);绘制学习曲线%块LMS过滤器用于系统识别标题(“学习曲线”)
Ha = fir1(31,0.5);要识别的FIR系统Fir = dsp。FIRFilter (“分子”,哈);Iir = dsp。IIRFilter (“分子”sqrt (0.75),...“分母”-0.5 [1]);X = iir(sign(randn(2000,25)));观测噪声信号%N = 0.1*randn(size(x));%期望信号D = fir(x)+n;过滤器长度%L = 32;%仿射投影滤波器步长。Mu = 0.008;%用于分析的抽取因子%和模拟结果M = 5;Apf = dsp。AffineProjectionFilter (l,“StepSize”μ);[simmse,meanWsim,Wsim,traceKsim] = msesim(apf,x,d,m);情节(m *(1:长度(simmse)), 10 * log10 (simmse));包含(“迭代”);ylabel (“MSE (dB)”);绘制仿射投影滤波器的学习曲线用于系统标识标题(“学习曲线”)
自适应过滤器,指定为以下系统对象之一:
dsp。BlockLMSFilter
dsp。AdaptiveLatticeFilter
dsp。AffineProjectionFilter
dsp。FastTransversalFilter
dsp。RLSFilter
输入信号,指定为标量、列向量或矩阵。矩阵的列x包含单独的输入信号序列。输入,x,和期望信号,d,必须具有相同的大小和数据类型。
如果adaptFilt是一个dsp。BlockLMSFilter对象中指定的值时,输入信号帧大小必须大于或等于BlockSize对象的属性。
BlockSize
数据类型:单|双
单
双
期望的响应信号,指定为标量、列向量或矩阵。矩阵的列d包含个别所需的信号序列。输入,x,和期望信号,d,必须具有相同的大小和数据类型。
如果adaptFilt是一个dsp。BlockLMSFilter对象中指定的值时,所需的信号帧大小必须大于或等于BlockSize对象的属性。
1
抽取因子,指定为正标量。每一个米估计序列的第Th值保存到相应的输出参数中,均方误差,meanw,w,tracek.如果米等于1时,这些序列的每一个值都被保存。
如果adaptFilt是一个dsp。BlockLMSFilter对象中的值的倍数,则抽取因子必须是BlockSize对象的属性。
数据类型:单|双|int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑
int8
int16
int32
int64
uint8
uint16
uint32
uint64
逻辑
自适应滤波器在每个时刻的均方误差估计值,作为列向量返回。
如果自适应滤波器为dsp。BlockLMSFilter还有抽取因子米的长度均方误差= (米/ m)。米是输入信号的帧大小(行数),x.如果米未指定,长度为均方误差= (M / B),B中指定的值是否为BlockSize对象的属性。输入信号帧大小必须大于或等于在BlockSize对象的属性。如果指定了抽取因子,则必须是BlockSize财产。
对于其他自适应滤波器,如果抽取因子,米= 1,的长度均方误差等于输入信号的帧大小。如果米> 1,的长度均方误差= (米/ m)。
数据类型:双
自适应滤波器各时刻的系数向量均值序列,估计为一个矩阵。该矩阵的列包含自适应滤波器系数在每个时刻的平均值的估计值。
如果自适应滤波器为dsp。BlockLMSFilter还有抽取因子米的尺寸meanw楼(米/ m)——-N.米是输入信号的帧大小(行数),x.N过滤器权重的长度是否为向量,由长度自适应滤波器的属性。如果米未指定的尺寸meanw楼(M / B)———N,在那里B中指定的值是否为BlockSize对象的属性。输入信号帧大小必须大于或等于在BlockSize对象的属性。如果指定了抽取因子,则必须是BlockSize财产。
长度
对于其他自适应滤波器,如果抽取因子为米= 1,的维数meanw是米——- - - - - -N.如果米> 1,的维数meanw楼(米/ m)——-N.
所述算法的自适应滤波系数的最终值对应adaptFilt,作为行向量返回。中指定的值长度对象的属性。
总系数误差幂的序列,估计为列向量。该列向量包含自适应滤波器在每个时刻的总系数误差功率的估计值。
如果自适应滤波器为dsp。BlockLMSFilter还有抽取因子米的长度tracek= (米/ m)。米是输入信号的帧大小(行数),x.如果米未指定,长度为tracek= (M / B),B中指定的值是否为BlockSize对象的属性。输入信号帧大小必须大于或等于在BlockSize对象的属性。如果指定了抽取因子,则必须是BlockSize财产。
对于其他自适应滤波器,如果抽取因子,米= 1,的长度tracek等于输入信号的帧大小。如果米> 1,的长度tracek= (米/ m)。
海耶斯,M.H.统计数字信号处理与建模“,”纽约:John Wiley & Sons出版社,1996年。
maxstep
您有这个示例的修改版本。要使用编辑打开此示例吗?
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在可用的地方获得翻译的内容,并查看当地的活动和优惠。根据您所在的位置,我们建议您选择:.
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系当地办事处
现在就去审判吧