问题描述:

matlab 多元高次非线性函数拟合,回归,求教高手!

有这样几个数组

自变量n个:

x=[...]

y=[...]

m=[.]

w=[.]

.

因变量一个:

z=[.]

模型1(两个自变量)

z=a+b*x+c*x^(1/2)+d*x^2+e*y+f*y^(1/2)+g*y^2+h*x*y;

模型2(三个自变量)

z=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2;

模型3(三个自变量)

z=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2+h*x^(1/2)+i*y^(1/2)+j*m^(1/2);

模型4(四个自变量)

z=w*(a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2);

模型5(四个自变量)

z=w*(a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2+h*x^(1/2)+i*y^(1/2)+j*m^(1/2));

模型6(n个自变量)

z=.;

求解里面的相关系数a,b,c,d,e.

简单一次函数二次函数二元都会了,但像上面这样的复杂模型该如何求解呢?

其实,模型无所谓,我需要的是尽可能的把上面的点拟合出来.

有没有直接输入上面的数组,用matlab帮我们构造出最理想的模型的工具或命令,理想模型的标准就是数组上所有数据都是有效数据,都对结果有影响,其实也是我不是解数学题,而是解决实际问题,上面的数据都是有效值!

不是数学专业的,上面的名词可能有用错的.但反正目的就一个:

我输入一系列的自变量,能输出一个和实际输出极为接近的值!

授之以鱼不如授之以渔,希望能教会我如何使用matlab进行数值的拟合、回归、求解之类的.本人拥有一定的matlab基础,这点无需担忧!

1个回答

分类:

综合

2014-12-10

问题解答:

我来补答

推荐你使用一个函数nlinfit,我简单给你介绍一下使用方法,以你的模型2为例:

第一步:你需要建立一个function文件,名字随便,这里我们命名为"hougen",在这个文件内,你要把模型二描述清楚,首先我们假定beta=[a;b;c;d;e;f;g];X=[x,y,m];那么该函数文件内部为:

function z=hougen(beta,X)

for i=1:n ;//这里的n是指你已有数据的长度,比如你已有的结果z=[3,2,2,3,4];n就是5,i其实就是第i次的原始数据

a=beta(i,1);b=beta(i,2);……

x=X(i,1);……

z(i)=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2;

end

第二步:你就可以直接用下面的命令了

betahat = nlinfit(X,z,@hougen,beta);

X是一个n*3的矩阵,用已知的[x,y,m]对其赋值,z是一个n*1的矩阵,用已知的z对其赋值,beta内是初始值,表示你对所求值的一个预估,这个很关键,不能赋值太离谱,你必须给一个合理的初始值.

然后你就得到想要的结果了,其他模型也用类似的办法来做,更细节的问题就靠你自己了,我已经说的很明白了,如果哪里不明白,多想一想,可参考help文件,自己领悟出来的掌握地更牢靠,学长只能帮你到这里了.

再问: 参加过数学建模竞赛,但对曲线拟合这块还不熟。这次因为需要解决一个实际问题,想通过matlab来帮我找出自变量和因变量之间的函数关系。但是我并不知道因变量和自变量的实际函数模型,上面写的模型都是举的例子。matlab除了函数不是还有很多工具么?能否让他自行帮我找出最合适的函数模型?上面的预估值无从下手啊

再答: 恐怕没有这样的工具,你要拟合肯定要知道大概的模型,至于初始值,你可以随便赋一组,然后把拟合得到的结果再作为初始值再次拟合,反复几次即可。而且,一组数据可以有很多模型能够拟合出来,模型的选择还得靠你自己。

展开全文阅读

