Примечания для начала работы с HuggingFace

концепция

Hugging Face Hub похож на Github, оба являются хабами (сообществами). Hugging Face можно назвать Github машинного обучения. Hugging Face предоставляет пользователям следующие основные функции:

Репозиторий моделей : репозиторий Git позволяет управлять версиями кода и открытым исходным кодом. Хранилище моделей позволяет управлять версиями моделей, моделями с открытым исходным кодом и т. д. Использование аналогично Github.
Модели : Hugging Face предоставляет множество предварительно обученных моделей машинного обучения для различных задач машинного обучения, которые каждый может использовать. Эти модели хранятся в хранилище моделей.
Набор данных : на Hugging Face существует множество общедоступных наборов данных.

Обнимающее лицо является самым известным в области НЛП, и большинство предоставляемых им моделей основаны на Трансформере. Для простоты использования Hugging Face также предоставляет пользователям следующие элементы:

Трансформеры: Трансформеры предоставляют тысячи предварительно обученных моделей, которые можно использовать для различных задач, таких как текстовое поле, аудиополе и поле CV. Этот проект является ядром HuggingFace. Можно сказать, что изучение HuggingFace — это изучение того, как использовать этот проект.
Наборы данных: легкая структура набора данных с двумя основными функциями: ① одна строка кода для загрузки и предварительной обработки часто используемых общедоступных наборов данных; ② быстрая и простая в использовании библиотека предварительной обработки данных.
Ускорение: помогает пользователям Pytorch легко реализовать multi-GPU/TPU/fp16.
Space: Space предоставляет множество интересных приложений для глубокого обучения, вы можете их опробовать.

Преобразует

Hugging Face Transformer — это основной проект Hugging Face. Его можно использовать для следующих целей:

  • Непосредственно используйте предварительно обученные модели для вывода
  • Для использования доступно большое количество предварительно обученных моделей.
  • Передача обучения с использованием предварительно обученных моделей

Установить

pip install git+https://github.com/huggingface/transformers 

использовать

from transformers import pipeline

translator = pipeline("translation_en_to_fr")
print(translator("How old are you?"))

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

!pip install sentencepiece
translator = pipeline("translation_en_to_zh", model='Helsinki-NLP/opus-mt-en-zh')
translator("I'm learning deep learning.")

Хельсинки-НЛП/opus-mt-en-zh · Обнимающее лицо

диффузоры

Общая модель обучающей основы диффузоров. диффузоры поддерживают использование модели напрямую или обучение модели

  • Всего лишь с помощью нескольких строк кода вы можете использовать модель диффузии для создания изображений, что является просто хорошей новостью для большинства людей с ограниченными возможностями.
  • Различные «модификаторы шума» можно использовать для балансировки соотношения между скоростью и качеством создания модели.
  • Существует также множество различных типов моделей, с помощью которых можно построить комплексные модели диффузии.

Конвейеры: классы высокого уровня для быстрого создания образцов на основе популярных моделей диффузии в удобной для пользователя форме.

Модели: популярные архитектуры для обучения новым моделям распространения, такие как UNet.

Планировщики: различные методы создания изображений на основе шума в сценариях вывода или создания зашумленных изображений на основе шума в сценариях обучения.

трубопровод

Использование модели «Обнимающее лицо» 

Проект Transformers предоставляет несколько простых API, которые помогут пользователям использовать модель Hugging Face. Эти простые API называются AutoClass (Ссылка на официальную документацию), в том числе:

  • AutoTokenizer: используется для сегментации текста.
  • AutoFeatureExtractor: используется для извлечения функций.
  • Автопроцессор: используется для обработки данных.
  • AutoModel: используется для загрузки моделей.

Они используются следующим образом: AutoClass.from_pretrain("имя модели")​​, и затем вы можете его использовать. Например:

from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased")
tokenizer("I'm learning deep learning.")

Обычно модель включает в себя некоторые из четырех вышеперечисленных функций. Например, для модели без регистра в базе bert она включает в себя две функции: «сегментация слов» и «модель». Мы можем использовать пример кода (Использование в Transformers ). вид модуля:

набор данных

Библиотека классов Datasets позволяет очень удобно получать доступ к наборам данных и обмениваться ими, а также может использоваться для оценки NLP, CV, речевых и других задач (метрики оценки).

pip install datasets


#使用语音(Audio)数据集
pip install datasets[audio]

#图片(Image)数据
pip install datasets[vision]

Найти набор данных

Набор данных Hugging Face обычно включает в себя несколько подмножеств и делится на три части: обучение, проверка и тестирование. Вы можете просмотреть нужную вам подгруппу через область предварительного просмотра.

from datasets import load_dataset

dataset = load_dataset("glue")

Все наборы данных Hugging Face размещены на GitHub, поэтому предполагается, что их будет сложно успешно загрузить в Китае. Для этого необходимо использовать load_dataset для загрузки локального набора данных. Информацию о том, как загрузить набор данных Hugging Face в автономном режиме, можно найти в этой статье.

скачать

import datasets
dataset = datasets.load_dataset("glue")
dataset.save_to_disk('your_path')

Загрузить оффлайн

import datasets
dataset = load_from_disk("your_path")

ссылка

Быстрый старт с Hugging Face (с акцентом на модели (Transformers) и части набора данных (Datasets))_51CTO blog_hugging face Transformers

рекомендация

отblog.csdn.net/linzhiji/article/details/132721308