Commit Graph
100 Commits
Author SHA1 Message Date
Jiaming Yuan e4a273e1da Fix evaluate root split. (#5948) 2020-07-29 19:33:29 +08:00
Jiaming Yuan f5fdcbe194 Disable feature validation on sklearn predict prob. (#5953)
* Fix issue when scikit learn interface receives transformed inputs.
2020-07-29 19:26:44 +08:00
Jiaming Yuan 18349a7ccf [Breaking] Fix custom metric for multi output. (#5954)
* Set output margin to true for custom metric.  This fixes only R and Python.
2020-07-29 19:25:27 +08:00
Jiaming Yuan 75b8c22b0b Fix prediction heuristic (#5955)
* Relax check for prediction.
* Relax test in spark test.
* Add tests in C++.
2020-07-29 19:24:07 +08:00
Jiaming Yuan 40361043ae [BLOCKING] Remove to_string. (#5934) 2020-07-26 10:21:26 +08:00
Jiaming Yuan a4de2f68e4 Use cudaOccupancyMaxPotentialBlockSize to calculate the block size. (#5926) 2020-07-23 14:24:42 +08:00
Jiaming Yuan fbfbd525d8 Cache dependencies on Github Action. (#5928) 2020-07-23 14:00:19 +08:00
Jiaming Yuan bc1d3ee230 Fix r early stop with custom objective. (#5923)
* Specify `ntreelimit`.
2020-07-23 03:28:17 +08:00
Jiaming Yuan 30363d9c35 Remove R and JVM from appveyor. (#5922) 2020-07-23 03:26:48 +08:00
Jiaming Yuan 66cc1e02aa Setup github action. (#5917) 2020-07-22 15:05:25 +08:00
Jiaming Yuan 9b688aca3b Fix mingw build with R. (#5918) 2020-07-22 02:56:49 +08:00
Jiaming Yuan 03fb98fbde Fix typo in CI. [skip ci] (#5919) 2020-07-21 14:25:27 +08:00
Jiaming Yuan 8b1afce316 Add Github Action for R. (#5911)
* Fix lintr errors.
2020-07-20 19:23:36 +08:00
Jiaming Yuan 6c0c87216f Fix Windows 2016 build. (#5902) 2020-07-18 05:50:17 +08:00
Jiaming Yuan 7c2686146e Dask device dmatrix (#5901)
* Fix softprob with empty dmatrix.
2020-07-17 13:17:43 +08:00
Jiaming Yuan e471056ec4 Fix sketch size calculation. (#5898) 2020-07-17 08:33:16 +08:00
Jiaming Yuan 029a8b533f Simplify the data backends. (#5893) 2020-07-16 15:17:31 +08:00
Jiaming Yuan 3cae287dea Fix NDK Build. (#5886)
* Explicit cast for slice.
2020-07-14 18:34:19 +08:00
Jiaming Yuan dd445af56e Cleanup on device sketch. (#5874)
* Remove old functions.

* Merge weighted and un-weighted into a common interface.
2020-07-14 10:15:54 +08:00
Jiaming Yuan d0a29c3135 Remove print. (#5867) 2020-07-08 04:12:14 +08:00
Jiaming Yuan a3ec964346 Accept iterator in device dmatrix. (#5783)
* Remove Device DMatrix.
2020-07-07 21:44:48 +08:00
Jiaming Yuan 048d969be4 Implement GK sketching on GPU. (#5846)
* Implement GK sketching on GPU.
* Strong tests on quantile building.
* Handle sparse dataset by binary searching the column index.
* Hypothesis test on dask.
2020-07-07 12:16:21 +08:00
Jiaming YuanandPhilip 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 YuanandHyunsu 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 YuanandPhilip 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 YuanandPhilip 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 YuanandHyunsu 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 YuanandHyunsu 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