- Use the `linalg::Matrix` for storing gradients. - New API for the custom objective. - Custom objective for multi-class/multi-target is now required to return the correct shape. - Custom objective for Python can accept arrays with any strides. (row-major, column-major)
XGBoost Plugin Example
This folder provides an example of implementing xgboost plugin.
There are three steps you need to do to add a plugin to xgboost
- Create your source .cc file, implement a new extension
- In this example custom_obj.cc
- Register this extension to xgboost via a registration macro
- In this example
XGBOOST_REGISTER_OBJECTIVEin this line
- In this example
- Add a line to
xgboost/plugin/CMakeLists.txt:
target_sources(objxgboost PRIVATE ${xgboost_SOURCE_DIR}/plugin/example/custom_obj.cc)
Then you can test this plugin by using objective=mylogistic parameter.