1
在幫助文件對於非線性函數minimiser stats::nlm
它指出的參數f
一個是(重點煤礦):如何向nlm提供梯度(或粗麻布)?
函數最小化,返回單個數值。這應該是一個函數,第一個參數是一個p長度的向量,後面是由......參數指定的任何其他參數。 如果函數值具有稱爲漸變的屬性或梯度屬性和hessian屬性都爲,則這些屬性將用於計算更新後的參數值。
這是否意味着梯度和粗麻布由相同的命令供給:
attr(f, 'gradient') <- function(...){...}
什麼應此函數的輸入和輸出是什麼?
對比度這對一般的優化器stats::optim
:
optim(par, fn, gr = NULL, ...,
method = c("Nelder-Mead", "BFGS", "CG", "L-BFGS-B", "SANN",
"Brent"), ...)
其中梯度顯式指定爲一個參數optim
,作爲這樣的例子請參閱:how to propery specify a gradient function for use in optim() or other optimizer
審查的nlm
代碼內部做沒有幫助。