github VowpalWabbit/vowpal_wabbit 9.7.0

latest releases: 9.10.0, 9.9.0, wasm_v0.0.7...
19 months ago

Eigen Memory Tree

An Eigen Memory Tree (EMT) is a memory based learning reduction. EMTs will remember previous training examples and use this memory to assign labels to future requested predictions. For more information, see the EMT wiki page

Robust confidence sequence estimator

#4297

Cubic config oracle in automl

We are now able to search over cubic interactions on top of quadratic interactions in automl . Automl

Vector CPU instructions

Vector CPU instructions for faster computation in the CB with Large Action Space reduction. LAS

Predict only models

Ability to save predict only models from some reductions (automl, epsilon-decay).  this removes the reductions from the reduction stack and allows older versions of VW to predict.

Enforce minimum probability for SquareCB

[SquareCB] (https://github.com/VowpalWabbit/vowpal_wabbit/wiki/Contextual-Bandit-Exploration-with-SquareCB)

Support for probabilities for PLT

Added support for probabilities output for the PLT reduction + fix it in version 9+.

Target rate added to explore eval

The goal of explore eval is to evaluate different exploration algorithms using the data from a logged policy. Explore Eval

VW refactors

  • Improved finish_example in all reductions
  • Parsers for different formats moved into their own libraries
  • Namespacing of library fixed - all things under VW
Click here to see all changes in this release

What's Changed

Features

  • feat: explore eval example target rate by @olgavrou in #4277
  • feat: [gd] invert_hash readeable model with hexfloat by @lalo in #3999
  • feat: explore eval target rate by @olgavrou in #4285
  • feat: Add explicit simd implementation for one pass svd in large action spaces. by @zwd-ms in #4261
  • feat: Add avx2 implementation for one pass svd in large action spaces. by @zwd-ms in #4281
  • feat: Handle ignore_linear in las simd and throw on unsupported interactions. by @zwd-ms in #4282
  • feat: spin off automl predict_only_model to standard cb model by @bassmang in #4279
  • feat: add mix with uniform impl by @jackgerrits in #4301
  • feat: Enforce minimum probability for squarecb and update impl by @jackgerrits in #4298
  • feat: add unique_ptr support to model_utils by @jackgerrits in #4341
  • feat: use strong type for no pred by @jackgerrits in #4343
  • feat: use strong type for no label by @jackgerrits in #4342
  • feat: Adding EMT reduction. by @mrucker in #4264
  • feat: [automl] trace to csv files by @lalo in #4355
  • feat: robust confidence sequence estimator by @bassmang in #4297
  • feat: [automl] config oracle cubic on top of quadratic by @lalo in #4351
  • feat: update for probabilistic label tree reduction (#2766) - support for --probabilities option and fixed compatibility with VW 9+ version by @mwydmuch in #4138
  • feat: constexpr uniform_hash and type fixes by @jackgerrits in #4415
  • feat: Enable learner type checks at build. by @zwd-ms in #4411
  • feat: stabilize unique_ptr based initialize function by @jackgerrits in #4438
  • feat: Added new CCB predict benchmark by @rajan-chari in #4421
  • feat: [CB_GF] CB with graph feedback text input by @olgavrou in #4392
  • feat: [epsilon_decay] predict_only_model by @bassmang in #4458

Fixes

  • fix!: resolve csoaa_ldf prediction return correctness by @jackgerrits in #4395
  • fix!: [LAS] las + squarecb to re-use squarecb gamma by @olgavrou in #4479
  • fix!: [py] use full word for namespace and add test by @lalo in #4485
  • fix: [Explore_eval] fix threshold for adaptive multiplier by @marco-rossi29 in #4168
  • fix: Add pragma once to merge.h by @byronxu99 in #4284
  • fix: [epsilon_decay] process models in descending order when shifting by @bassmang in #4286
  • fix: [CI] check for missing args consistently in forwards/backwards compat by @olgavrou in #4289
  • fix: [CI] backwards compat don't fail if model file is missing by @olgavrou in #4291
  • fix: silence unused warning when las simd not enabled by @jackgerrits in #4299
  • fix: Build las simd on x86 only and rename command line flag. by @zwd-ms in #4300
  • fix: [automl] update champ score when it matches labelled_action by @lalo in #4326
  • fix: fix get_features function returning dangling pointer by @jackgerrits in #4328
  • fix: [automl] config oracle edge cases by @lalo in #4327
  • fix: remove type numpy aliases as they are now removed upstream by @jackgerrits in #4363
  • fix: fix loop binding to temporary by @jackgerrits in #4379
  • fix: [automl] update print logic for new oracle by @lalo in #4384
  • fix: exception safety in learner builder by @jackgerrits in #4429
  • fix: remove cerr from cs_robust by @bassmang in #4441
  • fix: [automl/epsilon_decay] brentq optimization by @bassmang in #4449
  • fix: pydocs formatting by @bassmang in #4464
  • fix: invert_hash for coin/ftrl by @bassmang in #4465
  • fix: Account for | in make_valid_name() by @darwinyip in #4468
  • fix: [LAS] LAS not a cb adf common reduction, fixes metrics with LAS bug by @olgavrou in #4476
  • fix: [automl] allow multiple models underneath automl by @bassmang in #4463
  • fix: include t, min and max label in model merging by @jackgerrits in #4483

Other Changes

New Contributors

Full Changelog: 9.6.0...9.7.0

Don't miss a new vowpal_wabbit release

NewReleases is sending notifications on new releases.