Русский   English
ДонНТУ   Портал магістрів

Коврик Кирило Олександрович

Інститут комп'ютерних наук і технологій

Факультет інтелектуальних систем та програмування

Кафедра Програмна інженерія ім. Л. П. Фельдмана

Спеціальність Програмна Інженерія

Дослідження методів класифікації інформації на прикладі рекомендаційної системи для користувачів месенджера Telegram

Науковий керівник: д. т. н., проф. Зорі Сергій Анатолійович

Консультант: ст. викладач Коломойцева Ірина Олександрівна

Реферат

Зміст

Вступ

Сучасний інтернет-простір змінюється і формується щодня, з'являються все більше нових ресурсів: медіа, розваги, джерела інформації, «контенту» і так далі. У зв'язку з наявністю величезної кількості якісних джерел інформації в будь-якому цікавому сучасного користувача напрямку, велика кількість уваги їх творцями приділяється залученню нових користувачів і утриманню сформувалася аудиторії.

Досягти цього на сучасному етапі одним тільки поліпшенням якості основної складової ресурсу вдається рідко. Саме тому все більш перспективним напрямком стає формування портрета уподобань конкретного користувача для створення якісного рекомендаційного простору.

1. Актуальність теми

На даному етапі розвитку інтернет технологій і технологій комп'ютерного аналізу даних успіх інтернет-ресурсу в багато визначається наявністю саме якісної системи рекомендацій. Основна мета рекомендаційних систем полягає в тому, щоб донести до користувача інформацію про те, що конкретний товар, послуга або інформація можуть його цікавити в даний момент часу і даних обставинах. В основі роботи таких систем лежить аналіз інформації про профіль користувача, портреті його дій під час відвідування ресурсу, а також регулярно поповнюється комплекс статистичних даних про всіх користувачів ресурсу.

Залежно від моделі бізнесу рекомендації можуть бути його основою, а можуть бути просто зручним додатковим сервісом, покликаним поліпшити користувальницький досвід. Персоналізація онлайн-маркетингу-очевидний тренд останнього десятиліття. За оцінками, близько 35% виручки Amazon або 75% Netflix припадає саме на Рекомендовані товари і відсоток цей, ймовірно, буде рости [10]. Рекомендаційні системи приносять очевидну вигоду власникам онлайн-магазинів, різних сервісів і додатків. Вони показують користувачеві саме те, що йому цікаво, і генерують прибуток [12]. Виходячи з вищевказаних показників, актуальність вивчення даної теми не піддається оскарженню. Аналітичний і систематичний підхід до даного питання може допомогти не тільки бізнесу, але і може принести безліч корисних відкриттів комп'ютерним наукам.

2. Аналіз предметної області

2.1 Основні поняття

Рекомендаційна система – це комплекс алгоритмів, програм і сервісів, завдання якого передбачити, що може зацікавити того чи іншого користувача [1]. Сучасні рекомендаційні системи часто вимагають досить складно організованих систем обробки і зберігання даних, не є легкими і компенсують свою складність точністю рекомендацій і швидкістю обробки інформації. Однак, ні для кого не секрет, що з кожним днем кількість всіх запитів у всесвітню мережу з мобільних пристроїв зростає, що говорить про те, що актуальною проблемою є створення мобільних рекомендаційних систем, які не поступатимуться сучасним в точності і швидкості. Мобільні рекомендаційні системи особливо складна область досліджень, оскільки мобільні дані складніші за дані, з якими часто доводиться мати справу рекомендаційним системам [2].

Рекомендаційна система є підкласом системи фільтрації інформації, яка прагне передбачити рейтинг або перевагу, яку користувач дав би елементу [2]. Рекомендації формуються окремо для кожної людини, спираючись на його попередні дії на конкретному ресурсі або на основі минулої активності. Крім того, значення має і поведінка попередніх учасників процесу.

Рекомендаційні сервіси збирають різну інформацію про людину, використовуючи кілька методів, за якими і поділяють всі системи [8].

