Hugging face 101: учебник для абсолютных новичков!

Добро пожаловать в этот удобный для начинающих учебник по анализу настроений с использованием библиотеки трансформаторов Hugging Face! Анализ настроений – это метод обработки естественного языка (NLP), используемый для определения эмоционального тона или отношения, выраженного в тексте.

В этом руководстве вы узнаете, как использовать предварительно обученные модели машинного обучения из Hugging Face для проведения анализа настроений на различных текстовых примерах. Мы проведем вас через весь процесс – от установки необходимых пакетов до запуска и интерпретации результатов модели – в среде SingleStore Notebook, подобно Jupyter Notebook.

К концу этого урока вы будете обладать знаниями, позволяющими использовать Hugging Face Transformers в качестве библиотеки для анализа смыслового содержания текстовых данных.

Что такое “Hugging face”🤗?

What is Hugging Face🤗

Hugging Face🤗 – сообщество, специализирующееся на обработке естественного языка (NLP) и искусственном интеллекте (AI). Основанное в 2016 году, оно внесло значительный вклад в область NLP, демократизировав доступ к современным моделям и инструментам машинного обучения.

Компания Hugging Face уделяет большое внимание сообществу. Компания предоставляет платформу, на которой исследователи и разработчики могут делиться своими обученными моделями, тем самым способствуя сотрудничеству и ускоряя прогресс в данной области.

NLP означает Natural Language Processing (обработка естественного языка) – область искусственного интеллекта, изучающая взаимодействие компьютеров с человеческим языком. Компания Hugging Face известна своим вкладом в развитие NLP благодаря библиотекам с открытым исходным кодом, предварительно обученным моделям и платформам для сообщества.

Hugging Face🤗 Transformers как библиотека:

Библиотека Transformers компании Hugging Face – это библиотека с открытым исходным кодом для НЛП и машинного обучения. Она предоставляет широкий спектр предварительно обученных моделей и архитектур, таких как BERT, GPT-2, T5 и многие другие. Библиотека разработана по модульному принципу и проста в использовании, что позволяет быстро разрабатывать как исследовательские, так и производственные проекты. Она поддерживает множество языков и такие задачи, как классификация текстов, ответы на вопросы, генерация текстов, перевод и т.д.

Необходимые условия

Перед началом работы с этим учебным пособием убедитесь, что у вас имеются следующие необходимые условия:

  • Единственным необходимым условием для работы с этим учебным пособием является наличие SingleStore Notebook. Учебник предназначен для работы в блокноте SingleStore Notebook. Если вы еще не установили SingleStore Notebook, вы можете сделать это, зарегистрировавшись на сайте SingleStore, а затем выбрав функцию Notebook.
start with singlestore notebooks

Создайте новый пустой блокнот.

Вы попадете на приборную панель SingleStore Notebook.

Далее мы будем использовать его как игровую площадку python для выполнения наших команд.

Шаг 1: Установка необходимых пакетов

Прежде всего, необходимо установить библиотеку transformers из пакета Hugging Face. Это можно сделать с помощью программы pip:

!pip install transformers

PyTorch является необходимым условием для использования библиотеки трансформаторов Hugging Face.

Установить PyTorch можно, выполнив следующую команду в блокноте SingleStore:

!pip install torch

Перезапустите ядро: После установки может потребоваться перезапустить ядро SingleStore Notebook, чтобы убедиться, что вновь установленные пакеты распознаны. Обычно это можно сделать, нажав в меню пункт “Kernel” и выбрав “Restart Kernel”.

Шаг 2: Импорт библиотек

Импортируйте необходимые библиотеки Python.

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

Шаг 3: Загрузка предварительно обученной модели и токенизатора

Загрузите предварительно обученную модель и соответствующий ей токенизатор. В данном примере для анализа настроений будем использовать модель distilbert-base-uncased-finetuned-sst-2-english.

tokenizer = AutoTokenizer.from_pretrained("distilbert-base-uncased-finetuned-sst-2-english")
model = AutoModelForSequenceClassification.from_pretrained("distilbert-base-uncased-finetuned-sst-2-english")

Шаг 4: Предварительная обработка текста

Токенизируйте текст, который вы хотите проанализировать.

text = "I love programming!"
tokens = tokenizer(text, padding=True, truncation=True, return_tensors="pt")

Шаг 5: Вывод модели

Передайте токенизированный текст через модель.

with torch.no_grad():
    outputs = model(**tokens)
    logits = outputs.logits
    probabilities = torch.softmax(logits, dim=1)

Шаг 6: Интерпретация результатов

Интерпретируйте вывод модели для получения настроения.

label_ids = torch.argmax(probabilities, dim=1)
labels = ['Negative', 'Positive']
label = labels[label_ids]
print(f"The sentiment is: {label}")

В зависимости от настроения текста должно быть выведено “Положительно” или “Отрицательно”.

Убедитесь, что вы выполняете свой код на игровой площадке SingleStore’s Notebook.

Давайте изменим текст, который мы хотим проанализировать, с “Я люблю программирование!” на “Я ненавижу программирование!”. Вы должны увидеть анализ негативного настроения.

Negative sentiment analysis

Давайте проанализируем еще одно предложение “Функция Notebook в SingleStore просто умопомрачительна!” и посмотрим на реакцию. (как и ожидалось, она должна быть положительной)

amazing feature

Поздравляем вас с завершением этого удобного для начинающих руководства по анализу настроений с помощью библиотеки трансформаторов Hugging Face! К этому моменту вы должны иметь четкое представление о том, как использовать предварительно обученные модели для анализа настроения текста. Вы узнали, как лексировать текст, прогонять его через модель и интерпретировать полученные результаты – и все это в среде SingleStore Notebook.

+1
2
+1
0
+1
0
+1
0
+1
0

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *