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).
1.1020161125
Added - added recallk 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).
1.920160525
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 - By default, an OpenMP-less version will be built on OSX. This allows much easier installation at the expense of performance. - The default value of the max_sampled argument is now 10. This represents a decent default value that allows fast training.
1.820160114
Changed - fix scipy missing from requirements in setup.py - remove dependency on glibc by including a translation of the musl rand_r implementation
1.720151014
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.
1.620150929
Changed - when installing into an Anaconda distribution, drop -march=native compiler flag due to assembler issues. - when installing on OSX, search macports and homebrew install location for gcc version 5.x