Releases: benfred/implicit
Releases · benfred/implicit
v0.7.2
v0.7.1
v0.7.0
Changes
🚀 Features
🐛 Bug Fixes
- Fix ALS loss calculation on GPU @benfred (#663)
- Fix for ALS calculate_loss on the cpu @benfred (#662)
🧰 Maintenance
- Build / publish sdist package to pypi as well @benfred (#665)
- Set cython directives globally @benfred (#666)
- Test h5py in GHA for python 3.11 @benfred (#664)
- Use the batch functionality in the movielens example @benfred (#659)
- update isort/pylint/black versions @benfred (#657)
- Remove import of numpy.distutils @benfred (#660)
v0.6.2
Changes
🚀 Features
🐛 Bug Fixes
- Fix more issues with pickling GPU models @benfred (#636)
- Fix pickling GPU models @benfred (#632)
- Fix ordering in .recommend for KNN models @benfred (#629)
📄 Documentation
- Update README / github actions versions @benfred (#635)
- Update evaluation.pyx @mrticker (#617)
- Fix CosineRecommender documentation @benfred (#619)
🧰 Maintenance
v0.6.1
Changes
🚀 Features
- Tweak callback API @benfred (#612)
- Allow GPU models to train on sparse matrices that exceed the size of available GPU memory @benfred (#605)
- Fit callback in BPR model @apat1n (#590)
🐛 Bug Fixes
- Handle more than 2**31 parameters on GPU models @benfred (#599)
- Fix
recalculate_item
/recalculate_user
on the GPU @benfred (#598)
📄 Documentation
- Minor documentation fixes @benfred (#609)
- docs: Fix a few typos @timgates42 (#596)
v0.6.0
Changes
🚀 Features
- Add an
alpha
parameter for the ALS models @benfred (#581) - Use num_threads for batch recommendations in MF models @benfred (#562)
- Add save/load functions for models @benfred (#552)
- Publish binary wheels to PyPi using cibuildwheel @benfred (#546)
🐛 Bug Fixes
- Fix default argument typo in benchmark_als.py @atakanfilgoz (#585)
- Fix save/load for models that haven't been fit @benfred (#577)
- Warn on non-csr input passed to model.fit @benfred (#578)
- Fix partial_fit_items bug with only growing by a single item @benfred (#563)
🏎💨 Performance Improvements
📄 Documentation
🧰 Maintenance
- Add release-drafter workflow for generating release notes @benfred (#579)
- Disable building GPU extension if IMPLICIT_DISABLE_CUDA env var is set @benfred (#561)
- Build binary wheels for apple silicon @benfred (#553)
- Use scikit-build>=0.13.1 @benfred (#549)
- Disable compute_86 compilation for cuda 11.0 @benfred (#536)
- Require cmake v3.17+ @benfred (#534)
v0.5.0
v0.5.0
Breaking API Changes
The API for implicit has substantially changed in v0.5.0 - and any code written for the previous
API will need to be rewritten:
- Change model.fit to take a user_items sparse matrix #484
- Return numpy arrays from recommend methods #482
- Don't require empty rows in user_items and item_users parameters #526
- Unify API for rank_items/recommend/recommend_all #489
Performance Improvements
- Speedup evaluation by using batch recommend functions #520
- Use FAISS for GPU inference #506
- Multithreaded speedups for CPU models #517
- Use thrust::binary_search to verify negative samples on GPU #524
- Release GIL on GPU calls #528
New Features
- Add incremental retraining support for ALS models #527
- Add filtering for similar_items and similar_users #488
- Add support for recalculate_users/items on the GPU #515
- Add methods for converting MF models to/from gpu #521
- Add a tutorial notebook for the lastfm example #529
- Approximate nearest neighbour for BPR/LMF and GPU models #487
- Dynamically detect CUDA availability #174