r - 优化 R 中的多元函数

标签 r optimization

我有一个多变量函数,我想针对一个参数进行优化:

cost <- function(theta, X, y) {
  m <- nrow(X)
  X <- as.matrix(X)
  J <- sum(-y * log(sigmoid(X %*% theta)) - (1-y) * log(1 - sigmoid(X %*% theta)))/m;
  return(J)
}

为了优化它,我使用了 optim 函数。首先,我创建一个包装器,然后使用 optim 函数优化包装器函数:

# X and y initialized before
initial_theta <- rep(0,ncol(X))
wrapper <- function(theta) cost(theta, X=X, y=y)
o <- optim(initial_theta, wrapper) 

如何在不创建额外函数的情况下使用 optim 优化多元函数?

最佳答案

optim 采用 ... 参数,该参数将任何附加输入传递给感兴趣的函数。因此,只要您要优化的参数是感兴趣函数的第一个参数,您就无需创建新函数。

optim(initial_theta, cost, X = X, y = y)

应该提供与创建额外功能相同的功能。

关于r - 优化 R 中的多元函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11546036/

相关文章:

r - 标志而不是应用程序标题 Shiny

r - 使用 dplyr 中的整数范围

r - 在 case_when() 中抛出错误

r - 构建 data.table 列表列的滚动聚合

C优化技术

python - 在 numpy 和 python 中快速删除重复项

php - MySQL 选择行值作为键=>值

r - Knitr 中的标题

c++ - 许多情况下的开关优化保证任何情况下均等的访问时间? ( C++ )

c - 为什么 NOP/几行额外的代码/指针别名优化有帮助? [富士通MB90F543 MCU C代码]