Last data update: 2014.03.03

R: negative loglikelihood evaluation
loglikeR Documentation

negative loglikelihood evaluation

Description

evaluate negative loglikelihood of the corresponding family of model.

Usage

loglike(x, y, input,
        family = c("gaussian", "bernoulli", "mvbernoulli")) 

Arguments

x

design matrix.

y

output binary matrix with number of columns equal to the number of outcomes per observation.

input

vector of the fitted coefficients for the distribution family.

family

a GLM family, currently support gaussian, binomial and mvbernoulli (multivariate Bernoulli).

Details

evaluate the negative log-likelihood to examine the performance of the model.

Value

a double value returned as the negative log-likelihood

See Also

unifit, mvbfit

Examples

# fit a simple MVB log-linear model
n <- 1000
p <- 5
kk <- 2
tt <- NULL
alter <- 1
for (i in 1:kk) {
  vec <- rep(0, p)
  vec[i] <- alter
  alter <- alter * (-1)
  tt <- cbind(tt, vec)
}
tt <- 1.5 * tt
tt <- cbind(tt, c(rep(0, p - 1), 1))

x <- matrix(rnorm(n * p, 0, 4), n, p)
res <- mvb.simu(tt, x, K = kk, rep(.5, 2))
fitMVB <- mvbfit(x, res$response, output = 1)
loglike(x, res$response, fitMVB$beta, "mvbernoulli")

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(MVB)
Loading required package: Rcpp
Loading required package: RcppArmadillo
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/MVB/loglike.Rd_%03d_medium.png", width=480, height=480)
> ### Name: loglike
> ### Title: negative loglikelihood evaluation
> ### Aliases: loglike
> 
> ### ** Examples
> 
> # fit a simple MVB log-linear model
> n <- 1000
> p <- 5
> kk <- 2
> tt <- NULL
> alter <- 1
> for (i in 1:kk) {
+   vec <- rep(0, p)
+   vec[i] <- alter
+   alter <- alter * (-1)
+   tt <- cbind(tt, vec)
+ }
> tt <- 1.5 * tt
> tt <- cbind(tt, c(rep(0, p - 1), 1))
> 
> x <- matrix(rnorm(n * p, 0, 4), n, p)
> res <- mvb.simu(tt, x, K = kk, rep(.5, 2))
> fitMVB <- mvbfit(x, res$response, output = 1)
fit started
iteration 0 gpnorm = 2.61072
iteration 9 gpnorm = 8.9076e-11
*** Converged ***
> loglike(x, res$response, fitMVB$beta, "mvbernoulli")
[1] 0.2604773
> 
> 
> 
> 
> 
> dev.off()
null device 
          1 
>