24小时热门版块排行榜    

查看: 3084  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

飞鸿印雪jay

银虫 (小有名气)

[求助] 关于非线性最小二乘拟合的问题 已有3人参与

我在matlab中调用这个函数LSQNONLIN,这是非线性最小二乘法,其包含两个算法,trust region reflective and Levenberg-Marquardt,但是我找到的书上是把trust region reflective法归为无约束多维极值问题,百度上还说Levenberg-Marquardt是trust region reflective法的一种?究竟是怎么样的啊?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★
飞鸿印雪jay: 金币+5, ★★★很有帮助 2014-08-30 15:59:09
你的tspan数据是18项,data数据里只有17项,是否是维数不对的原因?

1stOpt求解:
CODE:
Parameter k(15);
Variable t, C(6);
ParameterDomain = [0,];
ODEFunction
C1' =-(k1+k2+k3+k4+k5)*C1;
C2' =k1*C1-(k6+k7+k8+k9)*C2;
C3' =k2*C1+k6*C2-(k10+k11+k12)*C3;
C4' =k3*C1+k7*C2+k10*C3-(k13+k14)*C4;
C5' =k4*C1+k8*C2+k11*C3+k13*C4-k15*C5;
C6' = k5*C1+k9*C2+k12*C3+k14*C4+k15*C5;
Data;
0        0.426497671        0.497339486        0.142025477        0.035090359        0.092890445        0.029854978
5        0.364294441        0.531501605        0.168117836        0.043136361        0.12057094        0.04928427
10        0.282498683        0.547077762        0.189668188        0.048822175        0.131956864        0.046858784
15        0.212605727        0.514167749        0.197954862        0.052949232        0.152963586        0.087585303
20        0.164747872        0.505213939        0.2149634        0.059265477        0.171651807        0.069189738
25        0.121489746        0.498609347        0.241653892        0.068929957        0.20397071        0.083896341
30        0.097513728        0.477379331        0.249727987        0.07289705        0.218884281        0.092080203
35        0.067200762        0.446186417        0.266194438        0.080524446        0.248121593        0.116558008
40        0.054994421        0.439029489        0.285465434        0.089772626        0.284305489        0.129282266
45        0.037566506        0.379466296        0.269368897        0.086289166        0.279633537        0.133442735
50        0.023114503        0.339137907        0.280855057        0.094689189        0.31863228        0.160250254
60        0.014416665        0.298370384        0.283002041        0.099613179        0.346807226        0.190914639
70        0.008962296        0.252702001        0.270900503        0.099468657        0.362646478        0.211507797
80        0.004440918        0.205484131        0.258866251        0.100635933        0.384374958        0.233976586
90        0.003384414        0.17228843        0.245343436        0.100783129        0.408520669        0.270125675
100        0.001097832        0.126954121        0.21601133        0.094095289        0.405977951        0.287462314
110        0.000364687        0.104930458        0.197777161        0.090126427        0.404440384        0.275667765

均方差(RMSE):0.0117362257945764
残差平方和(SSE):0.0132229436065228
相关系数(R): 0.975470953559367
相关系数之平方(R^2): 0.951543581238022
确定系数(DC): 0.931561811072389
F统计(F-Statistic): 6.71001796921087

参数                  最佳估算
--------------------        -------------
k1        0.0418596441571267
k2        2.79667520548361E-15
k3        0.00417748060126059
k4        9.1607798493403E-17
k5        0.002587391875802
k6        0.0129169740911302
k7        6.28738094929527E-27
k8        0.00711557400407817
k9        4.45038192613903E-19
k10        0.00176044626727443
k11        0.00588665699827607
k12        0.00711101883579135
k13        3.65140745025477E-18
k14        5.96964429169975E-15
k15        0.00230341081562437
9楼2014-08-29 22:53:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
以我的了解,Levenberg-Marquardt和trust region reflective不是同一种算法。具体可参见清华大学出版社的《最优化理论与算法》。
纠结具体算法意义不大。
直接调用该函数,用默认的算法即可,如果出现算法设置不合理,MATLAB会提示你的,到时候你换另外一个就行了。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2014-08-25 21:15:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

飞鸿印雪jay

银虫 (小有名气)

引用回帖:
2楼: Originally posted by 月只蓝 at 2014-08-25 21:15:24
以我的了解,Levenberg-Marquardt和trust region reflective不是同一种算法。具体可参见清华大学出版社的《最优化理论与算法》。
纠结具体算法意义不大。
直接调用该函数,用默认的算法即可,如果出现算法设置不合 ...

谢谢啊,我看下。主要在论文当中会写到用什么算法,所以才纠结的。
3楼2014-08-27 16:34:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 飞鸿印雪jay at 2014-08-27 16:34:40
谢谢啊,我看下。主要在论文当中会写到用什么算法,所以才纠结的。...

你用其中一种算法,看哪种能运行得通。然后说明用了该算法即可。我印象中对于参数有约束的问题,Levenberg-Marquardt不适用,trust region reflective算法适用,在MATLAB中help LSQNONLIN,即可找到相关文献,在论文中引用即可。比如trust region reflective算法的文献:
[1] Byrd, R.H., R.B. Schnabel, and G.A. Shultz, Approximate Solution of the Trust Region
Problem by Minimization  over Two-Dimensional Subspaces,  Mathematical Programming,
247-263, 1988。
[2]  Steihaug,  T ,  The  Conjugate  Gradient  Method  and  Trust  Regions  in  Large  Scale
Optimization, SIAM Journal on Numerical Analysis, 626-637, 1983。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
4楼2014-08-27 16:58:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见