Першим методом є явний збір даних. Користувач надає необхідні для роботи системи матеріали. Наприклад, коли рекомендаційні системи просять людину дати оцінки різним елементам, скласти список фаворитів певної сфери або ж відповісти на деякий список питань. До явного збору даних також відноситься заповнення профілю, а також вибір так званих тегів з наданого списку. У разі якщо людина відмовляється надавати дані, актуальний другий метод.

Другим методом є неявний збір даних. Це система, яка передбачає відстеження дій учасника процесу програмою для подальшої обробки і застосування. Система розпізнає покупки, оцінки на сайтах, збирає інформацію по переглядах, коментарям. Безумовно, використання такої методики веде за собою деякі етичні проблеми, адже захист персональних даних — одна з головних вимог, що пред'являються Користувачем до сучасного інтернет ресурсу.

Після отримання інформації про Користувача тим чи іншим способом система рекомендацій звертається до методів аналізу цих даних. Від методу аналізу також залежить список необхідної інформації: дані про конкретного відвідувача, про аудиторію користувачів в цілому, про оціночні судження аудиторії і т. д. найбільш поширеними підходами до аналізу в рекомендаційних системах є:

  1. колаборативна фільтрація;
  2. контент-орієнтована фільтрація;
  3. гібридний підхід.

2.2 Огляд існуючих методів аналізу в рекомендаційних системах

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

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

Iдея даного підходу полягає в тому, що користувачі, які оцінювали однаково будь-які об'єкти в минулому, найбільш ймовірно будуть давати схожі оцінки деяким об'єктам і в майбутньому. В даному підході діє схема накопичення знань: чим більше користувач переглядає і дає оцінок, тим більш точні і персоналізовані рекомендації він отримує. Рекомендації з використанням даної методики видаються, грунтуючись на поведінкових характеристиках однієї людини або групи людей, останнє навіть є більш ефективним [7]. Схематичне уявлення колаборативної фільтрації представлено на малюнку 1.

Представлення колаборативної фільтрації

Малюнок 1 – Представлення колаборативної фільтрації

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

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

Тип колаборативної фільтрації заснований на моделі дає рекомендації на основі параметрів статистичних моделей для оцінок користувачів, побудованих за допомогою методу байєсівських мереж, кластеризації, латентної семантичної моделі і т. п. [4]. Цей підхід набирає популярність через більш точні прогнози, тому що враховує деякі приховані фактори, що пояснюють спостережувані оцінки.

Гібридний тип поширений більше за інших, особливо якщо рекомендаційна система розробляється для комерційного сайту: інтернет-магазину, маркетплейсу і т.п. Він об'єднує в собі два перших типи і допомагає подолати обмеження початкового оригінального підходу і поліпшити точність рекомендацій [5].

Враховуючи особливості методу колаборативної фільтрації, що вимагає наявності оціночних даних від користувачів використовуватися він може не завжди. Перший сценарій використання-це створення рекомендації щодо цікавої та популярної інформації на основі врахування голосів спільноти [4]. Інший сценарій використання-створення персоналізованих рекомендацій для користувача, на основі його попередньої активності і даних про переваги інших, схожих з ним користувачів. Даний спосіб реалізації можна знайти, наприклад, на таких сайтах, як YouTube, Last.fm і Amazon.

2.2.2 Контент-орієнтована фільтрація

Суть цього підходу полягає в тому, що ми зіставляємо користувачів з тим контентом або товарами, які їм подобалися або були ними куплені [6]. В даному підході велику роль відіграють атрибути користувачів і ресурсів (продуктів). Контентна фільтрація вибудовує внутрішні зв'язки між запропонованими товарами або будь-яким контентом [9]. Схематичне зображення контент-орієнтованої фільтрації представлено на малюнку 2.

 контент-орієнтована фільтрація

Малюнок 2 – Контент-орієнтована фільтрація

