Методы: матрица возможностей¶
Каждый метод — это ColdStartMethod: он объявляет requires, обучается на TransferInputs и
предсказывает long-format [user_id, item_id, score] для cold items.
Как читать матрицу¶
- Requires — точные input kinds, объявленные registered class.
- Model-agnostic значит, что методу нужны выгруженные scores/interactions/content, а не внутренности донора.
- Popularity pull отмечает методы, которые могут наследовать popularity warm-neighbor items, если benchmark не докажет обратное.
- Обозначения:
да ·
нет · popularity pull
low ·
medium ·
high ·
intended (у baseline by design) ·
none.
| Method | Requires | Family | Model-agnostic | Calibrates scale | Popularity pull | First try when... |
|---|---|---|---|---|---|---|
linmap |
content, donor_scores |
score-space mapping | есть donor scores и item content | |||
stacking_plus |
content, donor_scores, train_interactions, val |
supervised hybrid | есть val-cold fold | |||
stacking |
content, donor_scores, similarity, train_interactions, val |
supervised hybrid | нужен KNN signal плюс affinity/popularity features | |||
scale_shift |
content, donor_scores, similarity |
score-space mapping | нужен scale/shift diagnostic поверх KNN scores | |||
logreg_calib |
content, donor_scores, similarity, val |
supervised calibration | нужен supervised diagnostic с val-cold labels | |||
knn_score_avg |
content, donor_scores, similarity |
content neighbors | нужен самый простой neighbor-score baseline | |||
attention_knn |
content, donor_scores, similarity |
content neighbors | нужны softmax-weighted neighbors | |||
debiased_knn |
content, donor_scores, similarity |
content neighbors | тестируете popularity subtraction | |||
linmap_emb |
content, embeddings |
embedding mapping | donor отдаёт user/item embeddings | |||
magnitude_scaling |
content, embeddings |
embedding debiasing | cold embedding norms выглядят overconfident | |||
dropoutnet |
content, embeddings |
neural embedding mapping | можно использовать torch и donor embeddings |
|||
embedding_avg |
content, embeddings, similarity |
embedding neighbors | нужен простой embedding-neighbor baseline | |||
attention_emb |
content, embeddings, similarity |
embedding neighbors | нужен attention over neighbor embeddings | |||
grouped_most_popular_pers |
content, train_interactions |
baseline | нужен главный сильный baseline | |||
grouped_most_popular |
content, train_interactions |
baseline | нужна неперсонализированная grouped popularity | |||
most_popular |
train_interactions |
baseline | нужна global popularity | |||
random |
none | baseline | нужен sanity-check floor |
Рекомендуемый путь¶
- Начните с
grouped_most_popular_persиlinmap. - Добавьте
stacking_plus, если есть validation-cold fold. - Используйте KNN и embedding-neighbor methods как diagnostics для popularity inheritance.
- Используйте embedding methods только если donor отдаёт embeddings.
См. Семейства методов для концепций и главные результаты для benchmark table.
Важная поправка про calibration¶
Platt и isotonic calibration — монотонные преобразования. Они могут улучшить probability quality (logloss/Brier), но не меняют rank-based metrics и AUC. Если метод проигрывает по AUC, проблема в ranking, а не в score calibration.
Ссылки¶
- SimCSR — Han & Chun, "Addressing the Item Cold-Start Using Similar Warm Items", 2021
- DropoutNet — Volkovs et al., NeurIPS 2017
- MWUF — Zhu et al., SIGIR 2021, arXiv:2105.04790
- Gantner et al., "Learning Attribute-to-Feature Mappings", ICDM 2010
- On Inherited Popularity Bias in Cold-Start, RecSys 2025, arXiv:2510.11402