Для рекомендательных систем их хватает, но там это не первостепенная функция.
Проще и эффективнее сделать классификацию на каждый из продуктов. Продуктов все равно не больше 50. Рекомендовать топ 5 из 50 - не нужен ML. В универе мой препод, глава аналитики Сантандер Банка, говорила, что у них рекомендашка практически никогда не используется. Тупо 50 классификаций: купит пользователь этот продукт или нет.