"Обработка естественного языка"

Извлечение и визуализация ключевых фраз: Python и Microsoft Power BI

Узнайте о неструктурированном тексте

Реализация алгоритма RAKE в интеграции Python и Power BI

Мы живем в эпоху, когда данные - это новая валюта! Это делает крупных технологических гигантов самыми богатыми компаниями в мире. Лучшим вложением в следующие несколько десятилетий будет вложение в данные. Итак, что эти компании делают с этими данными? Как можно обрабатывать фрагменты текстовых и неструктурированных данных из сообщений Facebook, Twitter или Linkedin? Для непрофессионала сканирование или выборка могут показаться хорошей идеей, однако специалисты по данным знают риски выборки и боль сканирования текста по тексту, строка за строкой и слово за словом 😬. Здесь специалисты по данным используют «извлечение ключевых фраз».

Извлечение ключевых фраз - это умение оценивать неструктурированный текст и возвращать список ключевых фраз. Например, при вводе текста «Еда была восхитительной, и был замечательный персонал», сервис возвращает основные темы для разговора: «еда» и «замечательный персонал».

Что мы обсудим?

В этой истории мы извлечем ключевые фразы с помощью алгоритма RAKE в Python на примере набора данных, а затем визуализируем их в Microsoft Power BI.

Вот ссылка на образцы данных, которые мы будем использовать: Образцы данных

Что такое ГРАБЛИ?

RAKE - это сокращение от «Алгоритм быстрого автоматического извлечения ключевых слов», это независимый от предметной области алгоритм извлечения ключевых слов, который пытается определить ключевые фразы в теле текста, анализируя частоту появления слова и его совпадение с другими словами в тексте.

Требуемые ресурсы

  • Экземпляр Python (например, Spyder)
  • Microsoft Power BI Desktop (лицензия Pro)
  • (НЕОБЯЗАТЕЛЬНО) Подписка Microsoft Azure (бесплатная пробная или платная) для сопоставления ключевых фраз и настроений.

Вы готовы?? Поехали 🏄

Шаг 1. Установите пакет RAKE и сохраните список стоп-слов.

1.1 Установка: откройте экземпляр Python (например, Spyder 🐍) и введите команду ниже, чтобы установить пакет rake.

!pip install python-rake==1.4.4

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

Шаг 2. Откройте Power BI, импортируйте данные и настройте скрипт Python

2.1 Импорт данных Power BI: откройте новый экземпляр рабочего стола Power BI. ›› Импорт данных из Excel (Образцы данных) ›› Просмотрите образец файла данных ›› Импорт данные ›› Вызов Запуск сценария Python в редакторе Power Query (в разделе Преобразование)

2.2 Подготовьте свой скрипт Python. Вы можете использовать приведенный ниже скрипт Python и настроить его, заменив путь для списка игнорируемых слов в строке 11.

Кроме того, вы можете указать / ограничить количество извлекаемых ключевых фраз, изменив счетчик в строке 31 (т.е. замените [-1:] на [-5:], чтобы встать до 5 ключевых фраз из 1 ввода текста)

После завершения настройки вы можете применить сценарий и развернуть набор данных «Rake_Final_Output». Вы можете Сохранить и закрыть редактор Power Query, чтобы применить сценарий. Так выглядит ваш набор данных после добавления новых полей для ключевых фраз и их оценок.

Шаг 3. Интеграция и визуализация Power BI

А теперь самое интересное - визуализация! 💝

Чтобы визуализировать ключевые фразы, я бы рекомендовал использовать облако слов ☁️ вместе с таблицами, желательно с анализом настроений 😃, чтобы вы могли связать ключевые фразы с положительными, нейтральными и отрицательными настроениями.

Вы можете загрузить образец шаблона Power BI, который объединяет анализ тональности, а также извлечение ключевых фраз, все вместе упакованные в Power BI.

Как вы можете видеть в приведенном ниже примере, у нас есть «10 основных ключевых фраз с негативным настроением», где есть такие фразы, как «Более медленное соединение» и «перезапустите 10 раз» напрямую связаны с негативными настроениями 😢

Точно так же у нас есть «10 лучших ключевых фраз с позитивным настроением», где фразы вроде «аккуратно объяснены» и «глубокие знания» напрямую относятся к соотносятся с позитивными настроениями 😃.

Заключение

Мы узнали, как применять алгоритм RAKE для извлечения ключевых фраз и интегрировать анализ в Microsoft Power BI для разработки визуализаций.

Вы можете использовать другие наборы данных и настроить код, чтобы увидеть, что лучше всего подходит для вашего варианта использования! 👍

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

использованная литература

[1] https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/tutorials/tutorial-power-bi-key-phrases

[2] https://towardsdatascience.com/analyzing-and-visualizing-sentiments-from-unstructured-raw-data-c263ba96cc2c

[3] Источник данных: подготовлено автором вручную.