此示例显示如何使用归一化来改善分散的数据插值结果Griddata.
。归一化可以在某些情况下改善插值结果,但在其他情况下,它可以损害解决方案的准确性。是否使用归一化是基于正在内插数据的性质进行的判断。
好处:当独立变量具有不同的单位和基本不同的尺度时,归一化数据可能会潜在地改善插值结果。在这种情况下,缩放输入以具有相似的大小可以改善插值的数值方面。归一化将有益的例子是X
表示发动机转速(rpm),从500到3500y
代表从0到1的发动机负载X
和y
不同的数量级不同,它们有不同的单位。
注意:如果独立变量具有相同的单位,请在归一化数据时使用小心,即使变量的尺度不同。利用相同单元的数据,归一化通过添加方向偏置来扭曲解决方案,这会影响底层三角形,并最终损害插值的准确性。归一化是错误的一个例子是两者都是X
和y
代表地点,有单位米。缩放X
和y
不平等不建议,因为10米应原应该在空间上与北方10米相同。
创建一些示例数据,其中值y
是比那些大的数量级X
。假使,假设X
和y
有不同的单位。
x =兰德(1500)/ 100;y = 2。* (rand(1500) -0.5)。* 90;z = (x) * 1 e2) ^ 2;
使用样本数据构造查询点网格。插值网格上的示例数据并绘制结果。
X = linspace (min (X)、马克斯(X), 25);Y = linspace (min (Y), max (Y), 25);[xq, yq] = meshgrid(X,Y);zq = griddata (x, y, z, xq yq);Plot3(x,y,z,'莫') 抓住在网格(XQ,YQ,ZQ)XLabel('X')ylabel('是') 抓住离开
由此产生的结果Griddata.
不是很顺利,似乎很吵。独立变量中的不同比例有助于此,因为一个变量大小的小变化可能导致其他变量的大小的更大变化。
自从X
和y
有不同的单位,使它们正常化,使它们具有相似的大小,应该有助于产生更好的结果。使用采样点标准化Z.-scores和使用插值Griddata.
。
%标志化样本点x = Normalize(x);Y =标准化(Y);%再生网格X = linspace (min (X)、马克斯(X), 25);Y = linspace (min (Y), max (Y), 25);[xq, yq] = meshgrid(X,Y);%插值和情节zq = griddata (x, y, z, xq yq);Plot3(x,y,z,'莫') 抓住在网格(xq, yq zq)
在这种情况下,标准化采样点允许Griddata.
计算更平滑的解决方案。