Rong Ou
2dc22e7aad
Take advantage of C++17 features ( #8858 )
...
---------
Co-authored-by: Hyunsu Philip Cho <chohyu01@cs.washington.edu>
Co-authored-by: Jiaming Yuan <jm.yuan@outlook.com>
2023-03-04 00:24:13 +08:00
Rory Mitchell
69a50248b7
Fix scope of feature set pointers ( #8850 )
...
---------
Co-authored-by: Jiaming Yuan <jm.yuan@outlook.com>
2023-03-02 12:37:14 +08:00
Rong Ou
7cbaee9916
Support column split in approx tree method ( #8847 )
2023-03-02 03:59:07 +08:00
Jiaming Yuan
d54ef56f6f
Fix cache with gc ( #8851 )
...
- Make DMatrixCache thread-safe.
- Remove the use of thread-local memory.
2023-03-01 00:39:06 +08:00
Rong Ou
d9688f93c7
Support column-split in row partitioner ( #8828 )
2023-02-26 04:43:35 +08:00
Mauro Leggieri
90c0633a28
Fixes compilation errors on MSVC x86 targets ( #8823 )
2023-02-26 03:20:28 +08:00
Rong Ou
a65ad0bd9c
Support column split in histogram builder ( #8811 )
2023-02-17 22:37:01 +08:00
Jiaming Yuan
c0afdb6786
Fix CPU bin compression with categorical data. ( #8809 )
...
* Fix CPU bin compression with categorical data.
* The bug causes the maximum category to be lesser than 256 or the maximum number of bins when
the input data is dense.
2023-02-16 04:20:34 +08:00
Jiaming Yuan
cce4af4acf
Initial support for quantile loss. ( #8750 )
...
- Add support for Python.
- Add objective.
2023-02-16 02:30:18 +08:00
Jiaming Yuan
282b1729da
Specify the number of threads for parallel sort. ( #8735 )
...
* Specify the number of threads for parallel sort.
- Pass context object into argsort.
- Replace macros with inline functions.
2023-02-16 00:20:19 +08:00
Jiaming Yuan
c7c485d052
Extract fit intercept. ( #8793 )
2023-02-15 22:41:31 +08:00
Jiaming Yuan
594371e35b
Fix CPP lint. ( #8807 )
2023-02-15 20:16:35 +08:00
Rong Ou
74572b5d45
Add convenience method for allgather ( #8804 )
2023-02-15 11:37:11 +08:00
Jiaming Yuan
52d0230b58
Fix merge conflict. ( #8791 )
2023-02-13 23:43:42 +08:00
Jiaming Yuan
81b2ee1153
Pass DMatrix into metric for caching. ( #8790 )
2023-02-13 22:15:05 +08:00
Jiaming Yuan
31d3ec07af
Extract device algorithms. ( #8789 )
2023-02-13 20:53:53 +08:00
Jiaming Yuan
457f704e3d
Add quantile metric. ( #8761 )
2023-02-13 19:07:40 +08:00
Jiaming Yuan
d11a0044cf
Generalize prediction cache. ( #8783 )
...
* Extract most of the functionality into `DMatrixCache`.
* Move API entry to independent file to reduce dependency on `predictor.h` file.
* Add test.
---------
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2023-02-13 12:36:43 +08:00
Jiaming Yuan
17b709acb9
Rename ranking utils to threading utils. ( #8785 )
2023-02-12 05:41:18 +08:00
Jiaming Yuan
70c9b885ef
Extract floating point rounding routines. ( #8771 )
2023-02-12 04:26:41 +08:00
Jiaming Yuan
8a16944664
Fix ranking with quantile dmatrix and group weight. ( #8762 )
2023-02-10 20:32:35 +08:00
Jiaming Yuan
199c421d60
Send default configuration from metric to objective. ( #8760 )
2023-02-09 20:18:07 +08:00
Jiaming Yuan
5f76edd296
Extract make metric name from ranking metric. ( #8768 )
...
- Extract the metric parsing routine from ranking.
- Add a test.
- Accept null for string view.
2023-02-09 18:30:21 +08:00
Rong Ou
cbf98cb9c6
Add Allgather to collective communicator ( #8765 )
...
* Add Allgather to collective communicator
2023-02-09 11:31:22 +08:00
Jiaming Yuan
48cefa012e
Support multiple alphas for segmented quantile. ( #8758 )
2023-02-07 17:17:59 +08:00
Jiaming Yuan
28bb01aa22
Extract optional weight. ( #8747 )
...
- Extract optional weight from coommon.h to reduce dependency on this header.
- Add test.
2023-02-07 03:11:53 +08:00
Jiaming Yuan
a2e433a089
Fix empty DMatrix with categorical features. ( #8739 )
2023-02-07 00:40:11 +08:00
Rory Mitchell
7214a45e83
Fix different number of features in gpu_hist evaluator. ( #8754 )
2023-02-06 23:15:16 +08:00
Rong Ou
66191e9926
Support cpu quantile sketch with column-wise data split ( #8742 )
2023-02-05 14:26:24 +08:00
Jiaming Yuan
c1786849e3
Use array interface for CSC matrix. ( #8672 )
...
* Use array interface for CSC matrix.
Use array interface for CSC matrix and align the interface with CSR and dense.
- Fix nthread issue in the R package DMatrix.
- Unify the behavior of handling `missing` with other inputs.
- Unify the behavior of handling `missing` around R, Python, Java, and Scala DMatrix.
- Expose `num_non_missing` to the JVM interface.
- Deprecate old CSR and CSC constructors.
2023-02-05 01:59:46 +08:00
Jiaming Yuan
0e61ba57d6
Fix GPU L1 error. ( #8749 )
2023-02-04 03:02:00 +08:00
Jiaming Yuan
3760cede0f
Consistent use of context to specify number of threads. ( #8733 )
...
- Use context in all tests.
- Use context in R.
- Use context in C API DMatrix initialization. (0 threads is used as dft).
2023-01-30 15:25:31 +08:00
Jiaming Yuan
21a28f2cc5
Small refactor for hist builder. ( #8698 )
...
- Use span instead of vector as parameter. No perf change as the builder work on pointer.
- Use const pointer for reg tree.
2023-01-30 14:06:41 +08:00
Jiaming Yuan
34eee56256
Fix compiler warnings. ( #8703 )
...
Fix warnings about signed/unsigned comparisons.
2023-01-21 15:16:23 +08:00
Jiaming Yuan
e49e0998c0
Extract CPU sampling routines. ( #8697 )
2023-01-19 23:28:18 +08:00
Jiaming Yuan
7a068af1a3
Workaround CUDA warning. ( #8696 )
2023-01-19 09:16:08 +08:00
Jiaming Yuan
4416452f94
Return single thread from context when called inside omp region. ( #8693 )
2023-01-18 09:23:37 +08:00
Jiaming Yuan
31b9cbab3d
Make sure input numpy array is aligned. ( #8690 )
...
- use `np.require` to specify that the alignment is required.
- scipy csr as well.
- validate input pointer in `ArrayInterface`.
2023-01-18 08:12:13 +08:00
Rong Ou
78396f8a6e
Initial support for column-split cpu predictor ( #8676 )
2023-01-18 06:33:13 +08:00
Jiaming Yuan
43152657d4
Extract JSON type check. ( #8677 )
...
- Reuse it in `GetMissing`.
- Add test.
2023-01-17 03:11:07 +08:00
Jiaming Yuan
9f598efc3e
Rename context in Metric. ( #8686 )
2023-01-17 01:10:13 +08:00
Jiaming Yuan
0ae8df9a65
Define default ctors for gpair. ( #8660 )
...
* Define default ctors for gpair.
Fix clang warning:
Definition of implicit copy assignment operator for 'GradientPairInternal<float>' is
deprecated because it has a user-declared copy constructor
2023-01-16 22:52:13 +08:00
Jiaming Yuan
07cf3d3e53
Fix threads in DMatrix slice. ( #8667 )
2023-01-14 07:16:57 +08:00
Jiaming Yuan
cfa994d57f
Multi-target support for L1 error. ( #8652 )
...
- Add matrix support to the median function.
- Iterate through each target for quantile computation.
2023-01-11 05:51:14 +08:00
Jiaming Yuan
badeff1d74
Init estimation for regression. ( #8272 )
2023-01-11 02:04:56 +08:00
Jiaming Yuan
26c9882e23
Fix loading GPU pickle with a CPU-only xgboost distribution. ( #8632 )
...
We can handle loading the pickle on a CPU-only machine if the XGBoost is built with CUDA
enabled (Linux and Windows PyPI package), but not if the distribution is CPU-only (macOS
PyPI package).
2023-01-05 02:14:30 +08:00
Jiaming Yuan
beefd28471
Split up SHAP from RegTree. ( #8612 )
...
* Split up SHAP from `RegTree`.
Simplify the tree interface.
2023-01-04 18:17:47 +08:00
James Lamb
fa44a33ee6
remove unused variables in JSON-parsing code ( #8627 )
2023-01-04 15:50:33 +08:00
Jiaming Yuan
8d545ab2a2
Implement fit stump. ( #8607 )
2023-01-04 04:14:51 +08:00
Rong Ou
3ceeb8c61c
Add data split mode to DMatrix MetaInfo ( #8568 )
2022-12-25 20:37:37 +08:00