Анализ настроений отзывов клиентов с помощью модели IBM Granite-3B и Hugging Face


Введение в анализ настроений с использованием модели IBM Granite 3B

В этом руководстве мы рассмотрим, как легко выполнить анализ настроений текстовых данных с помощью открытой модели Granite 3B от IBM, интегрированной с Hugging Face Transformers. Анализ настроений — это широко используемая техника обработки естественного языка (NLP), которая помогает быстро выявлять эмоции, выраженные в тексте. Это делает его незаменимым для бизнеса, стремящегося понять отзывы клиентов и улучшить свои продукты и услуги.

Установка необходимых библиотек

Сначала установим основные библиотеки: transformers, torch и accelerate, необходимые для загрузки и работы мощных NLP моделей. Библиотека transformers предоставляет готовые модели NLP, torch служит бэкендом для задач глубокого обучения, а accelerate обеспечивает эффективное использование ресурсов на GPU.

Импорт необходимых библиотек

Затем импортируем необходимые библиотеки Python. Мы будем использовать torch для эффективных операций с тензорами, transformers для загрузки предобученных моделей NLP из Hugging Face, pandas для управления и обработки данных в структурированных форматах, а matplotlib для визуального представления результатов анализа.

Загрузка модели IBM Granite 3B

Здесь мы загрузим открытую модель Granite 3B от IBM, используя AutoTokenizer и AutoModelForCausalLM из Hugging Face. Эта компактная модель оптимизирована для выполнения задач, таких как классификация настроений, даже при ограниченных вычислительных ресурсах.

Определение функции для классификации настроений

Теперь мы определим основную функцию classify_sentiment. Эта функция использует модель IBM Granite 3B для классификации настроений любого данного отзыва на Positive, Negative или Neutral. Она форматирует входной отзыв, вызывает модель с точными инструкциями и извлекает результат из сгенерированного текста.

Создание DataFrame с отзывами

Далее мы создадим простой DataFrame reviews_df с помощью Pandas, содержащий коллекцию примеров отзывов. Эти образцы отзывов служат входными данными для классификации настроений, позволяя нам наблюдать, насколько эффективно модель IBM Granite может определять настроения клиентов в практическом сценарии.

Применение функции классификации к отзывам

После определения отзывов мы применим функцию classify_sentiment к каждому отзыву в DataFrame. Это создаст новый столбец sentiment, в котором модель IBM Granite классифицирует каждый отзыв как Positive, Negative или Neutral. Мы можем увидеть оригинальный текст и соответствующую классификацию настроений.

Визуализация распределения настроений

Наконец, мы визуализируем распределение настроений в круговой диаграмме. Этот шаг предоставляет ясный обзор того, как отзывы классифицируются, упрощая интерпретацию общей производительности модели. С помощью matplotlib мы быстро увидим долю Positive, Negative и Neutral настроений.

Заключение

В заключение, мы успешно реализовали мощный процесс анализа настроений с использованием открытой модели Granite 3B от IBM, размещенной на Hugging Face. Вы узнали, как использовать предобученные модели для быстрой классификации текста на положительные, отрицательные или нейтральные настроения, эффективно визуализировать результаты и интерпретировать свои находки. Этот базовый подход позволяет легко адаптировать эти навыки для анализа наборов данных или исследования других задач NLP.

Дополнительные ресурсы

Если вам нужна помощь в управлении ИИ в бизнесе, свяжитесь с нами по адресу hello@itinai.ru. Чтобы быть в курсе последних новостей ИИ, подписывайтесь на наш Telegram.



Новости в сфере искусственного интеллекта