spaCy के साथ प्रशिक्षण

spaCy के साथ Natural Language Processing

Azadeh Mobasher

Principal Data Scientist

Training के चरण

 

  1. इनपुट डेटा को annotate करें और तैयार करें
  2. अन्य पाइपलाइन कंपोनेंट्स disable करें
  3. कुछ epochs के लिए मॉडल train करें
  4. मॉडल का प्रदर्शन evaluate करें
spaCy के साथ Natural Language Processing

अन्य पाइपलाइन कंपोनेंट्स disable करना

 

  • NER को छोड़कर बाकी सभी पाइपलाइन कंपोनेंट्स disable करें:

 

other_pipes = [pipe for pipe in nlp.pipe_names if pipe != 'ner']

nlp.disable_pipes(*other_pipes)
spaCy के साथ Natural Language Processing

Model training प्रक्रिया

  • प्रशिक्षण सेट को कई बार चलाएँ; हर बार को epoch कहते हैं.
  • हर epoch में, मॉडल के weights थोड़े से अपडेट करें.
  • Optimizers मॉडल के weights अपडेट करते हैं.
optimizer = nlp.create_optimizer()
losses = {}
for i in range(epochs):
  random.shuffle(training_data)

for text, annotation in training_data: doc = nlp.make_doc(text) example = Example.from_dict(doc, annotation)
nlp.update([example], sgd = optimizer, losses=losses)
spaCy के साथ Natural Language Processing

trained मॉडल को save और load करें

 

  • trained NER मॉडल सेव करें:
ner = nlp.get_pipe("ner")
ner.to_disk("<ner model name>")
  • सेव किया हुआ मॉडल लोड करें:
    ner = nlp.create_pipe("ner")
    ner.from_disk("<ner model name>")
    nlp.add_pipe(ner, "<ner model name>")
    
spaCy के साथ Natural Language Processing

Inference के लिए मॉडल

 

  • inference पर सेव किया हुआ मॉडल use करें.

 

  • NER मॉडल चलाएँ और (entity text, entity label) के tuples स्टोर करें:
doc = nlp(text)
entities = [(ent.text, ent.label_) for ent in doc.ents]
spaCy के साथ Natural Language Processing

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

spaCy के साथ Natural Language Processing

Preparing Video For Download...