spaCy es una de las mejores bibliotecas de análisis de texto. spaCy sobresale en tareas de extracción de información a gran escala y es uno de los más rápidos del mundo. También es la mejor manera de preparar el texto para el aprendizaje profundo. spaCy es mucho más rápido y preciso que NLTKTagger y TextBlob.
Cómo instalar ?
pip install spacy python -m spacy download en_core_web_sm
Principales características de spaCy:
1. Tokenización no destructiva
2. Reconocimiento de entidades nombradas
3. Soporte para más de 49 idiomas
4. 16 modelos estadísticos para 9 idiomas
5. Vectores de palabras previamente entrenados
6. Etiquetado de partes del discurso
7. Dependencia etiquetada análisis
8. Segmentación de oraciones basada en la sintaxis
Importar y cargar biblioteca:
import spacy # python -m spacy download en_core_web_sm nlp = spacy.load("en_core_web_sm")
Etiquetado de POS para reseñas:
Es un método para identificar palabras como sustantivos, verbos, adjetivos, adverbios, etc.
import spacy # Load English tokenizer, tagger, # parser, NER and word vectors nlp = spacy.load("en_core_web_sm") # Process whole documents text = ("""My name is Shaurya Uppal. I enjoy writing articles on GeeksforGeeks checkout my other article by going to my profile section.""") doc = nlp(text) # Token and Tag for token in doc: print(token, token.pos_) # You want list of Verb tokens print("Verbs:", [token.text for token in doc if token.pos_ == "VERB"])
Producción:
My DET name NOUN is VERB Shaurya PROPN Uppal PROPN . PUNCT I PRON enjoy VERB writing VERB articles NOUN on ADP GeeksforGeeks PROPN checkout VERB my DET other ADJ article NOUN by ADP going VERB to ADP my DET profile NOUN section NOUN . PUNCT # Verb based Tagged Reviews:- Verbs: ['is', 'enjoy', 'writing', 'checkout', 'going']
Lematización:
Es un proceso de agrupar las formas flexionadas de una palabra para que puedan analizarse como un solo elemento, identificado por el lema de la palabra o la forma del diccionario.
import spacy # Load English tokenizer, tagger, # parser, NER and word vectors nlp = spacy.load("en_core_web_sm") # Process whole documents text = ("""My name is Shaurya Uppal. I enjoy writing articles on GeeksforGeeks checkout my other article by going to my profile section.""") doc = nlp(text) for token in doc: print(token, token.lemma_)
Producción:
My -PRON- name name is be Shaurya Shaurya Uppal Uppal . . I -PRON- enjoy enjoy writing write articles article on on GeeksforGeeks GeeksforGeeks checkout checkout my -PRON- other other article article by by going go to to my -PRON- profile profile section section . .
Publicación traducida automáticamente
Artículo escrito por shaurya uppal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA