0.14.0 - 2022-10-26
- Introducing the
bandit
module for running multi-armed bandits
- Introducing the
sketch
module with summarization tools and data sketches working in a streaming fashion!
bandit
- Added
bandit.EpsilonGreedy
.
- Added
bandit.UCB
.
- Added
bandit.ThomsonSampling
.
- Added a
bandit.base
module.
- Added
bandit.envs.CandyCaneContest
, which implements the Gym interface.
- Added
bandit.envs.KArmedTestbed
, which implements the Gym interface.
- Added
bandit.evaluate
for basic benchmarking of bandit policies on a Gym environment.
drift
- Exposed more parameters in ADWIN:
clock
, max_buckets
, min_window_length
, and grace_period
.
model_selection
- Added
model_selection.BanditRegressor
, which is a generic model selection method that works with any bandit policy.
- Removed
model_selection.EpsilonGreedyRegressor
due to the addition of model_selection.BanditRegressor
.
- Removed
model_selection.UCBRegressor
due to the addition of model_selection.BanditRegressor
.
proba
- Added
proba.Beta
.
- Added a
sample
method to each distribution.
- Added a
mode
property to each distribution.
- Replaced the
pmf
and pdf
methods with a __call__
method.
sketch
- Moved
misc.Histogram
to sketch.Histogram
.
- Moved
stats.LossyCount
to sketch.HeavyHitters
and update its API to better match collections.Counter
.
- Added missing return
self
in HeavyHitters
.
- Added the Count-Min Sketch (
sketch.Counter
) algorithm for approximate element counting.
- Added an implementation of Bloom filter (
sketch.Set
) to provide approximate set-like operations.