Evaluation#
- libreco.evaluation.evaluate(model, data, neg_sampling, eval_batch_size=8192, metrics=None, k=10, sample_user_num=None, seed=42)[source]#
Evaluate the model on specific data and metrics.
- Parameters:
model (Base) – Model for evaluation.
data (
pandas.DataFrame
orTransformedEvalSet
) – Data to evaluate.neg_sampling (bool) – Whether to perform negative sampling for evaluating data.
eval_batch_size (int, default: 8192) – Batch size used in evaluation.
metrics (list or None, default: None) – List of metrics for evaluating.
k (int, default: 10) – Parameter of metrics, e.g. recall at k, ndcg at k
sample_user_num (int or None, default: None) – Number of users used in evaluating. By default, it will use all the users in eval_data. Setting it to a positive number will sample users randomly from eval data.
seed (int, default: 42) – Random seed.
- Returns:
eval_results – Evaluation results for the model and data.
- Return type:
dict of {str : float}
Examples
>>> eval_result = evaluate(model, data, neg_sampling=True, metrics=["roc_auc", "precision", "recall"])