На відміну від методу колаборативної фільтрації, які покладаються тільки на взаємодію елементів користувача, підходи на основі контенту використовують додаткову інформацію про користувачів і/або елементах [7]. Ідея методів, заснованих на змісті, полягає в тому, щоб спробувати побудувати модель, засновану на доступних функціях, які пояснюють спостережувані взаємодії користувача з елементом. Найчастіше для генерації рекомендацій система звертається до профілю користувача, де в певному форматі у вигляді ключових слів зберігається інформація про його інтереси і переваги.

Засновані на змісті методи, на відміну від колаборативних, набагато менше страждають від проблеми холодного старту (холодний старт - відсутність будь-яких статистичних даних у системи про користувачів на самому старті). Відбувається так, тому що нові користувачі або Елементи (продукти, ресурси і т.д.) можуть бути описані за їх характеристиками (змістом), і тому можуть бути зроблені відповідні пропозиції для цих нових елементів.

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

2.2.3 Гібридний підхід

Оскільки кожен з вищезазначених підходів має свій власний набір переваг і недоліків, гібридні методи використовуються для об'єднання переваг різних підходів для створення системи, яка добре працює в широкому діапазоні застосувань. Сучасні системи використовують різні передові алгоритми для вирішення існуючих проблем. Наприклад, для вирішення проблеми розрідженості, більшістю використовує підходи, методів кластеризації і нормалізації. Метод аналізу демографічних і асоціативних правил використовуються для вирішення проблеми холодного старту, і вони були визнані досить ефективними. K-найближчі сусіди (KNN) і Дерево частих шаблонів (FP) об'єднані для отримання якісних пропозицій, що долають недоліки існуючих підходів.

 контент-орієнтована фільтрація

Малюнок 3 – Метод найближчих сусідів

Вважається, що гібридні глибокі моделі-один з найпотужніших інструментів для вирішення завдань рекомендації [11]. Єдина проблема з традиційними гібридними системами полягає в тому, що вони використовують минулу інформацію про користувачів для рекомендацій. Припустимо, користувач, який довгий час використовує додаток на основі гібридної системи, раптово припиняє його використання. Через кілька днів, коли він повторно відвідає веб-сайт або додаток, система порекомендує товари, засновані на інтересі, проявленому раніше, однак вони можуть бути вже неактуальні зараз.

Iснує багато способів гібридизації. Серед них:

3. Постановка завдання проектування

Мета роботи – аналіз існуючих підходів до розробки рекомендаційних систем, вивчення та аналіз алгоритмів класифікації інформації та розробка проекту рекомендаційної системи для користувачів Telegram. Для досягнення поставленої мети необхідно вирішити наступні завдання:

  1. Дослідити існуючі підходи до розробки рекомендаційних систем.
  2. Дослідити методи класифікації інформації та аналізу інформації користувача.
  3. Проаналізувати існуючі дослідження в області рекомендаційних систем.
  4. Провести структурний аналіз організації інформації про користувачів месенджерів.
  5. Дослідити відкрите API Telegram.
  6. Виконати проектування рекомендаційної системи відповідно до проведених досліджень.
  7. Розробити прототип рекомендаційної системи.

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

Висновки

Грамотно організований збір інформації про користувача і правильний вибір методу аналізу цієї інформації дозволяє в рази підвищити ефективність користування ресурсом, підвищує ймовірність здійснення супутніх цільових дій і, в разі комерційної спрямованості ресурсу, помітно підвищує його прибутковість. Все більше великих постачальників інформації, контенту, товарів і послуг вдаються до використання рекомендаційних систем, щоб підвищити зручність користувачів і залучити нову аудиторію [13].

