Аннотация 2
Введение 4
Глава 1 Исследование особенностей анализа и выражения эмоций 8
1.1 Анализ и выражение эмоций в современных программных системах 8
1.2 Методы и способы анализа и выражения эмоций 12
1.3 Определение эмоционального направления текстового содержимого 18
1.4 Постановка задачи 25
Глава 2 Логическое проектирование чат-бота, поддерживающего анализ и выражение эмоций 26
2.1 Выбор языка программирования реализации чат-бота 27
2.2 Выбор сервиса для создания чат-бота 43
2.3 Концептуальная модель чат-бота 48
2.4 Логическое моделирование чат-бота 50
Глава 3 Физическое проектирование чат-бота. Оценка и обоснование экономической эффективности проекта 54
3.1 Физическое моделирования чат-бота 54
3.2 Руководство пользователя 69
3.3 Экономическое обоснование создания чат-бота 73
Заключение 78
Список используемой литературы 81
Приложение А Исходный код чат-бота 89
На современном этапе развития цивилизации глобальная сеть Интернет представляет собой многофункциональную сеть для коммуникаций, развлечений, обучения и работы. Коммуникации через Интернет - неотъемлемая часть жизни каждого человека. Сейчас в обществе имеется немало способов, форм и средств коммуникации, при этом большая часть из них взаимосвязана с новыми средствами, которые основаны на интернет-технологиях.
Компьютерная сеть Интернет, помимо обширного источника различной информации, является главным инструментом для виртуального общения. Поддержание связи с родственниками и просто близкими людьми, контакты с рабочими партнерами, новые знакомства - все это важная и неотъемлемая часть повседневной жизни каждого человека, к тому же подбор более практичных методов интернет-общения стал довольно разнообразным [17].
Интернет и компьютерные сети играют важную роль в процессах развития бизнеса, важной частью которого является обратная связь компаний и потребителей. Сетевые технологии обеспечивают каналы взаимосвязи между участниками процессов. В связи с этим очень важна обработка данных, которые поступают от пользователей. Процесс обработки данных является трудоемким и затратным по времени. Усовершенствовать его можно за счет автоматизации обработки текстовых массивов данных. Потребность в понимании эмоционального оттенка и смыслов текстов приводит к увеличению заинтересованности владельцев информационных систем к автоматизации выделения эмоций из текста, что связано с большей необходимостью в способах выявления реакций на действия пользователей. Процессы автоматизации обработки и понимания текстов интересуют преимущественно корпоративный и государственный сектор, которым важно адекватно откликаться на реакции пользователей системы на акции, события, реформы, законы.
Для того чтобы обеспечить выявление эмоциональной окраски текста, необходимо провести сентимент-анализ (анализ тональности текста). Сентимент- анализ, или анализ тональности текста, - это развивающееся направление компьютерной лингвистики, основной задачей которого является выявление в документе эмоционально окрашенной лексики и эмоциональной оценки объектов автором. Такой анализ является одним из основных направлений компьютерной лингвистики. Важно отметить также, что компьютерная лингвистика сейчас находится на пике своего развития. Главная задача компьютерной лингвистики заключается в том, чтобы определить в тексте фрагменты, характеризующиеся эмоциональным окрасом слов и словосочетаний, а также оценкой изучаемых объектов или предметов. Системы анализа текстов и эмоций также применяются в приложениях взаимодействия между людьми. Самым простым примером реализации системы в рамках информационных технологий является база данных, содержащая в себе вопросы и ответы. В первую очередь требуется решить проблему по определению содержания базы данных, в том числе реализовать на практике «программы-интерпретаторы». Содержание представляет собой комплекс вопросов и допустимых к ним вариантов ответов. Также база данных содержит в себе историю бесед перед вопросами и название соответствующей темы общения. Это является описанием программы, которую называют чат- ботами. Чат-бот - это компьютерная программа, которая ведет диалог с поддержкой разных способов ввода-вывода. Чат-боты, или виртуальные собеседники, чаще всего применяются для различных практических задач, в том числе для предоставления услуг пользователям или сбора информации. Отдельные чат-боты применяют непростые алгоритмы обрабатывания разговорной речи, однако, в то же время имеется множество элементарных алгоритмов распознавания слов-ключей на входе и выбора ответа. Этот выбор больше всего схож с шаблоном формулировки из базы данных. Чат-боты способны решать множество разных задач одновременно - от общения до рекомендаций по бизнесу, медицинских и юридических консультаций, онлайн-заказов товаров и услуг [36].
Таким образом, актуальность исследования проблематики анализа эмоционального направления массивов данных обусловливается тем, что онлайн- общение становится все более популярным, а также главным способом поддержания связи между пользователями в современных условиях развития информационных технологий. Это отражается в распространении программ обмена сообщениями, среди которых специализированные решения узкой направленности, а также различные социальные сети. В связи с этим целью работы является разработка чат-бота, поддерживающего анализ и выражение эмоций. Для достижения цели необходимо решить следующие задачи:
• исследовать особенности анализа и выражения эмоций;
• изучить состояние вопроса анализа и выражения эмоций в современных программных системах;
• определить методы и способы анализа и выражения эмоций;
• изучить способы определения эмоционального направления текстового содержимого;
• провести логическое проектирование чат-бота, выбрать технологии реализации проекта;
• реализовать проект чат-бота, поддерживающего анализ и выражение эмоций.
Объектом исследования выступают эмоции людей, которые можно распознать в тексте. Предмет исследования - чат-бот, поддерживающий анализ и выражение эмоций.
Структура работы обусловлена поставленной целью и задачами. Бакалаврская работа содержит введение, три главы, заключение, список использованной литературы, включающий 62 источника, заключение, приложение.
В первой главе производится анализ и определяются особенности выражения эмоций, психологические аспекты эмоций, рассматриваются техники автоматизации определения эмоций. Также определяются методы и способы анализа выражения эмоций, изучаются особенности определения эмоционального направления текстового содержимого.
Во второй главе производится процесс проектирования. Выбираются технологии и сервис для реализации чат-бота, рассматриваются концептуальные аспекты функционирования системы, описывается логическая модель работы проектируемого чат-бота.
В третьей главе происходит процесс реализации чат-бота, который сопровождается физическим моделированием чат-бота. Также разрабатывается руководство пользователя и производится расчет затрат на выполнение проекта с учетом затрат на заработную плату исполнителям, затрат на закупку или аренду оборудования, затрат на организацию рабочих мест и затрат на накладные расходы.
В результате выполнения работы достигнута поставленная цель: разработан чат-бот, поддерживающий анализ и выражение эмоций. При достижении цели решены следующие задачи:
• исследованы особенности анализа и выражения эмоций;
• изучено состояние вопроса анализа и выражения эмоций в современных программных системах;
• определены методы и способы анализа и выражения эмоций;
• изучены способы определения эмоционального направления текстового содержимого;
• проведено логическое проектирование чат-бота, выбраны технологии реализации проекта;
• реализован проект чат-бота.
При выполнении работы был проведен анализ и определены особенности выражения эмоций, психологические аспекты эмоций, рассмотрены техники автоматизации определения эмоций. Также были определены методы и способы анализа выражения эмоций, изучены особенности определения эмоционального направления текстового содержимого.
В процессе проектирования выбраны технологии и сервис для реализации чат-бота, рассмотрены концептуальные аспекты функционирования системы, описана логическая модель работы проектируемого чат-бота. Разработанный чат- бот состоит из нескольких частей, которые при взаимодействии друг с другом обеспечивают корректную работу всего приложения: сама программа, которая выполняет все заявленные требования; база данных, являющаяся хранилищем необходимой информации; платформа, на которой будет работать программа (бот), и сервер, на который будет выложен код программы и откуда будет осуществляться ее запуск. В качестве сервиса для чат-бота выбран Telegram. Помимо стандартного обмена сообщениями в диалогах и группах, в мессенджере можно хранить неограниченное количество файлов, вести каналы (микроблоги), создавать и использовать боты. При помощи специального API сторонние разработчики могут создавать боты. Telegram-боты - разновидность чат-ботов. Их суть заключается в реакции на определенные сообщения от пользователей. При регистрации бота выдается уникальный ключ, с помощью которого в дальнейшем и будет происходить связь между клиентом и сервером. Функционирование приложения может быть описано следующим образом: когда пользователь взаимодействует с чат-ботом в Telegram, API-интерфейс осуществляет отправку данных о взаимодействии в код по HTTP-запросу, в результате чего код также делает отправку сведений, который обозначают, каким образом нужно реагировать. В результате Bot API можно представить в качестве посредника, осуществляющего взаимодействие бота в Telegram с логикой приложения. Bot API включает следующие компоненты: обновления и методы. К разработчику поступают обновления, которые показывают, как пользователь взаимодействовал с ботом. При этом методы вызова требуются с той целью, чтобы бот мог исполнять ряд действий, среди которых отправление сообщений пользователям.
Процесс реализации чат-бота сопровождался физическим моделированием чат-бота, при этом были реализованы компоненты и модули системы, разработан программный код, проверена работоспособность созданного программного продукта. Также разработано руководство пользователя и рассчитано экономическое обоснование создания чат-бота. В качестве языка программирования чат-бота выбран PHP, средой разработки послужила программа PHPStorm. В качестве API использовано Telegrambot API, создавался бот с помощью Botfather, при этом был получен токен для обращения к API Telegram.
1. Большакова, Е.И. Автоматическая обработка текстов на естественном языке и анализ данных: учеб. пособие / Е.И. Большакова, К.В. Воронцов, Н.Э. Ефремова, Э.С. Клышинский, Н.В. Лукашевич, А.С. Сапин. - М.: Изд-во НИУ ВШЭ, 2017. - 269 с. - Текст : непосредственный.
2. Боярский, К.К. Введение в компьютерную лингвистику: учеб. пособие. - СПб: НИУ ИТМО, 2013. - 72 с. - Текст : непосредственный.
3. Васильев, В.Г. Классификация отзывов пользователей с использованием фрагментных правил / В.Г. Васильев, М.В. Худякова, С. Давыдов // Компьютерная лингвистика и интеллектуальные технологии: по материалам ежегодной международной конференции «Диалог». Вып. 11 (18), - М.: Изд-во РГГУ, 2012. - С. 66-76. - Текст : непосредственный.
4. Вежбицкая, А. Толкование эмоциональных концептов / А. Вежбицкая // Язык. Культура. Познание: сб. ст. - М.: Русские словари, 1996. - С. 201. - Текст : непосредственный.
5. Вересников, Ю.К. О надежности систем обработки информации / Ю.К. Вересников // Актуальные проблемы современной науки. - 2011. - № 2 (58). - С. 193-195. - Текст : непосредственный.
6. Егорова, А.А. Базы данных: учебно-методическое пособие по проведению практических занятий / А.А. Егорова. - М.: МГТУ ГА, 2017. - 36 с. - Текст : непосредственный.
7. Елиферов, В.Г. Бизнес-процессы: регламентация и управление: / В.Г. Елиферов, В.В. Репин.: ИНФРА-М, 2011. - 319 с. - Текст : непосредственный.
8. Жуков, Р.А. СУБД с открытым исходным кодом: возможность применения алгоритмов распараллеливания / Р.А. Жуков // Технические науки. - 2015. - № 1-2 (35-36). - С. 20-21. - Текст : непосредственный.
9. Захаров, В.Н. Инструменты моделирования бизнес-процессов / В.Н Захаров // Вестник МГОУ. Серия: Экономика. - 2016. - №3. - С. 48-53. - Текст : непосредственный.
10. Кальян, В.П. Исследование применимости артикуляционных моделей в задачах распознавания эмоций по речи / В.П. Кальян. Докл. 9-й Междунар. конф. «Интеллектуализация обработки информации». - М.: ТОРУС ПРЕСС, 2011. - С. 334-349. - Текст: непосредственный.
11. Кальян, В.П. Морфология ситуации в системе распознавания эмоционального состояния человека по речи / В.П. Кальян // Модели и методы распознавания речи. - М.: ВЦ РАН им. А. А. Дородницына, 2012. - С. 92-102. - Текст : непосредственный.
12. Кальян, В.П. Построение алгоритмов распознавания эмоционального состояния человека по пара- и экстралингвистическим особенностям речи / В.П. Кальян // Модели и методы распознавания речи. - М.: ВЦ РАН им. А.А. Дородницына, 2010. - С. 24-46. - Текст : непосредственный.
13. Кальян, В.П. Разработка алгоритмов распознавания эмоционального состояния человека по паралингвистическим особенностям речи / В.П. Кальян // Докл. 15-й Всеросс. конф. «Математические методы распознавания образов». - М.: МАКС-Пресс, 2011. - С. 334-349. - Текст : непосредственный.
14. Котельников, Е.В. Автоматический анализ тональности текстов на основе методов машинного обучения / Е.В. Котельникова, М.В. Клековкина // Компьютерная лингвистика и интеллектуальные технологии: по материалам ежегодной международной конференции «Диалог». Вып. 11 (18), - М.: Изд-во РГГУ, 2012. - С. 27-36. - Текст : непосредственный.
15. Коцюба, И.Ю. Основы проектирования информационных систем. Учебное пособие / И.Ю. Коцюба, А.В. Чунаев, А.Н. Шиков. - СПб: Университет ИТМО, 2015. - 206 с. - Текст : непосредственный.
...