Recunoașterea entităților cu nume, cunoscută și sub numele de identificare a entităților și extragerea entităților, abreviată REN sau NER (din ), este o etapă a extragerii de informații al cărei scop este localizarea și clasificarea entităților cu nume menționate într-un text nestructurat în categorii predefinite, precum nume de persoane, organizații, locuri, coduri medicale, expresii temporale, cantități, valori monetare, procente etc.

Cele mai multe cercetări în domeniul sistemelor REN pornesc de la un bloc de text, precum acesta:Rezultatul reprezintă același bloc de text, dar adnotat, evidențiind numele entităților:În acest exemplu, au fost detectate și clasificate un nume de persoană constând dintr-un cuvânt, un nume de companie format din două cuvinte și o expresie temporală.

Sistemele de recunoaștere a entităților cu nume pentru limba engleză produc rezultate apropiate de performanța umană. De exemplu, cel mai bun sistem care a participat la MUC-7 a obținut un scor de 93,39% de F-measure, în timp ce oamenii au obținut scoruri între 97,60% și 96,95%Elaine Marsh, Dennis Perzanowski, "MUC-7 Evaluation of IE Technology: Overview of Results", 29 April 1998 PDFMUC-07 Proceedings (Named Entity Tasks).

Pentru limba română, sistemele de recunoaștere a entităților cu nume ating valori echivalente, variind în funcție de complexitatea textului și a tipului de entitate căutat.

Platforme de recunoaștere a entităților cu nume Printre platformele notabile de recunoaștere a entităților cu nume se numără:

GATE are capabilitatea standard de a recunoaște entități în mai multe limbi și domenii și poate fi folosit printr-o interfață grafică și un API Java. OpenNLP include metode bazate pe reguli și metode statistice pentru recunoașterea entităților. SpaCy conține modele statistice rapide pentru recunoașterea entităților, precum și o metodă open-source de vizualizare a acestora.

Definiția problemei În expresia entitate cu nume, atributul cu nume limitează problema la acele entități pentru care unul sau mai multe cuvinte se referă în mod constant la un referent anume. Această proprietate este strâns legată de desemnările rigide, astfel cum sunt definite de către Kripke, deși, în practică, sistemele REN au de-a face cu multe nume și referenți care nu sunt din punct de vedere filozofic „rigizi”. De exemplu, compania de automobile creată de către Henry Ford în anul 1903 poate fi menționată ca Ford sau Ford Motor Company, deși „Ford” se poate referi la multe alte entități (vezi Ford). Desemnările rigide includ nume proprii și anumite speciile biologice și substanțe, dar exclud pronumele (precum „el”; a se vedea rezoluția anaforei), descrierile care identifică un referent prin proprietățile sale (a se vedea De dicto și de re) și nume pentru clase de lucruri, spre deosebire de indivizi (de exemplu, „bancă”).

Recunoașterea deplină a entităților cu nume este de multe ori împărțită din punct de vedere conceptual și, de asemenea, în implementări, în două probleme distincte: detectarea numelor și clasificarea numelor după tipul de entitate la care se referă (de exemplu, persoană, organizație, locație și altele). Prima fază este de obicei simplificată la o problemă de segmentare: numele sunt definite ca secvențe contigue de cuvinte, fără imbricări, astfel că „CFR Cluj” este un singur nume, chiar dacă în interiorul acestui nume fiecare din subșirurile „CFR” și „Cluj” reprezintă în sine un nume. Această problemă de segmentare este similară cu analiza sintactică superficială. A doua etapă presupune alegerea unei ontologii în funcție de care să se organizeze diferitele categorii de lucruri.

Expresiile temporale și unele expresii numerice (de exemplu, bani, procente etc.) pot fi și ele considerate drept entități cu nume în contextul REN. În timp ce unele cazuri de aceste tipuri sunt bune exemple de desemnări rigide (de exemplu, anul 2001), există și multe cazuri invalide (de exemplu, concediul este în „iunie”). În primul caz, anul 2001 se referă la al 2001-lea an al calendarului Gregorian. În al doilea caz, luna iunie se poate referi la o lună dintr-un an nedefinit (în iunie anul trecut, în luna iunie care vine, în fiecare iunie etc.). Se poate argumenta că definiția entității cu nume este relaxată în astfel de cazuri din motive practice. Definiția termenului entitate cu nume nu este, prin urmare, strictă și de multe ori trebuie să fie explicitată în contextul în care este folosităNamed Entity Definition. Webknox.com. Retrieved on 2013-07-21..

În literatura de specialitate au fost propuse diverse ierarhii de tipuri de entități cu nume. Categorisirea BBN, propusă în 2002, este folosită pentru sisteme întrebare-răspuns și este formată din 29 de tipuri și 64 de subtipuri. Ierarhia extinsă a lui Sekine, propusă în 2002, conține 200 de subtipuriSekine's Extended Named Entity Hierarchy. Nlp.cs.nyu.edu. Retrieved on 2013-07-21.. Mai recent, în 2011, Ritter folosit o ierarhie bazată pe tipurile de entități din Freebase în experimente de REN pe texte provenite din media de socializare.

Evaluare formală Pentru a evalua calitatea rezultatelor unui sistem REN au fost definite mai multe metrici. Metricile cel mai des folosite sunt precizia, rapelul și scorul F1. Există însă mai multe probleme cu privire la modul de calcul al acestor valori.

Aceste măsuri statistice funcționează suficient de bine pentru cazurile evidente, când o entitate este identificată sau este ratată exact, și pentru a identifica non-entitățile. Însă sistemele REN pot greși în multe alte moduri, despre care se poate argumenta că sunt „parțial corecte” și nu ar trebui să fie considerate ca succes sau eșec complet. De exemplu, se identifică o entitate reală, dar:

