Дипломная работа: Выявление паттернов поведения пользователей в системах машинного восприятия методами машинного обучения

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

1.4 Человек и его паттерны поведения: выводы

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

ГЛАВА 2. МАШИННОЕ ОБУЧЕНИЕ В СИСТЕМАХ МАШИННОГО ВОСПРИЯТИЯ

2.1 Системы машинного восприятия

Информационные технологии развиваются по мере возрастания потребности человечества в получении информации нового уровня на базе данных и сведений, поступающих из окружающей среды. Каждый день эта потребность становится все больше, а задачи, которые с ней связаны - все сложнее, поэтому и требования к информационным технологиям тоже растут. Так свое развитие получил Искусственный Интеллект - комплекс наук, исследующий? проблемы создания и развития интеллектуальных компьютерных программ и систем [38]. В свою очередь, одной из важнейших задач Искусственного Интеллекта является развитие такого свойства как машинное восприятие (Machine Perception) - способности компьютерных систем воспринимать и интерпретировать информацию извне подобно человеку [39]. Развитие машинного восприятия позволит научить машину осознанно принимать сложные решения и при этом построить механизм принятия решения таким образом, чтобы она смогла «объяснить» человеческим языком причину его выбора [40]. К задачам машинного восприятия относится и большой спектр задач, связанный с человеко-машинным взаимодействием и восприятием и анализом окружающей среды в целом - на текущий момент выделяют следующие глобальные области: машинное зрение (Machine Vision), машинный слух (Machine Hearing) и машинное осязание (Machine Touch) [40]. Более подробно сферы применения и задачи, решаемые в рамках каждой из глобальных областей, были рассмотрены в ходе исследования в рамках бакалаврской выпускной квалификационной работы [40].

На сегодняшний день системы машинного восприятия в чистом виде фактически на практике не существуют, поскольку есть масса задач, требующих своего решения прежде, чем такая вещь станет тиражируемой - сейчас же в основном полученные результаты являются заслугой экспериментов и исследований в такой области науки, как робототехника. Яркими примерами достижений в этой области являются эмоциональный человекоподобный робот Sophia от Hanson Robotics, помощник Айко Чихира, созданная японской компанией Toshiba, справочная интеллектуальная машина Semmi на главном вокзале Берлина и российский робот-космонавт FEDOR [41]. Однако несмотря на это, технологии машинного восприятия внедряются в те или иные отдельные задачи информационных систем.

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

2.2 Машинное обучение: основные принципы применения инструмента

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

Существует несколько подходов к определению машинного обучения, поскольку формального определения не существует, однако в контексте данной работы для машинного обучения будет приведена следующая усредненная трактовка: это наука, представляющая собой подраздел Искусственного Интеллекта и изучающая методы и способы построения алгоритмов, которые позволяют выявлять закономерности в ограниченном наборе данных [42, 43].

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

обучение с учителем (supervised learning): совокупность методов, направленных на решение задач, для которых существует выборка данных с известными ответами, т.е. обучающая выборка, и требуется найти зависимость между описательными признаками и соответствующими ответами - это задачи классификации, регрессии, ранжировании, прогнозирования;

обучение без учителя (unsupervised learning): совокупность методов по решению задач, для которых ответы неизвестны, и выявить закономерности в данных можно только используя описательные признаки - это задачи кластеризации, поиска ассоциативных правил, визуализации и др.

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

Строго формализованного порядка решения задачи машинного обучения как такового нет, однако большинство исследователей в среднем выделяет следующие этапы в разработке решения (рис. 2) [42-45]:

Рисунок 2. Процесс решения задачи инструментами машинного обучения

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

Разработка модели признаков или feature engineering. Для того, чтобы использовать известные характеристики объектов, обозначенных на этапе постановки задачи, при построении алгоритма, необходимо переложить их на математический язык - такие характеристики называют признаками. Этап разработки признаков классически делят на извлечение признаков (Feature Extraction), преобразование признаков (Feature Transformation) и выбор признаков (Feature Selection). Данный этап считается одним из самых сложных и творческих, поскольку чаще всего сопряжен с исследованием объекта задачи на предмет того, какого рода данные об объекте в целом можно получить из сырых данных, как их можно извлечь и как - описать математически (подробнее этап разработки признаков будет рассмотрен в главе 3) [46, 47].

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

Выбор функционала качества (метрики). Для того, чтобы в дальнейшем иметь возможность оценить построенную модель адекватно требуемой исходной задаче, необходимо сформировать метрики качества. Метрика должна соответствовать бизнес-требованиям и учитывать особенности данных. Чаще всего в качестве основной метрики используют среднеквадратичную ошибку.

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

Построение модели. На данном этапе происходит поиск наиболее оптимального алгоритма(-ов) среди различных семейств алгоритмов, разработанных в машинном обучении, в соответствии с определенными ранее задачей и метриками качества.

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

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

2.3 Машинное обучение для задачи выявления паттернов поведения пользователя в рекомендательных системах

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

Как уже упоминалось ранее в главе 1, выявление паттернов поведения пользователя играет большую роль в развитии информационных технологий, в том числе человеко-машинного взаимодействия, которое является неотъемлемой частью систем машинного восприятия. Частным примером систем, использующих технологии машинного восприятия, являются рекомендательные системы - выбор в пользу рекомендательных систем был также подробно обоснован ранее, в параграфе 2.1. Таким образом, приходим к следующей задаче: выявление паттернов поведения пользователя в рекомендательных системах для улучшения формируемых предсказаний. Это и есть первый этап в процессе решения задачи машинного обучения.

Теперь можно перейти к рассмотрению существующих подходов к решению данной задачи.

Для начала стоит отметить, что по мере того, как данных вокруг становилось все больше, а потребность в улучшении качества рекомендаций также росла, появился новый подкласс рекомендательных систем - контекстно-зависимые рекомендательные системы (Context-Aware Recommender Systems, CARS), которые используют контекстную информацию в дополнение к классическим двумерным подходам к формированию рекомендаций, предоставляя более персонализированные рекомендации для пользователей. Такие системы используются в большом количестве сфер деятельности человека: электронной коммерции и рекламе, медиа и развлечениях (особенно популярны исследования рекомендаций музыки и фильмов, а также новостных порталов), туризме, а также образовании [49, 50].

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

Источник: https://otherreferats.allbest.ru/download/1226051/