Skip to content
This repository has been archived by the owner on Aug 7, 2023. It is now read-only.

Support null value in CUDA array interface. #46

Closed

Conversation

quasiben
Copy link
Member

nicovdijk and others added 30 commits October 21, 2021 16:22
)

* added type hints to custom_obj and custom_eval for Spark persistence


Co-authored-by: Bobby Wang <wbo4958@gmail.com>
* Support binary/multi-class classification, ranking.
* Add documents.
* Handle missing data.
We have 2 new custom objective demos covering both regression and classification with
accompanying tutorials in documents.
* Replace -1 in pandas initializer.
* Unify `IsValid` functor.
* Mimic pandas data handling in cuDF glue code.
* Check invalid categories.
* Fix DDM sketching.
* Add new classifiers.
* Typehint.
…mlc#6751)


A new parameter `custom_metric` is added to `train` and `cv` to distinguish the behaviour from the old `feval`.  And `feval` is deprecated.  The new `custom_metric` receives transformed prediction when the built-in objective is used.  This enables XGBoost to use cost functions from other libraries like scikit-learn directly without going through the definition of the link function.

`eval_metric` and `early_stopping_rounds` in sklearn interface are moved from `fit` to `__init__` and is now saved as part of the scikit-learn model.  The old ones in `fit` function are now deprecated. The new `eval_metric` in `__init__` has the same new behaviour as `custom_metric`.

Added more detailed documents for the behaviour of custom objective and metric.
Spark 3.2 depends on 3.7.0-M11 which has changed some implicited functions'
signatures. And it will result the xgboost4j built against spark 3.0/3.1
failed when saving the model.

Co-authored-by: Hyunsu Cho <chohyu01@cs.washington.edu>
Generated using `clang-format -style=google -dump-config > .clang-format`, with column
width changed from 80 to 100 to be consistent with existing cpplint check.
* Fix span reverse iterator.

* Disable `rbegin` on device code to avoid calling host function.
* Add `trbegin` and friends.
This is already partially supported but never properly tested. So the only possible way to use it is calling `numpy.ndarray.flatten` with `base_margin` before passing it into XGBoost. This PR adds proper support
for most of the data types along with tests.
* Support building with CTK11.5.

* Require system cub installation for CTK11.4+.
* Check thrust version for segmented sort.
* Move attribute setter to callback.
* Remove the internal train function.
* Remove unnecessary initialization.
* Add test for invalid categorical data values.

* Add check during sketching.
Change from system Python to environment python3.  For Ubuntu 20.04, only `python3` is
available and there's no `python`.  So at least `python3` is consistent with Python
virtual env, Ubuntu and anaconda.
* Define the `ObjInfo` and pass it down to every tree updater.
* Replace existing matrix and vector view.

This is to prepare for handling higher dimension data and prediction when we support multi-target models.
trivialfis and others added 27 commits June 7, 2022 14:20
- Optionally switch to c++17
- Use rmm CMake target.
- Workaround compiler errors.
- Fix GPUMetric inheritance.
- Run death tests even if it's built with RMM support.

Co-authored-by: jakirkham <jakirkham@gmail.com>

Co-authored-by: jakirkham <jakirkham@gmail.com>
* Update CUDA docker image and NCCL. (dmlc#8139)

* Rest of the CI.

* CPU test dependencies.
* Fix compatibility with latest cupy.

* Freeze mypy.
…8170)

* Fix LTR with weighted Quantile DMatrix.

* Better tests.
Co-authored-by: Jiaming Yuan <jm.yuan@outlook.com>
…dmlc#8185)

* Fix loading DMatrix binary in distributed env. (dmlc#8149)

- Try to load DMatrix binary before trying to parse text input.
- Remove some unmaintained code.

* Fix.
Add missing Thrust header includes.
Update to latest xgboost release_1.6.0 to include cupy compatibility patch
Merge branch-22.10 into branch-22.12 (Update to latest xgboost release_1.6.0 to include cupy compatibility patch)
@quasiben quasiben changed the base branch from branch-22.10 to branch-21.12 November 28, 2022 16:48
@quasiben quasiben closed this Nov 28, 2022
@quasiben quasiben deleted the trivialfis-arr-null-fields branch November 28, 2022 17:46
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.