spaCy में भाषिक फीचर्स

spaCy के साथ Natural Language Processing

Azadeh Mobasher

Principal Data Scientist

POS टैगिंग

  • वाक्य में भूमिका और संदर्भ के आधार पर शब्दों को व्याकरणिक रूप से वर्गीकृत करना
POS विवरण उदाहरण
VERB क्रिया run, eat, ate, take
NOUN संज्ञा man, airplane, tree, flower
ADJ विशेषण big, old, incompatible, conflicting
ADV क्रिया-विशेषण very, down, there, tomorrow
CONJ संयोजक and, or, but
spaCy के साथ Natural Language Processing

spaCy के साथ POS टैगिंग

 

  • POS टैगिंग किसी शब्द का अर्थ स्पष्ट करती है
  • कुछ शब्द जैसे watch संज्ञा और क्रिया दोनों हो सकते हैं
  • spaCy nlp पाइपलाइन के pos_ फीचर में POS टैग कैप्चर करता है
  • spacy.explain() दिए गए POS टैग की व्याख्या करता है

POS टैगर कॉम्पोनेंट

spaCy के साथ Natural Language Processing

spaCy के साथ POS टैगिंग

verb_sent = "I watch TV."

print([(token.text, token.pos_, spacy.explain(token.pos_)) for token in nlp(verb_sent)])
[('I', 'PRON', 'pronoun'), 
('watch', 'VERB', 'verb'), 
('TV', 'NOUN', 'noun'), 
('.', 'PUNCT', 'punctuation')]

noun_sent = "I left without my watch."

print([(token.text, token.pos_, spacy.explain(token.pos_)) for token in nlp(noun_sent)])
[('I', 'PRON', 'pronoun'), 
('left', 'VERB', 'verb'), 
('without', 'ADP', 'adposition'), 
('my', 'PRON', 'pronoun'),
('watch', 'NOUN', 'noun'),
('.', 'PUNCT', 'punctuation')]
spaCy के साथ Natural Language Processing

नेम्ड एंटिटी रिकग्निशन

  • एक "named entity" वह शब्द या वाक्यांश है जो किसी विशेष नामित इकाई को संदर्भित करता है
  • "Named-entity recognition" (NER) नामित इकाइयों को पूर्व-परिभाषित श्रेणियों में वर्गीकृत करता है
Entity type विवरण
PERSON नामित व्यक्ति या परिवार
ORG कंपनियाँ, संस्थान आदि
GPE भू-राजनीतिक इकाई, देश, शहर आदि
LOC गैर-GPE स्थान, पर्वतमाला आदि
DATE पूर्ण/सापेक्ष तिथियाँ या अवधि
TIME एक दिन से छोटी समय-एकाई
spaCy के साथ Natural Language Processing

NER और spaCy

 

  • spaCy मॉडल NER पाइपलाइन कॉम्पोनेंट से named entities निकालते हैं
  • Named entities doc.ents प्रॉपर्टी से मिलती हैं
  • spaCy हर entity को उसके लेबल (.label_) से भी टैग करता है

NER कॉम्पोनेंट

spaCy के साथ Natural Language Processing

NER और spaCy

 

import spacy
nlp = spacy.load("en_core_web_sm")
text = "Albert Einstein was genius."
doc = nlp(text)

print([(ent.text, ent.start_char, ent.end_char, ent.label_) for ent in doc.ents])
>>> [('Albert Einstein', 0, 15, 'PERSON')]
spaCy के साथ Natural Language Processing

NER और spaCy

  • हम Doc कंटेनर में हर टोकन के entity प्रकार भी देख सकते हैं

 

import spacy
nlp = spacy.load("en_core_web_sm")
text = "Albert Einstein was genius."
doc = nlp(text)

print([(token.text, token.ent_type_) for token in doc])
>>> [('Albert', 'PERSON'), ('Einstein', 'PERSON'),
('was', ''), ('genius', ''), ('.', '')]
spaCy के साथ Natural Language Processing

displaCy

 

  • spaCy में एक आधुनिक विजुअलाइज़र है: displaCy
  • displaCy entity विजुअलाइज़र named entities और उनके लेबल हाईलाइट करता है
import spacy
from spacy import displacy

text = "Albert Einstein was genius."
nlp = spacy.load("en_core_web_sm")
doc = nlp(text)

displacy.serve(doc, style="ent")

displaCy NER आउटपुट

spaCy के साथ Natural Language Processing

अभ्यास करते हैं!

spaCy के साथ Natural Language Processing

Preparing Video For Download...