可视化优化路径直至在R中收敛
我使用“optim”包来最大化对数似然函数。我想把优化路径可视化,直到与下面的图链接这样的动画收敛 以下是对数似然函数和optim:可视化优化路径直至在R中收敛,r,optimization,R,Optimization,我使用“optim”包来最大化对数似然函数。我想把优化路径可视化,直到与下面的图链接这样的动画收敛 以下是对数似然函数和optim: x=runif(500) x=模型矩阵(~x) y=rbinom(500,1,0.5) θ=c(-0.1,2) logll我们需要一步一步地运行优化器,因此我们得到每个时间步的解决方案。然后使用gganimate制作动画几乎是微不足道的 grid.b$f <- grid.f op <- sapply( seq_len(optim(theta,l
x=runif(500)
x=模型矩阵(~x)
y=rbinom(500,1,0.5)
θ=c(-0.1,2)
logll我们需要一步一步地运行优化器,因此我们得到每个时间步的解决方案。然后使用gganimate
制作动画几乎是微不足道的
grid.b$f <- grid.f
op <- sapply(
seq_len(optim(theta,logll)$counts['function']),
function(i) {
set.seed(1234)
optim(theta, logll, control = list(maxit = i))$par
}
)
op_df <- data.frame(b0 = op[1,], b1 = op[2,])
op_df$step <- 1:nrow(op_df)
p <- ggplot(grid.b, aes(b0, b1)) +
geom_raster(aes(fill = f)) +
geom_contour(aes(z = f), col = 'grey40') +
geom_path(data = op_df, col = 'white') +
geom_point(data = op_df, col = 'white') +
scale_fill_viridis_c() +
coord_cartesian(expand = FALSE)
library(gganimate)
a <- p + transition_reveal(step)
anim_save(
'~/Desktop/anim.gif', a, height = 400, width = 400,
nframes = nrow(op_df), fps = 30, duration = nrow(op_df) / 30
)
grid.b$f无法运行您的代码:optim(theta,logll)中的错误:无法在初始参数处计算函数。另外:警告消息:在日志(1-p)中:生成了NaNs
我编辑了它,它现在可以工作了。谢谢你的回答