Обобщенный взгляд на проблемы внедрения рекомендательных систем с отраслевой точки зрения.

В большинстве случаев проекты в области науки о данных останавливаются на достижении некоторой удовлетворительной точности на основе подмножества данных. То же самое и с рекомендательными системами. В контролируемой среде и с ограниченным набором данных можно получить очень впечатляющие результаты, но внедрение алгоритма в реальную жизнь требует гораздо большего.

В этом посте я обобщу свои интересные выводы о проблемах, с которыми Twitter сталкивается при работе со своими рекомендательными системами. Понимание проблем, с которыми сталкивается Twitter, может дать некоторым из нас свежий взгляд на масштабы проблемы рекомендаций и поможет нам принять правильные дизайнерские решения. Это также может помочь провести параллели между рекомендательными системами в разных отраслях. Также я кратко расскажу о подходах к рекомендательной системе, которые Twitter использует для своей платформы.

О проблемах и подходах рассказал Ашиш Бансал из Twitter во время саммита Deep Learning 2019 в Сан-Франциско.

Давайте начнем.

Введение:

Twitter, как мы все знаем, - это сайт микроблогов, на котором каждый день публикуются сотни миллионов твитов по всему миру. Если вы уже являетесь участником твиттера, вы бы видели такие аспекты, как «За кем следить» и «Тенденции для вас». Ядром этих функций является механизм рекомендаций.

Сравнение рекомендаций Твиттера с рекомендациями не Твиттера:

Рекомендуемые продукты Twitter:

Twitter рекомендует своим клиентам 3 основных рекомендательных продукта.

  1. Пользователи, которым нужно следовать. Общее количество рекомендаций, которые могут быть созданы для этого продукта, может достигать 1 миллиарда, и рекомендации могут быть действительны в течение нескольких месяцев или лет. Другими словами, рекомендации имеют больший срок хранения.
  2. Твиты: твиты, рекомендуемые пользователям в их ленте, могут быть порядка сотен миллионов со сроком хранения в несколько часов. Как мы все знаем, срок хранения информации сейчас составляет очень мало дней, поскольку новости меняются так быстро даже за один день.
  3. Тенденции / события. Тенденции содержат наименьшее количество рекомендаций, которые необходимо дать, потому что большинство пользователей могут быть участниками аналогичных тенденций, и их срок годности также короткий, поскольку они недолговечны.

Продукты, рекомендованные не в Твиттере:

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

Какие преимущества имеет более длительный срок хранения?

Для фильмов и электронной коммерции системы рекомендаций могут учиться медленнее и учиться медленно, так как есть достаточно времени для того, чтобы любая рекомендация стала совершенно неактуальной. Но в случае с Твиттером они полностью зависят от тенденций и того, чего хотят люди, и обязательно будут меняться каждый божий день. Поскольку скорость и объем данных в случае Twitter высоки, рекомендательные системы должны быть более надежными, чтобы давать рекомендации.

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

Проблемы с пользователем - пользователь и пользователь - рекомендации по элементам:

Пользователь-пользователь:

Поиск сходства на основе подписчиков пользователя и рекомендация всех твитов, сделанных конкретным человеком, подписавшемуся на него пользователю, может быть не очень надежным подходом. Например, вы можете подписаться на определенного человека в Твиттере, чтобы узнать его мнение о машинном обучении. Его / ее твиты о политике могут не представлять для вас интереса, и их следует избегать в вашей ленте.

Интересы пользователей:

Интересы пользователей все время меняются: у пользователей будут долгосрочные интересы, такие как предпочтения в отношении здоровья, и краткосрочные интересы, такие как тенденции / события и интересы, постоянно меняющиеся. Например, в течение ноября миллионы пользователей были заинтересованы в промежуточных выборах в США и хотели бы смотреть материалы, связанные с политикой. Но то же самое не будет верно для другого периода времени для одного и того же человека.

Географические интересы. Географические интересы пользователей всегда меняются в зависимости от событий в определенный момент времени. «Тенденции для вас» всегда должны идти в ногу с этим изменением геозависимых интересов пользователя.

Подходы:

Твиттер использует как систему совместной работы, так и систему рекомендаций по контенту, а иногда и гибрид обеих моделей в зависимости от типа рекомендаций, которые они дают. Я бы не стал обсуждать эти алгоритмы в этом посте, поскольку они четко объяснены во многих других постах и ​​сосредоточимся на их приложениях.

Совместная фильтрация:

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

Контентный подход:

Когда дело доходит до фильтрации на основе контента, в масштабе Twitter все становится немного сложнее.

  1. При ограничении в 280 символов у нас может быть максимум 46 слов на твит, учитывая в среднем 5 символов в английском слове. Это приводит к тому, что нужно обрабатывать много контента.
  2. Сообщение в Твиттере может иметь многоязычный текст, и слова из разных языков сложно вписать в контекст.

Сопоставление содержания с объектами:

Один из способов рекомендовать контент пользователю - использовать сущности в твите и рекомендовать контент, который больше подходит тем сущностям в твитах, которые нравятся пользователю. Но главная проблема - это выявление этих сущностей и работа с ними.

Распознавание именованных сущностей может использоваться для идентификации этих сущностей, но проблема заключается в идентификации нескольких сущностей / повторяющихся сущностей в одном твите. Например, конкретный человек может позвонить в раздел «Ссылка на чемпионат мира по футболу» разными способами, например, на чемпионат мира по футболу, чемпионат мира по футболу и FIFA 2018. Все эти сущности должны быть идентифицированы, а общее мнение, стоящее за этими твитами, должно быть извлечено, чтобы рекомендовать контент для этого Пользователь. В противном случае будут противоречивые рекомендации из-за нескольких сущностей в твите.

Рассмотрение тем, а не сущностей - это новый подход, который Twitter исследует для решения проблемы нескольких сущностей в твите. Рассматривая темы, мы можем удалить точку дублирования сущностей и определить тему, которая интересует пользователя, и рекомендовать контент на основе этого.

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

Некоторые из ключевых аспектов при развертывании рекомендательной системы:

  1. Покрытие: с увеличением каталога товаров всегда важно обеспечить высокий охват при сохранении низкой задержки.
  2. Разнообразие: важно давать пользователям разнообразные рекомендации.
  3. Адаптивность: система рекомендаций должна быстро адаптироваться к быстро меняющемуся миру контента.
  4. Масштабируемость: его следует масштабировать для миллиардов пользователей с разными привычками и предпочтениями.
  5. Пользовательские предпочтения: структура должна уметь обрабатывать различные интересы пользователей в рамках одной системы ранжирования.

Это все, ребята. Надеюсь, вам понравилось читать статью и вы получили свежий взгляд на разработку рекомендательных систем. Следите за обновлениями, чтобы узнать больше о рекомендательных системах, статистике в области науки о данных и визуализации данных.