xgboost
|
A struct returned by objective, which determines task at hand. The struct is not used by any algorithm yet, only for future development like categorical split. More...
#include <task.h>
Public Types | |
enum | Task : uint8_t { kRegression = 0 , kBinary = 1 , kClassification = 2 , kSurvival = 3 , kRanking = 4 , kOther = 5 } |
Public Member Functions | |
ObjInfo (Task t) | |
ObjInfo (Task t, bool khess, bool zhess) | |
XGBOOST_DEVICE bool | UpdateTreeLeaf () const |
Use adaptive tree if the objective doesn't have valid hessian value. More... | |
Public Attributes | |
enum xgboost::ObjInfo::Task | task |
bool | const_hess {false} |
bool | zero_hess {false} |
A struct returned by objective, which determines task at hand. The struct is not used by any algorithm yet, only for future development like categorical split.
The task field is useful for tree split finding, also for some metrics like auc. Lastly, knowing whether hessian is constant can allow some optimizations like skipping the quantile sketching.
This struct should not be serialized since it can be recovered from objective function, hence it doesn't need to be stable.
enum xgboost::ObjInfo::Task : uint8_t |
|
inline |
|
inline |
|
inline |
Use adaptive tree if the objective doesn't have valid hessian value.
bool xgboost::ObjInfo::const_hess {false} |
enum xgboost::ObjInfo::Task xgboost::ObjInfo::task |
bool xgboost::ObjInfo::zero_hess {false} |