楼主: gelinka
7877 2

[问答] 求助,MLE时报错L-BFGS-B needs finite values of 'fn' [推广有奖]

  • 2关注
  • 1粉丝

已卖:77份资源

本科生

4%

还不是VIP/贵宾

-

威望
0
论坛币
227 个
通用积分
1.5900
学术水平
5 点
热心指数
6 点
信用等级
5 点
经验
527 点
帖子
21
精华
0
在线时间
108 小时
注册时间
2010-1-23
最后登录
2023-2-7

楼主
gelinka 发表于 2014-7-11 11:28:17 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
求助,在用sde(随机微分方程)包,对vasicek利率模型进行参数估计时,代码如下:
require(stats4)
require(sde)
Y<-read.table("C:/bycworkspace/shibor.csv",header = T,sep =",")
X<-Y[,3]


OU.lik <- function(theta1, theta2, theta3){
  n <- length(X)
  dt <- deltat(X)
  -sum(dcOU(X[2:n], dt, X[1:(n-1)], c(theta1,theta2,theta3), log=TRUE))
}


mle(OU.lik, start=list(theta1=1, theta2=0.5, theta3=1),
      method="L-BFGS-B", lower=c(-Inf,0,0)) -> fit
summary(fit)


总是报错,如下:
the process is not stationary
Error in optim(start, f, method = method, hessian = TRUE, ...) :
  L-BFGS-B needs finite values of 'fn'
> summary(fit)
Error in summary(fit) :
  在为'summary'函数选择方法时评估'object'参数出了错: Error: object 'fit' not found



请问这是啥情况
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:values finite value needs alue 模型 function process require values

我只是匆匆过客,不要好奇不要好奇~~~~

沙发
DM小菜鸟 发表于 2014-12-10 17:45:52
没给fit做定义
lower=c(-Inf,0,0)) -> fit
这里也不是给fit赋值的意思,而是把fit赋给lower
所以在summary(fit)自然就找不到参数了

藤椅
赵安豆 发表于 2024-6-2 13:34:12
你在使用R语言的`sde`包来估计 Vasicek 利率模型的参数。从你的代码片段来看,似乎缺少了实际数据的部分。在调用 `require(sde)` 之后,你应该导入包含利率时间序列的数据,并将其赋值给一个变量,例如 `Y`。

如果你已经有了这样的数据并且已经正确地赋值给了 `Y`,那么可能的问题是数据中存在非数值(如NA)或者无穷大值。在使用优化算法(如L-BFGS-B)进行最大似然估计时,需要函数的值是有限的数值。

为了解决这个问题,你可以先检查 `Y` 中是否存在非数值或无穷大值,并进行相应的处理(如用插值法填充NA,或将无穷大值替换为合理的数值)。

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 08:15