Avant de pouvoir entraîner un modèle sur des données textuelles, vous devez généralement traiter (ou prétraiter) le texte. Dans de nombreux cas, le texte doit être tokenisé et vectorisé avant d'être intégré à un modèle, et dans certains cas, des étapes de prétraitement supplémentaires, telles que la normalisation et la sélection de caractéristiques, sont nécessaires.
Une fois le texte traité dans un format approprié, vous pouvez l'utiliser dans des flux de travail de traitement du langage naturel (TALN) tels que la classification de texte, la génération de texte, le résumé et la traduction.
TensorFlow fournit deux bibliothèques pour le traitement de texte et de langage naturel : KerasNLP ( GitHub ) et TensorFlow Text ( GitHub ).
KerasNLP est une bibliothèque de modélisation NLP de haut niveau qui inclut les derniers modèles basés sur des transformateurs, ainsi que des utilitaires de tokenisation de bas niveau. C'est la solution recommandée pour la plupart des cas d'utilisation du NLP. Basée sur TensorFlow Text, KerasNLP synthétise les opérations de traitement de texte de bas niveau dans une API conçue pour une utilisation simplifiée. Si vous préférez ne pas utiliser l'API Keras ou si vous avez besoin d'accéder aux opérations de traitement de texte de bas niveau, vous pouvez utiliser TensorFlow Text directement.
KerasNLP
Le moyen le plus simple de commencer à traiter du texte dans TensorFlow est d'utiliser KerasNLP . KerasNLP est une bibliothèque de traitement du langage naturel qui prend en charge les workflows basés sur des composants modulaires dotés de pondérations et d'architectures prédéfinies de pointe. Vous pouvez utiliser les composants KerasNLP avec leur configuration prête à l'emploi. Pour plus de contrôle, vous pouvez facilement personnaliser les composants. KerasNLP permet le calcul in-graph pour tous les workflows, vous permettant ainsi une mise en production simplifiée grâce à l'écosystème TensorFlow.
KerasNLP propose des implémentations complètes d' architectures de modèles populaires telles que BERT et FNet . Grâce aux modèles, couches et tokenizers KerasNLP, vous pouvez réaliser de nombreux workflows NLP de pointe, notamment la traduction automatique , la génération et la classification de texte , ainsi que l'apprentissage de modèles de transformateurs .
KerasNLP est une extension de l'API Keras principale, et chaque module KerasNLP de haut niveau est une Layer
ou un Model
. Si vous connaissez Keras, vous comprenez déjà la majeure partie de KerasNLP.
Texte TensorFlow
KerasNLP fournit des modules de traitement de texte de haut niveau, disponibles sous forme de calques ou de modèles. Si vous avez besoin d'accéder à des outils de niveau inférieur, vous pouvez utiliser TensorFlow Text . TensorFlow Text propose des opérations et des bibliothèques pour vous aider à travailler avec des chaînes de texte et des documents bruts. TensorFlow Text peut effectuer le prétraitement requis par les modèles textuels et inclut également d'autres fonctionnalités utiles à la modélisation séquentielle.
En utilisant TensorFlow Text, vous pouvez effectuer les opérations suivantes :
- Appliquez des tokenizers riches en fonctionnalités qui peuvent diviser les chaînes en fonction des espaces, séparer les mots et la ponctuation et renvoyer des décalages d'octets avec des jetons, afin que vous sachiez où une chaîne peut être trouvée dans le texte source.
- Vérifiez si un jeton correspond à un modèle de chaîne spécifié. Vous pouvez vérifier la casse, la ponctuation, les données numériques et d'autres caractéristiques du jeton.
- Combinez les jetons en n-grammes.
- Traitez le texte dans le graphique TensorFlow, de sorte que la tokenisation pendant la formation corresponde à la tokenisation lors de l'inférence.
Par où commencer
Les ressources suivantes vous aideront à démarrer avec le traitement de texte TensorFlow :
- TensorFlow Text : tutoriels, guides et autres ressources pour vous aider à traiter du texte à l'aide de TensorFlow Text et KerasNLP.
- KerasNLP : Documentation et ressources pour KerasNLP.
- Tutoriels TensorFlow : la documentation principale de TensorFlow (ce guide) comprend plusieurs tutoriels sur le traitement de texte.
- Google Machine Learning : Guide de classification de texte : Introduction étape par étape à la classification de texte. C'est un bon point de départ si vous débutez en apprentissage automatique.