Méthode Hugging Face Filter()

Methode Hugging Face Filter



Hugging Face dispose de plusieurs modèles et ensembles de données de traitement du langage naturel (NLP). Ces énormes ensembles de données contiennent de nombreuses informations qui permettent d’entraîner le modèle avec précision. Cependant, parfois nous n’avons pas besoin de l’intégralité de l’ensemble de données car nous n’en avons besoin que d’une petite partie pour répondre à nos besoins actuels. Si nous voulons utiliser le même ensemble de données que d'habitude avec toutes les informations, la formation et l'optimisation du modèle prennent beaucoup de temps, ce qui est une perte de temps.

Nous avons donc besoin d’une sorte de méthode ou de package capable d’extraire les informations pertinentes des ensembles de données. En langage simple, nous pouvons dire que nous avons besoin d'une option de filtre supplémentaire pour filtrer les ensembles de données selon nos besoins.

Hugging Face propose différentes options pour filtrer les ensembles de données, ce qui aide les utilisateurs à créer des ensembles de données personnalisés contenant uniquement des exemples ou des informations répondant à des conditions spécifiques.







Méthode Select()

Cette méthode fonctionne sur une liste d'indices ce qui signifie qu'il faut définir une liste. Dans cette liste, nous devons mentionner toutes les valeurs d'index de ces lignes que nous souhaitons extraire. Mais cette méthode ne fonctionne que pour les petits ensembles de données et non pour les énormes ensembles de données, car nous ne sommes pas en mesure de voir l'intégralité de l'ensemble de données s'il est en Go (giga-octets) ou en To (téra-octets).



Exemple :

nouveau_ensemble de données = base de données. sélectionner ( [ 0 , onze , vingt-et-un , Quatre cinq , cinquante , 55 ] )

imprimer ( seulement ( nouveau_ensemble de données ) )

Dans cet exemple, nous avons utilisé la méthode « select » pour filtrer les informations requises de l'ensemble de données.



Méthode Filtre()

La méthode filter() résout les problèmes du processus select() car il n’y a pas de condition spécifique. La méthode filter() renvoie toutes les lignes qui correspondent à une situation ou une condition particulière.





Exemple: Nous enregistrons ce programme Python sous le nom « test.py ».

depuis ensembles de données importer chargement_dataset

# Étape 1 : Charger l'ensemble de données
base de données = chargement_dataset ( 'imdb' )

# Etape 2 : Définir la fonction de filtrage
déf Filtre personnalisé ( exemple ) :
'''
Une fonction de filtrage personnalisée pour conserver les exemples avec des résultats positifs
sentiment (étiquette == 1).
'''

retour exemple [ 'étiquette' ] == 1

# Étape 3 : Appliquez le filtre pour créer un nouvel ensemble de données filtré
jeu de données_filtré = base de données. filtre ( Filtre personnalisé )

# Étape 4 : Vérifiez les noms de colonnes disponibles dans l'ensemble de données filtré
imprimer ( 'Colonnes disponibles dans l'ensemble de données filtré :' ,
filtered_dataset. noms_colonnes )

# Étape 5 : Accédez aux informations de l'ensemble de données filtré
exemples_filtrés = jeu de données_filtré [ 'former' ]
num_filtered_examples = seulement ( exemples_filtrés )

# Étape 6 : Imprimer le nombre total d'exemples filtrés
imprimer ( 'Nombre total d'exemples filtrés :' , num_filtered_examples )

Sortir:



Explication:

Ligne 1 : Nous importons le package load_dataset requis à partir des ensembles de données.

Ligne 4 : Nous chargeons l'ensemble de données « imdb » en utilisant le load_dataset.

Lignes 7 à 12 : Nous définissons la fonction de filtrage personnalisé ' Filtre personnalisé ' pour conserver les exemples avec un sentiment positif (label == 1). Cette fonction renvoie uniquement les lignes dont la valeur d'étiquette est 1.

Ligne 15 : Cette ligne montre que l'ensemble de données contient les données de critique de film « imdb ». Nous appliquons maintenant la fonction de filtre à cette base de données pour séparer les avis positifs de la base de données qui est ensuite stockée dans le « filtered_dataset ».

Lignes 18 et 19 : Maintenant, nous vérifions quels noms de colonnes sont disponibles dans le filtered_dataset. Ainsi, le code « filtered_dataset.column_names » fournit les détails de nos exigences.

Lignes 22 et 23 : Dans ces lignes, nous filtrons la colonne « train » du filtered_dataset et imprimons le nombre total (longueur) de la colonne train.

Ligne 26 : Dans cette dernière ligne, nous imprimons le résultat de la ligne numéro 23.

Filtrer() avec des indices

La méthode filter() peut également être utilisée avec des indices comme on le voit dans le mode select(). Mais pour cela, il faut mentionner que le mot-clé « with_indices=true » doit être spécifié en dehors de la méthode filter() comme le montre l'exemple suivant :

jeu de données impair = base de données. filtre ( lambda exemple , idx : idx % 2 != 0 , avec_indices = Vrai )

imprimer ( seulement ( jeu de données impair ) )

Dans cet exemple, nous avons utilisé la méthode filter() pour filtrer les informations requises de l'ensemble de données, en incluant uniquement les lignes impaires.

Les détails complets de chaque paramètre de la méthode filter() peuvent être trouvés à cette adresse lien .

Conclusion

La bibliothèque d'ensembles de données Hugging Face fournit un ensemble d'outils puissants et conviviaux pour travailler efficacement avec divers ensembles de données, en particulier dans le contexte des tâches de traitement du langage naturel (NLP) et d'apprentissage automatique. La fonction filter() présentée dans le programme permet aux chercheurs et aux praticiens d'extraire des sous-ensembles de données pertinents en définissant les critères de filtrage définis par l'utilisateur. Grâce à cette fonctionnalité, les utilisateurs peuvent créer sans effort de nouveaux ensembles de données répondant à des conditions spécifiques telles que le maintien d'un sentiment positif dans les critiques de films ou l'extraction de données textuelles spécifiques.

Cette démonstration étape par étape illustre à quel point il est facile de charger un ensemble de données, d'appliquer les fonctions de filtre personnalisées et d'accéder aux données filtrées. De plus, la flexibilité des paramètres de fonction permet des opérations de filtrage personnalisées, y compris la prise en charge de traitements multiples pour de grands ensembles de données. Avec la bibliothèque de jeux de données Hugging Face, les utilisateurs peuvent rationaliser leurs données.