Andrej-Nikolai Spiess
2012-Sep-19 13:01 UTC
[R] Discrepancies in weighted nonlinear least squares
Dear all, I encounter some discrepancies when comparing the deviance of a weighted and unweigthed model with the AIC values. A general example (from 'nls'): DNase1 <- subset(DNase, Run == 1) fm1DNase1 <- nls(density ~ SSlogis(log(conc), Asym, xmid, scal), DNase1) This is the unweighted fit, in the code of 'nls' one can see that 'nls' generates a vector wts <- rep(1, n). Now for a weighted fit: fm2DNase1 <- nls(density ~ SSlogis(log(conc), Asym, xmid, scal), DNase1, weights = rep(1:8, each = 2)) in which I assign dcreasing weights for each of the 8 concentrations with 2 replicates. Now with 'deviance' I get:> deviance(fm1DNase1)[1] 0.004789569> deviance(fm2DNase1)[1] 0.0164259 Telling me that the weighted fit has a significantly higher deviance (is a worse fit). Now with AIC (or BIC) I get> AIC(fm1DNase1)[1] -76.41642> AIC(fm2DNase1)[1] -372.5437 Which tells me that the second fit is by orders of magnitude the better one. Why so? If I define AIC based on residual sum-of-squares as found in the textbooks RSS <- function (object) { w <- object$weights r <- residuals(object) if (is.null(w)) w <- rep(1, length(r)) sum(w * residuals(object)^2) } AICrss <- function(object) { n <- nobs(object) k <- length(coef(object)) rss <- RSS(object) n * log((2 * pi)/n) + n + 2 + n * log(rss) + 2 * k } I get> AICrss(fm1DNase1)[1] -76.41642 Which is the same value as the above AIC (stats:::AIC.logLik) based on log-likelihood but> AICrss(fm2DNase1)[1] -56.69772 which is higher and fits perfectly to the also higher deviance of the second model. Could anyone enlighten me? Is the standard AIC implementation for 'nls' models not appliccable in case of weighted fitting? Cheers, Andrej ___________________________ Dr. rer. nat. Andrej-Nikolai Spiess Department of Andrology University Hospital Hamburg-Eppendorf Martinistr. 52 20246 Hamburg phone: +49-40-7410-51585 fax: +49-40-7410-51554 -------------- next part -------------- -- Pflichtangaben gem?? Gesetz ?ber elektronische Handelsregister und Genossenschaftsregister sowie das Unternehmensregister (EHUG): Universit?tsklinikum Hamburg-Eppendorf; K?rperschaft des ?ffentlichen Rechts; Gerichtsstand: Hamburg Vorstandsmitglieder: Prof. Dr. Guido Sauter (Vertreter des Vorsitzenden), Dr. Alexander Kirstein, Joachim Pr?l?, Prof. Dr. Dr. Uwe Koch-Gromus
Reasonably Related Threads
- Deviance and AIC in weighted NLS
- Does AIC() applied to a nls() object use the correct number of estimated parameters?
- Does AIC() applied to a nls() object use the correctnumber of estimated parameters?
- predict.nls - gives error but only on some nls objects
- Parameter info from nls object