Jiaming Yuan and Philip Hyunsu Cho
93c44a9a64
Move feature names and types of DMatrix from Python to C++. ( #5858 )
...
* Add thread local return entry for DMatrix.
* Save feature name and feature type in binary file.
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu >
2020-07-07 09:40:13 +08:00
Jiaming Yuan
4b0852ee41
Use dmlc stream when URI protocol is not local file. ( #5857 )
2020-07-07 03:07:12 +08:00
Jiaming Yuan
1a0801238e
Implement iterative DMatrix. ( #5837 )
2020-07-03 11:44:52 +08:00
Jiaming Yuan
4d277d750d
Relax linear test. ( #5849 )
...
* Increased error in coordinate is mostly due to floating point error.
* Shotgun uses Hogwild!, which is non-deterministic and can have even greater
floating point error.
2020-07-03 07:49:53 +08:00
Jiaming Yuan
eb067c1c34
Relax test for shotgun. ( #5835 )
2020-07-01 19:20:29 +08:00
Jiaming Yuan
90a9c68874
Implement a DMatrix Proxy. ( #5803 )
2020-06-29 15:03:10 +08:00
Jiaming Yuan
47c89775d6
Accept string for ArrayInterface constructor. ( #5799 )
2020-06-27 00:06:54 +08:00
Jiaming Yuan
8234091368
Remove unweighted GK quantile. ( #5816 )
2020-06-23 14:27:46 +08:00
Jiaming Yuan
8104f10328
Update document for model dump. ( #5818 )
...
* Clarify the relationship between dump and save.
* Mention the schema.
2020-06-22 14:33:54 +08:00
Jiaming Yuan
26143ad0b1
Update rabit. ( #5680 )
2020-06-22 14:32:43 +08:00
Jiaming Yuan
c4d721200a
Implement extend method for meta info. ( #5800 )
...
* Implement extend for host device vector.
2020-06-20 03:32:03 +08:00
Jiaming Yuan
38ee514787
Implement fast number serialization routines. ( #5772 )
...
* Implement ryu algorithm.
* Implement integer printing.
* Full coverage roundtrip test.
2020-06-17 12:39:23 +08:00
fis
7c3a168ffd
Revert "Accept string for ArrayInterface constructor."
...
This reverts commit e8ecafb8dc .
2020-06-16 20:02:35 +08:00
fis
e8ecafb8dc
Accept string for ArrayInterface constructor.
2020-06-16 20:00:24 +08:00
Jiaming Yuan
529b5c2cfd
[DOC] Mention dask blog post in doc. [skip ci] ( #5789 )
2020-06-14 13:00:19 +08:00
Jiaming Yuan
1fa84b61c1
Implement Empty method for host device vector. ( #5781 )
...
* Fix accessing nullptr.
2020-06-13 19:02:26 +08:00
Jiaming Yuan
306e38ff31
Avoid including c_api.h in header files. ( #5782 )
2020-06-12 16:24:24 +08:00
Jiaming Yuan
3028fa6b42
Implement weighted sketching for adapter. ( #5760 )
...
* Bounded memory tests.
* Fixed memory estimation.
2020-06-12 06:20:39 +08:00
Jiaming Yuan and Hyunsu Cho
cacff9232a
Remove column major specialization. ( #5755 )
...
Co-authored-by: Hyunsu Cho <chohyu01@cs.washington.edu >
2020-06-05 16:19:14 +08:00
Jiaming Yuan
bd9d57f579
Add helper for generating batches of data. ( #5756 )
...
* Add helper for generating batches of data.
* VC keyword clash.
* Another clash.
2020-06-05 09:53:56 +08:00
Jiaming Yuan
cfc23c6a6b
Remove max.depth in R gblinear example. ( #5753 )
2020-06-04 02:59:22 +08:00
Jiaming Yuan
d3a0efbf16
Reorder includes. ( #5749 )
...
* Reorder includes.
* R.
2020-06-03 17:30:47 +12:00
Jiaming Yuan
e49607af19
Add Python binding for rabit ops. ( #5743 )
2020-06-02 19:47:23 +08:00
Jiaming Yuan
e533908922
Expose device sketching in header. ( #5747 )
2020-06-02 13:02:53 +08:00
Jiaming Yuan
325156c7a9
Bump version in header. ( #5742 )
2020-06-01 18:21:18 +08:00
Jiaming Yuan
d19cec70f1
Don't use mask in array interface. ( #5730 )
2020-06-01 12:17:24 +08:00
Jiaming Yuan
9e1b29944e
Fix loading old model. ( #5724 )
...
* Add test.
2020-05-31 14:55:32 +08:00
Jiaming Yuan
35e2205256
[dask] Return GPU Series when input is from cuDF. ( #5710 )
...
* Refactor predict function.
2020-05-28 17:51:20 +08:00
Jiaming Yuan and Philip Hyunsu Cho
75a0025a3d
[CI] Remove CUDA 9.0 from Windows CI. ( #5674 )
...
* Remove CUDA 9.0 on Windows CI.
* Require cuda10 tag, to differentiate
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu >
2020-05-27 12:23:36 -07:00
Jiaming Yuan
f145241593
Let XGBoostError inherit ValueError. ( #5696 )
2020-05-26 08:34:56 +08:00
Jiaming Yuan
8438c7d0e4
Fix IsDense. ( #5702 )
2020-05-26 08:24:37 +08:00
Jiaming Yuan
1ba24a7597
Remove redundant sketching. ( #5700 )
2020-05-24 08:47:20 +08:00
Jiaming Yuan
5af8161a1a
Implement Python data handler. ( #5689 )
...
* Define data handlers for DMatrix.
* Throw ValueError in scikit learn interface.
2020-05-22 11:53:55 +08:00
Jiaming Yuan
7903286961
Remove silent from R demos. ( #5675 )
...
* Remove silent from R demos.
* Vignettes.
2020-05-19 18:20:46 +08:00
Jiaming Yuan
dd9aeb60ae
[JVM Packages] Catch dmlc error by ref. ( #5678 )
2020-05-19 13:00:12 +08:00
Jiaming Yuan
535479e69f
Add JSON schema to model dump. ( #5660 )
2020-05-15 10:18:43 +08:00
Jiaming Yuan
2c1a439869
Update Python demos with tests. ( #5651 )
...
* Remove GPU memory usage demo.
* Add tests for demos.
* Remove `silent`.
* Remove shebang as it's not portable.
2020-05-12 12:04:42 +08:00
Jiaming Yuan and Philip Hyunsu Cho
9ad40901a8
Upgrade to CUDA 10.0 ( #5649 ) ( #5652 )
...
Co-authored-by: fis <jm.yuan@outlook.com >
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu >
2020-05-11 22:27:36 +08:00
Jiaming Yuan
21ed1f0c6d
Support 64bit seed. ( #5643 )
2020-05-07 14:52:38 +08:00
Jiaming Yuan
eaf2a00b5c
Enhance nvtx support. ( #5636 )
2020-05-06 22:54:24 +08:00
Jiaming Yuan
67d267f9da
Move device dmatrix construction code into ellpack. ( #5623 )
2020-05-06 19:43:59 +08:00
Jiaming Yuan
33e052b1e5
Remove dead code. ( #5635 )
2020-05-06 17:03:48 +08:00
Jiaming Yuan
c90457f489
Refactor the CLI. ( #5574 )
...
* Enable parameter validation.
* Enable JSON.
* Catch `dmlc::Error`.
* Show help message.
2020-04-26 10:56:33 +08:00
Jiaming Yuan
7d93932423
Better message when no GPU is found. ( #5594 )
2020-04-26 10:00:57 +08:00
Jiaming Yuan
e726dd9902
Set device in device dmatrix. ( #5596 )
2020-04-25 13:42:53 +08:00
Jiaming Yuan
f27b6f9ba6
Update document. ( #5572 )
2020-04-22 02:37:37 +08:00
Jiaming Yuan
c355ab65ed
Enable parameter validation for R. ( #5569 )
...
* Enable parameter validation for R.
* Add test.
2020-04-21 11:19:09 -07:00
Jiaming Yuan
564b22cee5
Restore attributes in complete. ( #5573 )
2020-04-21 11:06:55 -07:00
Jiaming Yuan
9c1103e06c
[Breaking] Set output margin to True for custom objective. ( #5564 )
...
* Set output margin to True for custom objective in Python and R.
* Add a demo for writing multi-class custom objective function.
* Run tests on selected demos.
2020-04-20 20:44:12 +08:00
Jiaming Yuan
fcbedcedf8
Fix configuration I load model. ( #5562 )
2020-04-20 17:25:11 +08:00
Jiaming Yuan
29a4cfe400
Group aware GPU sketching. ( #5551 )
...
* Group aware GPU weighted sketching.
* Distribute group weights to each data point.
* Relax the test.
* Validate input meta info.
* Fix metainfo copy ctor.
2020-04-20 17:18:52 +08:00
Jiaming Yuan
b809f5d8b8
Don't set seed on CLI interface. ( #5563 )
2020-04-20 12:17:03 +08:00
Jiaming Yuan
ccd30e4491
Fix non-openmp build. ( #5566 )
...
* Add test to Jenkins.
* Fix threading utils tests.
* Require thread library.
2020-04-20 12:16:38 +08:00
Jiaming Yuan
e1f22baf8c
Fix slice and get info. ( #5552 )
2020-04-18 18:00:13 +08:00
Jiaming Yuan
c245eb8755
Fix r interaction constraints ( #5543 )
...
* Unify the parsing code.
* Cleanup.
2020-04-18 06:53:51 +08:00
Jiaming Yuan
93df871c8c
Assert matching length of evaluation inputs. ( #5540 )
2020-04-18 06:52:55 +08:00
Jiaming Yuan
c69a19e2b1
Fix skl nan tag. ( #5538 )
2020-04-18 06:52:17 +08:00
Jiaming Yuan
cfee9fae91
Don't use uint for threads. ( #5542 )
2020-04-17 09:45:42 +08:00
Jiaming Yuan
bb29ce2818
Add missing aft parameters. [skip ci] ( #5553 )
2020-04-16 12:08:55 -07:00
Jiaming Yuan
468b1594d3
Fix CLI model IO. ( #5535 )
...
* Add test for comparing Python and CLI training result.
2020-04-16 07:48:47 +08:00
Jiaming Yuan and Hyunsu Cho
8b04736b81
[dask] dask cudf inplace prediction. ( #5512 )
...
* Add inplace prediction for dask-cudf.
* Remove Dockerfile.release, since it's not used anywhere
* Use Conda exclusively in CUDF and GPU containers
* Improve cupy memory copying.
* Add skip marks to tests.
* Add mgpu-cudf category on the CI to run all distributed tests.
Co-authored-by: Hyunsu Cho <chohyu01@cs.washington.edu >
2020-04-15 18:15:51 +08:00
Jiaming Yuan
a2f54963b6
Write binary header. ( #5532 )
2020-04-15 17:47:57 +08:00
Jiaming Yuan
c90119eb67
Update Python doc. [skip ci] ( #5517 )
...
* Update doc for copying booster. [skip ci]
The issue is resolved in #5312 .
* Add version for new APIs. [skip ci]
2020-04-14 16:25:20 +08:00
Jiaming Yuan
b56c902841
[R] R raw serialization. ( #5123 )
...
* Add bindings for serialization.
* Change `xgb.save.raw' into full serialization instead of simple model.
* Add `xgb.load.raw' for unserialization.
* Run devtools.
2020-04-11 17:16:54 +08:00
Jiaming Yuan
a3db79df22
Remove makefiles. ( #5513 )
2020-04-11 13:25:53 +08:00
Jiaming Yuan
4a0c8ef237
Update doc for parameter validation. ( #5508 )
...
* Update doc for parameter validation.
* Fix github rebase.
2020-04-11 00:43:46 +08:00
Jiaming Yuan
1334aca437
Fix github merge. ( #5509 )
2020-04-10 22:17:38 +08:00
Jiaming Yuan
866a477319
Unify max nodes. ( #5497 )
2020-04-10 19:26:35 +08:00
Jiaming Yuan
bd653fad4c
Remove distcol updater. ( #5507 )
...
Closes #5498 .
2020-04-10 12:52:56 +08:00
Jiaming Yuan
7d52c0b8c2
Requires setting leaf stat when expanding tree. ( #5501 )
...
* Fix GPU Hist feature importance.
2020-04-10 12:27:03 +08:00
Jiaming Yuan
dc2950fd90
Fix checking booster. ( #5505 )
...
* Use `get_params()` instead of `getattr` intrinsic.
2020-04-10 12:21:21 +08:00
Jiaming Yuan
6671b42dd4
Use ellpack for prediction only when sparsepage doesn't exist. ( #5504 )
2020-04-10 12:15:46 +08:00
Jiaming Yuan and Hyunsu Cho
0012f2ef93
Upgrade clang-tidy on CI. ( #5469 )
...
* Correct all clang-tidy errors.
* Upgrade clang-tidy to 10 on CI.
Co-authored-by: Hyunsu Cho <chohyu01@cs.washington.edu >
2020-04-05 04:42:29 +08:00
Jiaming Yuan
a9313802ea
Fix dump model. ( #5485 )
2020-04-05 03:52:54 +08:00
Jiaming Yuan
939973630d
Accept other gradient types for split entry. ( #5467 )
2020-04-03 10:38:44 +08:00
Jiaming Yuan
86beb68ce8
Implement host span. ( #5459 )
2020-04-03 10:37:51 +08:00
Jiaming Yuan
459b175dc6
Split up test helpers header. ( #5455 )
2020-04-03 10:36:53 +08:00
Jiaming Yuan
c218d8ffbf
Enable parameter validation for skl. ( #5477 )
2020-04-03 10:23:58 +08:00
Jiaming Yuan
d0b86c75d9
Remove silent parameter. ( #5476 )
2020-04-03 08:03:26 +08:00
Jiaming Yuan
29c6ad943a
Prevent copying SimpleDMatrix. ( #5453 )
...
* Set default dtor for SimpleDMatrix to initialize default copy ctor, which is
deleted due to unique ptr.
* Remove commented code.
* Remove warning for calling host function (std::max).
* Remove warning for initialization order.
* Remove warning for unused variables.
2020-04-02 07:01:49 +08:00
Jiaming Yuan
e86030c360
Update dmlc-core. ( #5466 )
...
* Copy dmlc travis script to XGBoost.
2020-04-02 04:16:39 +08:00
Jiaming Yuan
babcb996e7
Reduce span check overhead. ( #5464 )
2020-04-01 22:07:24 +08:00
Jiaming Yuan
6601a641d7
Thread safe, inplace prediction. ( #5389 )
...
Normal prediction with DMatrix is now thread safe with locks. Added inplace prediction is lock free thread safe.
When data is on device (cupy, cudf), the returned data is also on device.
* Implementation for numpy, csr, cudf and cupy.
* Implementation for dask.
* Remove sync in simple dmatrix.
2020-03-30 15:35:28 +08:00
Jiaming Yuan
780de49ddb
Resolve travis failure. ( #5445 )
...
* Install dependencies by pip.
2020-03-27 19:37:58 +08:00
Jiaming Yuan
4942da64ae
Refactor tests with data generator. ( #5439 )
2020-03-27 06:44:44 +08:00
Jiaming Yuan
7146b91d5a
Force compressed buffer to be 4 bytes aligned. ( #5441 )
2020-03-27 06:43:52 +08:00
Jiaming Yuan
cd7d6f7d59
[dask] Fix missing value for scikit-learn interface. ( #5435 )
2020-03-20 10:56:01 -04:00
Jiaming Yuan
abca9908ba
Support pandas SparseArray. ( #5431 )
2020-03-20 21:40:22 +08:00
Jiaming Yuan
760d5d0c3c
[dask] Accept other inputs for prediction. ( #5428 )
...
* Returns a series when input is dataframe.
* Merge assert client.
2020-03-19 17:05:55 +08:00
Jiaming Yuan
8ca06ab329
[dask] Check non-equal when setting threads. ( #5421 )
...
* Check non-equal.
`nthread` can be restored from internal parameter, which is mis-interpreted as
user defined parameter.
* Check None.
2020-03-17 13:07:20 +08:00
Jiaming Yuan
b51124c158
[dask] Enable gridsearching with skl. ( #5417 )
2020-03-16 04:51:51 +08:00
Jiaming Yuan
761a5dbdfc
[dask] Honor nthreads from dask worker. ( #5414 )
2020-03-16 04:51:24 +08:00
Jiaming Yuan
21b671aa06
[dask] Order the prediction result. ( #5416 )
2020-03-15 19:34:04 +08:00
Jiaming Yuan
668e432e2d
[dask] Use DMLC_TASK_ID. ( #5415 )
2020-03-15 16:47:03 +08:00
Jiaming Yuan
fc88105620
Better error message for updating. ( #5418 )
2020-03-15 16:46:21 +08:00
Jiaming Yuan
ab7a46a1a4
Check whether current updater can modify a tree. ( #5406 )
...
* Check whether current updater can modify a tree.
* Fix tree model JSON IO for pruned trees.
2020-03-14 09:24:08 +08:00
Jiaming Yuan
45a97ddf32
Split up LearnerImpl. ( #5350 )
2020-03-12 16:30:23 +08:00
Jiaming Yuan
0dd97c206b
Move thread local entry into Learner. ( #5396 )
...
* Move thread local entry into Learner.
This is an attempt to workaround CUDA context issue in static variable, where
the CUDA context can be released before device vector.
* Add PredictionEntry to thread local entry.
This eliminates one copy of prediction vector.
* Don't define CUDA C API in a namespace.
2020-03-07 15:37:39 +08:00
Jiaming Yuan
8d06878bf9
Deterministic GPU histogram. ( #5361 )
...
* Use pre-rounding based method to obtain reproducible floating point
summation.
* GPU Hist for regression and classification are bit-by-bit reproducible.
* Add doc.
* Switch to thrust reduce for `node_sum_gradient`.
2020-03-04 15:13:28 +08:00
Jiaming Yuan
2ba8c13b69
Revert "Enable rabit test ( #5358 )" ( #5377 )
...
This reverts commit 9a5efffebe .
2020-02-29 04:25:03 +08:00