T-Bank releases scikit-rank for neural recommendation ranking
T-Bank has released scikit-rank, an open-source library designed to bring neural ranking models into existing recommendation pipelines through a scikit-learn-compatible interface. It targets engineers and researchers who want to test neural rankers without rebuilding data preparation, training and inference code around each experiment.
The library exposes familiar fit and predict methods and includes DCNClassifier, DCNRegressor and DCNRanker implementations. It accepts NumPy, pandas and Polars inputs. Ranking tasks additionally require groups, such as impression identifiers, that define which candidates the model should learn to order against one another.
Supported architectures include DCN v2, FinalNet, FinalMLP, Destine and TabM. They can be paired with ranking losses including BPR, LambdaRank, ListMLE and CORAL. T-Bank presents architectures and loss functions as interchangeable components, allowing configurations beyond those used in the models’ original research papers.
Scikit-rank also incorporates feature processing into its model methods. It can fill missing values with zero or the median, apply standard or quantile normalization, encode numerical features with Piecewise Linear Encoding and learn embeddings for categorical values. A multi-hash representation is available for high-cardinality fields such as user and item identifiers.
Training runs on PyTorch and supports either CPUs or CUDA GPUs. Through Hugging Face Accelerate, the library provides mixed-precision execution, gradient accumulation and distributed training across multiple GPUs. It also handles moving models and batches to the selected device during training and prediction.
T-Bank says its DCN implementation matched the quality of FuxiCTR’s version on the public BARS benchmark and could outperform it on MIND-small when feature processing and losses were adjusted. The company also reports offline metric gains of 3–7% across three internal tasks and business-metric gains of 4–7% in one online test against gradient boosting. The announcement does not provide a detailed table or statistical-significance data for those internal results, so they remain vendor-reported findings.
Practical context: The practical contribution is the lower engineering cost of running a neural-ranking experiment rather than a newly introduced architecture. Teams can retain a familiar fit-and-predict workflow while the library hides preprocessing and the PyTorch training loop. That reduces integration work but does not guarantee better results: T-Bank says an earlier DCN v2 test lost to its production model, while a second test produced a neutral outcome.
| Area | Support | Practical purpose |
|---|---|---|
| Models | DCN v2, FinalNet, FinalMLP, Destine, TabM | Classification, regression and ranking |
| Input data | NumPy, pandas, Polars | Integration with existing tabular-data pipelines |
| Loss functions | BPR, LambdaRank, ListMLE, CORAL and others | Combining architectures with training objectives |
| Compute | CPU, CUDA GPU, multiple GPUs through Accelerate | Training and prediction |
Sources
Event date: 2026-09-30. Primary source date: 2026-09-30.