R : 如何最小化与未知参数相关的函数?



我想在R中创建一个函数,该函数使用未知参数最小化目标。 确切的等式是

Q_beta=min_{beta} sum_{i=1}^{i=n} || x_i - f(beta) ||^2

在这里,||.||表示欧几里得测度,我想对所有对象求nx_i是一个向量,f(beta)是与x_i相同维的向量,并且它包含未知参数beta。 在这种情况下,我想最小化所有平方欧几里得目标的总和n并且我还想知道哪个beta最小化它们。

我可以在 R 中制作这个函数吗?我需要使用什么样的函数? 谢谢。

这行得通吗?

rm(list=ls())
lower <- -2 ## lower interval endpoint of possible betas
upper <- 2 ## upper interval endpoint
beta0 <- runif(1,lower,upper) ## true beta, randomly selected from interval
t <- seq(0,1,by=.01) ## grid of values that function is fit over
x <- beta0*t^2

## goal is to find beta0
f <- function(beta) beta*t^2
g <- function(beta) sum((x-f(beta))^2)

fit <- optimize(g,lower=lower,upper=upper)
## the following two should match
fit$minimum
beta0

最新更新