УДК 004.021, 004.048

Об особенностях разработки рекомендательной системы для пользователей мессенджера Telegram

Коврик К.А., Коломойцева И.А.

Коврик К. А., Коломойцева И. А. Об особенностях разработки рекомендательной системы для пользователей мессенджера Telegram. В статье представлен краткий обзор наиболее распространенных методов организации анализа данных в рекомендательных системах и проведен анализ целесообразности их применения при проектировании мобильной рекомендательной системы для мессенджера Telegram.

Ключевые слова: методы классификации информации, рекомендательная система, мессенджер, пользователь, Telegram, персонализированные рекомендации, фильтрация информации.

Введение

Современное интернет-пространство меняется и формируется ежедневно, появляются все больше новых ресурсов: медиа, развлечения, источники информации, «контента» и так далее. В связи с наличием огромного количества качественных источников информации в любом интересующем современного пользователя направлении, большое количество внимания их создателями уделяется привлечению новых пользователей и удержанию сформировавшейся аудитории. Достичь этого на современном этапе одним только улучшением качества основной составляющей ресурса удается редко. Именно поэтому все более перспективным направлением становится формирование портрета предпочтений конкретного пользователя для создания качественного рекомендационного пространства.

На данном этапе развития интернет технологий и технологий компьютерного анализа данных успех интернет-ресурса во много определяется наличием именно качественной системы рекомендаций. Рекомендательная система — это комплекс алгоритмов, программ и сервисов, задача которого предсказать, что может заинтересовать того или иного пользователя [1]. В основе работы таких систем лежит анализ информации о профиле пользователя, портрете его действий во время посещения ресурса, а также регулярно пополняемый комплекс статистических данных обо всех пользователях ресурса.

Современные рекомендательные системы зачастую требуют достаточно сложно организованных систем обработки и хранения данных, не являются «легковесными» и компенсируют свою сложность точностью рекомендаций и скоростью обработки информации. Однако, ни для кого не секрет, что с каждым днем количество всех запросов во всемирную сеть с мобильных устройств растет, что говорит о том, что актуальной проблемой является создание «мобильных» рекомендационных систем, которые не будут уступать современным в точности и скорости. Мобильные рекомендательные особенно сложная область исследований, поскольку мобильные данные сложнее данных, с которыми часто приходится иметь дело рекомендательным системам [2]. Проблема создания такой системы на основе анализа информационных ресурсов мобильного мессенджера Telegram и рассмотрена в данной статье.

Мессенджер Telegram и его особенности

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

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

Каналы в Telegram — это практически публичная страница в Facebook или «ВКонтакте», но с некоторыми особенностями (см. рис. 1). В отличие от социальной сети, каналы:

  1. каналы находятся в общем списке диалогов, а не выделены в отдельную ленту новостей;
  2. каналы «пушат» уведомлениями о новых записях (так же как и сообщения из личных чатов).

Рисунок 1 – Внешний вид информационной ленты канала в Telegram

Рисунок 1 – Внешний вид информационной ленты канала в Telegram


Одна из важных особенностей каналов, относящаяся к архитектуре мессенджера в целом, заключается в едином счетчике просмотров. Значок «глаза», который показан в записи, учитывает все просмотры в Telegram, где бы они ни были сделаны: групповые чаты, диалоги, другие каналы [3].

Существенный минус Telegram как источника информации - отсутствие инструментов «discover», то есть поиска и обнаружения площадок. Попасть в тот или иной канал или чат можно несколькими способами:

  1. ввести непосредственно название канала в поле для поиска;
  2. перейти по ссылке-приглашению из другого источника.

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

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

Особенности функционирования рекомендательных систем

Рекомендательная система является подклассом системы фильтрации информации, которая стремится предсказать «рейтинг» или «предпочтение», которое пользователь дал бы элементу [2]. Рекомендации формируются отдельно для каждого человека, опираясь на его предыдущие действия на конкретном ресурсе или на основе прошлой активности. Кроме того, значение имеет и поведение предыдущих участников процесса.

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

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

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

  1. коллаборативная фильтрация;
  2. контент-ориентированная фильтрация.

Коллаборативная фильтрация

Коллаборативная фильтрация (совместная фильтрация) — один из методов построения прогнозов (рекомендаций) в рекомендательных системах, использующий известные предпочтения (оценки) группы пользователей для прогнозирования неизвестных предпочтений другого пользователя [4].

Идея данного подхода состоит в том, что пользователи, которые оценивали одинаково какие-либо объекты в прошлом, наиболее вероятно будут давать схожие оценки некоторым объектам и в будущем. В данном подходе действует схема накопления знаний: чем больше пользователь просматривает и дает оценок, тем более точные и персонализированные рекомендации он получает. Схематическое представление коллаборативной фильтрации представлено на рисунке 2.


Рисунок 2 – Коллаборативная фильтрация

Рисунок 2 – Коллаборативная фильтрация


Коллаборативная фильтрация делится на 3 типа: основанный на соседстве, основанный на модели и гибридный.

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

Тип коллаборативной филтрации основанный на модели дает рекомендации на основе параметров статистических моделей для оценок пользователей, построенных с помощью метода байесовских сетей, кластеризации, латентной семантической модели и т.п. [4]. Этот подход набирает популярность из-за более точных прогнозов, потому что учитывает некоторые скрытые факторы, объясняющие наблюдаемые оценки.

Гибридный тип распространен больше остальных, особенно если рекомендательная система разрабатывается для коммерческого сайта: интернет-магазина, маркетплейса и т.п. Он объединяет в себе два первых типа и помогает преодолеть ограничения изначального оригинального подхода и улучшить точность рекомендаций [5].

Учитывая особенности метода коллаборативной фильтрации, требующего наличия оценочных данных от пользователей использоваться он может не всегда. Первый сценарий использования - это создание рекомендации относительно интересной и популярной информации на основе учёта «голосов» сообщества [4]. Другой сценарий использования - создание персонализированных рекомендаций для пользователя, на основе его предыдущей активности и данных о предпочтениях других, схожих с ним пользователей. Данный способ реализации можно найти, например, на таких сайтах, как YouTube, Last.fm и Amazon.

Контент-ориентированная фильтрация

Суть этого подхода заключается в том, что мы сопоставляем пользователей с тем контентом или товарами, которые им нравились или были ими куплены [6]. В данном подходе большую роль играют атрибуты пользователей и ресурсов (продуктов). Схематическое изображение контент-ориентированной фильтрации представлено на рисунке 3.


Рисунок 3 – Контент-ориентированная фильтрация

Рисунок 3 – Контент-ориентированная фильтрация


В отличие от методов совместной работы, которые полагаются только на взаимодействие элементов пользователя, подходы на основе контента используют дополнительную информацию о пользователях и / или элементах [7]. Идея методов, основанных на содержании, состоит в том, чтобы попытаться построить модель, основанную на доступных «функциях», которые объясняют наблюдаемые взаимодействия пользователя с элементом.

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

Основанные на содержании методы, в отличие от коллаборативных, гораздо меньше страдают от проблемы «холодного запуска» («холодный запуск» - отсутствие каких-либо статистических данных у системы о пользователях на самом старте). Происходит так, потому что новые пользователи или элементы (продукты, ресурсы и т.д.) могут быть описаны по их характеристикам (содержанию), и поэтому могут быть сделаны соответствующие предложения для этих новых элементов.

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

Заключение

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

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

Литература

  1. Рекомендательные системы: как помочь пользователю найти то, что ему нужно [Электронный ресурс]. – Режим доступа: https://vc.ru/marketing/152926-rekomendatelnye-sistemy-kak-pomoch-polzovatelyu-nayti-to-chto-emu-nuzhno – Загл. с экрана
  2. Рекомендательная система [Электронный ресурс]. – Режим доступа: https://ru.qaz.wiki/wiki/Recommender_system – Загл. с экрана
  3. Инструкция к каналам Telagram: зачем нужны, как использовать, что читать [Электронный ресурс]. – Режим доступа: https://vc.ru/social/16807-telegram-chanels – Загл. с экрана
  4. Коллаборативная фильтрация [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Коллаборативная_фильтрация – Загл. с экрана
  5. Коллаборативная фильтрация, как предпочтения других влияют на твои рекомендации [Электронный ресурс]. – Режим доступа: https://zen.yandex.ru/media/id/5e9493565171d3396eba3545/kollaborativnaia-filtraciia-kak-predpochteniia-drugih-polzovatelei-vliiaiut-na-tvoi-rekomendacii-5f48ba11ecbbbd2811b32d42 – Загл. с экрана
  6. Как работают рекомендательные системы [Электронный ресурс]. – Режим доступа: https://neurohive.io/ru/osnovy-data-science/rekomendatelnye-sistemy-modeli-i-ocenka/ – Загл. с экрана
  7. Введение в рекомендательные системы [Электронный ресурс]. – Режим доступа: https://www.machinelearningmastery.ru/introduction-to-recommender-systems-6c66cf15ada/ – Загл. с экрана

Коврик К. А., Коломойцева И. А. Об особенностях разработки рекомендательной системы для пользователей мессенджера Telegram. В статье представлен краткий обзор наиболее распространенных методов организации анализа данных в рекомендательных системах и проведен анализ целесообразности их применения при проектировании мобильной рекомендательной системы для мессенджера Telegram.

Ключевые слова: методы классификации информации, рекомендательная система, мессенджер, пользователь, Telegram, персонализированные рекомендации, фильтрация информации.

Kirill Kovrik, Irina Kolomoitseva On the peculiarities of developing a recommendation system for users of the Telegram messenger. The article provides a brief overview of the most common methods for organizing data analysis in recommender systems and an analysis of the feasibility of their application in the design of a mobile recommender system for the Telegram messenger.

Key words: information classification methods, recommendation system, messenger, user, Telegram, personalized recommendations, information filtering.