######################## Get Started with XGBoost ######################## This is a quick start tutorial showing snippets for you to quickly try out XGBoost on the demo dataset on a binary classification task. ******************************** Links to Other Helpful Resources ******************************** - See :doc:`Installation Guide ` on how to install XGBoost. - See :doc:`Text Input Format ` on using text format for specifying training/testing data. - See :doc:`Tutorials ` for tips and tutorials. - See `Learning to use XGBoost by Examples `_ for more code examples. ****** Python ****** .. code-block:: python import xgboost as xgb # read in data dtrain = xgb.DMatrix('demo/data/agaricus.txt.train') dtest = xgb.DMatrix('demo/data/agaricus.txt.test') # specify parameters via map param = {'max_depth':2, 'eta':1, 'objective':'binary:logistic' } num_round = 2 bst = xgb.train(param, dtrain, num_round) # make prediction preds = bst.predict(dtest) *** R *** .. code-block:: R # load data data(agaricus.train, package='xgboost') data(agaricus.test, package='xgboost') train <- agaricus.train test <- agaricus.test # fit model bst <- xgboost(data = train$data, label = train$label, max.depth = 2, eta = 1, nrounds = 2, nthread = 2, objective = "binary:logistic") # predict pred <- predict(bst, test$data) ***** Julia ***** .. code-block:: julia using XGBoost # read data train_X, train_Y = readlibsvm("demo/data/agaricus.txt.train", (6513, 126)) test_X, test_Y = readlibsvm("demo/data/agaricus.txt.test", (1611, 126)) # fit model num_round = 2 bst = xgboost(train_X, num_round, label=train_Y, eta=1, max_depth=2) # predict pred = predict(bst, test_X) ***** Scala ***** .. code-block:: scala import ml.dmlc.xgboost4j.scala.DMatrix import ml.dmlc.xgboost4j.scala.XGBoost object XGBoostScalaExample { def main(args: Array[String]) { // read trainining data, available at xgboost/demo/data val trainData = new DMatrix("/path/to/agaricus.txt.train") // define parameters val paramMap = List( "eta" -> 0.1, "max_depth" -> 2, "objective" -> "binary:logistic").toMap // number of iterations val round = 2 // train the model val model = XGBoost.train(trainData, paramMap, round) // run prediction val predTrain = model.predict(trainData) // save model to the file. model.saveModel("/local/path/to/model") } }