python - 如何使用 scipy.optimize.minimize 从数组中最小化 SSE?
问题描述
我正在尝试从头开始为债券收益率曲线做三次样条。我有三个功能cubic_func
market_value
和sse
:
def cubic_func(t,a,b,c,d):
return a*(t**3)+b*(t**2)+c*t + d
def market_value(t, y):
return math.exp(-y*t/12)
def cal_sse(param):
t, y, a, b, c, d = param[0], param[1], param[2], param[3], param[4], param[5]
model = cubic_func(t, a, b, c, d)
market = market_value(t, y)
return (market - model)**2
我需要cal_sse
通过找到合适的值来最小化函数a,b,c,d
。我试过了
initial_guess = [1,1,1,1,1,1]
result = minimize(obj, initial_guess)
result.x
# result.x give array([0.03589394, 0.9864572 , 0.81598281, 0.81627056, 0.82279686, 0.96643035])
我的情况是那个变量y
并且t
是两个数组。我想最小化 y 和 t 中的所有值,并为每个a,b,c,d
. 另外,我不需要更改y
and的值t
。我不明白为什么result.x
还要为 y 和 t 赋值。
我应该如何解决这个问题?
解决方案
推荐阅读
- php - Netsuite API 在 PHP 中获取项目
- python - 使用蓝图的 Flask 路由不起作用,只有 '/' 路由在 Ubuntu 上有效,但在 Windows 上一切都很好
- ruby-on-rails - 从rails中创建的记录中获取ID
- azure - Azure 应用服务 - 应用的免费 ssl 证书是否有限制?
- mysql - 在 Spring Boot 中,希望在输出中显示实体类中的字段但不需要输入
- java - 在 BaseActivity 的子类中显示工具栏
- constraints - 雪花的唯一约束有什么意义?
- mailgun - mailgun 通过 SMTP 发送模板电子邮件
- c# - 如何使代理随时间变化 C# .NET Framework
- php - 函数渲染使网站速度减慢 500%!任何人都可以解决这个问题吗?