Эмоции являются неотъемлемым атрибутом в жизни каждого человека и отражают его психологическое состояние. На протяжении истории человечество использовало различные способы выражения эмоциональных состояний, включая вербальное и невербальное контактирование.
Эмоции – это состояние ума, связанное с чувствами и мыслями, обычно направленными на конкретный объект. Эмоция – это поведение, которое отражает личную значимость или мнение относительно нашего взаимодействия с другими людьми или в связи с определенным событием. Человек способен идентифицировать эмоции из текстовых данных и может понять содержание текста. Но если подумать о машинах, способны ли они идентифицировать эмоции из текста? В данной статье проведен обзор свежайших моделей распознавания эмоций с помощью технологий интеллектуального анализа данных, а именно обработки естественного языка (NLP).
Tone Analyzer от IBM
Служба IBM Watson™ Tone Analyzer использует лингвистический анализ для обнаружения эмоциональных и языковых тонов в письменном тексте. Сервис может анализировать тон как на уровне документа, так и на уровне предложения. Если письменное общение или отзывы о вашем бизнесе являются важной частью его успешности и популярности, то данный сервис можно использовать, чтобы понять, как воспринимаются письменные сообщения, а затем улучшить тон этих сообщений. Предприятия могут использовать эту услугу, чтобы узнать тон общения своих клиентов и соответствующим образом реагировать на каждого клиента или понять и улучшить свои разговоры с клиентами.
Сервис IBM Tone Analyzer анализирует текст, а точнее каждое слово в нём, и ассоциирует его с какой-либо эмоцией. К примеру, слово difficult относится к негативным эмоциям, возможно, к злости. Так же и disappointing. А слова we, our, need означают открытость собеседника и его желание вам понравиться.
Tone Analyzer распознает следующие эмоции:
1. Злость.
2. Открытость.
3. Уверенность.
4. Радость.
5. Приятность.
Кроме этого, можно не только распознавать текст собеседника, но и проверять свои письма перед отправкой. Tone Analyzer может подбирать смягчающие или, наоборот, усиливающие синонимы, чтобы менять тон письма.
К сожалению, сервис работает только с английским языком и надеяться на поддержку русского стоит лишь в том случае, если сторонние разработчики возьмутся за локализацию. Но Tone Analyzer – это пример того, как технологии внедряются в те аспекты жизни, которые раньше были для них недостижимыми.
Следует отметить, что данное решение является уже отнюдь не авангардом, так как разработано более пяти лет назад, однако поддерживается и обновляется как по части качества распознавания и производительности обученных моделей, так и по уровню предоставления сервиса. Ниже посмотрим на альтернативы IBM Tone Analyzer в 2022 году.
Потребителей продукта Tone Analyzer компании IBM можно наглядно классифицировать по роду деятельности, стране, размеру компании или организации. Как предоставляет информацию портал enlyft.com, эти показатели проиллюстрированы на графиках ниже:
Не сложно заметить, что лидирующим потребителем продукта IBM Tone Analyzer являются учреждения высшего образования. Следом идут IT-компании и различное программное обеспечение, которое использует сервис уже в качестве API. Заинтересованность в сервисе IBM Tone Analyzer учреждениями высшего образования объясняется, в основном, тем, что высший менеджмент использует технологии интеллектуального анализа данных при оценке личностных качеств своих сотрудников. Более того, сервис распознавания эмоций позволил улучшить качество обратной связи с помощью распознавания тональности отзывов (на примере Seneca College). А в Фордемском университете начали применять сервис IBM Tone Analyzer для оценки написанных студентами эссе.
Самым главным потребителем данного продукта являются Соединенные Штаты. Далее с незначительным отрывом следуют уже Канада, Бразилия, Франция, Индия, Новая Зеландия и Венесуэла.
По цене IBM предлагает следующие варианты:
Использование | Пакет Lite | Пакет Standard |
1-250K шт/мес | Первые 30K бесплатно | 0.003$/шт |
250K-5M шт/мес | N/A | 0.001$/ шт |
5M+ шт/мес | N/A | 0.0002$/ шт |
За один экземпляр ($/мес) | N/A | --- |
Еще один язык ($/мес) | N/A | -- |
Своя WKS модель ($/модель/мес) | 1 бесплатная модель | 800$ |
Своя классификационная модель ($/модель/мес) | · 1 бесплатная модель | · 25$ · 1 бесплатная модель |
Amazon Comprehend
Amazon Comprehend – решение от Amazon, представленное на AWS re:Invent 2017 в 2017-м году. Amazon Comprehend такой же сервис обработки естественного языка (NLP), в котором для поиска ценной информации и взаимосвязей в тексте применяются технологии машинного обучения. Amazon Comprehend также предоставляет API для распознавания сущностей, в том числе пользовательских, пользовательской классификации, извлечения ключевых фраз, анализа эмоциональной окраски и многого другого.
Использование Comprehend Custom позволяет создавать и обучать новые модели, используя данные, специфичные для ваших собственных вариантов использования. Это позволяет вам распознавать определенные термины, которые важны для вашей организации. Например, у вас могут быть документы, содержащие номер клиента, который вы хотите обнаружить с помощью Comprehend. Создание собственной модели, обученной на собственных данных, позволит вам это сделать. Таким образом, у вас может быть документ со следующим текстом. Затем это можно обнаружить следующим образом, используя вашу собственную настроенную модель, показывающую объект, категорию и рейтинг достоверности.
Сервисная интеграция. AWS создала Amazon Comprehend для совместимости с рядом других сервисов AWS, что позволяет легко сопоставлять, обрабатывать и анализировать текстовые результаты в любом масштабе. Он интегрируется с AWS Lambda для бессерверной обработки, Amazon S3 для хранения, AWS Key Management Service для шифрования данных, Kinesis Data Firehose для анализа в реальном времени и, конечно же, Identity Access Management (IAM) для управления контролем доступа.
Высокая масштабируемость. Огромным преимуществом Amazon Comprehend является то, что он может анализировать миллионы ваших документов и получать ценную информацию о хранимом тексте. При правильном использовании это может изменить правила игры для вашего бизнеса с данными, которые он производит. Например, позволяя вам быстро реагировать на настроения клиентов, давая вам возможность превратить негатив в позитив.
Глубокое обучение. Модели машинного обучения, лежащие в основе архитектуры Amazon Comprehend, постоянно обучаются с использованием последних данных из разных отраслей и доменов со всего мира. И это помогает поддерживать высокий уровень точности, который со временем становится только лучше и лучше. Понимание медицины.
Наконец, хочется выделить связанную с Amazon Comprehend услугу, а именно Amazon Comprehend Medical. Благодаря НЛП, который, как мы уже знаем, представляет собой процесс извлечения смысла и понимания из языка и возможности использовать эту способность в области медицины, он может иметь много преимуществ, которые могут привести к улучшению общего самочувствия пациента. Быстрым примером этого является то, что НЛП может быть использовано для выявления проблем с потенциальным риском для здоровья пациента путем изучения его истории болезни. И здесь в игру вступает Amazon Comprehend Medical.
Comprehend Medical – это сервис, следующий за Comprehend, который позволит вам извлекать и идентифицировать множество медицинских и связанных со здравоохранением атрибутов, содержащихся в любых неструктурированных медицинских текстовых файлах и/или документах. Некоторые из таких примеров: лекарства, медицинские условия, лечение и процедуры, анатомия и защищенная медицинская информация, PHI. При изучении неструктурированных медицинских заметок вы используете API обнаружения сущностей и обнаружения текста PHI. И это можно сделать с помощью интерфейса командной строки AWS и/или SDK. Взаимосвязь между атрибутами извлеченных медицинских данных может определяться автоматически, что приводит к более быстрой диагностике и, в свою очередь, к более быстрому принятию решений о лечении, выздоровлении и реабилитации. (источник)
Что касается ценового предложения, то оно выглядит так:
Возможность | До 10 миллионов единиц | 10–50 миллионов единиц | Более 50 миллионов единиц |
Извлечение ключевых фраз | 0,0001 USD | 0,00005 USD | 0,000025 USD |
Анализ эмоций | 0,0001 USD | 0,00005 USD | 0,000025 USD |
Targeted Sentiment | 0,0001 USD | 0,00005 USD | 0,000025 USD |
Распознавание сущностей | 0,0001 USD | 0,00005 USD | 0,000025 USD |
Определение языка | 0,0001 USD | 0,00005 USD | 0,000025 USD |
Обнаружение событий по их типу | 0,003 USD | 0,0015 USD | 0,00075 USD |
Синтаксический анализ | 0,00005 USD | 0,000025 USD | 0,0000125 USD |
Сервис Amazon Comprehend обширно используется такими компаниями как ExonMobil, PubNub, Gallup, Assent и другими. Внедрение, например, такого дополнительного бизнес-процесса как распознавания настроений своих клиентов совершенствует глобальные рабочие процессы и помогает подготовиться к неожиданным сбоям.
По словам Р. Макфарланда, директора по обработке и анализу данных компании LexisNexis: «Мы помогаем юристам принимать информированные решения, предоставляя им ценные аналитические сведения. Поэтому наша компания всегда ищет более удачные способы извлекать нужные данные из юридических документов. Благодаря автоматическому машинному обучению сервиса Amazon Comprehend (ML) мы теперь можем создавать точные модели распознавания пользовательских сущностей, не вникая в сложности, связанные с ML. Самые интересные для нас сущности – судья и прокурор – быстро идентифицируются из более чем 200 миллионов документов с точностью выше 92 %».
Forsta
Forsta, компания, входящая в Press Ganey (медицинская компания из Саут-Бенда, штат Индиана, известная разработкой и распространением опросов об удовлетворенности пациентов), поддерживает платформу HX (Human Experience) – комплексную платформу технологий для изучения опыта и исследований, которая устраняет разрозненность между CX (клиентский опыт), опытом сотрудников (EX), исследованиями рынка, чтобы компании могли получить более глубокое и полное понимание опыта своей аудитории. Создана в 2021 году. Платформа HX собирает и анализирует данные, а затем преобразует полученные данные в действия, которые можно использовать для информирования при принятии решений и стимулирования роста. Технологии Forsta в сочетании с командой опытных консультантов обслуживают организации в различных отраслях, включая финансовые услуги, здравоохранение, гостиничный бизнес, исследования рынка, профессиональные услуги, розничную торговлю и технологии. Компания Forsta признана лидером Gartner® Magic Quadrant™ 2021 года в категории «Голос клиента».
К сожалению, прайс-лист сервиса Forsta был недоступен, а его можно было получить только при отправке специального письма на их корпоративную почту, что очень затруднило получение нужной для нас информации. Видимо это для них все еще коммерческая тайна и предоставляется, непосредственно, заинтересованному заказчику.
Сервисы компании Forsta по распознаванию эмоций в текстовой информации используют такие крупные игроки на мировом рынке как Ebay, Canon, Avon, Siemens и другие. В целом, количество пользователей Forsta составляет свыше 2500 компаний и предприятий в более чем 100 странах мира.
Непосредственно, исследователи и недавние достижения
Перед тем, как рассказывать о последних достижениях в области сентиментального анализа текста, следует отметить, что почти все примеры, которые будут ниже описаны, являются усовершенствованием тех подходов, которые были использованы ранее для решения смежных или похожих на нашу задач.
Начнем с самого простого. В работе демонстрируется решение задачи детектирования депрессии для русского языка. Авторы использовали датасет текстовых сообщений ВКонтакте и сравнили обученные классификаторы Dummy, Random Forest и SVM. Из основных моментов можно отметить только блок извлечения признаков, таких как среднее количество слов на предложение, среднее количество символов на слово и другие относительные метрики по типу средней глубины синтаксического дерева.
Другим интересным примером служит работа, посвященная распознаванию эмоций с помощью модели BERT. Особенностью данной работы можно отметить адаптирование известной модели BERT под прогнозирование эмоций продолжающегося диалога, которые в значительной степени полагаются на контекстно-зависимое понимание на уровне предложений. Говоря простым языком, решалась задача классификации по 4 классам: Angry, Joy, Neutral, Sadness. В сравнении показываются FriendBERT и ChatBERT, которые по итогу исследования представили точность (MacroAVG F-меру), равную 73% для первой и 69,5% для второй модели соответственно.
Для желающих построить собственные модели
Во втором десятилетии XXI века создание и обучение собственных моделей для решения различных задач машинного и глубокого обучения стало уже не мечтой, а вполне достижимой реальностью. Благодаря наличию мощных вычислительных ресурсов и облачных сервисов, мы сегодня можем разработать и обучить собственную нейронную сеть, чего нельзя отметить и для распознавания психологических состояний и эмоций в тексте. Но сначала поговорим о предыдущих работах и колоссальном труде ученых и любителей, проделанных и осуществляемых по сей день в данной области.
В 1998 энтузиастами компьютерной лингвистики из США была основана серия ежегодных соревнований-фестивалей SemEval, главной задачей которых было усовершенствование современных подходов, методов и алгоритмов семантического анализа текста. В 2019 году на очередном SemEval-2019 был предложен целый трек «EmoContext», посвященный определению эмоций в текстовых беседах с учетом контекста переписки. Ссылка на источник данных для обучения.
В статье описывается подробное описание одной из моделей для решения данной задачи.
Другим неплохим источником для самостоятельного создания и обучения своей модели является kaggle, на котором предлагается набор данных твитов за определенный период времени с размеченными видами эмоций, перейти к датасету можно по следующей ссылке.
Во втором разделе работы авторы разбирают датасеты для обучения моделей распознавания эмоций с помощью текста. Там приведено порядка 13 датасетов с подробным описанием, однако, все они предназначены для моделей с английским языком. Более того, в той же статье рассматриваются основные подходы, которые используются при построении этих моделей.
Самым, пожалуй, простым является Rule-based подход или, как его еще называют, подход, основанный на правилах. Он описывает основные грамматические и логические правила, которым необходимо следовать, чтобы распознать эмоции в документах. Можно легко создать правила для нескольких документов; однако при большом количестве документов могут возникнуть сложности. Подход к построению правил включает в себя методы распознавания ключевых слов (keyword recognition, KR) и лексического сходства (lexical affinity, LA). Основными кирпичами данных подходов служат словари или словари эмоций. Задача состоит в том, чтобы найти вхождения этих искомых слов в текст на уровне предложения. Как только ключевое слово идентифицируется в предложении, ему присваивается определенная метка. Например, если сконструированный словарь эмоций содержит радость, а текст, по которому должна быть определена эмоция, гласит: «Я испытал такую радость, увидев своего отца впервые за десять лет», предложение эмоционально маркируется с помощью ключевого слова радость. Этот подход, хоть простой и понятный, но сталкивается с проблемами, включая потребность в словаре эмоций, содержащем большое количество категорий эмоций, поскольку ограниченное количество ключевых слов может сильно повлиять на эффективность подхода из-за неоднозначности ключевых слов и недостатка лингвистической информации.
Вторым подходом является машинное обучение. В большинстве случаев это простейший классификатор, использующий классические, а иногда гибридные или модифицированные алгоритмы вроде Наивного Байеса, метода опорных векторов и т.д. Однако, на сегодняшний день, в моделях начали преобладать алгоритмы глубокого обучения, и все чаще они превосходят традиционные алгоритмы по своей точности, производительности и другим важным показателям. Невозможно не оценить работу рекуррентных нейронных сетей в различных их исполнениях, например, модификации Nested и Bidirectional.
Что касается отечественных датасетов на русском языке, то тут несомненным лидерством обладает Яндекс. Известно, что датасеты от крупнейшего источника размеченных людьми данных для задач машинного обучения Toloka ежедневно пополняются миллионами записей. На том же kaggle есть подробно разобранная задача сентиментального анализа на примере датасета с Toloka.
Заключение
В заключение, хочется сказать, что темпы развития обработки текстовой информации с помощью компьютеров начинают набирать новый оборот. В первую очередь, это позволило различных отраслям улучшить эффективность своей работы и дало толчок усовершенствованию системы обратной связи с клиентами будь то учреждениям образования или какому-либо бизнесу. Если вы молодой и растущий бизнес, для которого очень важна обратная связь и отзывы потребителей – то здесь выбор очевиден. Как показывает опыт различных мелких и крупных компаний, прислушивание к мнению своих клиентов всегда позволяет улучшить эффективность оказываемой услуги или качество производимой продукции.
В данном обзоре мы всего лишь перечислили основных игроков, которые уже завоевали значительную часть зарубежного рынка и при этом не стоят на месте, постоянно улучшая свои сервисы и модели. Более того, хорошее развитие получила и наука в области распознавания эмоций и психологических состояний человека. Это доказывается наличием большого количества публикаций исследований и продолжающейся «гонкой вооружений» среди специалистов машинного и глубокого обучения. Как отмечают ученые, занимающиеся обработкой естественного языка, сегодня тренд за гибридными моделями, сочетающими в себе все хорошие качества каждой из их составляющих.
Стоит также отметить, что на сегодняшний день все больше приобретают широкую популярность системы распознавания речи с дальнейшим анализом эмоций в распознанном фрагменте текста. Перечисленные выше модели распознавания эмоций в основном работают именно таким образом. В следующих обзорах мы их обязательно рассмотрим и опишем их концептуальную структуру.