Qu'est-ce que la tokenisation?
La tokenisation est le processus par lequel une grande quantité de texte est divisée en parties plus petites appelées jetons. Ces jetons sont très utiles pour trouver des modèles et sont considérés comme une étape de base pour la racine et la lemmatisation. La tokenisation permet également de remplacer les éléments de données sensibles par des éléments de données non sensibles.
Le traitement du langage naturel est utilisé pour créer des applications telles que la classification de texte, le chatbot intelligent, l'analyse sentimentale, la traduction de la langue, etc. Il devient vital de comprendre le modèle dans le texte pour atteindre l'objectif susmentionné.
Pour le moment, ne vous inquiétez pas de la racine et de la lemmatisation, mais traitez-les comme des étapes de nettoyage de données textuelles en utilisant le NLP (Natural Language Processing). Nous discuterons de la racine et de la lemmatisation plus tard dans le didacticiel. Des tâches telles que la classification de texte ou le filtrage des spams utilisent la PNL avec des bibliothèques d'apprentissage en profondeur telles que Keras et Tensorflow.
La boîte à outils en langage naturel a un module très important de phrases de jeton NLTK qui comprend en outre des sous-modules
- mot tokenize
- phrase tokenize
Tokenisation des mots
Nous utilisons la méthode word_tokenize () pour diviser une phrase en mots. La sortie de la création de jetons de mots peut être convertie en trame de données pour une meilleure compréhension du texte dans les applications d'apprentissage automatique. Il peut également être fourni comme entrée pour d'autres étapes de nettoyage de texte telles que la suppression de la ponctuation, la suppression de caractères numériques ou la suppression de la racine. Les modèles d'apprentissage automatique ont besoin de données numériques pour être entraînés et faire une prédiction. La tokenisation de mots devient une partie cruciale de la conversion de texte (chaîne) en données numériques. Veuillez lire sur Bag of Words ou CountVectorizer. Veuillez vous référer à l'exemple de NLTK de tokenize ci-dessous pour mieux comprendre la théorie.
from nltk.tokenize import word_tokenizetext = "God is Great! I won a lottery."print(word_tokenize(text))Output: ['God', 'is', 'Great', '!', 'I', 'won', 'a', 'lottery', '.']
Explication du code
- Le module word_tokenize est importé de la bibliothèque NLTK.
- Une variable "texte" est initialisée avec deux phrases.
- La variable de texte est passée dans le module word_tokenize et affiche le résultat. Ce module casse chaque mot avec la ponctuation que vous pouvez voir dans la sortie.
Tokenisation des phrases
Le sous-module disponible pour ce qui précède est sent_tokenize. Une question évidente dans votre esprit serait de savoir pourquoi la tokenisation des phrases est nécessaire lorsque nous avons l'option de la tokenisation des mots . Imaginez que vous ayez besoin de compter les mots moyens par phrase, comment allez-vous calculer? Pour accomplir une telle tâche, vous avez besoin à la fois d'un tokenizer de phrase NLTK et d'un tokenizer de mots NLTK pour calculer le ratio. Une telle sortie sert de caractéristique importante pour la formation des machines car la réponse serait numérique.
Consultez l'exemple de tokenizer NLTK ci-dessous pour savoir en quoi la tokenisation de phrase est différente de la tokenisation de mots.
from nltk.tokenize import sent_tokenizetext = "God is Great! I won a lottery."print(sent_tokenize(text))Output: ['God is Great!', 'I won a lottery ']
Nous avons 12 mots et deux phrases pour la même entrée.
Explication du programme:
- Dans une ligne comme le programme précédent, importé le module sent_tokenize.
- Nous avons pris la même phrase. Un autre tokenizer de phrase dans le module NLTK a analysé ces phrases et montré la sortie. Il est clair que cette fonction rompt chaque phrase.
Au-dessus de la tokenisation de mots Les exemples Python sont de bonnes pierres de paramétrage pour comprendre la mécanique de la tokenisation des mots et des phrases.
Résumé
- La tokenisation en NLP est le processus par lequel une grande quantité de texte est divisée en parties plus petites appelées jetons.
- Le traitement du langage naturel est utilisé pour créer des applications telles que la classification de texte, le chatbot intelligent, l'analyse sentimentale, la traduction de la langue, etc.
- La boîte à outils en langage naturel a un module très important NLTK tokenize phrase qui comprend en outre des sous-modules
- Nous utilisons la méthode word_tokenize () pour diviser une phrase en mots. La sortie du jeton de mots dans NLTK peut être convertie en trame de données pour une meilleure compréhension du texte dans les applications d'apprentissage automatique.
- Le sous-module disponible pour ce qui précède est sent_tokenize. Le tokenizer de phrases en Python NLTK est une fonctionnalité importante pour la formation machine.