[Doc] Document new objectives and metrics available on GPUs (#5909)

This commit is contained in:
Philip Hyunsu Cho 2020-07-21 02:10:59 -07:00 committed by GitHub
parent 03fb98fbde
commit 8d7702766a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 81 additions and 69 deletions

View File

@ -97,39 +97,43 @@ Objective functions
=================== ===================
Most of the objective functions implemented in XGBoost can be run on GPU. Following table shows current support status. Most of the objective functions implemented in XGBoost can be run on GPU. Following table shows current support status.
+--------------------+-------------+ +----------------------+-------------+
| Objectives | GPU support | | Objectives | GPU support |
+--------------------+-------------+ +----------------------+-------------+
| reg:squarederror | |tick| | | reg:squarederror | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| reg:squaredlogerror| |tick| | | reg:squaredlogerror | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| reg:logistic | |tick| | | reg:logistic | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| binary:logistic | |tick| | | reg:pseudohubererror | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| binary:logitraw | |tick| | | binary:logistic | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| binary:hinge | |tick| | | binary:logitraw | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| count:poisson | |tick| | | binary:hinge | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| reg:gamma | |tick| | | count:poisson | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| reg:tweedie | |tick| | | reg:gamma | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| multi:softmax | |tick| | | reg:tweedie | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| multi:softprob | |tick| | | multi:softmax | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| survival:cox | |cross| | | multi:softprob | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| rank:pairwise | |tick| | | survival:cox | |cross| |
+--------------------+-------------+ +----------------------+-------------+
| rank:ndcg | |tick| | | survival:aft | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| rank:map | |tick| | | rank:pairwise | |tick| |
+--------------------+-------------+ +----------------------+-------------+
| rank:ndcg | |tick| |
+----------------------+-------------+
| rank:map | |tick| |
+----------------------+-------------+
Objective will run on GPU if GPU updater (``gpu_hist``), otherwise they will run on CPU by Objective will run on GPU if GPU updater (``gpu_hist``), otherwise they will run on CPU by
default. For unsupported objectives XGBoost will fall back to using CPU implementation by default. For unsupported objectives XGBoost will fall back to using CPU implementation by
@ -140,41 +144,47 @@ Metric functions
=================== ===================
Following table shows current support status for evaluation metrics on the GPU. Following table shows current support status for evaluation metrics on the GPU.
+-----------------+-------------+ +------------------------------+-------------+
| Metric | GPU Support | | Metric | GPU Support |
+=================+=============+ +==============================+=============+
| rmse | |tick| | | rmse | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| rmsle | |tick| | | rmsle | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| mae | |tick| | | mae | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| logloss | |tick| | | mphe | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| error | |tick| | | logloss | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| merror | |tick| | | error | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| mlogloss | |tick| | | merror | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| auc | |tick| | | mlogloss | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| aucpr | |cross| | | auc | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| ndcg | |tick| | | aucpr | |cross| |
+-----------------+-------------+ +------------------------------+-------------+
| map | |tick| | | ndcg | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| poisson-nloglik | |tick| | | map | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| gamma-nloglik | |tick| | | poisson-nloglik | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| cox-nloglik | |cross| | | gamma-nloglik | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| gamma-deviance | |tick| | | cox-nloglik | |cross| |
+-----------------+-------------+ +------------------------------+-------------+
| tweedie-nloglik | |tick| | | aft-nloglik | |tick| |
+-----------------+-------------+ +------------------------------+-------------+
| interval-regression-accuracy | |tick| |
+------------------------------+-------------+
| gamma-deviance | |tick| |
+------------------------------+-------------+
| tweedie-nloglik | |tick| |
+------------------------------+-------------+
Similar to objective functions, default device for metrics is selected based on tree Similar to objective functions, default device for metrics is selected based on tree
updater and predictor (which is selected based on tree updater). updater and predictor (which is selected based on tree updater).

View File

@ -357,7 +357,7 @@ Specify the learning task and the corresponding learning objective. The objectiv
Note that predictions are returned on the hazard ratio scale (i.e., as HR = exp(marginal_prediction) in the proportional hazard function ``h(t) = h0(t) * HR``). Note that predictions are returned on the hazard ratio scale (i.e., as HR = exp(marginal_prediction) in the proportional hazard function ``h(t) = h0(t) * HR``).
- ``survival:aft``: Accelerated failure time model for censored survival time data. - ``survival:aft``: Accelerated failure time model for censored survival time data.
See :doc:`/tutorials/aft_survival_analysis` for details. See :doc:`/tutorials/aft_survival_analysis` for details.
- ``aft_loss_distribution``: Probabilty Density Function used by ``survival:aft`` and ``aft-nloglik`` metric. - ``aft_loss_distribution``: Probabilty Density Function used by ``survival:aft`` objective and ``aft-nloglik`` metric.
- ``multi:softmax``: set XGBoost to do multiclass classification using the softmax objective, you also need to set num_class(number of classes) - ``multi:softmax``: set XGBoost to do multiclass classification using the softmax objective, you also need to set num_class(number of classes)
- ``multi:softprob``: same as softmax, but output a vector of ``ndata * nclass``, which can be further reshaped to ``ndata * nclass`` matrix. The result contains predicted probability of each data point belonging to each class. - ``multi:softprob``: same as softmax, but output a vector of ``ndata * nclass``, which can be further reshaped to ``ndata * nclass`` matrix. The result contains predicted probability of each data point belonging to each class.
- ``rank:pairwise``: Use LambdaMART to perform pairwise ranking where the pairwise loss is minimized - ``rank:pairwise``: Use LambdaMART to perform pairwise ranking where the pairwise loss is minimized
@ -399,6 +399,8 @@ Specify the learning task and the corresponding learning objective. The objectiv
- ``tweedie-nloglik``: negative log-likelihood for Tweedie regression (at a specified value of the ``tweedie_variance_power`` parameter) - ``tweedie-nloglik``: negative log-likelihood for Tweedie regression (at a specified value of the ``tweedie_variance_power`` parameter)
- ``aft-nloglik``: Negative log likelihood of Accelerated Failure Time model. - ``aft-nloglik``: Negative log likelihood of Accelerated Failure Time model.
See :doc:`/tutorials/aft_survival_analysis` for details. See :doc:`/tutorials/aft_survival_analysis` for details.
- ``interval-regression-accuracy``: Fraction of data points whose predicted labels fall in the interval-censored labels.
Only applicable for interval-censored data. See :doc:`/tutorials/aft_survival_analysis` for details.
* ``seed`` [default=0] * ``seed`` [default=0]