Выявление паттернов поведения пользователей в системах машинного восприятия методами машинного обучения
Машинное обучение для задачи выявления паттернов поведения пользователя в рекомендательных системах. Суть подхода к разработке модели признаков для задачи формирования предсказаний в рекомендательной системе с учетом паттернов поведения пользователя.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 27.08.2020 |
Размер файла | 415,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
По результатам анализа релевантных исследовательских работ, можно сказать, что: Алгоритмы машинного обучения, используемые в рекомендательных системах, используются универсально вне зависимости от контекста поставленной задачи;
Внимание исследователей в основном целиком и полностью сконцентрировано на используемых инструментах машинного обучения, при этом практически не обсуждается такой важный, с точки зрения качества конечного результата, этап, как разработка модели признаков (Feature Engineering): как артефакты поведения пользователя трансформируются в признаки, по какому принципу строится модель признаков, какие признаки являются наиболее значимыми, а от каких можно отказаться.
Таким образом, проведенный анализ показал, что разработка признаков является потенциально слабым и недостаточно изученным этапом в процессе решения задачи машинного обучения и требует более детального изучения и совершенствования.
2.4 Машинное обучение в системах машинного восприятия: выводы
Рекомендательные системы являются популярными для технологий машинного восприятия информационными системами, поскольку по своему функционалу представляют собой частный случай систем принятия решений и пользуются большим успехом в решении задач по предложению товаров и услуг, формированию подборок фильмов и музыки, развитию таргетированной рекламы. Машинное обучение, в свою очередь, предоставляет обширный универсальный функционал для решения задач рекомендательных систем, в том числе для задач выявления паттернов поведения пользователей. Однако тем не менее, остается неисследованным в достаточной мере вопрос формирования признаков для дальнейшего использования при построении модели машинного обучения.
По этой причине в рамках данной исследовательской работы было решено рассматривать этап разработки признаков (Feature Engineering) для учета паттернов поведения пользователей в рекомендательных моделях. Таким образом, гипотеза данной работы: учет паттернов поведения в модели признаков повышает качество рекомендаций в модели.
ГЛАВА 3. ПОДХОД К РАЗРАБОТКЕ МОДЕЛИ ПРИЗНАКОВ ДЛЯ ЗАДАЧИ ФОРМИРОВАНИЯ ПРЕДСКАЗАНИЙ В РЕКОМЕНДАТЕЛЬНОЙ СИСТЕМЕ С УЧЕТОМ ПАТТЕРНОВ ПОВЕДЕНИЯ ПОЛЬЗОВАТЕЛЯ
3.1 Общая концепция
Итак, в предыдущих главах был приведен подробный обзор, что такое паттерны поведения человека и чем может быть полезно их использование, что такое машинное обучение и из каких этапов состоит процесс решения задач методами машинного обучения, а также анализ существующих решений и исследований.
Рисунок 3. Общая концепция подход к разработке модели признаков: схема взаимодействия человека и рекомендательной системы
В результате было выявлено, что наиболее слабым местом - а значит, потенциально его исследование может положительно сказаться на качестве модели - в процессе решения задачи построения модели методами машинного обучения с учетом паттернов поведения пользователя является этап разработки признаков (Feature Engineering). По этой причине, предлагаемый подход к выявлению и включению данных о паттернах поведения пользователя в модель машинного обучения сконцентрирован именно на этом этапе.
Суть предлагаемого подхода заключается в соотнесении артефактов поведения человека с языком их интерпретации в рекомендательной системе (рис. 3).
Для этого предлагается модифицировать традиционный этап разработки признаков под задачу учета паттернов поведения пользователя.
В основу разработанного в рамках данной работы подхода легли, с одной стороны, поведенческие концепции психологии личности - в первую очередь, структура психики и характеристики поведения человека (глава 1), а с другой - общие принципы применения инструмента машинного обучения (глава 2) и результаты исследования рекомендательных систем в рамках предыдущей исследовательской работы «Алгоритмы машинного слуха в рекомендательных системах» [37].
3.2 Разработка подхода
Традиционно, этап разработки признаков при решении любой задачи машинного обучения принято понимать, как решение следующих взаимосвязанных задач (шагов) [47]:
Извлечение признаков (Feature Extraction): в рамках этого шага необходимо специфичные для предметной области данные перевести на математический язык, понятный для системы, т.е. числовые векторы. И, если с технической точки зрения существует достаточно инструментов и методов, чтобы из текста, изображений, звука, геоданных и т.д. считать нужные данные, то на вопрос «А какие же исходно нужно взять данные, к которым применить эти инструменты и методы?», как показал анализ в главе 2, как такового ответа нет - по большей части, в качестве ответа на этот вопрос обычно ссылаются на то, что процесс подбора признаков требует творческого подхода.
Преобразование признаков (Feature Transformation): чистка сырых данных, полученных на предыдущем шаге, путем применения таких методов, как понижение размерности, уменьшение шума, нормализация и др.;
Выбор признаков (Feature Selection): на этом этапе необходимо отсеять незначимые признаки путем тестирования признаков с помощью алгоритмов машинного обучения, позволяющих оценить значимость признака (простейший пример - логистическая регрессия), с помощью статистических методов или перебором.
Если вернуться к предлагаемому подходу, то уточним теперь, что суть предложения - расширить шаг «Извлечение признаков» и постараться ответить на вопрос «Какие исходно нужно взять данные, чтобы модель учитывала паттерны поведения пользователя?». Прежде, чем перейти к дальнейшему пошаговому описанию подхода, необходимо отметить, что данное предложение не является единственно верным и не подразумевает единственность полученного с помощью него решения в силу того, что, во-первых, даже в рамках одной психологии личности существует более одной поведенческой концепции [57], а во-вторых, несмотря на попытку упорядочить этап разработки признаков, он все равно остается творческим и зависит от конечной постановки задачи.
Шаг 1. Разработка схемы признаков рекомендуемого объекта.
На этом этапе необходимо выделить максимальное количество признаков, описывающих объект, который рекомендует система, причем важно учесть не только признаки в данных, если таковые уже имеются, но и при необходимости скомбинировать числовые признаки до семантического значения. Для этого в качестве основы предлагается использовать самую базовую концепцию описания объекта в информатике, которая говорит о том, что у любого объекта есть такие признаки, как свойства, действия, поведение и состояния [58]. В целом предполагается, что формат схемы признаков может быть любой, однако для простоты рекомендуется использовать дерево признаков или майнд-карту (рис. 4). Хорошей практикой для данного этапа является техника мозгового штурма.
Рисунок 4. Пример форматов построения схемы признаков для рекомендуемого объекта
Шаг 2. Определение точек и сценариев взаимодействия пользователя с объектом рекомендаций в системе (неявный подход).
Следующим шагом необходимо каждому из выявленных признаков объекта по возможности указать хотя бы 1 пользовательский сценарий - точку взаимодействия пользователя с признаком объекта рекомендации в системе, который происходит для пользователя в неявном виде, то есть сценарий может быть отслежен рекомендательной системой посредством неявного подхода (см. глава 2). Признаки и пользовательские сценарии необходимо оформить как таблицу в следующем формате:
Признак объекта |
Пользовательский сценарий в системе |
Точка взаимодействия пользователя с признаком |
Результатом этапа должна стать таблица, оформленная по формату, указанному выше.
Шаг 3. Определение точек и сценариев взаимодействия пользователя с объектом рекомендаций в системе (явный подход).
Этот шаг по своей сути идентичен шагу 2, однако его отличие заключается в том, что теперь необходимо для признаков объекта рекомендаций указать такие пользовательские сценарии, где точка взаимодействия пользователя с признаком объекта существует в системе в явном виде, т.е. сценарий отслеживается системой с помощью явного подхода. Точка взаимодействия, таким образом, формируется системой, например, она может быть сформирована в виде вопроса с просьбой оценить тот или иной признак объекта (любимые жанры кино или исполнители песен) или наличие в системе функционала оценки самого объекта (лайк под песней или оценка фильма). Здесь нужно отметить, что поскольку, как было уже указано в главе 2, практика показывает, что пользователи не очень любят отвечать на явные вопросы, рекомендуется ограничить количество таких сценариев до необходимого минимума, т.е. необязательно, чтобы у каждого признака объекта появился соответствующий ему явный пользовательский сценарий. Признаки и пользовательские сценарии необходимо также сформулировать в следующем формате и оформить в виде таблицы по аналогии с шагом 2:
Признак объекта |
Пользовательский сценарий в системе |
Точка взаимодействия пользователя с признаком |
Шаг 4. Консолидация и соотнесение выявленных пользовательских сценариев с атрибутами поведения человека.
В рамках разрабатываемого подхода предлагается соотносить неявный подход получения данных системой с атрибутами невербального поведения пользователя (как осознанного, так и неосознанного), поскольку подобно тому, как при общении с живым человеком нельзя однозначно сказать, были ли невербальные атрибуты его поведения проявлены осознанно или нет, в системе также далеко не всегда данные, полученные неявным образом, можно трактовать однозначно. Соответственно, явный подход получения данных системой в рамках данного подхода приравнивается к вербальному поведению человека: на заданный системой в явном виде условно вопрос человек осознанно отвечает, транслируя информацию (= реагирует вербально) [59]. машинный обучение паттерн поведение
Таким образом, на данном этапе необходимо объединить результаты, полученные на шагах 2 и 3, в единую таблицу, а затем соотнести каждую точку взаимодействия с признаком объекта с признаками поведения человека, отражающего ту или иную составляющую его психики. В результате должно получиться сопоставление в следующем формате:
Пользовательский сценарий в системе |
Точка взаимодействия пользователя с признаком (Я/Н) |
Признаки поведения человека |
Для того, чтобы это сделать, необходимо воспользоваться таблицей 3, которая основана на проведенном анализе и разработанной в главе 1 таблице декомпозиции психики человека. Каждой составляющей приводится в соответствие предлагаемый способ измерения действий пользователя и получения данных о них в рекомендательной информационной системе. Поскольку как таковой формально обособленной классификации или типологии действий пользователя в информационных системах в ходе анализа научных источников не было выявлено, в качестве отправной точки использовались работы Bart P. Knijnenburg, Martijn C. Willemsen, Zeno Gantner, Hakan Soncu и Chris Newell «Explaining the user experience of recommender systems», Zhang D., Zhou L., Kehoe J. L. и Kilic I. Y. «What Online Reviewer Behaviors Really Matter? Effects of Verbal and Nonverbal Behaviors on Detection of Fake Online Reviews» и Nъсez-Valdez E. R., Quintana D., Gonzбlez Crespo R., Isasi P. и Herrera-Viedma, E. «A recommender system based on implicit feedback for selective dissemination of ebooks» [59-61].
Таблица 3. Отображение психики человека на его действия в рекомендательной системе
Тип психического явления |
Характеристика психического явления |
Отражение в поведении: возможные метрики, способы измерения |
Возможные действия в ИС |
||
Познавательные процессы |
Ощущения |
Обоняние, слух, вкус, зрение, осязание |
Контакт с объектом через тот или иной орган чувств: наличие, взаимодействие, статистические характеристики |
Взаимодействие с графическим, речевым, тактильным интерфейсом, с медиа данными (фото, видео, аудио) |
|
Восприятие |
Субъективность |
Оценка реакции человека в сравнении с другими: степень отклонения от средних значений, частота и др. статистические характеристики |
Тегирование (как), оценка (да/нет и как) |
||
Мышление |
Позитивное и негативное |
Соотношение позитивных и негативных оценок - что преобладает |
Оценка объектов, комментирование |
||
Речь |
Устная и письменная |
Выявление акустических характеристик алгоритмами машинного слуха, семантических характеристик алгоритмами распознавания текста, распознавание жестов |
Поиск, комментирование, тегирование, чтение, взаимодействие с графическим и речевым интерфейсом, информацией о признаках объекта |
||
Внимание |
Произвольное и непроизвольное |
Eye tracking, время, затраченное на взаимодействие с объектом |
Поиск, просмотр объектов, переходы по контекстным элементам (н-р, реклама) |
||
Память |
Личный опыт |
Учет исторических данных о выборе: какие объекты и с какой частотой выбираются, от чего зависит выбор |
Принятие решения в пользу объекта: выбрать/нет, оценить/нет, от чего зависит и т.п. |
||
Воображение |
Непроизвольное и произвольное. |
Как выглядит объект «мечты»: статистические показатели фильтрации (какие характеристики используются, какой разброс в значениях и т.д.) |
Поиск объекта по заданным характеристикам |
||
Эмоциональные процессы |
Эмоции |
Базовые и вариативные эмоции |
См. раздел «Эмоции» |
||
Чувства |
Стенические и астенические |
Скорость, частота взаимодействия с объектом, его признаками, интерфейсом |
Взаимодействие с интерфейсом, поиск объекта |
||
Аффекты |
Положительные и отрицательные |
На момент исследования возможностей по применению и определению не выявлено |
|||
Волевые процессы |
Решение, действие, усилие и т.п. |
Выбор, оценка, поиск и другие явные по отношению к объекту действия |
Логирование действий в системе с отметкой о типе совершенного действия (проставлена оценка, совершена покупка и т.д.) |
||
Эмоции |
Базовые |
Радость, печаль, гнев, отвращение, страх |
Распознавание мимики, жестов эмоциональным ИИ, оценка с помощью многомерных моделей МО (н-р, интенсивность + валентность) |
Выбор объекта, оценка, комментирование объекта, тегирование |
|
Вариативные |
Проявление отличается от человека к человеку в зависимости от ситуации |
Оценка с помощью многомерных моделей МО (н-р, интенсивность + позитивность/ негативность) |
Выбор объекта, оценка, комментирование объекта, тегирование |
||
Тоника |
Бодрость |
Скорость взаимодействия |
Взаимодействие с интерфейсом системы, выбор объекта |
||
Угнетенность |
|||||
Активация |
Активность |
Скорость, частота взаимодействия с объектом, наличие фоновой активности |
Взаимодействие с интерфейсом системы, признаками объекта, выбор объекта |
||
Пассивность |
|||||
Темперамент |
Меланхолик |
Эмоциональная стабильность/ лабильность и интроверсии/ экстраверсии |
Характеризуется и измеряется свойствами нервной деятельности (см. Приложение) |
Взаимодействие с интерфейсом системы, признаками объекта, выбор объекта |
|
Сангвиник |
|||||
Холерик |
|||||
Флегматик |
|||||
Жизненная позиция |
Потребности, интересы, идеалы, убеждения |
Оценка характеристик объектов, категорий объектов, которые выбираются чаще |
Выбор, поиск объекта, взаимодействие с признаками объекта |
||
Активность |
Уровень активности |
Соотношение пассивных и активных действий, частоты использования предлагаемых и выбранных самостоятельно объектов |
Выбор, поиск, рекомендации объектов, взаимодействие с признаками объекта, оценка объекта |
||
Характер |
Экстраверсия |
Сенсорика (S), интуиция (N), логика (T), этика (F) |
Активность/ пассивность действий + способ восприятия информации (S vs Т) + принятия решения (T vs F) |
Взаимодействие с интерфейсом, признаками объекта, принятие решения в отношении объекта (выбор, оценка) |
|
Интроверсия |
|||||
Способности |
Индивидуальные творческие способности |
На момент исследования возможностей по применению и определению не выявлено |
Шаг 5. Формирование первичного списка признаков для учета паттернов поведения пользователя.
На базе сформированного списка пользовательских сценариев и признаков отражения психики в поведении человека, необходимо оформить таблицей признаки пользователя и обратной связи:
Стоит отметить, что признаки поведения человека содержат в себе не только непосредственно признаки пользователя (в терминах рекомендательных систем), но также и явную/неявную обратную связь, которая в дальнейшем может быть использована для формирования оценки композиции пользователем в системе.
Признак поведения человека |
Признак пользователя |
Признак обратной связи |
При формировании первичного списка признаков необходимо также учитывать существующие технические ограничения аппаратного обеспечения и требования к системе: так, использование в качестве интерфейса смарт-устройства (например, смартфона или «умных» часов) дает зачастую больше возможностей к выявлению тех или иных признаков поведения, нежели стандартный веб-интерфейс, например, за счет наличия в смартфоне датчиков движения можно оценить бодрость и активность пользователя.
Примечание: на данном этапе речь идет о первичном списке признаков - для первой итерации тестирования и оценки модели МО, поэтому рекомендуется формировать простые признаки. В дальнейших итерациях при необходимости улучшать качество модели можно комбинировать и объединять простые признаки в более сложные и затем сравнивать результаты оценки моделей для того, чтобы понять, какой перечень признаков подходит к модели больше всего.
Шаг 6. Приведение первичного списка признаков к математическому формату. Заключительным шагом в этапе извлечения признаков является непосредственное приведение признаков к математическому формату: определить для каждого признака тип данных и способ извлечения. В зависимости от типа исходных данных, для этого применяются различные известные подходы: токенизирование текста, кодирование изображений, преобразование дат и другие [47].
3.3 Подход к разработке модели признаков для задачи формирования предсказаний в рекомендательной системе с учетом паттернов поведения пользователя: выводы
Таким образом, в совокупности весь этап разработки признаков позволяет учесть в модели специфические данные, связанные с процессом проявления у пользователя его паттернов поведения в тех или иных артефактах, и в итоговом виде выглядит следующим образом:
Извлечение признаков (Feature Extraction):
Разработка схемы признаков рекомендуемого объекта.
Определение точек и сценариев взаимодействия пользователя с объектом рекомендаций в системе (неявный подход).
Определение точек и сценариев взаимодействия пользователя с объектом рекомендаций в системе (явный подход).
Консолидация и соотнесение выявленных пользовательских сценариев с атрибутами поведения человека.
Формирование первичного списка признаков для учета паттернов поведения пользователя.
Приведение первичного списка признаков к математическому формату.
Преобразование признаков (Feature Transformation);
Выбор признаков (Feature Selection).
ГЛАВА 4. ФОРМИРОВАНИЕ ПРЕДСКАЗАНИЙ В РЕКОМЕНДАТЕЛЬНОЙ СИСТЕМЕ ПО ПОДБОРУ МУЗЫКАЛЬНЫХ КОМПОЗИЦИЙ С ИСПОЛЬЗОВАНИЕМ ПРЕДЛОЖЕННОГО ПОДХОДА
4.1 Постановка эксперимента
Цель проведения эксперимента - проверка на практике предложенного в главе 3 подхода к разработке признаков, а также тестирование гипотезы о том, что использование данных о паттернах поведения пользователя в рекомендательных системах, которые используют методы машинного обучения для формирования рекомендаций, повышает качество рекомендаций.
Задачи эксперимента:
Провести разработку признаков и подготовку данных согласно предложенному в главе 3 подходу;
Разработать модели рекомендаций и провести ряд экспериментов:
без включения признаков, характеризующих вербальное и невербальное поведение пользователя в системе;
с использованием признаков вербального и невербального поведения пользователя в системе, разработанных по предложенному в главе 3 подходу;
сравнить использование вербальных признаков с использованием невербальных признаков;
Сделать вывод о качестве предсказаний и оценить эффективность примененного метода.
Нулевая гипотеза эксперимента: использование данных о паттернах поведения пользователя влияет на качество рекомендаций.
Альтернативная гипотеза: использование в модели данных о паттернах поведения пользователя не оказывает влияние на качество рекомендаций.
В рамках эксперимента рассматривается рекомендательная система по подбору музыкальных композиций.
В качестве модели рекомендательного алгоритма в рамках данного эксперимента используется гибридная модель по стратегии stacking, разработанная в ходе исследования предыдущей работы «Алгоритмы машинного слуха в рекомендательных системах» [37].
Примечание к эксперименту: как уже ранее упоминалось, процесс разработки признаков является творческим - основная задача предложенного подхода заключается в попытке несколько систематизировать и упростить этот процесс. По этой причине, описанный ниже ход эксперимента не является единственно верным.
4.2 Средства и инструменты
Для построения модели использовался язык Python (исходный код эксперимента размещен в открытом репозитории GitHub) [62]. В дополнение к этому, для обработки данных использовались пакеты NumPy, pandas и sklearn. Для построения рекомендательных моделей использовался пакет tensorrec. При тестировании гипотезы с помощью статистических тестов использовалась библиотека stats пакета SciPy. В качестве данных о музыкальных композициях используется часть данных из открытого датасета музыкального рекомендательного сервиса Spotify. Данные о пользователях были получены с помощью опросника.
4.3 Подготовка данных для эксперимента: применение предложенного подхода к разработке признаков
Прежде, чем перейти к построению моделей, необходимо подготовить данные и разработать признаки, которые будут использоваться затем моделью машинного обучения. Для этого применяется разработанный в главе 3 подход.
Шаг 1. Разработка схемы признаков рекомендуемого объекта.
Исследуемая в рамках эксперимента рекомендательная система является музыкальной рекомендательной системой, т.е. объектом рекомендаций в системе является музыкальная композиция. В системе можно зарегистрироваться, искать песню, слушать ранее сохраненные песни или плейлист рекомендаций, которые по одной предлагает система. Исходя из этого и с учетом имеющихся данных о музыкальных композициях (табл. 4), с помощью дерева признаков получаем схему признаков (рис. 5).
Шаг 2. Определение точек и сценариев взаимодействия пользователя с объектом рекомендаций в системе (неявный подход).
Таблица 4. Описание признаков музыкальных композиций, используемых в модели (датасет Spotify)
АТРИБУТ |
ТИП ДАННЫХ |
ОПИСАНИЕ |
|
Song ID |
int |
Идентификатор песни в наборе данных (добавлен самостоятельно) |
|
Artist |
string |
Имя исполнителя |
|
Song name |
string |
Название музыкальной композиции |
|
Danceability |
float |
Показатель танцевальности песни (вычислено с помощью алгоритмов машинного слуха) |
|
Energy |
float |
Степень энергичности песни |
|
Loudness |
float |
Громкость: вычислено как среднее значение в дБ - с помощью алгоритмов машинного слуха |
|
Mode |
int |
Бинарный показатель мажорности/минорности песни, основан на вычислениях алгоритмов машинного слуха |
|
Speechness |
float |
Показатель, характеризующий наличие в музыкальной композиции слов (определяется с помощью алгоритмов машинного слуха) |
|
Acousticness |
float |
Показатель, определяющий долю, насколько музыкальная композиция состоит из акустических инструментов |
|
Instrumentalness |
float |
Показатель, определяющий долю, насколько музыкальная композиция состоит из различных инструментов |
|
Liveness |
float |
Показатель, определяющий, насколько музыкальная композиция является живым исполнением или исполнением в записи |
|
Tempo |
float |
Усредненный темп песни в BPM (вычислено с помощью алгоритмов машинного слуха) |
|
Duration |
int |
Продолжительность песни в миллисекундах |
|
Genre |
string |
Жанр, к которому отнесена музыкальная композиция |
Рисунок 5. Схема признаков для музыкальной рекомендательной системы
Теперь необходимо для каждого признака музыкальной рекомендации, выявленного на шаге 1, определить точки взаимодействия пользователя с ними в системе, которые являются неявными для пользователя. Для этого воспользуемся предложенным форматом для выявления таких сценариев (табл. 5). При заполнении таблицы необходимо учитывать доступные в системе сценарии, в данном случае это:
регистрация в системе;
поиск и прослушивание отдельных композиций в системе;
прослушивание ранее сохраненные композиции;
прослушивание плейлиста композиций, рекомендуемых системой.
Например, для признака музыкальной композиции «Название» в системе может быть такой сценарий: при прослушивании песни пользователь может переключить песню - сказать наверняка, сделал ли он это из-за того, что увидел название, нельзя, поэтому такую точку взаимодействия можно выделить как неявную. В то же время, для признака «Сохранить» нельзя указать неявную точку взаимодействия, так как для того, чтобы сохранить песню к себе в плейлист, пользователь должен в явном виде это сделать. Для признаков, с которыми нет неявных точек взаимодействия в рамках пользовательских сценариев, в таблице ставится прочерк.
Для выявления точек взаимодействия пользователя с признаками рекомендуется использовать технику мозгового штурма.
Таблица 5. Точки и сценарии взаимодействия пользователя с музыкальными композициями в системе (неявные)
Признак |
Пользовательский сценарий в системе |
Точка взаимодействия пользователя с признаком |
|
Название |
Прослушивание ранее сохраненной или рекомендуемой композиции |
Выбор песни, проигрывание композиции в плейлисте до конца/не до конца |
|
Исполнитель |
|||
Жанр |
|||
Danceability |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Выбор песни, проигрывание композиции в плейлисте до конца/не до конца, добавление в сохраненные, положительная оценка композиции |
|
Energy |
|||
Loudness |
|||
Mode |
|||
Speechness |
|||
Acousticness |
|||
Instrumentalness |
|||
Liveness |
|||
Tempo |
|||
Duration |
|||
Проигрывается |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Проигрывание композиции в плейлисте до конца, без перелистывания |
|
Не проигрывается |
- |
- |
|
На паузе |
- |
- |
|
Слушать |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Проигрывание композиции в плейлисте до конца, без перелистывания |
|
Сохранить |
- |
- |
|
Искать |
- |
- |
|
Оценить |
- |
- |
|
Нравится |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Проигрывание композиции в плейлисте до конца, без перелистывания, частое проигрывание песни |
|
Не нравится |
Прослушивание найденной или рекомендуемой композиции |
Перелистывание композиции в плейлисте или прослушивание найденной песни не до конца (без оценки, сохранения) |
Шаг 3. Определение точек и сценариев взаимодействия пользователя с объектом рекомендаций в системе (явный подход).
После этого нужно проделать ту же процедуру для выявления точек взаимодействия пользователя с признаками в системе, которые являются явными. При заполнении таблицы (табл. 6) необходимо также учитывать доступные в системе сценарии.
Например, на этом этапе для признака «Название» можно выделить такую точку взаимодействия, как поиск по названию, и наоборот, для признака «Danceability» нет явного сценария в системе, так как даже когда пользователь сохраняет композицию к себе в плейлист или оценивает ее как понравившуюся, нельзя однозначно сказать, что песня понравилась из-за показателя «Danceability».
Таблица 6. Точки и сценарии взаимодействия пользователя с музыкальными композициями в системе (явные)
Признак |
Пользовательский сценарий в системе |
Точка взаимодействия пользователя с признаком |
|
Название |
Поиск композиций |
Поиск композиции по названию |
|
Исполнитель |
Поиск композиций |
Поиск композиций по исполнителю |
|
Жанр |
Поиск композиций |
Поиск композиций по жанру |
|
Danceability |
- |
- |
|
Energy |
- |
- |
|
Loudness |
- |
- |
|
Mode |
- |
- |
|
Speechness |
- |
- |
|
Acousticness |
- |
- |
|
Instrumentalness |
- |
- |
|
Liveness |
- |
- |
|
Tempo |
- |
- |
|
Duration |
- |
- |
|
Проигрывается |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Выбор композиции для проигрывания, проигрывание композиции не до конца (перелистывание) |
|
Не проигрывается |
Найденная, ранее сохраненная или рекомендуемая композиция не выбрана для прослушивания |
Композиция не выбрана для проигрывания в текущий момент |
|
На паузе |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Композиция поставлена на паузу |
|
Слушать |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Выбор композиции для прослушивания, перелистывание композиции в ходе прослушивания |
|
Сохранить |
Прослушивание найденной или рекомендуемой композиции |
Сохранение композиции в свой плейлист в ходе прослушивания |
|
Искать |
Поиск композиции |
По названию, исполнителю или жанру |
|
Оценить |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Оценка композиции пользователем с помощью шкалы оценок |
|
Нравится |
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Сохранение композиции в свой плейлист в ходе прослушивания или положительная оценка |
|
Не нравится |
Прослушивание найденной или рекомендуемой композиции |
Отрицательная оценка композиции |
Шаг 4. Консолидация и соотнесение выявленных пользовательских сценариев с атрибутами поведения человека.
Теперь нужно объединить выявленные сценарии и соотнести с признаками поведения человека с помощью таблицы 3 (гл. 3). Для удобства, каждый сценарий дополнительно помечается как Я - явный или Н - неявный. В качестве технических ограничений аппаратного обеспечения принимается, что рекомендательная система рассчитана на использование с помощью персонального компьютера, ноутбука с тачпадом. В системе не предусмотрен модуль распознавания речи.
Таблица 7. Подбор признаков поведения человека для точек взаимодействия пользователя с признаком музыкальной композиции в системе
Пользовательский сценарий в системе |
Точка взаимодействия пользователя с признаком (Я/Н) |
Признаки поведения человека |
|
Поиск композиций |
Поиск композиции по названию - Я |
Ввод названия, время, затраченное на просмотр композиции, скорость взаимодействия с интерфейсом |
|
Поиск композиций по исполнителю - Я |
Ввод исполнителя, время, затраченное на просмотр, с какой частотой ищется, скорость взаимодействия с интерфейсом |
||
Поиск композиций по жанру - Я |
Ввод/выбор жанра, время, затраченное на просмотр композиции, оценка жанров, которые выбираются чаще, с какой частотой ищется, скорость взаимодействия с интерфейсом |
||
Найденная, ранее сохраненная или рекомендуемая композиция не выбрана для прослушивания |
Композиция не выбрана для проигрывания в текущий момент - Я |
Учет исторических данных: какие композиции и с какой частотой прослушиваются, от чего зависит выбор |
|
Прослушивание найденной, ранее сохраненной или рекомендуемой композиции |
Выбор песни для прослушивания - Я |
Учет исторических данных: какие композиции и с какой частотой выбираются, от каких признаков композиции зависит выбор, логирование выбора, оценка текущих эмоций с помощью многомерной модели МО, скорость выбора композиции, оценка характеристик и категорий композиции, какие категории выбираются чаще, соотношение частоты выбора предлагаемых и выбранных самостоятельно объектов, активность/ пассивность действий + способ принятия решения (T vs F), темперамент - характеризуется и измеряется свойствами нервной деятельности (см. Приложение) |
|
Сохранение композиции в свой плейлист в ходе прослушивания - Я |
Оценка реакции человека в сравнении с другими: статистические характеристики по сохранению, учет исторических данных о выборе: композиции с какими признаками сохраняются чаще всего, оценка текущих эмоций с помощью многомерных моделей МО, скорость взаимодействия, логирование сохранения в системе с отметкой, когда было сохранено, на каком моменте прослушивания |
||
Оценка композиции пользователем с помощью шкалы оценок - Я |
Соотношение позитивных и негативных оценок - что преобладает |
||
Оценка реакции человека в сравнении с похожими пользователями: степень отклонения оценок от средних значений, частота и др. статистические характеристики, учет исторических данных о выборе: композиции с какими признаками оцениваются чаще всего, оценка текущих эмоций с помощью многомерных моделей МО, скорость взаимодействия - как быстро произошла оценка с момента начала прослушивания, логирование оценки в системе с отметкой, когда была проставлена оценка, на каком моменте прослушивания |
|||
Положительная оценка композиции - Я |
|||
Отрицательная оценка композиции - Я |
|||
Проигрывание композиции не до конца (перелистывание) - Я |
Контакт с композицией - услышана, просмотрены характеристики, время, затраченное на взаимодействие с композицией, учет исторических данных о выборе: какие композиции и когда чаще всего пролистываются, скорость взаимодействия, оценка текущих эмоций с помощью многомерных моделей МО, характеристики темперамента, активность действий + способ восприятия информации (S vs Т) + принятия решения (T vs F) |
||
Проигрывание композиции в плейлисте до конца, без перелистывания - Н |
Контакт с композицией - услышана, возможно просмотрены характеристики, время, затраченное на взаимодействие с композицией, учет исторических данных о выборе: композиции с какими характеристиками прослушиваются, скорость и частота взаимодействия, изменение громкости, оценка текущих эмоций с помощью многомерных моделей МО, проигрывание в фоновой активности, характеристики темперамента, активность/пассивность действий + способ восприятия информации (S vs Т) + принятия решения (T vs F) |
||
Композиция поставлена на паузу - Я |
Скорость и частота взаимодействия, наличие фоновой активности |
||
Частое проигрывание песни - Н |
Как выглядит объект «мечты»: статистические показатели фильтрации (какие характеристики используются, какой разброс в значениях и т.д.), наличие фоновой активности, оценка характеристик, категорий композиций, которые выбираются чаще, частота взаимодействия с композицией |
Шаг 5. Формирование первичного списка признаков для учета паттернов поведения пользователя.
Поскольку для проведения данного эксперимента данные о пользователях были получены искусственным путем (с помощью опросника) в виду технических ограничений, а количество данных само по себе мало, то, чтобы избежать проблему переобучения в дальнейшем, для модели будет использоваться ограниченное количество признаков пользователя и композиции. По этой причине в рамках данного этапа ниже (табл. 8) описаны не все возможные признаки пользователя и обратной связи, которые можно получить из таблицы шага 4, а лишь малое количество - для демонстрации применения подхода и непосредственного применения. Кроме того, все также действует техническое ограничение: рекомендательная система рассчитана на использование с помощью персонального компьютера, ноутбука с тачпадом, в системе не предусмотрен модуль распознавания речи, изображений.
Таблица 8. Признаки пользователя и обратной связи
Признак поведения человека |
Признак пользователя |
Признак обратной связи |
|
Наличие фоновой активности |
Текущая активность (IsActive) |
- |
|
Оценка текущих эмоций |
Настроение (Mood) |
- |
|
Время (Timestamp) |
|||
Скорость взаимодействия с интерфейсом |
Время отклика (Reaction) |
- |
|
Время, затраченное на композицию |
- |
Время на композицию (неявная обратная связь) |
|
Присущий темперамент |
Tемперамент (Temperament) |
- |
|
Соотношение позитивных и негативных оценок |
- |
Оценка композиции (явная обратная связь) |
|
… |
… |
… |
Шаг 6. Приведение первичного списка признаков к математическому формату. Для определенных на шаге 5 признаков пользователя и обратной связи определим способ извлечения и необходимый тип данных (табл. 9). Здесь также стоит отметить, что поскольку данные о пользователях для эксперимента были собраны с помощью опросника, применение специфических методов не понадобится.
Таблица 9. Типизация признаков по типам данных
Признак |
Как извлечь |
Тип данных |
|
Текущая активность |
Анализ логов системы |
Логический |
|
Настроение |
Анализ текущей активности с помощью многомерных моделей МО; для данного эксперимента - выбор пользователя |
Строка |
|
Время |
Преобразование текущей даты и времени в миллисекунды относительно заданной даты |
Целый |
|
Время отклика |
Анализ логов системы и преобразование в миллисекунды |
Целый |
|
Время на композицию |
Анализ логов системы и преобразование в миллисекунды |
Целый |
|
Оценка композиции |
Функционал проставления оценки в системе (для модели в эксперименте используются бинарные оценки) |
Целый |
|
Темперамент |
Анализ свойств темперамента: экстраверсии/интроверсии + нейротизма - с помощью многомерных моделей МО и формирование скалярного произведения векторов; для данного эксперимента - выбор пользователя |
Строка |
Таким образом, в результате использования подхода были выявлены признаки пользователей, а также их обратной связи, которые могут быть использованы для построения матрицы взаимодействия (оценок). Помимо обозначенных в таблице 9 признаков пользователя дополнительно добавлены такие признаки, как пол (бинарный) и возраст (целый). Это очень популярные в рекомендательных системах признаки, и они необходимы для адекватного сравнения моделей (см. п. 4.4). В таблице 10 представлены итоговые признаки пользователя, которые были использованы при проведении эксперименты, с учетом того, что данные о пользователях были собраны с помощью опросника (имитация работы рекомендательной системы).
Таблица 10. Описание признаков пользователей, используемых в моделях эксперимента
АТРИБУТ |
ТИП ДАННЫХ |
ОПИСАНИЕ |
|
User state ID |
int |
Идентификатор очередного состояния пользователя, выявленного системой |
|
Timestamp |
int |
Временная метка, когда было выявлено состояние пользователя, в мс относительно 1 января 1970 года |
|
Gender |
int |
Пол пользователя, 0 - мужской, 1 - женский |
|
Age |
int |
Возраст пользователя |
|
Is active |
int |
В каком режиме прослушивается композиция, 0 - в фоновом, 1 - в активном |
|
Mood |
string |
Текущее определенное системой настроение пользователя (в рамках эксперимента - указанное при заполнении опросника) |
|
Reaction |
int |
Скорость взаимодействия с системой в мс (в рамках эксперимента - время, в течение которого пользователь принимает решение слушать песню/ пропустить, дать оценку) |
|
Temperament |
string |
Темперамент пользователя, определенный системой (в рамках эксперимента - значение, указанное пользователем при прослушивании) |
4.4 Построение модели и тестирование гипотезы
В качестве модели рекомендательной системы для эксперимента были выбраны модель коллаборативной фильтрации и гибридная модель. Модель коллаборативной фильтрации позволит оценить вклад признаков пользователя вне влияния признаков музыкальных композиций. На примере же гибридной модели можно будет оценить, как поведет себя модель, если к признакам пользователей также добавить и признаки музыкальных рекомендаций. Модели коллаборативной фильтрации и гибридная модель были разработаны в рамках курсовой работы «Алгоритмы машинного слуха в рекомендательных системах» [37]: модель коллаборативной фильтрации базируется на расчете коэффициента корреляции Пирсона, гибридная модель строится с использованием стратегии stacking, для оценки признаков музыкальных композиций в гибридной модели используется матрица похожести соседей. Для оценки рекомендаций используется бинарная оценка по принципу:
,
В качестве метрик качества рекомендаций были выбраны Average Precision (средняя точность), Average Recall (средняя полнота) и Average F (средняя F-мера), поскольку целевой признак модели - оценка музыкальной рекомендации - является бинарным и используется ранжирование предсказаний, соответственно нужно оценить качество ранжирования. Для оценки используются первые 10 элементов отсортированного списка рекомендаций.
Для тестирования обеих моделей используется следующий набор признаков пользователей: cut_user_features и full_user_features - первый содержит только основную информацию о пользователе: user state ID, timestamp, gender, age, второй - расширенную информацию для тех же самых пользователей: user state ID, timestamp, gender, age, is_active, mood, reaction, temperament. В свою очередь, признаки музыкальных композиций в полном составе (см. табл. 4) используются только в гибридной модели, а в модели коллаборативной фильтрации используется только признак song_id.
Также необходимо отметить, что модели тестируются на малых выборках - всего в эксперименте участвуют 16 пользователей, 82 песни и 160 оценок. Это, безусловно, оказывает большое влияние на качество проведенного эксперимента и в некоторой мере объясняет низкие результаты метрик качества.
Результаты эксперимента для коллаборативной фильтрации и гибридной модели отображены соответственно в таблицах 11 и 12.
Таблица 11. Результат эксперимента на модели коллаборативной фильтрации
cut_user_features |
full_user_features |
||
Precision (at 10) |
0,71% |
1,43% |
|
Recall (at 10) |
3,57% |
10,71% |
|
F (at 10) |
1,19% |
2,52% |
Таблица 12. Результат эксперимента на гибридной модели рекомендаций
cut_user_features |
full_user_features |
||
Precision (at 10) |
0,71% |
3,57% |
|
Recall (at 10) |
2,38% |
16,67% |
|
F (at 10) |
1,10% |
5,88% |
Поскольку эксперимент проводится на малой выборке и модели формируют предсказания для одних и тех же песен и пользователей, для оценки значимости различий в моделях можно применить статистические тесты для малых парных выборок - критерий Стьюдента (если выборка подчиняется нормальному распределению) / тест Уилкоксона (если выборка не подчиняется нормальному распределению). Для тестирования полученных предсказаний на нормальность используется критерий Шапиро-Уилка. Для тестирования гипотезы о равенстве дисперсий для применения t-критерия используется критерий Флигнера-Килина. Уровень значимости для всех статистических тестов - 5% (=0,05). Результаты статистических тестов представлены в таблице 13.
Таблица 13. Результаты статистического сравнения моделей предсказания
cut_user_features (коллаборативная фильтрация) |
full_user_features (коллаборативная фильтрация) |
cut_user_features (гибридная модель) |
full_user_features (гибридная модель) |
||
Критерий Шапиро-Уилка |
P value = 0.091745 |
P value = 0.107379 |
P value = 4.713523e-09 |
P value = 4.547347e-09 |
|
P value > Гипотеза о нормальности не может быть отвергнута |
P value << Гипотеза о нормальности отвергается |
||||
Критерий Флигнера-Килина |
P value = 1.485150e-22 |
- |
|||
P value << Гипотеза о равенстве дисперсий отвергается |
Нет необходимости применять, т.к. не может быть применен критерий Стьюдента |
||||
Критерий Стьюдента |
P value = 0.059858 |
- |
|||
P value > Гипотеза о равенстве средних значений не может быть отвергнута |
Не может быть применен, т.к. выборка не подчиняется нормальному распределению |
||||
Тест Уилкоксона |
- |
P value = 1.149056e-14 |
|||
Т.к. распределение нормальное, применяется критерий Стьюдента |
P value << Нулевая гипотеза о равенстве медиан в выборках отвергается |
4.5 Оценка эффективности и выводы
Для того, чтобы оценить эффективность от применения предложенного подхода и справедливость заявленной в рамках эксперимента гипотезы, были вычислены не только метрики качества рекомендаций, но и статистические тесты - для оценки значимости различий между предсказаниями моделей. Поскольку размер обучающей и тестовой выборки мал, значения метрик качества получились в общем низкие, а для оценки значимости использовались статистические тесты для малых выборок.
По результирующим значениям метрик качества и проведенных статистических тестов, можно сказать, что:
Модель коллаборативной фильтрации с использованием данных о поведении пользователя в совокупности показала результат выше, чем модель коллаборативной фильтрации с использованием только базовых знаний о пользователе (пол и возраст), однако поскольку результат t-теста показал, что гипотеза о равенстве средних не может быть отвергнута, различия между этими моделями нельзя считать статистически значимыми, то есть разницу в метриках качества моделей рекомендаций считать достоверными нельзя.
Гибридная модель с использованием данных о поведении пользователей показала существенно более высокий результат по метрике Recall-at-10 и F-мере, как в сравнении с гибридной моделью, которая не учитывает данные о пользователе, так и по отношению к модели коллаборативной фильтрации - в отличие от последней, различия между моделями оказались статистически значимыми, о чем говорит критерий Уилкоксона: нулевая гипотеза о равенстве медиан отвергается, поэтому можно считать показания метрик качества рекомендаций достоверными.
Таким образом, хотя на основе проведенной оценки нельзя делать однозначный вывод о преимуществе использования данных о поведении пользователя в различных рекомендательных системах, так как объем данных, на котором проводился эксперимент, мал, тем не менее, гибрид...
Подобные документы
Исследование приемов объектно-ориентированного проектирования. Описания паттернов поведения, предназначенных для распределения обязанностей между объектами в системе. Признаки применения, использования паттерна "Декоратор". Принцип действия репозитория.
реферат [686,9 K], добавлен 21.09.2013Метод извлечения информации о личностных характеристиках пользователя с помощью технологии распознавания лица. Разработка алгоритма работы рекомендательной системы, основанной на психологическом портрете пользователя, хранилища баз данных и интерфейса.
курсовая работа [815,2 K], добавлен 21.09.2016Выбор и обоснование аппаратного обеспечения. Типы архитектуры веб-приложений. Шаблоны проектирования архитектуры приложения. Разработка инфологической модели базы данных. Подготовка к разработке приложения. Рассмотрение причин возникновения паттернов.
дипломная работа [3,0 M], добавлен 27.11.2022Создание системы предобработки данных; разработка системы классификации на базе методов и алгоритмов машинного обучения, их реализация в программной системе. Предобработка информации, инструкция пользователя, система классификации, машинный эксперимент.
дипломная работа [917,1 K], добавлен 31.01.2015Історія машинного перекладу як науково-прикладного напряму. Теорія машинного перекладу. Особливості використання систем, орієнтованих на персональні комп’ютери. Напрямки розвитку та застосування машинного перекладу. Приклади систем машинного перекладу.
реферат [21,5 K], добавлен 19.02.2011Искусственные нейронные сети как одна из широко известных и используемых моделей машинного обучения. Знакомство с особенностями разработки системы распознавания изображений на основе аппарата искусственных нейронных сетей. Анализ типов машинного обучения.
дипломная работа [1,8 M], добавлен 08.02.2017Разработка информационного обеспечения задачи, определение логической структуры реляционной базы данных. Разработка запросов и отчетов для обработки и отображения информации, интерфейса пользователя. Методика и этапы физического проектирования задачи.
курсовая работа [33,5 K], добавлен 25.07.2012Рассмотрение принципов работы руткита. Изучение особенностей захвата в режиме пользователя. Анализ модификации машинного кода прикладной программы. Оценка механизма работы руткита в режиме ядра. Характеристика методов обнаружения rootkit в системе.
дипломная работа [241,9 K], добавлен 12.05.2019Популярность алгоритмов машинного обучения для компьютерных игр. Основные техники обучения с подкреплением в динамической среде (компьютерная игра "Snake") с экспериментальным сравнением алгоритмов. Обучение с подкреплением как тип обучения без учителя.
курсовая работа [1020,6 K], добавлен 30.11.2016Виды машинного обучения, его основные задачи и методы. Подходы к классификации: логистическая регрессия, наивный байесовский классификатор, стохастический градиентный спуск, K-ближайший сосед, дерево решений, случайный лес, метод опорных векторов.
курсовая работа [436,9 K], добавлен 14.12.2022Основные типы шаблонов проектирования. Типы связей, которые могут применяться при объектно-ориентированном программировании. Обзор и реализация порождающих, структурных и поведенческих шаблонов проектирования. Шаблоны "Command", "Front Controller".
курсовая работа [3,1 M], добавлен 01.06.2014Установка привилегий доступа определенного пользователя, виды привилегий и ключевые слова в операторе. Лишение пользователя права назначать привилегии. Структура данных и алгоритм, описание работы программы, имя пользователя, пароль и создание прав.
курсовая работа [207,2 K], добавлен 12.08.2011Системный подход к программированию в операционных системах. Разработка программы, выполняющей запуск программ по расписанию. Понятие интерфейса и его назначение. Создание алгоритма и программы на его базе. Текст программы и руководство пользователя.
курсовая работа [581,0 K], добавлен 13.11.2009Цели, преимущества и проблемы внедрения системы CALS, необходимость и перспективы ее внедрения в России. Объектно-ориентированное моделирование, классификация паттернов и стратегии отображения конструкций языка EXPRESS в реляционную метамодель.
курсовая работа [51,1 K], добавлен 16.12.2009Разработка авторизированной информационной системы оформления кредитов на различные нужды потребителя. Описание особенностей применения паттернов проектирования. Исследование алгоритмов, реализующих бизнес-логику серверной части проектируемой системы.
курсовая работа [924,5 K], добавлен 24.01.2016История автоматизированного перевода. Современные компьютерные программы перевода. Сфера использования машинного перевода. Формы организации взаимодействия человека и ЭВМ в машинном переводе. Интерредактирование и постредактирование машинного перевода.
курсовая работа [30,0 K], добавлен 19.06.2015Раскрытие сущности планирования в программных компонентах. Понятие процесса и потока, их планирование в операционной системе. Категории и задачи алгоритмов планирования в пакетных и интерактивных системах. Планирование в системах реального времени.
контрольная работа [303,5 K], добавлен 24.10.2014История возникновения, эволюция машинного перевода. Основные требования к коммуникативной эквивалентности. Последовательность формальных операций в системе машинного перевода, ее концепции развития. Переводчик для офиса. Преимущества электронных словарей.
презентация [455,3 K], добавлен 22.10.2013Виды алгоритмов как логико-математических средств, характеристика свойств. Корректный вывод алгоритма при решении вычислительной задачи. Механизм реализации алгоритма, его описание. Решение задачи Майхилла при помощи автоматной модели поведения стрелка.
курсовая работа [53,6 K], добавлен 17.07.2014Обзор области генерации сетевого трафика. Описание выбранных методов, моделей, алгоритмов решения задач. Создание модели поведения пользователя, распределение количества посещённых страниц сайта. Выбор средств реализации программного продукта (проекта).
курсовая работа [1,3 M], добавлен 30.06.2017