matlab拟合高次相,matlab 多元高次非线性函数拟合,回归,求教高手!相关推荐

  1. 基于Matlab的遗传算法优化BP神经网络在非线性函数拟合中的应用

    本微信图文详细介绍了遗传算法优化BP神经网络初始权值阈值的过程,并通过实例说明该优化能够提升BP神经网络的预测精确程度.

  2. 基于BP神经网络的非线性函数拟合(一维高斯函数)研究-含Matlab代码

    目录 一.引言 二.BP神经网络的结构与原理 2.1 信息前向传播 2.2 误差的反向传播过程 三.基于BP神经网络的非线性函数拟合 3.1 数据生成 3.2 神经网络拟合结果 四.参考文献 五.Ma ...

  3. Matlab多元非线性函数拟合

    看了多篇文章,觉得没有一篇比较全,且可以参照的多元非线性函数拟合,看了多篇文章后总结以下内容,主要以示例给出,希望能帮助到大家快速上手. 1.需要用到的函数语法 beta = nlinfit(X, Y ...

  4. 基于Matlab的BP神经网络在非线性函数拟合中的应用

    本图文详细介绍了如何利用Matlab神经网络工具箱实现BP神经网络对非线性函数的拟合.

  5. 《MATLAB 神经网络43个案例分析》:第3章 遗传算法优化BP神经网络——非线性函数拟合

    <MATLAB 神经网络43个案例分析>:第3章 遗传算法优化BP神经网络--非线性函数拟合 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MATLAB 神经网 ...

  6. 【智能控制实验】基于MATLAB的BP神经网络实现非线性函数拟合设计

    基于MATLAB的BP神经网络实现非线性函数拟合设计 一.实验要求: 重点是掌握BP神经网络的学习算法原理,掌握matlab工具箱设计BP神经网络拟合非线性模型的方法(m文件):掌握在图形用户界面下设 ...

  7. 遗传算法优化BP神经网络在非线性函数拟合中的应用

    遗传算法优化BP神经网络在非线性函数拟合中的应用 在工程应用中经常会遇到一些复杂的非线性系统,这些系统状态方程复杂,难以用数学方法精确建模.在这种情况下,可以建立BP神经网络表达这些非线性系统.通常B ...

  8. 基于粒子群算法的神经网络非线性函数拟合

    基于粒子群算法的神经网络非线性函数拟合 文章初心 最近在学机器学习,自己的方向是智能算法,课程报告需要,于是试着把机器学习和粒子群算法相结合,写出来供大家参考,交流. 文末有这部分内容相关的代码,已开 ...

  9. BP神经网络非线性函数拟合

    基于BP神经网络的非线性函数拟合算法流程可以分为BP神经网络构建.BP神经网络训练和BP神经网络预测三步. BP神经网络构建:根据拟合非线性函数特点确定BP神经网络结构. BP神经网络训练:用非线性函 ...

最新文章

  1. python中如何对复杂的json数据快速查找key对应的value值(使用JsonSearch包)
  2. OpenCV 【十二】OpenCV如何扫描图像、利用查找表和计时
  3. 英特尔携手中科院计算所建立中国首个 oneAPI 卓越中心
  4. 远程办公难?实战经验为你打消4大顾虑
  5. C# 加载图片image --(C#)Image.FromFile 方法会锁住文件的原因及可能的解决方法
  6. jQuery Dom 操作,动态生成dom,绑定事件
  7. 牛客网暑期ACM多校训练营(第一场)
  8. 深入理解 Objective-C:方法缓存
  9. 用vector实现二维向量
  10. 直方图均衡化计算过程步骤
  11. 数据可视化(3)--Google Charts
  12. python情感分析算法_Python 情感分析
  13. restful 风格api
  14. apache .htaccess 转化nginx工具
  15. 大数据生态与Spark简介
  16. ADS(Advanced Design system)使用调谐分析(Tuning)进行电路优化
  17. chrome控制台出现/null访问
  18. 如何使用腾讯云服务器搭建个人网站?
  19. ttl转rs232发送十六进制_浅析 UART、RS232、TTL 之间的关系(转)
  20. android 清理工具,安卓清理君深度清理软件/真心强

热门文章

  1. web前端基础(08html5新标签)
  2. 针对网上的一份netty的面试题之(netty的粘包和拆包)
  3. netty的handler里面ctx.channel().writeAndFlush()和ctx.writeAndFlush()的区别
  4. 次表面散射材质_游戏开发者怎么做出以假乱真的画面效果?大气散射渲染了解一下...
  5. 5 video关掉字幕选项_让PPT字幕滚动起来,一秒高端大气,赶紧码住!
  6. 新商标表明华为鸿蒙系统在海外或叫做“Harmony OS”
  7. WCF同步到异步转换
  8. 引入react文件报错_react.js引入router文件后报错
  9. $.post 中文乱码 php,如何解决jquery $.post 乱码问题
  10. SVG实现loading