По итогам прочтения статьи «News recommender system: a review of recent progress, challenges, and opportunities» написал тут небольшие заметки о наиболее интересных, с моей точки зрения, моментах этого исследования.

Излишне говорить о важности систем рекомендации новостей, не буду пересказывать статистику о том, как вокруг нас растёт информационный поток, но надо отметить, что в дополнение к этому росту сейчас также довольно остро встаёт проблема fake news, что делает задачу персонализации новостной ленты еще более важной и требует применения подходом, когда анализируется не только meta-информация о контенте (что сейчас применяется в большинстве движков) но и сам контент, который становится все больше мультимодальными (представляет собой текст, аудио или изображение/видеоряд).

NRS (news recommendation system), так же как и рекомендательная система для любого другого контента имеет свои особенности, сложности и вызовы. Как отдельная доменная область, новости имеют следующие особенности:

  • Короткое время жизни контента (тут хочу отметить интересный подход, который применён в продукте BraveNews, там коллеги используют логарифмическую функцию от возраста новости при расчете ее релевантности);

  • Дубликация контента - на один новостной повод публикуются большое количество новостных сообщений;

  • Скорость информационного потока и реакции пользователей - строить новостную ленту и отражать в рекомендациях реакции пользователей надо достаточно быстро;

  • У пользователей могут быть 2 типа «предпочтений/интересов» - долгосрочные и краткосрочные, которые надо учитывать при персонализации;

  • Необходимость контроля качества новостей, из-за влияния clickbate заголовков на популярность новости и fake news;

  • Новостные тренды и «связанность» новостей в рамках развития одного новостного повода, когда пользователь хочет следить за развитием какой то ситуации с течением времени;

  • Важность для рекомендаций сопутствующего окружающего контекста (например в период Олимпийских игр даже те, что не интересуются спортом, могут быть заинтересованы в новостях об олимпийских играх);

  • Эмоции - эмоциональная окраска новостей очень сильно влияет на пользовательское поведение и должна учитываться при рекомендациях.

Кроме этого, оценка качества самих рекомендаций так же имеет свои особенности, тк простая оценка «точности» на основе одной метрики (например клик) не может говорить о качестве всей новостной ленты в целом, где надо учитывать и оптимизировать такие параметры, как:

  • Среднее время чтения ленты пользователем;

  • Разнообразие новостной ленты - хорошим подходом является не сужение фокуса пользователя и создания «информационного пузыря», а внесение разнообразия в ленту (часто для этого используют даже случайное подмешивание новостей вместе с рекомендованными);

  • Покрытие - насколько персональная новостная лента покрывает общий информационный фон;

  • Novelty (не знаю как на русский правильно перевести :) ) - насколько новости не повторяют прошлые новости и отличаются своей новизной в информационном, а не временном, плане;

  • Неожиданность - насколько новость может «удивить» пользователя;

  • Важность - оценка важности новости для пользователя.

Все эти аспекты формируют и влияют на пользовательский опыт и его качество. Оценка качества данного опыта - довольно субъективна и для ее измерения используют как прямые данные (сбор метрик по кликам, скролам и тд) так и косвенные (опоросы, использование асессоров и тд).

Комбинации всех этих характеристик, являющихся всегда компромиссом друг относительно друга, формирует ряд числовых оценочных метрик для качества новостной ленты.

Что касается алгоритмов, применяемых в NRS, то самыми распространёнными остаются алгоритмы колоборативной фильтрации и content-based filtering (CF и CBF), а так же их их сочетания. В большинстве своём данные алгоритмы работают на основе meta-информации о новостях. Тем не менее в работе отмечается их недостаточное качество применительно конкретно к новостным рекомендациям. В последнее время исследователи и разработчики все больше обращают внимание на «окружающий контекст» и алгоритмы глубокого обучения для улучшения качества рекомендаций.

К «новым» подходам в разработке NRS авторы относят использование следующих алгоритмов:

  • Matrix factorization и Non-negative matrix factorization

  • Tensor factorization

  • Probabilistic matrix factorization

  • Bayesian personalized ranking

  • General linear modeling

А так же их модификации на основе нейронных сетей с использование глубокого обучения, что особенно набирает популярность в последнии годы, а в случае, если идёт работа с оценкой контента новости (будь то текст, аудио или изображение), то использование CNN/RNN, а так же языковых моделей (типа BERT) становится просто жизненно необходимым.

Еще одним преимуществом использования NN является возможность обучаться в процессе взаимодействия пользователя с контентом. Так же модели, в основе которых находится deep learning, показывают хорошее качество при моделировании последовательного новостного контента и в случаях холодного старта, за счёт того, что они выявляют такие признаки в контенте, которые позволяют сформировать рекомендации даже в случае разряженных данных, на которых подходы на основе CF/CBF показывают плохой результат. Особенно выдающиеся результаты данные модели показывают с применением механизма внимания.

Все перечисленные выше особенности находят своё отражение не только в алгоритмах, которые «затачиваются» под задачи NRS, но в специализированных платформах для создания NRS, таких как CLEF NEWSREEL, streamingRec и MIND.

К основным сложностям создания NRS относят:

  • Требуемая скорость обработки данных и чувствительность к «свежести» новости

  • Оценка метрик «качества» новостной ленты

  • Оценка качества новостного контента (дедубликация, fake news и тд)

P.S.: опускаю в этих заметках части исследования, посвящённые проблематики информационного пузыря, анонимности пользователей и прочим моральным-этическим аспектам, являющихся в целом общими для рекомендаций любого типа контента.

Комментарии (0)