Distributed pairwise factorization machine / LightFM.
Model fitted by GlintFMPair.
Model fitted by GlintFMPair.
For simplicity, this implementation uses the parameter servers for recommendation. Real use cases will require a different implementation which exports the linear weights and the latent factors, uses approaches like locality-sensitive hashing for recommendation in sublinear time and does not use parameter servers at recommendation time.
Collaborative filtering through user-based k-nearest neighbours.
Popularity ranking recommender.
Model fitted by PopRank.
UDF to resize a sparse vector to the same size as another sparse vector
Same-Artist Greatest Hits recommender.
Model fitted by SAGH.
Collaborative filtering through user-based k-nearest neighbours, using TF-IDF weighting for user similarity.
Model fitted by TfIdfKNN.
UDF to multiply a sparse vector by a weight and divide it by the number of values
Distributed pairwise factorization machine / LightFM.
Pairwise factorization machines are trained on implicit-feedback training instances to rank all items with observed user-item training instances above all other items for the user, using bayesian personalized ranking.
This is an implementation using Glint parameter servers with custom methods for network-efficient training. A Spark application with the parameter servers has to be started beforehand and the host of the parameter server master given as parameter to this implementation.