Розвиток області рекомендаційних систем носить постійний характер, оскільки експоненціальне розширення Інтернету ускладнює отримання необхідної інформації за досить короткий час. Майбутнє рекомендаційних систем буде набагато ширше, ніж просте використання для бізнесу, вони матимуть набагато більший вплив на наше повсякденне життя. Ідеальною системою рекомендацій була б та, яка знає нас краще, ніж ми самі і приймає рішення, необхідні на кожному етапі нашого життя без зусиль і швидко, щоб ми могли витратити наш дорогоцінний час на більш продуктивні заняття. Кілька підходів і методів вже використовувалися, як обговорюється в статті, але у них є свої проблеми, такі як проблема холодного старту. Проблема пов'язана з новими користувачами, у яких ще немає історії відвіданих сторінок. Таким чином, передбачається, що система буде надавати рекомендації користувачеві, не покладаючись на будь-які попередні дії. Рекомендаційні системи передбачають використання всього профілю користувача, ваших симпатій і антипатій. Це може створити загрозу конфіденційності користувача. Надання точних рекомендацій на основі великого обсягу даних можуть призвести до деякої затримки в часі відгуку. Крім того, в будь-якій рекомендаційній системі прогнозування інтересу користувача може бути складним завданням, оскільки інтерес може змінюватися з часом. Для вирішення цих проблем дослідники пропонують деякі модифікації, такі як об'єднання K-найближчих сусідів (KNN) і дерева частих шаблонів (FP) для забезпечення якісних рекомендації користувачам або гібридна система, заснована на настроях, яка працює за рахунок застосування аналізу настроїв до списку рекомендацій, згенеровані для підвищення точності і продуктивності існуючих систем.

Список джерел

  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. Коллаборативная фильтрация [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Коллаборативная_фильтрация – Загл. с экрана
  4. Коллаборативная фильтрация, как предпочтения других влияют на твои рекомендации [Электронный ресурс]. – Режим доступа: https://zen.yandex.ru/media/id/5e9493565171d3396eba3545/kollaborativnaia-filtraciia-kak-predpochteniia-drugih-polzovatelei-vliiaiut-na-tvoi-rekomendacii-5f48ba11ecbbbd2811b32d42– Загл. с экрана
  5. Как работают рекомендательные системы [Электронный ресурс]. – Режим доступа: https://neurohive.io/ru/osnovy-data-science/rekomendatelnye-sistemy-modeli-i-ocenka/ – Загл. с экрана
  6. Введение в рекомендательные системы [Электронный ресурс]. – Режим доступа: https://www.machinelearningmastery.ru/introduction-to-recommender-systems-6c66cf15ada/ – Загл. с экрана
  7. Как работают рекомендательные системы [Электронный ресурс]. – Режим доступа: https://neurohive.io/ru/osnovy-data-science/rekomendatelnye-sistemy-modeli-i-ocenka/ – Загл. с экрана
  8. Рекомендательные системы – что это? [Электронный ресурс]. – Режим доступа: lpgenerator.ru/blog/2015/12/25/rekomendatelnye-sistemy-chto-eto/ – Загл. с экрана
  9. Примеры рекомендательных систем в интернете. Рекомендательные системы в онлайн-образовании. В чём особенности рекомендательной системы образовательного проекта [Электронный ресурс]. – Режим доступа: https://viktoriya-uk.ru/earnings/primery-rekomendatelnyh-sistem-v-internete-rekomendatelnye-sistemy.html – Загл. с экрана
  10. Анатомия рекомендательных систем. Часть первая проекта [Электронный ресурс]. – Режим доступа: https://habr.com/ru/company/lanit/blog/420499/ – Загл. с экрана
  11. Как устроены современные рекомендательные системы? [Электронный ресурс]. – Режим доступа: https://proglib.io/p/sovremennye-rekomendatelnye-sistemy-2021-03-02 – Загл. с экрана
  12. Что такое рекомендательные системы и как они работают [Электронный ресурс]. – Режим доступа: https://skillbox.ru/media/code/chto_takoe_rekomendatelnye_sistemy_i_kak_oni_rabotayut/ – Загл. с экрана
  13. Коврик К.А. Об особенностях разработки рекомендательной системы для пользователей мессенджера Telegram / К.А. Коврик, И.А. Коломойцева // Программная инженерия: методы и технологии разработки информационновычислительных систем (ПИИВС-2020): сборник научных трудов III Международной научнопрактической конференции (студенческая секция), Том. 2. 25-26 ноября 2020 г. – Донецк, ГОУВПО Донецкий национальный технический университет, 2020. – 166 с.