Compute the score directly from the gaussian density.
score2(object, ...)# S3 method for lm
score2(object, indiv = TRUE, return.vcov.param = FALSE, ...)
# S3 method for gls
score2(object, cluster, p = NULL, data = NULL, indiv = TRUE,
return.vcov.param = FALSE, ...)
# S3 method for lme
score2(object, cluster, p = NULL, data = NULL, indiv = TRUE,
return.vcov.param = FALSE, ...)
# S3 method for lvmfit
score2(object, p = NULL, data = NULL, indiv = TRUE,
return.vcov.param = FALSE, ...)
a linear model or a latent variable model.
Arguments to be passed to residuals2
Should the score relative to each observation be exported? Otherwise the total score (i.e. sum over all observations) will be exported.
Should the variance covariance matrix of the parameters be included in the output?
[only required for gls objects] a vector indicating the clusters of observation that are iid.
[optional] vector of parameters at which to evaluate the score.
[optional] data set.
A matrix.
The log-likelihood of a lvm can written: $$ l(\theta|Y,X) = \sum_{i=1}^{n} - \frac{p}{2} log(2\pi) - \frac{1}{2} log|\Omega(\theta))| - \frac{1}{2} (Y_i-\mu_i(\theta)) \Omega^{-1} (Y_i-\mu_i(\theta))^t $$ So the score is: $$ s(\theta|Y,X) = \sum_{i=1}^{n} - \frac{1}{2} tr(\Omega(\theta)^{-1} \frac{\partial \Omega(\theta)}{\partial \theta}) + \frac{\partial \mu_i(\theta)}{\partial \theta} \Omega^{-1} (Y_i-\mu_i(\theta))^t + \frac{1}{2} (Y_i-\mu_i(\theta)) \Omega^{-1} \frac{\partial \Omega(\theta)}{\partial \theta} \Omega^{-1} (Y_i-\mu_i(\theta))^t $$ with: $$ \frac{\partial \mu_i(\beta)}{\partial \nu} = 1 $$ $$ \frac{\partial \mu_i(\beta)}{\partial K} = X_i $$ $$ \frac{\partial \mu_i(\beta)}{\partial \alpha} = (1-B)^{-1}\Lambda $$ $$ \frac{\partial \mu_i(\beta)}{\partial \Gamma} = X_i(1-B)^{-1}\Lambda $$ $$ \frac{\partial \mu_i(\beta)}{\partial \lambda} = (\alpha + X_i \Gamma)(1-B)^{-1}\delta_{\lambda \in \Lambda} $$ $$ \frac{\partial \mu_i(\beta)}{\partial b} = (\alpha + X_i \Gamma)(1-B)^{-1}\delta_{b \in B}(1-B)^{-1}\Lambda $$ and: $$ \frac{\partial \Omega(\beta)}{\partial \psi} = \Lambda^t (1-B)^{-t} \delta_{\psi \in \Psi} (1-B) \Lambda $$ $$ \frac{\partial \Omega(\beta)}{\partial \sigma} = \delta_{\sigma \in \Sigma} $$ $$ \frac{\partial \Omega(\beta)}{\partial \lambda} = \delta_{\lambda \in \Lambda} (1-B)^{-t} \Psi (1-B)^{-1} \Lambda + \Lambda^t (1-B)^{-t} \Psi (1-B)^{-1} \delta_{\lambda \in \Lambda} $$ $$ \frac{\partial \Omega(\beta)}{\partial b} = \Lambda^t (1-B)^{-t} \delta_{b \in B} (1-B)^{-t} \Psi (1-B)^{-1} \Lambda - \Lambda^t (1-B)^{-t} \Psi (1-B)^{-1} \delta_{b \in B} (1-B)^{-1} \Lambda$$
# NOT RUN {
m <- lvm(Y1~eta,Y2~eta,Y3~eta)
latent(m) <- ~eta
e <- estimate(m,sim(m,1e2))
score2(e)
# }
Run the code above in your browser using DataLab