Notes de démarrage sur Huggingface

concept

Hugging Face Hub est similaire à Github, les deux sont des Hubs (communautés). Hugging Face peut être considéré comme le Github de l’apprentissage automatique. Hugging Face offre aux utilisateurs les fonctionnalités principales suivantes :

Model Repository : Le référentiel Git vous permet de gérer les versions de code et le code open source. L'entrepôt de modèles vous permet de gérer les versions de modèles, les modèles open source, etc. L'utilisation est similaire à Github.
Modèles : Hugging Face fournit de nombreux modèles d'apprentissage automatique pré-entraînés pour différentes tâches d'apprentissage automatique que tout le monde peut utiliser. Ces modèles sont stockés dans l'entrepôt de modèles.
​Ensemble de données : Il existe de nombreux ensembles de données publics sur Hugging Face.

Hugging face est le plus connu dans le domaine de la PNL, et la plupart des modèles qu'il propose sont basés sur Transformer. Pour faciliter l'utilisation, Hugging Face fournit également aux utilisateurs les éléments suivants :

Transformateurs : les transformateurs fournissent des milliers de modèles pré-entraînés qui peuvent être utilisés pour différentes tâches, telles que le champ de texte, le champ audio et le champ CV. Ce projet est au cœur de HuggingFace, on peut dire qu'apprendre HuggingFace, c'est apprendre à utiliser ce projet.
Ensembles de données : un cadre d'ensemble de données léger avec deux fonctions principales : ① une ligne de code pour télécharger et prétraiter les ensembles de données publiques couramment utilisés ; ② une bibliothèque de prétraitement de données rapide et facile à utiliser.
Accélérer : aide les utilisateurs de Pytorch à implémenter facilement plusieurs GPU/TPU/fp16.
Space : Space propose de nombreuses applications d’apprentissage en profondeur intéressantes, vous pouvez les essayer.

Se transforme

Hugging Face Transformer est le projet principal de Hugging Face. Vous pouvez l'utiliser pour faire les choses suivantes :

  • Utiliser directement des modèles pré-entraînés pour l'inférence
  • Un grand nombre de modèles pré-entraînés sont disponibles pour utilisation
  • Transférer l'apprentissage à l'aide de modèles pré-entraînés

Installer

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

utiliser

from transformers import pipeline

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

Pour certaines tâches spécifiques, le responsable ne fournit pas de modèles correspondants, mais vous pouvez également rechercher le modèle sur le site officiel puis le spécifier. Lors du chargement du modèle, vous pouvez obtenir une erreur en raison du manque de certaines bibliothèques. Dans ce cas, il vous suffit d'installer les bibliothèques correspondantes puis de redémarrer.

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

Helsinki-NLP/opus-mt-en-zh · Visage câlin

diffuseurs

Diffuseurs de cadre de formation modèle général. supports diffuseurs utilisant le modèle directement ou entraînant le modèle

  • Avec seulement quelques lignes de code, on peut utiliser le modèle de diffusion pour générer des images, ce qui est tout simplement une bonne nouvelle pour la majorité des personnes handicapées.
  • Différents « modificateurs de bruit » peuvent être utilisés pour équilibrer la relation entre la vitesse et la qualité de génération du modèle.
  • Il existe également de nombreux types de modèles permettant de créer des modèles de diffusion de bout en bout.

Pipelines : classes de haut niveau pour générer rapidement des échantillons basés sur des modèles de diffusion populaires de manière conviviale

Modèles : architectures populaires pour la formation de nouveaux modèles de diffusion, tels que UNet

Planificateurs : diverses techniques permettant de générer des images basées sur le bruit dans des scénarios d'inférence ou de générer des images bruyantes basées sur le bruit dans des scénarios de formation.

pipeline

Utiliser le modèle Hugging Face 

Le projet Transformers fournit plusieurs API simples pour aider les utilisateurs à utiliser le modèle Hugging Face, et ces API simples sont collectivement appelées ​​AutoClass​​​(​ ​Lien de documentation officiel​​), notamment :

  • ​​AutoTokenizer​​ : utilisé pour la segmentation de texte
  • ​​AutoFeatureExtractor​​ : utilisé pour l'extraction de fonctionnalités
  • ​​AutoProcesseur​​ : utilisé pour le traitement des données
  • ​​AutoModel​​ : utilisé pour charger des modèles

La façon dont ils sont utilisés est la suivante : ​​AutoClass.from_pretrain("model name")​​, et vous pouvez ensuite l'utiliser. Par exemple:

from transformers import AutoTokenizer

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

Habituellement, un modèle inclut certaines des quatre fonctions ci-dessus. Par exemple, pour le modèle bert-base-uncased, il inclut les deux fonctions de "segmentation de mots" et de "modèle". Nous pouvons utiliser l'exemple de code (Utilisation dans les transformateurs) vue des modules :

base de données

La bibliothèque de classes Datasets vous permet d'accéder et de partager des ensembles de données très facilement, et peut également être utilisée pour évaluer la PNL, le CV, la parole et d'autres tâches (métriques d'évaluation).

pip install datasets


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

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

Rechercher un ensemble de données

L'ensemble de données Hugging Face comprend généralement plusieurs sous-ensembles et est divisé en trois parties : entraînement, validation et test. Vous pouvez afficher le sous-ensemble dont vous avez besoin via la zone d'aperçu.

from datasets import load_dataset

dataset = load_dataset("glue")

Les ensembles de données Hugging Face sont tous placés sur github, on estime donc qu'il sera difficile de réussir à les télécharger en Chine. Cela nécessite l'utilisation de load_dataset pour charger l'ensemble de données local. Pour plus d'informations sur la façon de télécharger l'ensemble de données Hugging Face hors ligne, veuillez vous référer à cet article.

télécharger

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

Charger hors ligne

import datasets
dataset = load_from_disk("your_path")

référence

Démarrage rapide avec Hugging Face (en se concentrant sur le modèle (Transformers) et la partie ensemble de données (Datasets))_51CTO blog_hugging face transformers

Je suppose que tu aimes

Origine blog.csdn.net/linzhiji/article/details/132721308
conseillé
Classement