Comments (9)
Ok I've tidied up and done an example of using NSMlib and Annoy for item and member recommendations. I also did a speed / scaling chart. I haven't worked out how to do a bulk predict yet in order to calculate avg. P@K, but there is a qualitative example.
from lightfm.
Ouch, you closed it after having me in the dark for 5 months... a small comment, please!!
from lightfm.
Sorry! I agree that many applications will have an ANN model to accompany this. However, this is probably best accomplished with an external package.
As to guidance: you're probably right, we could add an example ipython notebook that shows how to do this. Would you like to have a stab at a first draft?
from lightfm.
I did a rough example using annoy for item-to-item filtering and an example of maximum inner product search with ball tree. If the approach is sound I could tidy this up for an example?
from lightfm.
Sure, I'd love an example! One thing that might be useful as well is some discussion on the pros and cons of using something like Annoy or NMSlib.
from lightfm.
Great, thanks! Would be great to include this in the examples and integrate in the documentation. Would you mind submitting a PR and we can go from there?
It might even be worth having a lightfm.contrib.ann
module and actually build these functions in. I have historically been wary of including heavy(ish) external dependencies, but if we keep them optional it should be fine.
from lightfm.
believe it or not, using numpy's matrix multiplication is fast enough for most of the application. with a 256 vector, search from 1 M doc only cost 100ms.
from lightfm.
Right now I am trying to use annoy using item embedding and I am confused about how apply my filters on the result and also how to incorporate user embedding while giving recommendations ??? @lesterlitch @maciejkula
from lightfm.
Iām closing this issue because it has been inactive for a long time. If you still encounter the problem, please open a new issue.
Thank you!
from lightfm.
Related Issues (20)
- Cannot get MovieLens labels' correctly HOT 2
- do I need to pass user and item matrixes to predict method for known users and items in fit step
- losses except the logistic kills the kernel HOT 3
- Light FM throwing an installation error: AttributeError: 'dict' object has no attribute '__LIGHTFM_SETUP__' HOT 3
- Recommendation for users the new items in the dataset HOT 1
- Features importance in lightFM
- Lightfm 1.17 - kernel dies in Jupyter, Spyder when fitting HOT 3
- How to reproduce the evaluation score in the paper.
- Recommender System with RFM ratings to put into Interaction matrix HOT 9
- Feature Request: Support for Freezing Item Embeddings while Updating User Embeddings During Training
- Incorporating item and user biases in LightFM embeddings for accurate recommendations in Vespa HOT 1
- Item and User Normalization
- Is there a way to save Dataset()? HOT 1
- How to get clusters of users from trained lightfm model on implicit rating model?
- Evaluate AUC on a subset of items
- Auc evalutation return always nan
- Can't install on Python 3.10.6 in Ubuntu HOT 1
- Implementing Incremental Training and Feedback loop using Lightfm
- LightFM kills Jupyter Kernel when fitting model
- Does calculating precision@k for one user makes sense? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
š Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ššš
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ā¤ļø Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lightfm.