matlab 提示警告如下,是什么意思?
Warning:Rankdeficient,rank=3,tol=8.229687e-010.>Innlinfit>LMfitat300Innlinfitat162War...
Warning: Rank deficient, rank = 3, tol = 8.229687e-010.
> In nlinfit>LMfit at 300
In nlinfit at 162
Warning: Some columns of the Jacobian are effectively zero at the solution, indicating that the model is insensitive
to some of its parameters. That may be because those parameters are not present in the model, or otherwise do not
affect the predicted values. It may also be due to numerical underflow in the model function, which can sometimes
be avoided by choosing better initial parameter values, or by rescaling or recentering. Parameter estimates may be
unreliable.
> In nlinfit at 222 展开
> In nlinfit>LMfit at 300
In nlinfit at 162
Warning: Some columns of the Jacobian are effectively zero at the solution, indicating that the model is insensitive
to some of its parameters. That may be because those parameters are not present in the model, or otherwise do not
affect the predicted values. It may also be due to numerical underflow in the model function, which can sometimes
be avoided by choosing better initial parameter values, or by rescaling or recentering. Parameter estimates may be
unreliable.
> In nlinfit at 222 展开
1个回答
展开全部
这个警告信息是说,模型(拟合函数)对某些参数不敏感。
可能的原因包括:
(1)拟合函数中的某些参数对函数值没影响,这种情况应该考虑修改拟合函数的形式。
(2)数值计算出现下溢(underflow),这种情况有可能通过修改参数初值或者对数据进行归一化处理等方式解决。
一般来说,第一种情况可能性更大一些,具体要看你的数据和拟合函数是怎样选的。
举例来说,样本数据是x^2,现在用f(x)=a*x^2+b来拟合:
>> x=1:10;
>> y=x.^2;
>> f=@(b,x)b(1)*x.^2+b(2);
>> b = nlinfit(x,y,f,[2 1])
b =
1.0000 0.0000
这样没有问题。如果把拟合函数改成f(x)=a*x^2+b*0,就会出现警告:
>> f=@(b,x)b(1)*x.^2+0*b(2);
>> b = nlinfit(x,y,f,[2 1])
Warning: Rank deficient, rank = 1, tol = 4.2621e-013.
> In nlinfit>LMfit at 295
In nlinfit at 167
Warning: Rank deficient, rank = 1, tol = 4.2431e-013.
> In nlinfit>LMfit at 295
In nlinfit at 167
Warning: Rank deficient, rank = 1, tol = 4.2412e-013.
> In nlinfit>LMfit at 295
In nlinfit at 167
Warning: Rank deficient, rank = 1, tol = 4.2410e-013.
> In nlinfit>LMfit at 295
In nlinfit at 167
Warning: The Jacobian at the solution is ill-conditioned, and some
model parameters may not be estimated well (they are not identifiable).
Use caution in making predictions.
> In nlinfit at 224
b =
1.0000 1.0000
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询