cu mai puține cuvinte decât necesare (de exemplu, excluderea ultimului cuvânt din „CFR Cluj”) cu mai multe cuvinte decât necesare (de exemplu, includerea primului cuvânt din „Dna Maria Popescu”) partiționarea entităților adiacente în mod diferit (de exemplu, tratarea „Popescu, Ion Vasile” ca 2 sau 3 entități) atribuirea unui tip complet greșit (de exemplu, clasificarea unui nume de persoană drept organizație) atribuirea unui tip înrudit, dar inexact (de exemplu, „substanță” versus „medicament” sau „școală” versus „organizație”) identificarea corectă a unei entități, atunci când țelul este identificarea unei entități mai scurte sau mai lungi (de exemplu, identificarea „Alexandru Ioan Cuza” ca nume de persoană atunci când face parte din „Universitatea Alexandru Ioan Cuza”. Unele sisteme REN impun restricția ca entitățile să nu se poată suprapune sau fi imbricate, ceea ce înseamnă că, în unele cazuri, trebuie luate decizii arbitrare sau specifice domeniul de aplicare.

O metodă extrem de simplă de măsurare de acurateții este calculul proporției de cuvinte din text care au fost corect sau incorect identificate ca parte a entităților de referință (sau ca fiind entități de tipul corect). Aceasta metodă are cel puțin două probleme. În primul rând, marea majoritate a cuvintelor din textele reale nu fac parte din nici o entitate cu nume, așadar acuratețea de bază (care prezice întotdeauna „nu este o entitate”) este extrem de mare, de obicei peste 90%. În al doilea rând, prezicerea incompletă a unei entități nu este penalizată pe deplin (identificarea doar a prenumelui unei persoane când este urmat de numele de familie ar putea fi marcat ca răspuns pe jumătate corect).

În conferințe academice, precum CoNLL, o variantă a scorului F1 a fost definită după cum urmează:

Precizia este numărul de entități prezise care se aliniază exact cu cele din datele de evaluare. Cu alte cuvinte, când se prezice [Persoană Ion] [Persoană Popescu], dar datele de test menționează [Persoană Ion Popescu], precizia rezultatelor este zero. Precizia totală este apoi calculată ca media entităților prezise corect. În mod similar, rapelul este numărul de entități din datele de test care apar în exact aceeași locație în datele prezise. Scorul F1 este media armonică a acestor două metrici.

Din definiția de mai sus rezultă că orice predicție care ratează un singur cuvânt, include un cuvânt suplimentar sau a greșit tipul entității este o eroare și nu contribuie în mod pozitiv la precizie sau rapel. Astfel, această măsură poate fi numită pesimistă, deoarece foarte multe „erori” ar putea fi aproape de răspunsul corect și chiar ar putea fi adecvate pentru un anumit scop. De exemplu, un sistem ar putea omite întotdeauna titlurile, precum „Doamna” sau „Doctor”, iar compararea cu un sistem sau cu date de evaluare care consideră titlurile necesare nu este în totalitate corectă. În acest caz, fiecare astfel de entitate este tratată ca o eroare. Din cauza unor astfel de probleme, este importantă examinarea tipurilor de erori și luarea unei decizii cu privire la importanța acestora în cazul obiectivelor inițiale.

Au fost propuse și modele de evaluare bazate pe identificarea corectă la nivel de cuvânt. Astfel de modele pot oferi punctaje parțiale pentru identificări care se suprapun (precum utilizarea indexului Jaccard). Această metodă permite evaluarea și compararea sistemelor de extracție la nivel foarte fin.

Abordări Au fost create sisteme REN care utilizează tehnici lingvistice bazate pe gramatici, dar și modele statistice, precum învățare automată. Sistemele bazate pe gramatici, de obicei create manual, obțin o precizie mai bună, dar un rapel mult mai scăzut și au nevoie de un timp lung de dezvoltare de către lingviști computaționali experimentați. Sistemele REN statistice necesită de obicei o cantitate mare de date de instruire manual adnotate. A fost sugerată și utilizarea de abordări semisupervizate pentru a evita o parte din eforturile de adnotare.

Multe tipuri diferite de clasificatori au fost folosiți în sistemele REN cu învățare automată, o alegere tipică fiind câmpurile condiționale aleatorii.

Domenii de aplicație În 2001, rezultatele din cercetare indicau că până și sistemele REN de ultimă generație erau fragile, în sensul că sistemele dezvoltate pentru un domeniu de obicei nu funcționează corect în alte domenii. Așadar, au fost depuse eforturi considerabile în crearea de sisteme REN robuste, care să funcționeze bine în domenii noi, atât pentru sistemele bazate pe reguli, cât și pentru cele bazate pe învățare automată sau statistice.

Eforturile depuse pentru sisteme REN în anii 1990 s-au concentrat în primul rând pe extragerea din articole jurnalistice. Apoi au fost luate în considerare rapoarte și note din domeniul militar. Etapele ulterioare în evaluarea extragerii automate de conținut au inclus mai multe tipuri de stiluri informale de text, precum bloguri și transcrieri ale conversațiilor telefonice. Din 1998, există un mare interes în identificarea entitățlor în comunitățile de biologie moleculară, bioinformatică și prelucrare a limbajului natural medical. Cele mai frecvente entități de interes în acest domeniu sunt numele de gene și de produse ale genelor. Un interes considerabil a fost exprimat și pentru recunoașterea entităților chimice și medicamentelor în contextul competiției CHEMDNER, cu 27 de echipe participante în aceasta.

Provocări actuale și cercetare