gpt4 book ai didi

r - 打印 R 优化函数的中间步骤

转载 作者:行者123 更新时间:2023-12-04 10:17:31 24 4
gpt4 key购买 nike

当导数不可用时,我想在 R 中对函数进行数值优化。我很好奇如何打印优化过程的中间步骤。当我使用 optim() 时,我知道该怎么做。我说的是 control=list(trace...etc)。如何在使用优化时做类似的工作?

最佳答案

追踪您的目标。请注意,如果您的 R 版本非常旧,则需要升级到最新版本才能使用 returnValue()

这是 help(optimize) 中添加了跟踪的第一个示例。

f <- function (x, a) (x - a)^2
trace(f, exit = quote(cat("x:", x, "objective:", returnValue(), "\n")),
print = FALSE)
optimize(f, c(0, 1), tol = 0.0001, a = 1/3)

给予:

x: 0.381966 objective: 0.002365137 
x: 0.618034 objective: 0.08105446
x: 0.236068 objective: 0.009460549
x: 0.3333333 objective: 0
x: 0.3333 objective: 1.111442e-09
x: 0.3333667 objective: 1.111442e-09
x: 0.3333333 objective: 0
$minimum
[1] 0.3333333

$objective
[1] 0

关于r - 打印 R 优化函数的中间步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30959616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com