ml32m-mf128-v1
This repository contains an explicit-feedback matrix factorization recommender model trained on MovieLens ml-32m ratings.
Model Details
- Model type: explicit matrix factorization
- Factors: 128
- Users: 200,948
- Movies after filtering: 43,884
- Minimum movie ratings filter: 5
- Best validation RMSE: 0.8020473945880309
- Saved at UTC: 2026-07-02T15:18:10.162757+00:00
Repository Files
mf_model.pt: PyTorch model artifact.user_ids.npy: MovieLens user id mapping aligned to model user indices.movie_ids.npy: MovieLens movie id mapping aligned to model movie indices.meta.json: Training and artifact metadata.
Training Configuration
- Learning rate, factors: 0.005
- Learning rate, bias: 0.0005
- Factor regularization: 0.02
- Batch size: 16,384
- Max epochs: 20
- Early stopping patience: 3
Evaluation
Evaluation metrics were taken from train/ml-32m-train.ipynb.
Rating Prediction
Predictions were clamped to the MovieLens rating range [0.5, 5.0] before computing errors.
| Split | RMSE | MAE |
|---|---|---|
| Validation | 0.8020 | 0.5998 |
| Test | 0.8244 | 0.6159 |
Top-N Ranking
Protocol:
- Held-out relevance: test-set ratings
>= 4.0. - Seen-item filtering: movies present in each user's training history were excluded from the ranked list.
- Ranking sample: 10,000 users sampled with seed
0from 187,278 users with at least one relevant test item. - Cutoff:
K=10.
| Model | Recall@10 | NDCG@10 | Users |
|---|---|---|---|
| Explicit MF | 0.0005 | 0.0005 | 10,000 |
| Popularity baseline | 0.0489 | 0.0430 | 10,000 |
The explicit MF model is useful for rating prediction but is not competitive as a top-N candidate generator under this protocol.
Dataset
The model was trained using MovieLens ml-32m, a GroupLens dataset containing 32,000,204 ratings and 2,000,072 tag applications across 87,585 movies from 200,948 users. The original dataset was generated on October 13, 2023 and contains user activity from January 09, 1995 through October 12, 2023.
MovieLens users are anonymized and no demographic information is included. Ratings use a 0.5 to 5.0 star scale. This model artifact includes model weights and id mappings, not the raw MovieLens CSV files.
Dataset Source
The raw MovieLens ml-32m dataset is not included in this repository. Download and review the dataset from the official GroupLens sources:
- Official MovieLens 32M page: https://grouplens.org/datasets/movielens/32m/
- MovieLens datasets page: https://grouplens.org/datasets/movielens/
- Dataset README and usage license: https://files.grouplens.org/datasets/movielens/ml-32m-README.html
Basic Loading Example
import json
import numpy as np
import torch
with open("meta.json", "r", encoding="utf-8") as f:
meta = json.load(f)
user_ids = np.load(meta["mappings"]["user_ids"])
movie_ids = np.load(meta["mappings"]["movie_ids"])
model = torch.load(meta["path"], map_location="cpu")
The exact scoring code depends on the model class used during training. Use movie_ids.npy and user_ids.npy to translate between MovieLens ids and model matrix indices.
Intended Use
This artifact is intended for research and experimentation with recommender systems, rating prediction, and collaborative filtering workflows based on MovieLens ml-32m.
Limitations
- The model inherits biases, sparsity, temporal coverage, and quality limitations from MovieLens ml-32m.
- MovieLens data is anonymized but still represents historical user interaction behavior.
- The model should not be presented as endorsed by the University of Minnesota or GroupLens.
- Commercial or revenue-bearing use is restricted by the MovieLens data terms below.
License and Data Terms
This model is derived from MovieLens ml-32m and is distributed under the same MovieLens dataset conditions. Key conditions from the MovieLens usage license:
- Do not state or imply endorsement from the University of Minnesota or the GroupLens Research Group.
- Acknowledge use of the dataset in publications.
- Redistribute the dataset or transformations only under the same license conditions.
- Do not use this information for commercial or revenue-bearing purposes without first obtaining permission from a faculty member of the GroupLens Research Project at the University of Minnesota.
- The dataset and executable scripts are provided as-is, without warranty.
For questions about MovieLens data terms, contact grouplens-info@umn.edu.
Citation
If you use this model or the underlying MovieLens ml-32m dataset in a publication, cite:
Paper DOI: https://doi.org/10.1145/2827872
@article{harper2015movielens,
title = {The MovieLens Datasets: History and Context},
author = {Harper, F. Maxwell and Konstan, Joseph A.},
journal = {ACM Transactions on Interactive Intelligent Systems},
volume = {5},
number = {4},
pages = {19:1--19:19},
year = {2015},
doi = {10.1145/2827872}
}
Collection including mskayacioglu/ml32m-mf128-v1
Evaluation results
- Validation RMSE on MovieLens ml-32mself-reported0.802
- Validation MAE on MovieLens ml-32mself-reported0.600
- Test RMSE on MovieLens ml-32mself-reported0.824
- Test MAE on MovieLens ml-32mself-reported0.616
- Recall@10 on MovieLens ml-32mself-reported0.000
- NDCG@10 on MovieLens ml-32mself-reported0.000