Как стать автором
Обновить

Комментарии 6

Лайфхак №1
Давайте использовать в матрице товарных предпочтений не только покупки, но и промежуточные действия: клик на карточку, добавление в корзину, оформление заказа.

Совет довольно очевидный. Обычно до этого люди доходят своим умом. Неочевидная часть, про которую интересно послушать — это как раз таки как конкретно сформировать эти самые «веса» для неявных реакций.

Лайфхак №8
Выберете метрику, которую понимаете, как она работает. Пусть простая RMSE, но надежный результат, чем nDCG@K(эта метрика подходит), и случайный результат.

Очень странный лайфхак. Правильный, на мой взгляд, вариант — изучить метрики и подбирать по ситуации ту метрику, которая хорошо бы коррелировала с бизнес-метриками (а в идеале была бы ещё и хорошо интерпретируемой).
RMSE — как раз в большинстве случаев неудачная метрика для рекомендаций / персонализации.
Вы правы, по Лайфхаку №1 можно использовать методы оптимизации для поиска весов, либо подобрать итеративно руками.

По Лайфхаку №8, глубокое понимание необходимо, и нужно выбирать наиболее подходящую метрику, RMSE далеко не всегда подходит, и нужно отталкиваться от кейса, полностью с вами согласен.
Насчёт «если вы не Google» — сейчас есть много библиотек, которые быстро считают всякие «метрики близости» для очень (ОЧЕНЬ!) больших матриц. Можно пробовать всякое интересное, что раньше нереально было из-за времени подсчёта.
«A/B тесты» — это отлично, только очень редко бывает возможность снять метрики в идеально похожих условиях, различающихся только одним параметром. Там это целая наука — как в реальных условиях, когда действует сразу много факторов, сделать и правильно интерпретировать A/B тесты.
Пример с Google был про нахождение близких товаров по изображению. И там существуют отдельные проблемы из-за разных текстур, форм и т.д… Как правило, каждый кейс имеет много особенностей, и их учет в работе с изображениями занимает больше времени, чем работа с матрицами, а результат работы с матрицей товарных предпочтений получается лучше. Вы правы, сейчас обработка больших матриц не проблема. К сожалению, не у каждого клиента есть достаточно данных для успешного применения нейросетей и т.д.
Изучал темы подбора похожих фильмов среди сайтов в РФ и США. На кинопоиске и в мобильных приложениях мне нужно оценить сначала огромное количество фильмов (коллаборативная фильтрация, как вы писали в первой статье),
было бы интересно у вас узнать принципы рекомендаций на основе анализа самих фильмов (были даже мысли дать нейросети просмотреть разные фильмы, фиксировать образы героев, автомобилей например и т.д.).
Пока я не встречал реализации, кроме как связывать фильмы по тегам и накапливать затем пользовательские данные. Приведу примеры от лучших к самым примитивным
tastedive.com — подбор фильмов, книг, сериалов на основе коллаборативной фильтрации (но при этом учитывают теги фильма)
movieslist.best — самый примитивный подбор по тегам с голосованием
store.steampowered.com — исключительно подбор по меткам (тегам)

Правильно ли я понимаю: необходимо либо располагать огромными ресурсами для анализа, либо огромной пользовательской базой? Я рассчитывал, что с развитием нейронных сетей в 2019 году с подбором дела обстоят гораздо лучше…
Дела с сетями действительно обстоят хорошо, но вычленение смысла из контента нетривиальная задача. Тут вопрос скорее трудозатрат и добавочного эффекта. Добавление каждого следующего процента качества стоит нелинейно дороже. И есть точка, где это становится нецелесообразно. Для научной статьи, такая работа подойдет, а во бизнес заказчик уже может не потянуть бюджет. Не в курсе, какой сейчас алгоритм у Нетфликс, но возможно, там что то подобное.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации