Jiaming Yuan
ab6fd304c4
[Python] Change development release postfix to dev ( #6988 )
2021-05-27 16:06:51 +08:00
Jiaming Yuan
29d6a5e2b8
[CI] Move appveyor tests to action ( #6986 )
...
* Drop support for VS14, use VS15 instead.
* Drop support for mingw.
* Remove debug build.
* Split up jvm tests.
* Split up Python tests.
2021-05-27 04:49:45 +08:00
Jiaming Yuan
86e60e3ba8
Guard against index error in prediction. ( #6982 )
...
* Remove `best_ntree_limit` from documents.
2021-05-25 23:24:59 +08:00
Philip Hyunsu Cho
c6d87e5e18
[CI] Remove stray build artifact to avoid error in artifact packaging ( #6994 )
2021-05-25 19:48:27 +08:00
Jiaming Yuan
6e52aefb37
Revert OMP guard. ( #6987 )
...
The guard protects the global variable from being changed by XGBoost. But this leads to a
bug that the `n_threads` parameter is no longer used after the first iteration. This is
due to the fact that `omp_set_num_threads` is only called once in `Learner::Configure` at
the beginning of the training process.
The guard is still useful for `gpu_id`, since this is called all the times in our codebase
doesn't matter which iteration we are currently running.
2021-05-25 08:56:28 +08:00
Jiaming Yuan
d245bc891e
Add tolerance to early stopping. ( #6942 )
2021-05-14 00:19:51 +08:00
Jiaming Yuan
44cc9c04ea
Fix multiclass auc with empty dataset. ( #6947 )
2021-05-12 15:01:14 +08:00
Jiaming Yuan
05ac415780
[dask] Set dataframe index in predict. ( #6944 )
2021-05-12 13:24:21 +08:00
Andrew Ziem
3e7e426b36
Fix spelling in documents ( #6948 )
...
* Update roxygen2 doc.
Co-authored-by: fis <jm.yuan@outlook.com>
2021-05-11 20:44:36 +08:00
Philip Hyunsu Cho
90cd724be1
[CI] Fix CI/CD pipeline broken by latest auditwheel (4.0.0) ( #6951 )
2021-05-10 22:43:15 -07:00
Jiaming Yuan
37ad60fe25
Enforce input data is not object. ( #6927 )
...
* Check for object data type.
* Allow strided arrays with greater underlying buffer size.
2021-05-02 00:09:01 +08:00
Jiaming Yuan
a1d23f6613
Relax test for decision stump in distributed environment. ( #6919 )
2021-04-30 09:04:11 +08:00
Jiaming Yuan
45ddc39c1d
Relax shotgun test. ( #6918 )
2021-04-30 09:03:12 +08:00
Jiaming Yuan
34df1f588b
Reduce Travis environment setup time. ( #6912 )
...
* Remove unused r from travis.
* Don't update homebrew.
* Don't install indirect/unused dependencies like libgit2, wget, openssl.
* Move graphviz installation to conda.
2021-04-30 09:02:40 +08:00
Jiaming Yuan
b31d37eac5
[CI] Fix custom metric test with empty dataset. ( #6917 )
2021-04-30 09:00:05 +08:00
Jiaming Yuan
8760ec4827
Ensure predict leaf output 1-dim vector where there's only 1 tree. ( #6889 )
2021-04-23 15:07:48 +08:00
Jiaming Yuan
54afa3ac7a
Relax shotgun test. ( #6900 )
...
It's non-deterministic algorithm, the test is flaky.
2021-04-23 13:01:44 +08:00
Jiaming Yuan
a2ecbdaa31
Add an API guard to prevent global variables being changed. ( #6891 )
2021-04-23 10:27:57 +08:00
Jiaming Yuan
bec2b4f094
Revert "Use CPU input for test_boost_from_prediction. ( #6818 )" ( #6858 )
...
This reverts commit 74f3a2f4b5c2654af90d1477fd543b5d97280fbe.
2021-04-20 14:54:02 +08:00
Jiaming Yuan
556a83022d
Implement unified update prediction cache for (gpu_)hist. ( #6860 )
...
* Implement utilites for linalg.
* Unify the update prediction cache functions.
* Implement update prediction cache for multi-class gpu hist.
2021-04-17 00:29:34 +08:00
Jiaming Yuan
dee5ef2dfd
Typehint for Sklearn. ( #6799 )
2021-04-14 06:55:21 +08:00
Philip Hyunsu Cho
ea7a6a0321
[CI] Pack R package tarball with pre-built xgboost.so (with GPU support) ( #6827 )
...
* Add scripts for packaging R package with GPU-enabled libxgboost.so
* [CI] Automatically build R package tarball
* Add comments
* Don't build tarball for pull requests
* Update the installation doc
2021-04-07 21:15:34 -07:00
giladmaya
aa0d8f20c1
Support configuring constraints by feature names ( #6783 )
...
Co-authored-by: fis <jm.yuan@outlook.com>
2021-04-04 06:53:33 +08:00
Jiaming Yuan
7e06c81894
Fix approximated predict contribution. ( #6811 )
2021-04-03 02:15:03 +08:00
Jiaming Yuan
74f3a2f4b5
Use CPU input for test_boost_from_prediction. ( #6818 )
2021-04-02 00:11:35 +08:00
Jiaming Yuan
47b62480af
More general predict proba. ( #6817 )
...
* Use `output_margin` for `softmax`.
* Add test for dask binary cls.
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2021-04-01 19:52:12 +08:00
Jiaming Yuan
a5c852660b
Update document for sklearn model IO. ( #6809 )
...
* Update the use of JSON.
* Remove unnecessary type cast.
2021-04-01 15:52:36 +08:00
Jiaming Yuan
3039dd194b
Don't estimate sketch batch size when rmm is used. ( #6807 )
2021-03-31 15:29:56 +08:00
Jiaming Yuan
79b8b560d2
Optimize dart inplace predict perf. ( #6804 )
2021-03-31 15:20:54 +08:00
Jiaming Yuan
a59c7323b4
Fix inplace predict missing value. ( #6787 )
2021-03-27 05:36:10 +08:00
Jiaming Yuan
a7083d3c13
Fix dart inplace prediction with GPU input. ( #6777 )
...
* Fix dart inplace predict with data on GPU, which might trigger a fatal check
for device access right.
* Avoid copying data whenever possible.
2021-03-25 12:00:32 +08:00
Jiaming Yuan
1d90577800
Verify strictly positive labels for gamma regression. ( #6778 )
...
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2021-03-25 11:46:52 +08:00
Jiaming Yuan
794fd6a46b
Support v3 cuda array interface. ( #6776 )
2021-03-25 09:58:09 +08:00
Jiaming Yuan
bcc0277338
Re-implement ROC-AUC. ( #6747 )
...
* Re-implement ROC-AUC.
* Binary
* MultiClass
* LTR
* Add documents.
This PR resolves a few issues:
- Define a value when the dataset is invalid, which can happen if there's an
empty dataset, or when the dataset contains only positive or negative values.
- Define ROC-AUC for multi-class classification.
- Define weighted average value for distributed setting.
- A correct implementation for learning to rank task. Previous
implementation is just binary classification with averaging across groups,
which doesn't measure ordered learning to rank.
2021-03-20 16:52:40 +08:00
Jiaming Yuan
4ee8340e79
Support column major array. ( #6765 )
2021-03-20 05:19:46 +08:00
Jiaming Yuan
f6fe15d11f
Improve parameter validation ( #6769 )
...
* Add quotes to unused parameters.
* Check for whitespace.
2021-03-20 01:56:55 +08:00
Jiaming Yuan
23b4165a6b
Fix gamma deviance ( #6761 )
2021-03-20 01:56:17 +08:00
Jiaming Yuan
e2d8a99413
Add document for tests directory. [skip ci] ( #6760 )
2021-03-18 15:15:50 +08:00
Jiaming Yuan
4f75f514ce
Fix GPU RF ( #6755 )
...
* Fix sampling.
2021-03-17 06:23:35 +08:00
Jiaming Yuan
1a73a28511
Add device argsort. ( #6749 )
...
This is part of https://github.com/dmlc/xgboost/pull/6747 .
2021-03-16 16:05:22 +08:00
Jiaming Yuan
325bc93e16
[dask] Use distributed.MultiLock ( #6743 )
...
* [dask] Use `distributed.MultiLock`
This enables training multiple models in parallel.
* Conditionally import `MultiLock`.
* Use async train directly in scikit learn interface.
* Use `worker_client` when available.
2021-03-16 14:19:41 +08:00
Igor Rukhovich
19a2c54265
Prediction by indices (subsample < 1) ( #6683 )
...
* Another implementation of predicting by indices
* Fixed omp parallel_for variable type
* Removed SparsePageView from Updater
2021-03-16 15:08:20 +13:00
Philip Hyunsu Cho
366f3cb9d8
Add use_rmm flag to global configuration ( #6656 )
...
* Ensure RMM is 0.18 or later
* Add use_rmm flag to global configuration
* Modify XGBCachingDeviceAllocatorImpl to skip CUB when use_rmm=True
* Update the demo
* [CI] Pin NumPy to 1.19.4, since NumPy 1.19.5 doesn't work with latest Shap
2021-03-09 14:53:05 -08:00
Jiaming Yuan
f20074e826
Check for invalid data. ( #6742 )
2021-03-04 14:37:20 +08:00
Jiaming Yuan
a9b4a95225
Fix learning rate scheduler with cv. ( #6720 )
...
* Expose more methods in cvpack and packed booster.
* Fix cv context in deprecated callbacks.
* Fix document.
2021-02-28 13:57:42 +08:00
Roffild
1fa6793a4e
Tests for regression metrics with weights. ( #6729 )
2021-02-25 22:08:14 +08:00
Jiaming Yuan
9da2287ab8
[breaking] Save booster feature info in JSON, remove feature name generation. ( #6605 )
...
* Save feature info in booster in JSON model.
* [breaking] Remove automatic feature name generation in `DMatrix`.
This PR is to enable reliable feature validation in Python package.
2021-02-25 18:54:16 +08:00
capybara
b6167cd2ff
[dask] Use client to persist collections ( #6722 )
...
Co-authored-by: fis <jm.yuan@outlook.com>
2021-02-25 16:40:38 +08:00
Jiaming Yuan
e8c5c53e2f
Use Predictor for dart. ( #6693 )
...
* Use normal predictor for dart booster.
* Implement `inplace_predict` for dart.
* Enable `dart` for dask interface now that it's thread-safe.
* categorical data should be working out of box for dart now.
The implementation is not very efficient as it has to pull back the data and
apply weight for each tree, but still a significant improvement over previous
implementation as now we no longer binary search for each sample.
* Fix output prediction shape on dataframe.
2021-02-09 23:30:19 +08:00
Jiaming Yuan
1335db6113
[dask] Improve documents. ( #6687 )
...
* Add tag for versions.
* use autoclass in sphinx build.
Made some class methods to be private to avoid exporting documents.
2021-02-09 09:20:58 +08:00