Performs the outcome-weighted margin-based learning for multicategory treatments proposed by Zhang, et al. (2020).
moml(
x,
treatment,
reward,
propensity_score,
loss = c("logistic", "boost", "hinge.boost", "lum"),
penalty = c("glasso", "lasso"),
weights = NULL,
offset = NULL,
intercept = TRUE,
control = moml.control(),
...
)moml.control(...)
A numeric matrix representing the design matrix. No missing valus
are allowed. The coefficient estimates for constant columns will be
zero. Thus, one should set the argument intercept to TRUE
to include an intercept term instead of adding an all-one column to
x.
The assigned treatments represented by a character, integer, numeric, or factor vector.
A numeric vector representing the rewards. It is assumed that a larger reward is more desirable.
A numeric vector taking values between 0 and 1 representing the propensity score.
A character value specifying the loss function. The available
options are "logistic" for the logistic deviance loss,
"boost" for the exponential loss approximating Boosting machines,
"hinge.boost" for hybrid of SVM and AdaBoost machine, and
"lum" for largin-margin unified machines (LUM). See Liu, et
al. (2011) for details.
A character vector specifying the name of the penalty.
A numeric vector for nonnegative observation weights. Equal observation weights are used by default.
An optional numeric matrix for offsets of the decision functions.
A logical value indicating if an intercept should be
considered in the model. The default value is TRUE and the
intercept is excluded from regularization.
A list of control parameters. See abclass.control()
for details.
Other arguments passed to the control function, which calls the
abclass.control() internally.
Zhang, C., Chen, J., Fu, H., He, X., Zhao, Y., & Liu, Y. (2020). Multicategory outcome weighted margin-based learning for estimating individualized treatment rules. Statistica Sinica, 30, 1857--1879.