концепция
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")