matlab程序中fminsearch函数使用

我们在处理优化,拟合问题时候,经常需要计算loss函数,也就是说我们通过min{fx}求取函数中的位置系数,那么如果求取,

我们可以借助于matlab 中的fminsearch函数,直接针对函数f(x)求取极小情况下的X等未知数。

下面我们举一个例子来演示如何使用:

直接以最复杂场景为例

1. 新建一个函数文件,定义函数,这个就是loss函数,针对其中要用到的已知,变量可以通过声明成global 全局变量来实现。

 function f(x)

 

2. 我们需要声明自变量的迭代初始点,x0=[1, 2 ]  ;这里是一个数组,大小是根据我们定义的function f(x)中有几个自变量来确定的,

比如说你有两个自变量,那么X0就有两个,如果你有三个,那么就定义三个。

 

3. 如果你不需要对option做格外的设置,这个时候,就可以直接调用fminsearch(f,x0)进行迭代优化,求取函数最小值情况下,自变量未知数的解。

 

这个函数使用比较广泛,比如:直线最小二乘拟合,你可以把距离差的和作为loss函数,然后求这条曲线的表达式。

假设y=ax+b,已知点集合{xa},{yb}求直线表达式a,b的解。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值