Skip to content

v0.2.0 Alpha Release

Compare
Choose a tag to compare
@fabioiuri fabioiuri released this 02 Sep 01:07
· 17 commits to master since this release

Improvements

  • Added list-sampler with negative_ratio support, sequence sorting and group records by multiple columns
  • Added support for early stopping rules, with the first built-in rule being the MaxValidationRule
  • Slightly improve MemoryInteractionDataset performance by removing unneeded type casts and simplifying record conversion
  • Improve recommender training workflow, by abstracting gradient computation, weight updates and improve separation of concerns through specific functions that should focus on each subtask (new methods: _sample_batch(), _predict_batch(), _compute_batch_loss(), _compute_reg_loss())
  • Improve recommender logging: optional console (defaults to on) and file (defaults to off) logger, with error, warning and info logs
  • Allow passing custom parameters to InteractionDataset instances, when instantiating them through the integrated datasets submodule
  • Automatically compute regularization for recommenders that use tf.keras.Model or tf.keras.Layer trainable variables with any regularization parameter set
  • Change how metrics are passed to evaluation procedures, to improve readability and extensibility. Now instead of receiving tuples with functions and extra params, it receives callable instances of those metrics:
    • From: metrics={'HR': (hit_ratio, {}), 'NDCG': (ndcg, {})}, 'FScore': (f_score, {'beta': 1})
    • To: metrics=[HitRatio(), NDCG(), FScore(beta=1)]

Bugfixes

  • Fix bug on integrated datasets get_test_dataset that could end up generating test datasets (via leave_k_out) instead of using the offered test dataset
  • Fix temporary DatabaseInteractionDataset files not being deleted at times

Others

  • Add error handling to the ranking evaluation process
  • Add examples to showcase extending existing recommenders