All Versions
13
Latest Version
Avg Release Cycle
158 days
Latest Release
331 days ago

Changelog History
Page 1

  • v1.16 Changes

    November 27, 2020

    โž• Addded

    • Set the LIGHTFM_NO_CFLAGS environment variable when building LightFM to prevent it from setting
      -ffast-math or -march=native compiler flags.

    ๐Ÿ”„ Changed

    • predict now returns float32 predictions.
  • v1.15 Changes

    May 26, 2018

    โž• Added

    • โž• Added a check that there is no overlap between test and train in predict_ranks (thanks to @artdgn).
    • โž• Added dataset builder functionality.

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fixed error message when item features have the wrong dimensions.
    • Predict now checks for overflow in inputs to predict.
    • WARP fitting is now numerically stable when there are very few items to
      draw negative samples from (< max_sampled).
  • v1.14 Changes

    November 18, 2017

    โž• Added

    • โž• added additional input checks for non-normal inputs (NaNs, infinites) for features
    • โž• added additional input checks for non-normal inputs (NaNs, infinites) for interactions
    • cross validation module with dataset splitting utilities

    ๐Ÿ”„ Changed

    • LightFM model now raises a ValueError (instead of assertion) when the number of supplied
      ๐Ÿ”‹ features exceeds the number of estimated feature embeddings.
    • Warn and delete downloaded file when Movielens download is corrputed. This happens in the wild
      cofuses users terribly.
  • v1.13 Changes

    May 20, 2017

    โž• Added

    • added get_{user/item}_representations functions to facilitate extracting the latent representations out of the model.

    ๐Ÿ›  Fixed

    • recall_at_k and precision_at_k now work correctly at k=1 (thanks to Zank Bennett).
    • ๐Ÿš€ Moved Movielens data to data release to prevent grouplens server flakiness from affecting users.
    • ๐Ÿ›  Fix segfault when trying to predict from a model that has not been fitted.
  • v1.12 Changes

    January 26, 2017

    ๐Ÿ”„ Changed

    • Ranks are now computed pessimistically: when two items are tied, the positive item is assumed to have higher rank. This will lead to zero precision scores for models that predict all zeros, for example.
    • The model will raise a ValueError if, during fitting, any of the parameters become non-finite (NaN or +/- infinity).
    • โž• Added mid-epoch regularization when a lot of regularization is used. This reduces the likelihood of numerical instability at high regularization rates.
  • v1.11 Changes

    December 26, 2016

    ๐Ÿ”„ Changed

    • negative samples in BPR are now drawn from the empirical distributions of positives. This improves accuracy slightly on the Movielens 100k dataset.

    ๐Ÿ›  Fixed

    • incorrect calculation of BPR loss (thanks to @TimonVS for reporting this).
  • v1.10 Changes

    November 25, 2016

    โž• Added

    • โž• added [email protected] evaluation function ### ๐Ÿ›  Fixed
    • โž• added >=0.17.0 scipy depdendency to setup.py
    • ๐Ÿ›  fixed segfaults on when duplicate entries are present in input COO matrices (thanks to Florian Wilhelm for the bug report).
  • v1.9 Changes

    May 25, 2016

    ๐Ÿ›  Fixed

    • ๐Ÿ›  fixed gradient accumulation in adagrad (the feature value is now correctly used when accumulating gradient). Thanks to Benjamin Wilson for the bug report.
    • all interaction values greater than 0.0 are now treated as positives for ranking losses. ### โž• Added
    • max_sampled hyperparameter for WARP losses. This allows trading off accuracy for WARP training time: a smaller value will mean less negative sampling and faster training when the model is near the optimum.
    • Added a sample_weight argument to fit and fit_partial functions. A high value will now increase the size of the SGD step taken for that interaction.
    • โž• Added an evaluation module for more efficient evaluation of learning-to-rank models.
    • โž• Added a random_state keyword argument to LightFM to allow repeatable model runs. ### ๐Ÿ”„ Changed
    • 0๏ธโƒฃ By default, an OpenMP-less version will be built on OSX. This allows much easier installation at the expense of ๐ŸŽ performance.
    • 0๏ธโƒฃ The default value of the max_sampled argument is now 10. This represents a decent default value that allows fast training.
  • v1.8 Changes

    January 14, 2016

    ๐Ÿ”„ Changed

    • ๐Ÿ›  fix scipy missing from requirements in setup.py
    • โœ‚ remove dependency on glibc by including a translation of the musl rand_r implementation
  • v1.7 Changes

    October 14, 2015

    ๐Ÿ”„ Changed

    • ๐Ÿ›  fixed bug where item momentum would be incorrectly used in adadelta training for user features (thanks to Jong Wook Kim @jongwook for the bug report).
    • ๐Ÿ‘‰ user and item features are now floats (instead of ints), allowing fractional feature weights to be used when fitting models.