ctmboost: Likelihood Boosting for Conditional Transformation Models

View source: R/tbm.R

ctmboostR Documentation

Likelihood Boosting for Conditional Transformation Models

Description

Employs maximisation of the likelihood for estimation of conditional transformation models

Usage

ctmboost(model, formula, data = list(), weights = NULL, 
         method = quote(mboost::mboost), ...)

Arguments

model

an object of class mlt as returned by mlt.

formula

a model formula describing how the parameters of model depend on explanatory variables, see mboost.

data

an optional data frame of observations.

weights

an optional vector of weights.

method

a call to mboost, gamboost, or blackboost.

...

additional arguments to method.

Details

The parameters of model depend on explanatory variables in a possibly structured additive way (see Hothorn, 2020). The number of boosting iterations is a hyperparameter which needs careful tuning.

Value

An object of class ctmboost with predict and logLik methods.

References

Torsten Hothorn (2020). Transformation Boosting Machines. Statistics and Computing, 30, 141–152.

Examples


  if (require("TH.data") && require("tram")) {
      data("bodyfat", package = "TH.data")

      ### estimate unconditional model      
      m_mlt <- BoxCox(DEXfat ~ 1, data = bodyfat, prob = c(.1, .99))
      ### get corresponding in-sample log-likelihood
      logLik(m_mlt)

      ### estimate conditional transformation model
      bm <- ctmboost(m_mlt, formula = DEXfat ~ ., data = bodyfat,
                     method = quote(mboost::mboost))
      ### in-sample log-likelihood (NEEDS TUNING OF mstop!)
      logLik(bm)

      ### evaluate conditional densities for two observations
      predict(bm, newdata = bodyfat[1:2,], type = "density")
  }


tbm documentation built on April 17, 2024, 3:01 p.m.

Related to ctmboost in tbm...