Skip to contents

This function computes the negative predicted log-likelihood from a DGP emulator with a likelihood layer.


nllik(object, x, y)



an instance of the dgp class and it should be produced by dgp() with one of the following two settings:

  1. if struc = NULL, likelihood is not NULL;

  2. if a customized structure is provided to struc, the final layer must be likelihood layer containing only one likelihood node produced by Poisson(), Hetero(), or NegBin().


a matrix where each row is an input testing data point and each column is an input dimension.


a matrix with only one column where each row is a scalar-valued testing output data point.


An updated object is returned with an additional slot named NLL that contains two elements. The first one, named meanNLL, is a scalar that gives the average negative predicted log-likelihood across all testing data points. The second one, named allNLL, is a vector that gives the negative predicted log-likelihood for each testing data point.


See further examples and tutorials at


Any R vector detected in x and y will be treated as a column vector and automatically converted into a single-column R matrix. Thus, if x is a single testing data point with multiple dimensions, it must be given as a matrix.


if (FALSE) {

# Check for examples
# on how to compute the negative predicted log-likelihood
# using nllik().