Skip to content

v0.1.0: Add generated output files to .gitignore

Choose a tag to compare

@jiro-iwanaga jiro-iwanaga released this 05 Jun 14:37
· 212 commits to main since this release

rfscorer v0.1.0 — Initial Release

Initial release of rfscorer, a Python package for Recency-Frequency based recommendation scoring.

Features

  • fit() — Estimates empirical revisit probabilities from interaction history by observation and evaluation periods
  • optimize() — Smooths probabilities under RF monotonicity
    • kind='mono' — Monotonicity constraints (recency decreasing, frequency increasing)
    • kind='mcc' — Adds convexity in recency and concavity in frequency
  • transform() — Scores each user–item pair with recency, frequency, probability, and recommendation rank
  • evaluate() — Reports precision, recall, and F1 at each recommendation rank cutoff
  • plot_probability_surface() — 3D wireframe visualization of the probability surface
  • export_probability_csv() — Exports probability tables to CSV

Installation

pip install rfscorer

Example

See examples/basic_usage.ipynb for an end-to-end walkthrough.

References

Jiro Iwanaga, Naoki Nishimura, Noriyoshi Sukegawa, and Yuichi Takano, "Estimating product-choice probabilities from recency and frequency of page views," Knowledge-Based Systems, Volume 99, 2016, Pages 157–167.