Learn R Programming

adabag (version 2.1)

boosting.cv: Runs v-fold cross validation with Adaboost.M1

Description

The data are divided into v non-overlapping subsets of roughly equal size. Then, adaboost.M1 is applied on (v-1) of the subsets. Finally, predictions are made for the left out subsets, and the process is repeated for each of the v subsets.

Usage

boosting.cv(formula, data, v = 10, boos = TRUE, mfinal = 100, 
 coeflearn = "Breiman", control)

Arguments

formula
a formula, as in the lm function.
data
a data frame in which to interpret the variables named in formula
boos
if TRUE (by default), a bootstrap sample of the training set is drawn using the weights for each observation on that iteration. If FALSE, every observation is used with its weights.
v
An integer, specifying the type of v-fold cross validation. Defaults to 10. If v is set as the number of observations, leave-one-out cross validation is carried out. Besides this, every value between two and the number of observations is
mfinal
an integer, the number of iterations for which boosting is run or the number of trees to use. Defaults to mfinal=100 iterations.
coeflearn
if "Breiman"(by default), alpha=1/2ln((1-err)/err) is used. If "Freund" alpha=ln((1-err)/err) is used. Where alpha is the weight updating coefficient.
control
options that control details of the rpart algorithm. See rpart.control for more details.

Value

  • An object of class boosting.cv, which is a list with the following components:
  • classthe class predicted by the ensemble classifier.
  • confusionthe confusion matrix which compares the real class with the predicted one.
  • errorreturns the average error.

References

Alfaro, E., Gamez, M. and Garcia, N. (2007): ``Multiclass corporate failure prediction by Adaboost.M1''. International Advances in Economic Research, Vol 13, 3, pp. 301--312. Freund, Y. and Schapire, R.E. (1996): "Experiments with a new boosting algorithm". In Proceedings of the Thirteenth International Conference on Machine Learning, pp. 148--156, Morgan Kaufmann. Breiman, L. (1998): "Arcing classifiers". The Annals of Statistics, Vol 26, 3, pp. 801--849.

See Also

adaboost.M1, predict.boosting

Examples

Run this code
## rpart library should be loaded
library(rpart)
data(iris)
names(iris)<-c("LS","AS","LP","AP","Especies")
iris.boostcv <- boosting.cv(Especies ~ ., v=10, data=iris, mfinal=10, control=rpart.control(cp=0.01))
iris.boostcv[-1]


data(kyphosis)
kyphosis.boostcv <- boosting.cv(Kyphosis ~ Age + Number + Start, data=kyphosis, 
	mfinal=15)
kyphosis.boostcv[-1]

## rpart and mlbench libraries should be loaded
## Data Vehicle (four classes) 
library(rpart)
library(mlbench)
data(Vehicle)
Vehicle.boost.cv <- boosting.cv(Class ~.,data=Vehicle,mfinal=25, control=rpart.control(maxdepth=5))
Vehicle.boost.cv[-1]

Run the code above in your browser using DataLab