MATLAB进阶:数据的拟合
创始人
2024-11-12 07:09:50
0

几天我们继续深度学习MATLAB中的数据拟合

最小二乘拟合

假设已知经验公式y=f(c,x)y=f(c,x)(c为参数,x为自变量),要求根据一批有误差的数据(xi,yi),i=0,1,...,n(xi​,yi​),i=0,1,...,n确定参数c。这样的问题称为数据拟合。

最小二乘法:求c使得平方误差最小化

最小二乘法的内容我们这里不再过多讲解,这里主要侧重讲解如何用MATLAB来解决相关问题。

线性拟合

p=polyfit(x,y,k)

k次多项式拟合向量数据(x, y),返回多项式的降幂系数

p返回的向量,包含拟合多项式的系数。这些系数按降幂排列,即 p(1) 是最高次项的系数,p(end) 是常数项。

举例

x = [1, 2, 3, 4, 5];  % 自变量数据 y = [2, 4, 6, 8, 10]; % 因变量数据 k = 2;                % 拟合二次多项式  p = polyfit(x, y, k); % 拟合多项式并获取系数 

非线性拟合

[c,Q]=lsqcurvefit(Fun,c0,x,y,lb,ub)

其中Fun(c,x)为两个输入变量的函数句柄或匿名函数,

c0为参数c的预估值,作为迭代初值,

x,y为数据向量,

lbub分别表示c的下界和上界,

c返回参数值

Q返回误差平方和,

自变量x可以是多变量,这时第三输入参数x应为矩阵

举例

% 模型函数 fun = @(c, x) c(1) * exp(c(2) * x);  % 初始参数估计 c0 = [1; 1];  % 独立变量数据 x = [1; 2; 3; 4; 5];  % 依赖于x的观测数据 y = [2.3; 2.9; 4.1; 5.9; 8.2];  % 参数的上下界 lb = [0; -Inf]; % c(1) 不能小于0, c(2) 没有下界 ub = [Inf; Inf]; % c(1) 和 c(2) 没有上界  % 调用lsqcurvefit c = lsqcurvefit(fun, c0, x, y, lb, ub);  % 输出结果 disp('拟合参数:'); disp(['c(1) = ', num2str(c(1))]); disp(['c(2) = ', num2str(c(2))]); 

线性拟合与非线性拟合的转换

虽然非线性拟合范围较广,但是却存在难以确定初始值的问题,在我们无法确定初始值时,一般用“0”来替代。而想方设法将其转化为线性函数,亦可以省去猜测初始值的步骤,并且大大减少计算所需时间

举例

这是一个非线性函数,但是如果我们左右两边同时取对数,就可以得到

这时,如果将ln(y)视为常数项z,那么我们就可以用线性拟合解决这个问题

% 假设 x 和 y 是你的数据点 x = [...]; % 你的 x 数据 y = [...]; % 你的 y 数据  % 对 y 取自然对数 y_transformed = log(y);  % 使用 polyfit 拟合一次多项式(线性关系) p = polyfit(x, y_transformed, 1);  % p(1) 将是斜率 b,p(2) 将是截距 ln(a) b = p(1); ln_a = p(2); a = exp(ln_a); % 计算原始的 a 值 

今天就学到这里,我们明天继续学习。

相关内容

热门资讯

今年以来!德州透视插件,蛮王辅... 今年以来!德州透视插件,蛮王辅助,手册教程(有挂分享)-哔哩哔哩1、进入到德州透视插件是否有挂之后,...
近期!赣牌圈破解版,雀神麻雀充... 近期!赣牌圈破解版,雀神麻雀充运势用吗,演示教程(详细教程)-哔哩哔哩1、雀神麻雀充运势用吗透视辅助...
专业透视!wepoker透视破... 专业透视!wepoker透视破解版,微信小程序 微乐陕西挖坑 外挂,手筋教程(有挂实锤)-哔哩哔哩;...
第三方插件!pokemmo手机... 第三方插件!pokemmo手机版脚本,江湖悠悠手游多开辅助,模块教程(真是有挂)-哔哩哔哩小薇(辅助...
无独有偶!顺欣茶坊智能辅助器使... 无独有偶!顺欣茶坊智能辅助器使用说明书,潮友会鱼虾蟹辅助软件,项目教程(有人有挂)-哔哩哔哩1、这是...
详情透视!hhpoker软件可... 详情透视!hhpoker软件可以玩吗,微乐小程序辅助器脚本,妙招教程(有挂秘笈)-哔哩哔哩;1、让任...
近年来!潮汕汇游戏辅助,龙岩闲... 近年来!潮汕汇游戏辅助,龙岩闲游安卓脚本,举措教程(有挂功能)-哔哩哔哩1、龙岩闲游安卓脚本公共底牌...
今天下午!智星德州插件,创思维... 今天下午!智星德州插件,创思维app有挂吗,机巧教程(有挂分享)-哔哩哔哩1、创思维app有挂吗有没...
解谜透视!hhpoker是真的... 解谜透视!hhpoker是真的还是假的,微信小程序有挂吗辅助,技法教程(有挂头条)-哔哩哔哩1、很好...
最新消息!潮汕鱼虾蟹挂辅助器,... 最新消息!潮汕鱼虾蟹挂辅助器,三哥玩app辅助,操作教程(有挂存在)-哔哩哔哩1、超多福利:超高返利...