Skip to content

Releases: google/yggdrasil-decision-forests

v1.9.0

12 Mar 16:15
Compare
Choose a tag to compare

1.9.0 - 2024-03-12

Feature

  • Add "parallel_trials" parameter in the hyper-parameter tuner to control the number of trials to run in parallel.
  • Add support for custom losses.

v1.9.0rc0

06 Mar 09:01
Compare
Choose a tag to compare
v1.9.0rc0 Pre-release
Pre-release

1.9.0rc0 - 2024-02-26

Feature

  • Add "parallel_trials" parameter in the hyper-parameter tuner to control the number of trials to run in parallel.
  • Add support for custom losses.

PYDF 0.1.0

26 Jan 11:42
Compare
Choose a tag to compare

0.1.0 - 2024-01-25

Features

  • Added model validation evaluation (for GBTs) and OOB evaluation (for RFs).
  • Expose winner-takes-all for Random Forests.
  • Added model self evaluation.
  • Added ydf.from_tensorflow_decision_forests() for importing TF-DF models.
  • Allow feeding datasets as sequence of strings.

Fixes

  • Fixes a plotting issue for GBTs without validation loss

Release music

Flötenuhren von 1772 und 1793 - Vivace (Hob XIX:13). Joseph Haydn

v1.8.0

19 Jan 09:32
Compare
Choose a tag to compare

1.8.0 - 2023-11-17

Feature

  • Support for GBT distances.
  • Remove old snapshots automatically for GBT training.

Fix

  • Regression with Mean Squared Error loss and Mean Average error loss
    incorrectly clamped the gradients, leading to incorrect predictions.
  • Change dependency from boost to boost_math for faster builds.

Note

The commit associated with this release has a typo in its description.

1.7.0 - 2023-10-20

Feature

  • Add support for Mean average error (MAE) loss for GBT.
  • Add pairwise distance between examples.
  • By default, only keep the last three snapshots when training with a working
    cache to be resilient to training interruptions.

New interface

  • Check out the new Python interface in port/python! It's still experimental
    but you can already install it from PyPi with pip install ydf.

v1.6.0

28 Sep 14:20
Compare
Choose a tag to compare

Breaking changes

  • The dependency to the distributed gradient boosted trees learner is renamed
    from
    //third_party/yggdrasil_decision_forests/learner/distributed_gradient_boosted_trees
    to
    //third_party/yggdrasil_decision_forests/learner/distributed_gradient_boosted_trees:dgbt.
    Note most case, importing the learners with
    //third_party/yggdrasil_decision_forests/learner:all_learners is
    recommended.
  • The training configuration must contain a label. A missing label is no
    longer interpreted as the label being the input feature "".

Feature

  • Add support for monotonic constraints for gradient boosted trees.
  • Improve speed of dataset reading and writing.

Fix

  • Proper error message when using distributed training on more than 2^31
    (i.e., ~2B) examples while compiling YDF with 32-bits example index.
  • Fix Window compilation with Visual Studio 2019
  • Improved error messages for invalid training configuration
  • Replaced outdated dependencies

1.5.0

04 Jul 11:12
Compare
Choose a tag to compare

Feature

  • Rename experimental_analyze_model_and_dataset to analyze_model_and_dataset
  • Add new GBT loss function POISSON for Poisson log likelihood.
  • Go API: Categorical string values available for inspection.
  • Improved training speed for unit-weight datasets.
  • Support for MHLD oblique decision trees.
  • Multi-threaded RMSE computation.
  • Added Uint8 inference engine.
  • Added Multi-task learning where the output of models trained as "secondary"
    are used as input for the models trained as "primary"

Fix

  • Go API: fixed typo on OutOfVocabulary constant.
  • Error messages for Uplift models.
  • Remove owner leakage in the model compiler.
  • Fix buggy restriction for SelGB sampling
  • Improve documentation.

1.4.0

20 Mar 12:02
Compare
Choose a tag to compare

Features

  • Speed-up the computation of PDP and CEP in the model analysis tool.
  • Add compilation of model into .h file.
  • [JS port] Add "prefix" argument to model loading method.
  • Rename logging function from LOG to YDF_LOG to limit risk of collision with
    TF or Absl.

Fix

  • [JS port] Fix memory leak. Release emscripten objects.

1.3.0

25 Jan 08:29
Compare
Choose a tag to compare

1.3.0

Features

  • Setting the generic hyper-parameter "subsample" is enough enable random
    subsampling (to need to also set "sampling_method=RANDOM").
  • Improve the display of decision tree structures.
  • The Hyper-parameter optimizer field "predefined_search_space" automatically
    configures the set of hyper-parameters to explore during automatic
    hyper-parameter tuning.
  • Replaces the MEAN_MIN_DEPTH variable importance with INV_MEAN_MIN_DEPTH.

1.2.0

18 Nov 19:06
Compare
Choose a tag to compare

1.2.0 - 2022-11-18

Features

  • YDF can load TF-DF models directly (i.e. a TF model with a YDF model in the
    "assets" sub directory).
  • Expose confusion tables in a GBT model's analysis.
  • Add the "compute_variable_importances" tool to compute variable importances on
    an already trained model.
  • Add the "experimental_analyze_model_and_dataset" tool to understand/analyze models.

Yggdrasil Decision Forests 1.1.0

21 Oct 16:44
Compare
Choose a tag to compare

Features

  • Early stopping is no longer triggered during first iterations. The initial
    iteration for early stopping can be controlled with the new parameter
    early_stopping_initial_iteration in gradient_boosted_trees.proto.
  • Benchmark inference tool does not require for the dataset to contain the
    label column.
  • The user can specify the location of the wasm file in the JavaScript port.