977 Commits

Author SHA1 Message Date
david-cortes
cd473c9da3
[R] enable multi-dimensional base_margin (#9885) 2023-12-14 09:16:53 +08:00
david-cortes
42173d7bc3
[doc] Clarify the effect of enable_categorical (#9877) 2023-12-13 08:39:41 +08:00
david-cortes
ddab49a8be
[doc][R] Update arguments for ellipsis in predict (#9868) 2023-12-12 12:13:47 +08:00
Jiaming Yuan
faf0f2df10
Support dataframe data format in native XGBoost. (#9828)
- Implement a columnar adapter.
- Refactor Python pandas handling code to avoid converting into a single numpy array.
- Add support in R for transforming columns.
- Support R data.frame and factor type.
2023-12-12 09:56:31 +08:00
david-cortes
562352101d
[R] Move all DMatrix fields to function arguments (#9862) 2023-12-10 02:45:28 +08:00
david-cortes
9e9d41b95c
[R] Add note about serialization of DMatrix objects (#9853) 2023-12-07 03:11:15 +08:00
Jiaming Yuan
4bc1f3a388
[R] Bump requirement to 4.3.0. (#9847) 2023-12-07 00:12:45 +08:00
david-cortes
1de3f4135c
[R] Enable vector-valued parameters (#9849) 2023-12-06 20:32:20 +08:00
david-cortes
0716c64ef7
[R] Error out on multidimensional arrays (#9852) 2023-12-06 17:43:51 +08:00
david-cortes
62571b79eb
[R] Enable multi-output objectives (#9839) 2023-12-06 03:13:14 +08:00
david-cortes
9c56916fd7
[R] Very small performance tweaks (#9837) 2023-12-04 18:40:45 +08:00
david-cortes
7196c9d95e
[R] Fix memory safety issues (#9823) 2023-12-02 13:43:50 +08:00
david-cortes
95af5c074b
more usage of array interface, fix potential memory leaks of std::string (#9824) 2023-12-01 00:06:59 +08:00
david-cortes
37da66f865
[R] Use array interface for dense DMatrix creation (#9816)
---------

Co-authored-by: Jiaming Yuan <jm.yuan@outlook.com>
2023-11-30 04:35:05 +08:00
david-cortes
c0ef2f8dce
[R] Fix potential memory leaks in case of R allocation failures (#9817) 2023-11-29 13:14:17 +08:00
david-cortes
bfa1252fca
[R][doc] Update docs about fitting from CSR (#9818) 2023-11-29 05:42:41 +08:00
david-cortes
d3f0646779
[R] Avoid modifying importance dt in-place, fix aggregation (#9740) 2023-11-01 05:10:59 +08:00
Jiaming Yuan
b771f58453
[coll] Define interface for bridging. (#9695)
* Define the basic interface that will shared by nccl, federated and native.
2023-10-20 16:20:48 +08:00
Jiaming Yuan
48ac9b6cbe
[coll] Allreduce. (#9679) 2023-10-17 13:57:14 +08:00
Jiaming Yuan
53049b16b8
[coll] Broadcast. (#9659) 2023-10-14 09:34:37 +08:00
Jiaming Yuan
946ae1c440
[coll] Implement a new tracker and a communicator. (#9650)
* [coll] Implement a new tracker and a communicator.

The new tracker and communicators communicate through the use of JSON documents. Along
with which, communicators are aware of each other.
2023-10-12 12:49:16 +08:00
James Lamb
799f8485e2
[R] [CI] enforce lintr::function_left_parentheses_linter check (#9631) 2023-10-08 09:42:09 +08:00
Jiaming Yuan
d95be1c38d
Small cleanup to jvm iter adapter. (#9616)
- Remove header dependency on c_api
- Remove remaining code for arrow.
2023-09-29 00:39:07 +08:00
Jiaming Yuan
cac2cd2e94
[R] Set number of threads in demos and tests. (#9591)
- Restrict the number of threads in IO.
- Specify the number of threads in demos and tests.
- Add helper scripts for checks.
2023-09-23 21:44:03 +08:00
James Lamb
730bc1f688
[R] remove unused headers (#9546) 2023-09-14 17:11:26 +08:00
Jiaming Yuan
5abe50ff8c
[R] Fix method name. (#9577) 2023-09-13 23:19:29 +08:00
James Lamb
d159ee8547
[R] reformat build scripts (#9540) 2023-09-04 17:40:46 +08:00
Jiaming Yuan
be6a552956
[R] Support multi-class custom objective. (#9526) 2023-08-29 08:27:13 +08:00
Jiaming Yuan
c3574d932f
[R] Fix integer inputs with NA. (#9522) 2023-08-28 18:36:11 +08:00
Jiaming Yuan
972730cde0
Use matrix for gradient. (#9508)
- 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)
2023-08-24 05:29:52 +08:00
Jiaming Yuan
db87d481bc
[R] Differentiate dev version with release version. (#9503)
Use 2.1.0.0 as development version, we will change it to 2.1.0.1 during release.
2023-08-20 02:58:58 +08:00
Jiaming Yuan
58530b1bc4
Bump version to 2.1. (#9498) 2023-08-18 01:04:04 +08:00
James Lamb
b82e78c169
[R] remove commented-out code (#9481) 2023-08-15 13:44:08 +08:00
James Lamb
e3f624d8e7
[R] remove more uses of default values in internal functions (#9476) 2023-08-14 22:18:33 +08:00
James Lamb
2c84daeca7
[R] [doc] remove documentation index entries for internal functions (#9477) 2023-08-14 22:18:02 +08:00
Jiaming Yuan
bb56183396
Normalize file system path. (#9463) 2023-08-11 21:26:46 +08:00
James Lamb
428f6cbbe2
[R] remove default values in internal booster manipulation functions (#9461) 2023-08-11 15:07:18 +08:00
James Lamb
44bd2981b2
[R] remove default values in internal utility functions (#9457) 2023-08-10 21:40:59 +08:00
James Lamb
4359356d46
[R] [CI] use lintr 3.1.0 (#9456) 2023-08-10 17:49:16 +08:00
Jiaming Yuan
a57371ef7c
Fix links in R doc. (#9450) 2023-08-10 02:38:14 +08:00
joshbrowning2358
7f854848d3
Update R docs based on deprecated parameters/behaviour (#9437) 2023-08-09 17:04:28 +08:00
Philip Hyunsu Cho
819098a48f
[R] Handle UTF-8 paths on Windows (#9448) 2023-08-08 21:29:19 -07:00
Jiaming Yuan
54029a59af
Bound the size of the histogram cache. (#9440)
- A new histogram collection with a limit in size.
- Unify histogram building logic between hist, multi-hist, and approx.
2023-08-08 03:21:26 +08:00
Jiaming Yuan
e93a274823
Small cleanup for histogram routines. (#9427)
* Small cleanup for histogram routines.

- Extract hist train param from GPU hist.
- Make histogram const after construction.
- Unify parameter names.
2023-08-02 18:28:26 +08:00
Jiaming Yuan
97ed944209
Unify the hist tree method for different devices. (#9363) 2023-07-11 10:04:39 +08:00
Jiaming Yuan
41c6813496
Preserve order of saved updaters config. (#9355)
- Save the updater sequence as an array instead of object.
- Warn only once.

The compatibility is kept, but we should be able to break it as the config is not loaded
in pickle model and it's declared to be not stable.
2023-07-05 20:20:07 +08:00
Jiaming Yuan
f4798718c7
Use hist as the default tree method. (#9320) 2023-06-27 23:04:24 +08:00
Jiaming Yuan
6efe7c129f
[doc] Update reference in R vignettes. (#9323) 2023-06-26 18:32:11 +08:00
Jiaming Yuan
9fbde21e9d
Rework the precision metric. (#9222)
- Rework the precision metric for both CPU and GPU.
- Mention it in the document.
- Cleanup old support code for GPU ranking metric.
- Deterministic GPU implementation.

* Drop support for classification.

* type.

* use batch shape.

* lint.

* cpu build.

* cpu build.

* lint.

* Tests.

* Fix.

* Cleanup error message.
2023-06-02 20:49:43 +08:00
Jiaming Yuan
1f9a57d17b
[Breaking] Require format to be specified in input URI. (#9077)
Previously, we use `libsvm` as default when format is not specified. However, the dmlc
data parser is not particularly robust against errors, and the most common type of error
is undefined format.

Along with which, we will recommend users to use other data loader instead. We will
continue the maintenance of the parsers as it's currently used for many internal tests
including federated learning.
2023-04-28 19:45:15 +08:00