Skip to content

paraschakis/flowrec

Repository files navigation

  • Implemented on top of Scikit-Multiflow.
  • Uses prequential evaluation for online learning.
  • Contains baseline recommendation algorithms.

Installation

  1. Install Anaconda distribution with Python >= 3.5.
  2. Install Scikit-Multiflow.
  3. Clone FlowRec repository.

Example

from skmultiflow.data import FileStream
from evaluation.evaluate_prequential import EvaluatePrequential
from recommendation.popular import PopularClassifier

# Create stream
stream = FileStream("your-dataset.csv")
stream.prepare_for_use()

# Instantiate recommender
popular = PopularClassifier(sliding_window=True)

# Configure evaluator
evaluator = EvaluatePrequential(session_column_index=0,
                                rec_size=10,
                                pretrain_size=0,
                                n_wait=200,      # evaluation window
                                n_keep=20000,    # observation window
                                max_samples=100000,
                                metrics=['recall', 'mrr', 'running_time'])

# Run evaluation
evaluator.evaluate(stream=stream, model=[popular], model_names=['POP'])

More examples will be provided in FlowRec's documentation

Update: please note that FlowRec hasn't been actively maintained since its publication.

About

FlowRec is a prototyping framework for streaming session-based recommendations, developed on top of Scikit-Multiflow.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages