Families for deepregression
Families for deepregression
make_tfd_dist(family, add_const = 1e-08, output_dim = 1L, trafo_list = NULL)make_torch_dist(family, add_const = 1e-08, output_dim = 1L, trafo_list = NULL)
character vector
small positive constant to stabilize calculations
number of output dimensions of the response (larger 1 for multivariate case) (not implemented yet)
list of transformations for each distribution parameter. Per default the transformation listed in details is applied.
To specify a custom distribution, define the a function as follows
function(x) do.call(your_tfd_dist, lapply(1:ncol(x)[[1]],
function(i)
your_trafo_list_on_inputs[[i]](
x[,i,drop=FALSE])))
and pass it to deepregression
via the dist_fun
argument.
Currently the following distributions are supported
with parameters (and corresponding inverse link function in brackets):
"normal"
: normal distribution with location (identity), scale (exp)
"bernoulli"
: bernoulli distribution with logits (identity)
"bernoulli_prob"
: bernoulli distribution with probabilities (sigmoid)
"beta"
: beta with concentration 1 = alpha (exp) and concentration
0 = beta (exp)
"betar"
: beta with mean (sigmoid) and scale (sigmoid)
"cauchy"
: location (identity), scale (exp)
"chi2"
: cauchy with df (exp)
"chi"
: cauchy with df (exp)
"exponential"
: exponential with lambda (exp)
"gamma"
: gamma with concentration (exp) and rate (exp)
"gammar"
: gamma with location (exp) and scale (exp), following
gamlss.dist::GA
, which implies that the expectation is the location,
and the variance of the distribution is the location^2 scale^2
"gumbel"
: gumbel with location (identity), scale (exp)
"half_cauchy"
: half cauchy with location (identity), scale (exp)
"half_normal"
: half normal with scale (exp)
"horseshoe"
: horseshoe with scale (exp)
"inverse_gamma"
: inverse gamma with concentation (exp) and rate (exp)
"inverse_gamma_ls"
: inverse gamma with location (exp) and variance (1/exp)
"inverse_gaussian"
: inverse Gaussian with location (exp) and concentation
(exp)
"laplace"
: Laplace with location (identity) and scale (exp)
"log_normal"
: Log-normal with location (identity) and scale (exp) of
underlying normal distribution
"logistic"
: logistic with location (identity) and scale (exp)
"negbinom"
: neg. binomial with count (exp) and prob (sigmoid)
"negbinom_ls"
: neg. binomail with mean (exp) and clutter factor (exp)
"pareto"
: Pareto with concentration (exp) and scale (1/exp)
"pareto_ls"
: Pareto location scale version with mean (exp)
and scale (exp), which corresponds to a Pareto distribution with parameters scale = mean
and concentration = 1/sigma, where sigma is the scale in the pareto_ls version
"poisson"
: poisson with rate (exp)
"poisson_lograte"
: poisson with lograte (identity))
"student_t"
: Student's t with df (exp)
"student_t_ls"
: Student's t with df (exp), location (identity) and
scale (exp)
"uniform"
: uniform with upper and lower (both identity)
"zinb"
: Zero-inflated negative binomial with mean (exp),
variance (exp) and prob (sigmoid)
"zip":
Zero-inflated poisson distribution with mean (exp) and prob (sigmoid)
To specify a custom distribution, define the a function as follows
function(x) do.call(your_tfd_dist, lapply(1:ncol(x)[[1]],
function(i)
your_trafo_list_on_inputs[[i]](
x[,i,drop=FALSE])))
and pass it to deepregression
via the dist_fun
argument.
Currently the following distributions are supported
with parameters (and corresponding inverse link function in brackets):
"normal"
: normal distribution with location (identity), scale (exp)
"bernoulli"
: bernoulli distribution with logits (identity)
"exponential"
: exponential with lambda (exp)
"gamma"
: gamma with concentration (exp) and rate (exp)
"poisson"
: poisson with rate (exp)