R interfaces to Weka meta learners.
AdaBoostM1(formula, data, subset, na.action,
control = Weka_control(), options = NULL)
Bagging(formula, data, subset, na.action,
control = Weka_control(), options = NULL)
LogitBoost(formula, data, subset, na.action,
control = Weka_control(), options = NULL)
MultiBoostAB(formula, data, subset, na.action,
control = Weka_control(), options = NULL)
Stacking(formula, data, subset, na.action,
control = Weka_control(), options = NULL)
CostSensitiveClassifier(formula, data, subset, na.action,
control = Weka_control(), options = NULL)A list inheriting from classes Weka_meta and
Weka_classifiers with components including
a reference (of class
jobjRef) to a Java object
obtained by applying the Weka buildClassifier method to build
the specified model using the given control options.
a numeric vector or factor with the model
predictions for the training instances (the results of calling the
Weka classifyInstance method for the built classifier and
each instance).
the matched call.
a symbolic description of the model to be fit.
an optional data frame containing the variables in the model.
an optional vector specifying a subset of observations to be used in the fitting process.
a function which indicates what should happen when
the data contain NAs. See model.frame for
details.
an object of class Weka_control giving
options to be passed to the Weka learner. Available options can be
obtained on-line using the Weka Option Wizard WOW, or
the Weka documentation. Base classifiers with an available R/Weka
interface (see list_Weka_interfaces), can be specified
(using the W option) via their “base name” as shown
in the interface registry (see the examples), or their interface
function.
a named list of further options, or NULL
(default). See Details.
There are a predict method for
predicting from the fitted models, and a summary method based
on evaluate_Weka_classifier.
AdaBoostM1 implements the AdaBoost M1 method of Freund and
Schapire (1996).
Bagging provides bagging (Breiman, 1996).
LogitBoost performs boosting via additive logistic regression
(Friedman, Hastie and Tibshirani, 2000).
MultiBoostAB implements MultiBoosting (Webb, 2000), an
extension to the AdaBoost technique for forming decision
committees which can be viewed as a combination of AdaBoost and
“wagging”.
Stacking provides stacking (Wolpert, 1992).
CostSensitiveClassifier makes its base classifier
cost-sensitive.
The model formulae should only use the + and - operators to indicate the variables to be included or not used, respectively.
Argument options allows further customization. Currently,
options model and instances (or partial matches for
these) are used: if set to TRUE, the model frame or the
corresponding Weka instances, respectively, are included in the fitted
model object, possibly speeding up subsequent computations on the
object. By default, neither is included.
L. Breiman (1996). Bagging predictors. Machine Learning, 24/2, 123--140. tools:::Rd_expr_doi("10.1023/A:1018054314350").
Y. Freund and R. E. Schapire (1996). Experiments with a new boosting algorithm. In Proceedings of the International Conference on Machine Learning, pages 148--156. Morgan Kaufmann: San Francisco.
J. H. Friedman, T. Hastie, and R. Tibshirani (2000). Additive logistic regression: A statistical view of boosting. Annals of Statistics, 28/2, 337--374. tools:::Rd_expr_doi("10.1214/aos/1016218223").
G. I. Webb (2000). MultiBoosting: A technique for combining boosting and wagging. Machine Learning, 40/2, 159--196. tools:::Rd_expr_doi("10.1023/A:1007659514849").
I. H. Witten and E. Frank (2005). Data Mining: Practical Machine Learning Tools and Techniques. 2nd Edition, Morgan Kaufmann, San Francisco.
D. H. Wolpert (1992). Stacked generalization. Neural Networks, 5, 241--259. tools:::Rd_expr_doi("10.1016/S0893-6080(05)80023-1").
Weka_classifiers
## Use AdaBoostM1 with decision stumps.
m1 <- AdaBoostM1(Species ~ ., data = iris,
control = Weka_control(W = "DecisionStump"))
table(predict(m1), iris$Species)
summary(m1) # uses evaluate_Weka_classifier()
## Control options for the base classifiers employed by the meta
## learners (apart from Stacking) can be given as follows:
m2 <- AdaBoostM1(Species ~ ., data = iris,
control = Weka_control(W = list(J48, M = 30)))
Run the code above in your browser using DataLab