Package ml.dmlc.xgboost4j.java
Class XGBoost
java.lang.Object
ml.dmlc.xgboost4j.java.XGBoost
trainer for xgboost
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
cross validation package for xgb -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static String
aggCVResults
(String[] results) Aggregate cross-validation results.static String[]
crossValidation
(DMatrix data, Map<String, Object> params, int round, int nfold, String[] metrics, IObjective obj, IEvaluation eval) Cross-validation with given parameters.genRandPermutationNums
(int start, int end) private static boolean
isMaximizeEvaluation
(Map<String, Object> params) static Booster
loadModel
(InputStream in) Load a new Booster model from a file opened as input stream.static Booster
load model from modelPathprivate static XGBoost.CVPack[]
make an n-fold array of CVPack from random indices(package private) static boolean
shouldEarlyStop
(int earlyStoppingRounds, int iter, int bestIteration) private static boolean
shouldPrint
(Map<String, Object> params, int iter) static Booster
train
(DMatrix dtrain, Map<String, Object> params, int round, Map<String, DMatrix> watches, float[][] metrics, IObjective obj, IEvaluation eval, int earlyStoppingRound) Train a booster given parameters.static Booster
train
(DMatrix dtrain, Map<String, Object> params, int round, Map<String, DMatrix> watches, float[][] metrics, IObjective obj, IEvaluation eval, int earlyStoppingRounds, Booster booster) Train a booster given parameters.static Booster
train
(DMatrix dtrain, Map<String, Object> params, int round, Map<String, DMatrix> watches, IObjective obj, IEvaluation eval) Train a booster given parameters.private static Integer
-
Field Details
-
logger
private static final org.apache.commons.logging.Log logger
-
-
Constructor Details
-
XGBoost
public XGBoost()
-
-
Method Details
-
loadModel
load model from modelPath- Parameters:
modelPath
- booster modelPath (model generated by booster.saveModel)- Throws:
XGBoostError
- native error
-
loadModel
Load a new Booster model from a file opened as input stream. The assumption is the input stream only contains one XGBoost Model. This can be used to load existing booster models saved by other xgboost bindings.- Parameters:
in
- The input stream of the file, will be closed after this function call.- Returns:
- The create boosted
- Throws:
XGBoostError
IOException
-
train
public static Booster train(DMatrix dtrain, Map<String, Object> params, int round, Map<String, throws XGBoostErrorDMatrix> watches, IObjective obj, IEvaluation eval) Train a booster given parameters.- Parameters:
dtrain
- Data to be trained.params
- Parameters.round
- Number of boosting iterations.watches
- a group of items to be evaluated during training, this allows user to watch performance on the validation set.obj
- customized objectiveeval
- customized evaluation- Returns:
- The trained booster.
- Throws:
XGBoostError
-
train
public static Booster train(DMatrix dtrain, Map<String, Object> params, int round, Map<String, throws XGBoostErrorDMatrix> watches, float[][] metrics, IObjective obj, IEvaluation eval, int earlyStoppingRound) Train a booster given parameters.- Parameters:
dtrain
- Data to be trained.params
- Parameters.round
- Number of boosting iterations.watches
- a group of items to be evaluated during training, this allows user to watch performance on the validation set.metrics
- array containing the evaluation metrics for each matrix in watches for each iterationearlyStoppingRound
- if non-zero, training would be stopped after a specified number of consecutive increases in any evaluation metric.obj
- customized objectiveeval
- customized evaluation- Returns:
- The trained booster.
- Throws:
XGBoostError
-
train
public static Booster train(DMatrix dtrain, Map<String, Object> params, int round, Map<String, throws XGBoostErrorDMatrix> watches, float[][] metrics, IObjective obj, IEvaluation eval, int earlyStoppingRounds, Booster booster) Train a booster given parameters.- Parameters:
dtrain
- Data to be trained.params
- Parameters.round
- Number of boosting iterations.watches
- a group of items to be evaluated during training, this allows user to watch performance on the validation set.metrics
- array containing the evaluation metrics for each matrix in watches for each iterationearlyStoppingRounds
- if non-zero, training would be stopped after a specified number of consecutive goes to the unexpected direction in any evaluation metric.obj
- customized objectiveeval
- customized evaluationbooster
- train from scratch if set to null; train from an existing booster if not null.- Returns:
- The trained booster.
- Throws:
XGBoostError
-
tryGetIntFromObject
-
shouldPrint
-
shouldEarlyStop
static boolean shouldEarlyStop(int earlyStoppingRounds, int iter, int bestIteration) -
isMaximizeEvaluation
-
crossValidation
public static String[] crossValidation(DMatrix data, Map<String, Object> params, int round, int nfold, String[] metrics, IObjective obj, IEvaluation eval) throws XGBoostErrorCross-validation with given parameters.- Parameters:
data
- Data to be trained.params
- Booster params.round
- Number of boosting iterations.nfold
- Number of folds in CV.metrics
- Evaluation metrics to be watched in CV.obj
- customized objective (set to null if not used)eval
- customized evaluation (set to null if not used)- Returns:
- evaluation history
- Throws:
XGBoostError
- native error
-
makeNFold
private static XGBoost.CVPack[] makeNFold(DMatrix data, int nfold, Map<String, Object> params, String[] evalMetrics) throws XGBoostErrormake an n-fold array of CVPack from random indices- Parameters:
data
- original datanfold
- num of foldsparams
- booster parametersevalMetrics
- Evaluation metrics- Returns:
- CV package array
- Throws:
XGBoostError
- native error
-
genRandPermutationNums
-
aggCVResults
Aggregate cross-validation results.- Parameters:
results
- eval info from each data sample- Returns:
- cross-validation eval info
-