Commit 33c0de5
authored
Update xgboost requirement from ~=2.1.3 to ~=2.1.4 (#207)
Updates the requirements on [xgboost](https://github.com/dmlc/xgboost)
to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dmlc/xgboost/releases">xgboost's
releases</a>.</em></p>
<blockquote>
<h2>2.1.4 Patch Release</h2>
<p>The 2.1.4 patch release incorporates the following fixes on top of
the 2.1.3 release:</p>
<ul>
<li>XGBoost is now compatible with scikit-learn 1.6 (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11021">#11021</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/11162">#11162</a>)</li>
<li>Build wheels with CUDA 12.8 and enable Blackwell support (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11187">#11187</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/11202">#11202</a>)</li>
<li>Adapt to RMM 25.02 logger changes (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11153">#11153</a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/dmlc/xgboost/compare/v2.1.3...v2.1.4">https://github.com/dmlc/xgboost/compare/v2.1.3...v2.1.4</a></p>
<h3>Additional artifacts:</h3>
<p>You can verify the downloaded packages by running the following
command on your Unix shell:</p>
<pre lang="sh"><code>echo "<hash> <artifact>" |
shasum -a 256 --check
</code></pre>
<pre><code>b6ce5870d03cc1233cad5ff8460f670a2aff78625adfb578c0b9eec3b8b88406
xgboost-2.1.4.tar.gz
9780ba8314824eac7b8565cc2af8ea692fd4898712052a49132ac3fdf7c0ab2b
xgboost_r_gpu_linux_2.1.4.tar.gz
</code></pre>
<p><strong>Experimental binary packages for R with CUDA
enabled</strong></p>
<ul>
<li>xgboost_r_gpu_linux_2.1.4.tar.gz: <a
href="https://s3-us-west-2.amazonaws.com/xgboost-nightly-builds/release_2.1.0/xgboost_r_gpu_linux_62e7923619352c4079b24303b367134486b1c84f.tar.gz">Download</a></li>
</ul>
<p><strong>Source tarball</strong></p>
<ul>
<li>xgboost.tar.gz: <a
href="https://github.com/dmlc/xgboost/releases/download/v2.1.4/xgboost-2.1.4.tar.gz">Download</a>(base)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/dmlc/xgboost/blob/master/NEWS.md">xgboost's
changelog</a>.</em></p>
<blockquote>
<h1>XGBoost Change Log</h1>
<p><strong>Starting from 2.1.0, release note is recorded in the
documentation.</strong></p>
<p>This file records the changes in xgboost library in reverse
chronological order.</p>
<h2>2.0.0 (2023 Aug 16)</h2>
<p>We are excited to announce the release of XGBoost 2.0. This note will
begin by covering some overall changes and then highlight specific
updates to the package.</p>
<h3>Initial work on multi-target trees with vector-leaf outputs</h3>
<p>We have been working on vector-leaf tree models for multi-target
regression, multi-label classification, and multi-class classification
in version 2.0. Previously, XGBoost would build a separate model for
each target. However, with this new feature that's still being
developed, XGBoost can build one tree for all targets. The feature has
multiple benefits and trade-offs compared to the existing approach. It
can help prevent overfitting, produce smaller models, and build trees
that consider the correlation between targets. In addition, users can
combine vector leaf and scalar leaf trees during a training session
using a callback. Please note that the feature is still a working in
progress, and many parts are not yet available. See <a
href="https://redirect.github.com/dmlc/xgboost/issues/9043">#9043</a>
for the current status. Related PRs: (<a
href="https://redirect.github.com/dmlc/xgboost/issues/8538">#8538</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8697">#8697</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8902">#8902</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8884">#8884</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8895">#8895</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8898">#8898</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8612">#8612</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8652">#8652</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8698">#8698</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8908">#8908</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8928">#8928</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8968">#8968</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8616">#8616</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8922">#8922</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8890">#8890</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8872">#8872</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8889">#8889</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9509">#9509</a>)
Please note that, only the <code>hist</code> (default) tree method on
CPU can be used for building vector leaf trees at the moment.</p>
<h3>New <code>device</code> parameter.</h3>
<p>A new <code>device</code> parameter is set to replace the existing
<code>gpu_id</code>, <code>gpu_hist</code>, <code>gpu_predictor</code>,
<code>cpu_predictor</code>, <code>gpu_coord_descent</code>, and the
PySpark specific parameter <code>use_gpu</code>. Onward, users need only
the <code>device</code> parameter to select which device to run along
with the ordinal of the device. For more information, please see our
document page (<a
href="https://xgboost.readthedocs.io/en/stable/parameter.html#general-parameters">https://xgboost.readthedocs.io/en/stable/parameter.html#general-parameters</a>)
. For example, with <code>device="cuda",
tree_method="hist"</code>, XGBoost will run the
<code>hist</code> tree method on GPU. (<a
href="https://redirect.github.com/dmlc/xgboost/issues/9363">#9363</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8528">#8528</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8604">#8604</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9354">#9354</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9274">#9274</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9243">#9243</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8896">#8896</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9129">#9129</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9362">#9362</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9402">#9402</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9385">#9385</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9398">#9398</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9390">#9390</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9386">#9386</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9412">#9412</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9507">#9507</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9536">#9536</a>).
The old behavior of <code>gpu_hist</code> is preserved but deprecated.
In addition, the <code>predictor</code> parameter is removed.</p>
<h3><code>hist</code> is now the default tree method</h3>
<p>Starting from 2.0, the <code>hist</code> tree method will be the
default. In previous versions, XGBoost chooses <code>approx</code> or
<code>exact</code> depending on the input data and training environment.
The new default can help XGBoost train models more efficiently and
consistently. (<a
href="https://redirect.github.com/dmlc/xgboost/issues/9320">#9320</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9353">#9353</a>)</p>
<h3>GPU-based approx tree method</h3>
<p>There's initial support for using the <code>approx</code> tree method
on GPU. The performance of the <code>approx</code> is not yet well
optimized but is feature complete except for the JVM packages. It can be
accessed through the use of the parameter combination
<code>device="cuda", tree_method="approx"</code>.
(<a
href="https://redirect.github.com/dmlc/xgboost/issues/9414">#9414</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9399">#9399</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9478">#9478</a>).
Please note that the Scala-based Spark interface is not yet
supported.</p>
<h3>Optimize and bound the size of the histogram on CPU, to control
memory footprint</h3>
<p>XGBoost has a new parameter <code>max_cached_hist_node</code> for
users to limit the CPU cache size for histograms. It can help prevent
XGBoost from caching histograms too aggressively. Without the cache,
performance is likely to decrease. However, the size of the cache grows
exponentially with the depth of the tree. The limit can be crucial when
growing deep trees. In most cases, users need not configure this
parameter as it does not affect the model's accuracy. (<a
href="https://redirect.github.com/dmlc/xgboost/issues/9455">#9455</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9441">#9441</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9440">#9440</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9427">#9427</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9400">#9400</a>).</p>
<p>Along with the cache limit, XGBoost also reduces the memory usage of
the <code>hist</code> and <code>approx</code> tree method on distributed
systems by cutting the size of the cache by half. (<a
href="https://redirect.github.com/dmlc/xgboost/issues/9433">#9433</a>)</p>
<h3>Improved external memory support</h3>
<p>There is some exciting development around external memory support in
XGBoost. It's still an experimental feature, but the performance has
been significantly improved with the default <code>hist</code> tree
method. We replaced the old file IO logic with memory map. In addition
to performance, we have reduced CPU memory usage and added extensive
documentation. Beginning from 2.0.0, we encourage users to try it with
the <code>hist</code> tree method when the memory saving by
<code>QuantileDMatrix</code> is not sufficient. (<a
href="https://redirect.github.com/dmlc/xgboost/issues/9361">#9361</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9317">#9317</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9282">#9282</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9315">#9315</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8457">#8457</a>)</p>
<h3>Learning to rank</h3>
<p>We created a brand-new implementation for the learning-to-rank task.
With the latest version, XGBoost gained a set of new features for
ranking task including:</p>
<ul>
<li>A new parameter <code>lambdarank_pair_method</code> for choosing the
pair construction strategy.</li>
<li>A new parameter <code>lambdarank_num_pair_per_sample</code> for
controlling the number of samples for each group.</li>
<li>An experimental implementation of unbiased learning-to-rank, which
can be accessed using the <code>lambdarank_unbiased</code>
parameter.</li>
<li>Support for custom gain function with <code>NDCG</code> using the
<code>ndcg_exp_gain</code> parameter.</li>
<li>Deterministic GPU computation for all objectives and metrics.</li>
<li><code>NDCG</code> is now the default objective function.</li>
<li>Improved performance of metrics using caches.</li>
<li>Support scikit-learn utilities for <code>XGBRanker</code>.</li>
<li>Extensive documentation on how learning-to-rank works with
XGBoost.</li>
</ul>
<p>For more information, please see the <a
href="https://xgboost.readthedocs.io/en/latest/tutorials/learning_to_rank.html">tutorial</a>.
Related PRs: (<a
href="https://redirect.github.com/dmlc/xgboost/issues/8771">#8771</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8692">#8692</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8783">#8783</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8789">#8789</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8790">#8790</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8859">#8859</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8887">#8887</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8893">#8893</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8906">#8906</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8931">#8931</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9075">#9075</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9015">#9015</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9381">#9381</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9336">#9336</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8822">#8822</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/9222">#9222</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8984">#8984</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8785">#8785</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8786">#8786</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/8768">#8768</a>)</p>
<h3>Automatically estimated intercept</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/dmlc/xgboost/commit/62e7923619352c4079b24303b367134486b1c84f"><code>62e7923</code></a>
Bump version to 2.1.4 (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11208">#11208</a>)</li>
<li><a
href="https://github.com/dmlc/xgboost/commit/b8cfb5691a318e9f2914cf89454a8b37bd8ec9b5"><code>b8cfb56</code></a>
[backport] Compatibility fixes for scikit-learn 1.6 (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11021">#11021</a>,
<a
href="https://redirect.github.com/dmlc/xgboost/issues/11162">#11162</a>)
(<a
href="https://redirect.github.com/dmlc/xgboost/issues/11205">#11205</a>)</li>
<li><a
href="https://github.com/dmlc/xgboost/commit/30a7fd5484ae0e50d841d53cace49dccfc96d520"><code>30a7fd5</code></a>
[CI] Upgrade to CUDA 12.8 (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11202">#11202</a>)</li>
<li><a
href="https://github.com/dmlc/xgboost/commit/fc32798b651c0ef59a66eebe5e33feddb22e246f"><code>fc32798</code></a>
[CI] Various CI fixes (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11196">#11196</a>)</li>
<li><a
href="https://github.com/dmlc/xgboost/commit/a406528f8451597f5734d4678786f79ad12ebafb"><code>a406528</code></a>
[backport] Adapt to rmm 25.02 logger changes (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11153">#11153</a>)
(<a
href="https://redirect.github.com/dmlc/xgboost/issues/11190">#11190</a>)</li>
<li><a
href="https://github.com/dmlc/xgboost/commit/3b193321dd417cda8757a613e0b08e5d8d0b7759"><code>3b19332</code></a>
[backport] When building with CUDA 12.8+ enable blackwell support (<a
href="https://redirect.github.com/dmlc/xgboost/issues/11187">#11187</a>)
(#...</li>
<li>See full diff in <a
href="https://github.com/dmlc/xgboost/compare/v2.1.3...v2.1.4">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>1 file changed
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| |||
0 commit comments