Sobes.tech
Middle — Senior
31

Что такое collaborative filtering и какие базовые алгоритмы (user-based, item-based)?

Компании, где спрашивали
GravityField
СовкомбанкСовкомбанк
PromtBox

Ответ от нейросети

sobes.tech AI

Collaborative filtering (коллаборативная фильтрация) — метод рекомендаций, основанный на анализе предпочтений пользователей и выявлении сходств между ними или между объектами.

Основные подходы:

  • User-based collaborative filtering: рекомендации формируются на основе похожих пользователей. Если пользователь A похож на пользователя B, то A получит рекомендации, которые понравились B.

  • Item-based collaborative filtering: рекомендации строятся на основе похожих объектов. Если пользователь оценил объект X, то ему предложат похожие объекты, которые понравились другим пользователям.

Пример:

# User-based пример (упрощённый)
# users_ratings = {user_id: {item_id: rating}}
users_ratings = {
    'Alice': {'Item1': 5, 'Item2': 3},
    'Bob': {'Item1': 4, 'Item3': 5},
    'Carol': {'Item2': 4, 'Item3': 4}
}

# Найти похожих пользователей по косинусной близости, затем рекомендовать объекты

Коллаборативная фильтрация эффективна, когда есть много данных о взаимодействиях пользователей с объектами, но может страдать от проблемы холодного старта (новые пользователи или объекты).