Comparison of different engines
Martin Jung
2024-11-19
Source:vignettes/articles/06_engine_comparison.Rmd
06_engine_comparison.Rmd
Capabilities of included engines
As outlined by Fletcher
et al. (2019), there are many different forms of integration such as
through [ensemble
] modelling, adding
[offsets
], predictors
(e.g. [add_predictor_range()
] ) or [priors
]
and through full integration of different likelihoods (See (Data integration) ). Not all of these
options are available for every engine supported by the
ibis.iSDM package and the table below shows the currently
implemented engines and various types of integrations supported by
them.
Stating the name and function call of each engine and its supported
model complexity with linear (ln) and non-linear (nl) formulations,
although it should be noted that linear models can approximate
non-linearity by including transformations (as with Maxent,
e.g. hinge/product/quadratic). Not every engine supports the different
types of integration via ensembles
, offsets
,
priors
, joint likelihood estimation and
ensemble
compositing of models using separate datasets of
the same species. When multiple biodiversity datasets are added to an
engine that does not support joint likelihood estimation, the parameter
method_integration
in [train()
] determines how
the different predictions are integrated. Available options for
integration are via predictors
, offsets
,
interactions
, priors
or weights
(see the help file of [train()
] for more information).
Name | Complexity | Engine | Offsets | Priors | Weights | Joint likel. |
---|---|---|---|---|---|---|
Generalized linear model (GLM) | ln | [engine_glm() ] |
x | x | ||
Regularized elastic net regression (GLMNET) | ln | [engine_glmnet() ] |
x | GLMNETPrior() |
x | |
Bayesian additive regression trees (BART) | nl | [engine_bart() ] |
(x) | BARTPrior() |
x | |
Bayesian regularized regression (BREG) | ln | [engine_breg() ] |
BREGPrior() |
x | ||
Approximate point modelling (SCAMPR) | ln | [engine_scampr() ] |
x | x | ||
Gradient descent boosting (GDB) | ln/nl | [engine_gdb() ] |
x | GDBPrior() |
x | |
Integrated Nested Laplace approximation (INLA) | ln | [engine_inla() ] |
x | INLAPrior() |
x | x |
Integrated Nested Laplace approximation (INLABRU) | ln | [engine_inlabru() ] |
x | INLAPrior() |
x | x |
Bayesian regressions (Stan) | ln | [engine_stan() ] |
x | STANPrior() |
x | (x) |
eXtreme Gradient Boosting (XGBOOST) | ln/nl | [engine_xgboost() ] |
x | XGBPrior() |
x |