oxicuda-recsys
Recommender-system primitives for OxiCUDA — ALS/BPR/NMF, NCF, Two-Tower, DeepFM/AutoInt, SASRec/BERT4Rec, LightGCN/NGCF, MMoE/PLE/ESMM, negative sampling, ranking metrics.
Part of the OxiCUDA ecosystem — Pure Rust CUDA replacement.
Features
- Collaborative filtering: ALS (Alternating Least Squares), BPR (Bayesian Personalized Ranking), NMF for matrix factorization
- Deep models: NCF (Neural Collaborative Filtering), Two-Tower, DeepFM, Wide & Deep architectures
- Sequential models: SASRec self-attentive recommendation
- Graph-based: LightGCN neighborhood propagation over user-item interaction graphs
- Ranking metrics: NDCG@K and Precision@K evaluation; uniform negative sampling
- PTX kernels: GPU kernel strings for ALS step, BPR gradient, embedding lookup, dot scoring, softmax top-K, negative sampling, and LightGCN propagation (7 kernels × 6 SM versions)
Usage
use ;
use HashSet;
let mut rng = new;
let mut model = new.unwrap;
let interactions = vec!;
model.fit.unwrap;
let score = model.score.unwrap;
println!;
let recommended: = vec!;
let relevant: = vec!.into_iter.collect;
let ndcg = ndcg_at_k;
println!;
Documentation
License
Apache-2.0 — Copyright 2026 COOLJAPAN OU (Team Kitasan)