Руководство по поисковому анализу данных и настроений с помощью Fabi.ai

Автор: Дмитрий Иванов [Команда P9X]

~8 минут чтения

Неструктурированные данные повсюду

Неструктурированные данные встречаются повсюду, и если вы специалист по работе с данными, аналитик или инженер, то, вероятно, сталкивались с необходимостью классификации текстовых данных по настроению. Распространёнными источниками таких данных являются обзоры товаров, электронные письма, расшифровки звонков или заметки в CRM. Разобраться в них может быть непросто, но зачастую достаточно просто определить общий тон: хороший, плохой, счастливый, разочарованный. Выявление настроений позволяет быстро фильтровать записи или выявлять общие тенденции.

В этом руководстве мы рассмотрим данные обзоров товаров и используем большие языковые модели (LLMs) для анализа настроений. Затем мы представим результаты через интерактивное приложение или автоматизированный рабочий процесс.

Цели обучения

Цель этого руководства — научиться использовать сочетание LLMs и Python для категоризации набора простых английских обзоров в рамках структурированного набора данных. Мы не только будем категоризировать обзоры, но и проанализируем настроения, чтобы понять общее настроение по категориям товаров. Мы также научимся делиться результатами в виде интерактивного приложения для работы с данными и автоматической синхронизации с Google Sheets.

Изучение ваших данных с помощью SQL, Python и искусственного интеллекта

В этом рабочем процессе мы сначала соберём и подготовим данные, затем проведём исследовательский анализ данных (EDA), прежде чем выполнять анализ настроений. Мы будем использовать Fabi.ai — платформу бизнес-аналитики на основе искусственного интеллекта со встроенным аналитиком данных.

Подготовка данных

Первым шагом в любом анализе является сбор и подготовка данных. Мы будем использовать текстовые данные в структурированной таблице. С помощью Fabi вы можете подключиться ко многим источникам: хранилищам данных, файлам или Google Sheets. Для этого руководства мы будем использовать общедоступный Google Sheet, но вы можете использовать любой источник.

Начните с добавления ячейки Google Sheets в новую Smartbook (блокнот Python на основе искусственного интеллекта).

После авторизации Fabi для доступа к вашему Google Drive найдите файл, содержащий ваши данные. В этом случае мы используем общедоступный набор данных, поэтому будем использовать ячейку Google Sheet Pull (Public URL), которая не требует аутентификации.

Скопируйте/вставьте URL-адрес листа в ячейку и дайте вашему выходному Python DataFrame имя (например, «product_review_data»). После запуска этой ячейки данные будут сохранены в Fabi в виде Python DataFrame, который вы теперь можете использовать для анализа с помощью искусственного интеллекта.

Начальный исследовательский анализ данных и очистка данных

Прежде чем начать анализ настроений, мы должны убедиться, что данные чистые. Я задал ИИ вопрос: «Какие потенциальные проблемы могут быть в данных?» и он сразу же выявил две:

  • Неоднородные форматы состояний («NY» против «New York»)
  • Неоднородные названия категорий («Hat» против «Hats»)

Такие проблемы распространены в реальных данных. ИИ позволяет быстро выявить подобные проблемы, прежде чем приступать к анализу.

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

ИИ сгенерирует SQL или код Python для решения выявленных проблем. Если вы используете ИИ-аналитика Fabi в ручном режиме (в отличие от режима автопринятия), вам будет предложено принять или отклонить предложения ИИ.

В этом случае давайте примем предложения ИИ, которые добавят соответствующую ячейку Python в вашу Smartbook.

Теперь у нас есть новый Python DataFrame под названием «cleaned_data».

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

Анализ настроений

С очищенными данными обзоров товаров мы можем начать анализ настроений, добавив поле «review_sentiment» для классификации каждого обзора как положительного, отрицательного или нейтрального. Большие языковые модели с Python идеально подходят для этого.

Добавьте ячейку обогащения ИИ под этапом очистки. Эти ячейки принимают DataFrame, поле и запрос, а затем возвращают DataFrame с новым столбцом на основе запроса.

Здесь используйте «cleaned_data» с полем «review», выведя «cleaned_data_categorized» с «review_sentiment». Запрос: классифицируйте обзор товара как положительный, отрицательный или нейтральный. Переключите режим с Preview на Run и выполните.

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

Мы сразу замечаем несколько вещей:

  • У джинсов и купальников больше всего негативных отзывов в пропорции ко всем отзывам.
  • У обуви больше всего положительных отзывов в пропорции ко всем отзывам.

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

Делитесь своей работой

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

Превращение вашего блокнота Fabi в приложение для работы с данными

Если вы хотите поделиться своим анализом в виде интерактивного приложения для работы с данными, просто нажмите кнопку «Опубликовать» в правом верхнем углу (в этом руководстве мы не будем касаться того, как добавлять входные данные или фильтры в ваше приложение для работы с данными, но вы можете легко сделать это за несколько минут). В этой промежуточной зоне вы можете скрывать, перемещать и изменять размер таблиц и диаграмм.

Как только ваше приложение для работы с данными будет выглядеть так, как вы хотите, вы можете запланировать его обновление с любой частотой, которую вы выберете. Наконец, когда вы будете готовы запустить его, нажмите «Finish & View Report». Отсюда вы можете предоставить доступ к этому отчёту любому коллеге или всей вашей организации, используя функцию «Share».

Синхронизация вашего анализа с Google Sheets

Если вы хотите синхронизировать эти обогащённые данные с другим местом, например, с Google Sheets, вы можете добавить выходную ячейку. В нижней части вашей Smartbook добавьте ячейку «Google Sheets Push» и выберите DataFrame «cleaned_data_categorized» и Google Sheet, с которым вы хотите синхронизировать данные.

Ключевые выводы

  • Источники данных: анализируйте данные из хранилища данных, базы данных, Google Sheet или локального CSV/Excel файла.
  • ИИ для EDA и очистки: попросите ИИ-аналитика Fabi выявить проблемы и очистить ваши данные.
  • Анализ настроений: используйте ячейки обогащения ИИ для категоризации неформатированного текста в DataFrame.
  • Приложения с данными на Python: публикуйте результаты в виде интерактивных информационных панелей, которыми можно поделиться с коллегами.
  • Автоматизация синхронизации: отправьте обработанные данные обзора обратно в Google Sheets для совместной работы.

Заключение

В этом руководстве мы рассмотрели эффективный способ проведения анализа настроений с помощью ИИ и Python на платформе бизнес-аналитики на основе ИИ Fabi.ai. Вы увидели, как легко можно извлечь данные обзоров товаров из Google Sheets, изучить и очистить их с помощью кода Python, сгенерированного ИИ через ИИ-аналитика Fabi, провести анализ настроений с помощью LLM и поделиться результатами в виде интерактивного приложения для работы с данными или Google Sheets.