Igenkänning av namngivna entiteter

Funktionsutveckling för NLP i Python

Rounak Banik

Data Scientist

Tillämpningar

  • Effektiva sökalgoritmer
  • Frågesvar
  • Klassificering av nyhetsartiklar
  • Kundtjänst
Funktionsutveckling för NLP i Python

Igenkänning av namngivna entiteter

  • Identifiering och klassificering av namngivna entiteter i fördefinierade kategorier.
  • Kategorier inkluderar person, organisation, land m.m.
    "John Doe is a software engineer working at Google. He lives in France."
    
  • Namngivna entiteter
  • John Doe → person
  • Google → organisation
  • France → land (geopolitisk entitet)
Funktionsutveckling för NLP i Python

NER med spaCy

import spacy
string = "John Doe is a software engineer working at Google. He lives in France."

# Load model and create Doc object
nlp = spacy.load('en_core_web_sm')
doc = nlp(string)

# Generate named entities ne = [(ent.text, ent.label_) for ent in doc.ents] print(ne)
[('John Doe', 'PERSON'), ('Google', 'ORG'), ('France', 'GPE')]
Funktionsutveckling för NLP i Python

NER-annotationer i spaCy

spaCy-dokumentation om NER-annotationer

Funktionsutveckling för NLP i Python

En varning

  • Inte perfekt
  • Prestandan beror på tränings- och testdata
  • Träna modeller med specialiserad data för komplexa fall
  • Språkspecifikt
Funktionsutveckling för NLP i Python

Nu kör vi en övning!

Funktionsutveckling för NLP i Python

Preparing Video For Download...