Содержание[Скрывать][Показывать]
К 2021 году предприятия освоят сбор данных о взаимодействии с потребителями.
С другой стороны, чрезмерное доверие к этим точкам данных часто приводит к тому, что организации рассматривают данные клиентов как статистику — довольно одномерный подход к выслушиванию мнения клиентов.
Голос клиента нельзя пометить или преобразовать в номер.
Его нужно прочитать, сжать и, прежде всего, понять.
Дело в том, что компании должны активно прислушиваться к тому, что говорят их потребители по каждому каналу, по которому они взаимодействуют с ними, будь то телефонные звонки, электронные письма или чат.
Каждая компания должна уделять первоочередное внимание мониторингу и оценке отзывов потребителей, но компании традиционно изо всех сил пытались обрабатывать эти данные и превращать их в содержательную информацию.
Это больше не относится к анализу настроений.
В этом уроке мы более подробно рассмотрим анализ настроений, его преимущества и способы использования НЛТК библиотека для анализа тональности данных.
Что такое анализ настроений?
Анализ настроений, часто известный как анализ разговоров, представляет собой метод анализа чувств, мыслей и взглядов людей.
Анализ настроений позволяет компаниям лучше понять своих потребителей, увеличить доход и улучшить свои продукты и услуги на основе отзывов клиентов.
Разница между программной системой, способной анализировать настроения клиентов, и продавцом/представителем отдела обслуживания клиентов, пытающимся вывести их, заключается в чистой способности первого извлекать объективные результаты из необработанного текста — в первую очередь это достигается с помощью обработки естественного языка (NLP) и обучение с помощью машины (pin drop).
От идентификации эмоций до категоризации текста анализ настроений имеет широкий спектр применений. Мы используем анализ тональности текстовых данных, чтобы помочь фирме отслеживать тональность оценок продукта или отзывов потребителей.
Различные сайты социальных сетей используют его для оценки настроения сообщений, и если эмоции слишком сильны или жестоки или падают ниже их порога, сообщение либо удаляется, либо скрывается.
Анализ настроений можно использовать для всего: от идентификации эмоций до категоризации текста.
Наиболее популярно использование анализа настроений на текстовых данных, где он используется, чтобы помочь компании отслеживать настроения оценок продуктов или комментариев потребителей.
Различные сайты социальных сетей также используют его для оценки настроения сообщений, и если эмоции слишком сильны или жестоки или падают ниже их порога, они удаляют или скрывают сообщение.
Преимущества анализа настроений
Ниже приведены некоторые из наиболее важных преимуществ анализа настроений, которыми нельзя пренебрегать.
- Помощь в оценке восприятия вашего бренда целевой аудиторией.
- Прямая обратная связь с клиентами предоставляется, чтобы помочь вам в разработке вашего продукта.
- Увеличивает доход от продаж и поиск.
- Возможности дополнительных продаж для чемпионов вашего продукта увеличились.
- Упреждающее обслуживание клиентов является практичным вариантом.
Цифры могут предоставить вам такую информацию, как исходная эффективность маркетинговой кампании, степень вовлеченности в поисковый звонок и количество заявок, ожидающих обработки в службе поддержки.
Однако он не скажет вам, почему произошло конкретное событие или что его вызвало. Инструменты аналитики, такие как Google и Facebook, например, могут помочь вам оценить эффективность ваших маркетинговых усилий.
Но они не дают вам глубоких знаний о том, почему эта конкретная кампания была успешной.
Анализ настроений может изменить правила игры в этом отношении.
Анализ настроений — Постановка проблемы
Цель состоит в том, чтобы определить, вызывает ли твит положительные, отрицательные или нейтральные эмоции в отношении шести авиакомпаний США на основе твитов.
Это стандартная контролируемая обучающая работа, в которой мы должны разделить текстовую строку на заранее определенные категории с учетом текстовой строки.
Решения
Мы будем использовать стандартный процесс машинного обучения для решения этой проблемы. Мы начнем с импорта необходимых библиотек и наборов данных.
Затем мы проведем некоторый исследовательский анализ данных, чтобы определить, есть ли в данных закономерности. После этого мы предпримем предварительную обработку текста, чтобы преобразовать текстовые входные числовые данные, которые обучение с помощью машины система может использовать.
Наконец, мы будем обучать и оценивать наши модели анализа настроений, используя методы машинного обучения.
1. Импорт библиотек
Загрузите необходимые библиотеки.
2. Импорт набора данных
Эта статья будет основана на наборе данных, который можно найти на Github. Набор данных будет импортирован с помощью функции Pandas read CSV, как показано ниже:
Используя функцию head(), проверьте первые пять строк набора данных:
Вывод:
3. Анализ данных
Давайте изучим данные, чтобы определить, есть ли какие-либо тенденции. Но сначала мы изменим размер графика по умолчанию, чтобы сделать диаграммы более заметными.
Начнем с количества твитов, полученных каждой авиакомпанией. Для этого воспользуемся круговой диаграммой:
В выходных данных отображается процент общедоступных твитов для каждой авиакомпании.
Давайте посмотрим, как чувства распределяются по всем твитам.
Вывод:
Давайте теперь рассмотрим распределение настроений для каждой конкретной авиакомпании.
Согласно результатам, основная масса твитов практически для всех авиакомпаний носит неблагоприятный характер, за ними следуют нейтральные и хорошие твиты. Virgin America, пожалуй, единственная авиакомпания, где соотношение трех чувств сопоставимо.
Вывод:
Наконец, мы воспользуемся библиотекой Seaborn, чтобы получить средний уровень достоверности для твитов из трех категорий настроений.
Вывод:
Результат показывает, что уровень достоверности для отрицательных твитов выше, чем для положительных или нейтральных твитов.
4. Очистка данных
В твитах можно встретить множество сленговых терминов и знаков препинания. Прежде чем мы сможем обучить модель машинного обучения, нам нужно очистить наши твиты.
Однако, прежде чем мы начнем очищать твиты, мы должны разделить наш набор данных на наборы функций и меток.
Мы можем очистить данные после того, как разделим их на функции и обучающие наборы. Для этого будут использоваться регулярные выражения.
5. Числовое представление текста
Для обучения моделей машинного обучения статистические алгоритмы используют математику. Математика, с другой стороны, работает исключительно с числами.
Сначала мы должны преобразовать текст в числа, чтобы с ним могли работать статистические алгоритмы. Есть три основных способа сделать это: Bag of Words, TF-IDF и Word2Vec.
К счастью, класс TfidfVectorizer в модуле Python Scikit-Learn можно использовать для преобразования текстовых функций в векторы функций TF-IDF.
6. Создание управляемых данными обучающих и тестовых наборов
Наконец, мы должны разделить наши данные на наборы для обучения и тестирования, прежде чем обучать наши алгоритмы.
Обучающий набор будет использоваться для обучения алгоритма, а тестовый набор — для оценки производительности модели машинного обучения.
7. Разработка модели
После того, как данные были разделены на обучающие и тестовые наборы, методы машинного обучения используются для извлечения уроков из обучающих данных.
Вы можете использовать любой алгоритм машинного обучения. Однако подход Random Forest будет использоваться из-за его способности справляться с ненормализованными данными.
8. Прогнозы и оценка модели
После того, как модель обучена, завершающим этапом является прогнозирование. Для этого мы должны применить метод прогнозирования к обученному нами объекту класса RandomForestClassifier.
Наконец, меры классификации, такие как метрики путаницы, меры F1, точность и т. д., могут использоваться для оценки производительности моделей машинного обучения.
Вывод:
Как видно из результатов, наш алгоритм достиг точности 75.30.
Заключение
Анализ настроений — одна из наиболее частых задач НЛП, поскольку она помогает определить общее общественное мнение по конкретному вопросу.
Мы увидели, как несколько библиотек Python могут помочь в анализе настроений.
Мы провели исследование общедоступных твитов о шести авиакомпаниях США и достигли точности примерно 75%.
Я бы посоветовал вам попробовать другой алгоритм машинного обучения, такой как логистическая регрессия, SVM или KNN, чтобы посмотреть, сможете ли вы добиться лучших результатов.
Оставьте комментарий