Der erste Teil des Artikels ĂŒber die Grundlagen von NLP kann hier gelesen
werden . Heute werden wir ĂŒber eine der beliebtesten NLP-Aufgaben sprechen - Named-Entity Recognition (NER) - und die Architektur der Lösungen fĂŒr dieses Problem detailliert analysieren.

Die Aufgabe von NER besteht darin, Bereiche von EntitĂ€ten im Text hervorzuheben (Bereich ist ein fortlaufendes Textfragment). Angenommen, es gibt einen Nachrichtentext, und wir möchten die EntitĂ€ten darin hervorheben (einige voreingestellte Mengen - zum Beispiel Personen, Orte, Organisationen, Daten usw.). Das Ziel von NER ist es zu verstehen, dass der Abschnitt â
1. Januar 1997 â des Textes ein Datum ist, â
Kofi Annan â eine Person und â
UN â eine Organisation.
Was sind benannte EntitÀten? In der ersten klassischen Umgebung, die 1995 auf der
MUC-6- Konferenz formuliert wurde, handelt es sich um Personen, Orte und Organisationen. Seitdem sind mehrere verfĂŒgbare Pakete erschienen, von denen jedes seine eigenen benannten EntitĂ€ten hat. In der Regel werden Personen, Standorten und Organisationen neue EntitĂ€tstypen hinzugefĂŒgt. Die hĂ€ufigsten von ihnen sind numerische (Daten, GeldbetrĂ€ge) sowie verschiedene EntitĂ€ten (von verschiedenen - anderen benannten EntitĂ€ten; ein Beispiel ist das iPhone 6).
Warum mĂŒssen Sie das NER-Problem lösen?
Es ist leicht zu verstehen, dass selbst wenn wir Personen, Standorte und Organisationen im Text gut identifizieren können, dies bei den Kunden wahrscheinlich kein groĂes Interesse hervorruft. Obwohl einige praktische Anwendungen natĂŒrlich das Problem in der klassischen Umgebung hat.
Eines der Szenarien, in denen möglicherweise noch eine Lösung fĂŒr das Problem in der klassischen Formulierung erforderlich ist, ist die Strukturierung unstrukturierter Daten. Angenommen, Sie haben eine Art Text (oder eine Reihe von Texten) und die Daten daraus mĂŒssen in eine Datenbank (Tabelle) eingegeben werden. Klassische benannte EntitĂ€ten können Zeilen einer solchen Tabelle entsprechen oder als Inhalt einiger Zellen dienen. Dementsprechend mĂŒssen Sie zum korrekten AusfĂŒllen der Tabelle zuerst im Text die Daten auswĂ€hlen, die Sie in die Tabelle eingeben werden (normalerweise erfolgt danach ein weiterer Schritt - die Identifizierung der EntitĂ€ten im Text, wenn wir verstehen, dass sich
die Vereinten Nationen und
die Vereinten Nationen ĂŒberspannen âBeziehen Sie sich auf dieselbe Organisation; die Aufgabe der Identifizierung oder EntitĂ€tsverknĂŒpfung ist jedoch eine andere Aufgabe, und wir werden in diesem Beitrag nicht im Detail darauf eingehen.
Es gibt jedoch mehrere GrĂŒnde, warum NER eine der beliebtesten NLP-Aufgaben ist.
Erstens ist das Extrahieren benannter EntitĂ€ten ein Schritt zum âVerstehenâ des Textes. Dies kann sowohl einen unabhĂ€ngigen Wert haben als auch dazu beitragen, andere NLP-Aufgaben besser zu lösen.
Wenn wir also wissen, wo die EntitĂ€ten im Text hervorgehoben sind, können wir Fragmente des Textes finden, die fĂŒr eine Aufgabe wichtig sind. Beispielsweise können wir nur die AbsĂ€tze auswĂ€hlen, in denen EntitĂ€ten eines bestimmten Typs angetroffen werden, und dann nur mit ihnen arbeiten.
Angenommen, Sie erhalten einen Brief, und es wĂ€re schön, nur einen Ausschnitt aus dem Teil zu machen, in dem es etwas NĂŒtzliches gibt, und nicht nur â
Hallo, Ivan Petrovich â. Wenn Sie benannte EntitĂ€ten unterscheiden können, können Sie das Snippet intelligent machen, indem Sie den Teil des Briefes anzeigen, in dem sich die fĂŒr uns interessanten EntitĂ€ten befinden (und nicht nur den ersten Satz des Briefes anzeigen, wie dies hĂ€ufig der Fall ist). Oder Sie können einfach die erforderlichen Teile des Briefes (oder direkt die fĂŒr uns wichtigen EntitĂ€ten) im Text hervorheben, um den Analysten die Arbeit zu erleichtern.
DarĂŒber hinaus sind EntitĂ€ten starre und zuverlĂ€ssige Kollokationen, deren Auswahl fĂŒr viele Aufgaben wichtig sein kann. Angenommen, Sie haben einen Namen fĂŒr eine benannte EntitĂ€t und, was auch immer es ist, höchstwahrscheinlich ist es fortlaufend, und alle damit verbundenen Aktionen mĂŒssen wie mit einem einzelnen Block ausgefĂŒhrt werden. Ăbersetzen Sie beispielsweise den Namen einer EntitĂ€t in den Namen einer EntitĂ€t. Sie möchten
âPyaterochka Shopâ in einem StĂŒck ins Französische ĂŒbersetzen und nicht in mehrere Fragmente aufteilen, die nicht miteinander verwandt sind. Die FĂ€higkeit, Kollokationen zu erkennen, ist auch fĂŒr viele andere Aufgaben nĂŒtzlich - zum Beispiel fĂŒr die syntaktische Analyse.
Ohne die Lösung des NER-Problems ist die Lösung vieler NLP-Probleme schwer vorstellbar, z. B. die Lösung des Pronomen Anaphora oder der Aufbau von Frage-Antwort-Systemen. Das Pronomen anaphora ermöglicht es uns zu verstehen, auf welches Element des Textes sich das Pronomen bezieht. Lassen Sie uns zum Beispiel den Text â
Charming Galloped on a White Horse â analysieren
. Die Prinzessin lief ihm entgegen und kĂŒsste ihn . " Wenn wir die Essenz von Persona auf dem Wort âCharmingâ hervorheben, wird die Maschine viel leichter zu verstehen sein, dass die Prinzessin höchstwahrscheinlich nicht das Pferd, sondern den Prinzen von Charming gekĂŒsst hat.
Nun geben wir ein Beispiel dafĂŒr, wie die Zuweisung benannter EntitĂ€ten beim Aufbau von Frage-Antwort-Systemen helfen kann. Wenn Sie in Ihrer Lieblingssuchmaschine die Frage â
Wer hat die Rolle des Darth Vader im Filmâ Das Imperium schlĂ€gt zurĂŒck âgespielt haben â stellen, erhalten Sie mit hoher Wahrscheinlichkeit die richtige Antwort. Dies geschieht nur durch Isolieren benannter EntitĂ€ten: Wir wĂ€hlen die EntitĂ€ten (Film, Rolle usw.) aus, verstehen, worum wir gebeten werden, und suchen dann in der Datenbank nach der Antwort.
Wahrscheinlich die wichtigste Ăberlegung, aufgrund derer die NER-Aufgabe so beliebt ist: Die Problemstellung ist sehr flexibel. Mit anderen Worten, niemand zwingt uns, Standorte, Personen und Organisationen herauszusuchen. Wir können alle fortlaufenden Textteile auswĂ€hlen, die wir benötigen und die sich etwas vom Rest des Textes unterscheiden. Infolgedessen können Sie Ihre eigenen EntitĂ€ten fĂŒr eine bestimmte praktische Aufgabe des Kunden auswĂ€hlen, den Textkörper mit dieser Menge markieren und das Modell trainieren. Ein solches Szenario ist allgegenwĂ€rtig, und dies macht NER zu einer der am hĂ€ufigsten ausgefĂŒhrten NLP-Aufgaben in der Branche.
Ich werde einige Beispiele fĂŒr solche FĂ€lle von bestimmten Kunden nennen, an deren Lösung ich zufĂ€llig teilgenommen habe.
Hier ist die erste: Sie haben eine Reihe von Rechnungen (Geldtransfers). Jede Rechnung enthĂ€lt eine Textbeschreibung, die die erforderlichen Informationen zur Ăberweisung enthĂ€lt (wer, wen, wann, was und aus welchem ââGrund gesendet). Zum Beispiel hat Unternehmen X an diesem und jenem Datum 10 US-Dollar an Unternehmen Y ĂŒberwiesen. Der Text ist recht formal, aber in lebendiger Sprache verfasst. Banken haben speziell geschulte Personen, die diesen Text lesen und dann die darin enthaltenen Informationen in eine Datenbank eingeben.
Wir können eine Reihe von EntitĂ€ten auswĂ€hlen, die den Spalten der Tabelle in der Datenbank entsprechen (Firmennamen, Ăbertragungsbetrag, Datum, Ăbertragungsart usw.) und lernen, wie diese automatisch ausgewĂ€hlt werden. Danach mĂŒssen nur noch die ausgewĂ€hlten EntitĂ€ten in die Tabelle eingegeben werden, und Personen, die zuvor die Texte gelesen und Informationen in die Datenbank eingegeben haben, können wichtigere und nĂŒtzlichere Aufgaben ausfĂŒhren.
Der zweite Benutzerfall ist folgender: Sie mĂŒssen Briefe mit Bestellungen aus Online-Shops analysieren. Dazu mĂŒssen Sie die Bestellnummer (damit alle mit dieser Bestellung verbundenen Buchstaben markiert oder in einem separaten Ordner abgelegt werden können) sowie andere nĂŒtzliche Informationen kennen - den Namen des GeschĂ€fts, die Liste der bestellten Waren, den Scheckbetrag usw. All dies - Bestellnummern, GeschĂ€ftsnamen usw. - können als benannte EntitĂ€ten betrachtet werden, und es ist auch leicht zu lernen, wie man sie mit den Methoden analysiert, die wir jetzt analysieren werden.
Wenn NER so nĂŒtzlich ist, warum wird es nicht ĂŒberall verwendet?
Warum ist die NER-Aufgabe nicht immer gelöst und gewerbliche Kunden sind immer noch bereit, nicht das geringste Geld fĂŒr ihre Lösung zu zahlen? Es scheint, dass alles einfach ist: zu verstehen, welches TextstĂŒck hervorgehoben werden soll, und es hervorzuheben.
Aber im Leben ist nicht alles so einfach, es treten verschiedene Schwierigkeiten auf.
Die klassische KomplexitÀt, die uns daran hindert, eine Vielzahl von NLP-Problemen zu lösen, sind alle möglichen Unklarheiten in der Sprache. Zum Beispiel polysemantische Wörter und Homonyme (siehe Beispiele in
Teil 1 ). Es gibt eine separate Art von Homonymie, die in direktem Zusammenhang mit der NER-Aufgabe steht - völlig unterschiedliche EntitÀten können als dasselbe Wort bezeichnet werden. Lassen Sie uns zum Beispiel das Wort "
Washington " haben. Was ist das? Person, Stadt, Bundesland, GeschĂ€ftsname, Hundename, Objekt, etwas anderes? Um diesen Abschnitt des Textes als eine bestimmte EntitĂ€t hervorzuheben, muss man viel berĂŒcksichtigen - den lokalen Kontext (worum es im vorherigen Text ging), den globalen Kontext (Wissen ĂŒber die Welt). Eine Person berĂŒcksichtigt dies alles, aber es ist nicht einfach, einer Maschine dies beizubringen.
Die zweite Schwierigkeit ist technisch, aber unterschĂ€tzen Sie sie nicht. UnabhĂ€ngig davon, wie Sie die Essenz definieren, wird es höchstwahrscheinlich einige GrenzfĂ€lle und schwierige FĂ€lle geben - wenn Sie die Essenz hervorheben mĂŒssen, wenn Sie nicht benötigen, was in die EntitĂ€tsspanne aufgenommen werden soll, und was nicht usw. (natĂŒrlich, wenn unsere Essenz ist nicht etwas leicht Variables, wie eine E-Mail; normalerweise können Sie solche trivialen EntitĂ€ten jedoch durch triviale Methoden unterscheiden - schreiben Sie einen regulĂ€ren Ausdruck und denken Sie nicht an irgendeine Art von maschinellem Lernen).
Angenommen, wir möchten beispielsweise die Namen von GeschÀften hervorheben.
Im Text âDer
Laden professioneller Metalldetektoren heiĂt Sie willkommen â möchten wir mit ziemlicher Sicherheit das Wort âLadenâ in unser Wesen aufnehmen - dies ist eindeutig Teil des Namens.
Ein weiteres Beispiel ist â
Sie werden von Volkhonka Prestige, Ihrem LieblingsmarkengeschĂ€ft zu erschwinglichen Preisen, begrĂŒĂt .â Wahrscheinlich sollte das Wort âGeschĂ€ftâ nicht in der Anmerkung enthalten sein - dies ist eindeutig nicht Teil des Namens, sondern lediglich dessen Beschreibung. Wenn Sie dieses Wort in den Namen aufnehmen, mĂŒssen Sie auĂerdem die Wörter â- Ihr Favoritâ einfĂŒgen, und das möchte ich vielleicht gar nicht.
Das dritte Beispiel:
"Nemos Zoohandlung schreibt Ihnen. " Es ist unklar, ob die âZoohandlungâ Teil des Namens ist oder nicht. In diesem Beispiel scheint jede Wahl angemessen zu sein. Es ist jedoch wichtig, dass wir diese Auswahl treffen und sie in den Anweisungen fĂŒr Marker korrigieren, damit solche Beispiele in allen Texten gleich gekennzeichnet sind (wenn dies nicht erfolgt, wird maschinelles Lernen aufgrund von WidersprĂŒchen im Markup unweigerlich Fehler machen).
Es gibt viele solcher Grenzbeispiele, und wenn die Markierung konsistent sein soll, mĂŒssen alle in den Anweisungen fĂŒr die Markierungen enthalten sein. Selbst wenn die Beispiele selbst einfach sind, mĂŒssen sie berĂŒcksichtigt und berechnet werden, was die Anweisung gröĂer und komplizierter macht.
Je komplizierter die Anweisungen sind, desto mehr qualifizierte Marker benötigen Sie. Es ist eine Sache, wenn der Schreiber bestimmen muss, ob der Buchstabe der Text der Bestellung ist oder nicht (obwohl es hier Feinheiten und GrenzfÀlle gibt), und es ist eine andere Sache, wenn der Schreiber die 50-seitigen Anweisungen lesen, bestimmte EntitÀten finden und verstehen muss, was darin enthalten sein soll Anmerkung und was nicht.
Erfahrene Marker sind teuer und funktionieren normalerweise nicht sehr schnell. Sie werden das Geld sicher ausgeben, aber es ist keineswegs eine Tatsache, dass Sie das perfekte Markup erhalten, denn wenn die Anweisungen komplex sind, kann selbst eine qualifizierte Person einen Fehler machen und etwas falsch verstehen. Um dem entgegenzuwirken, werden mehrere Markups desselben Textes von verschiedenen Personen verwendet, was den Markup-Preis und die Zeit, fĂŒr die er vorbereitet wird, weiter erhöht. Es wird nicht funktionieren, diesen Prozess zu vermeiden oder sogar ernsthaft zu reduzieren: Um zu lernen, benötigen Sie ein qualitativ hochwertiges Trainingsset mit angemessenen GröĂen.
Dies sind die beiden HauptgrĂŒnde, warum NER die Welt noch nicht erobert hat und warum ApfelbĂ€ume auf dem Mars immer noch nicht wachsen.
Wie man versteht, ob das NER-Problem auf qualitativ hochwertige Weise gelöst wurde
Ich erzĂ€hle Ihnen ein wenig ĂŒber die Metriken, mit denen die Leute die QualitĂ€t ihrer Lösung fĂŒr das NER-Problem bewerten, und ĂŒber StandardfĂ€lle.
Die Hauptmetrik fĂŒr unsere Aufgabe ist ein striktes f-MaĂ. ErklĂ€ren Sie, was es ist.
Lassen Sie uns ein Test-Markup (das Ergebnis der Arbeit unseres Systems) und einen Standard (korrektes Markup derselben Texte) haben. Dann können wir zwei Metriken zĂ€hlen - Genauigkeit und VollstĂ€ndigkeit. Die Genauigkeit ist der Bruchteil der echten positiven EntitĂ€ten (d. H. Von uns im Text ausgewĂ€hlte EntitĂ€ten, die auch im Standard enthalten sind), bezogen auf alle von unserem System ausgewĂ€hlten EntitĂ€ten. Und VollstĂ€ndigkeit ist der Bruchteil der wirklich positiven EntitĂ€ten in Bezug auf alle im Standard vorhandenen EntitĂ€ten. Ein Beispiel fĂŒr einen sehr genauen, aber unvollstĂ€ndigen Klassifizierer ist ein Klassifizierer, der ein korrektes Objekt im Text und nichts anderes auswĂ€hlt. Ein Beispiel fĂŒr einen sehr vollstĂ€ndigen, aber im Allgemeinen ungenauen Klassifizierer ist ein Klassifizierer, der eine EntitĂ€t in einem beliebigen Textsegment auswĂ€hlt (daher weist unser Klassifizierer zusĂ€tzlich zu allen StandardentitĂ€ten eine groĂe Menge MĂŒll zu).
Das F-Maà ist das harmonische Mittel der Genauigkeit und VollstÀndigkeit, eine Standardmetrik.
Wie im vorherigen Abschnitt beschrieben, ist das Erstellen von Markups teuer. Daher gibt es nicht sehr viele zugÀngliche GebÀude mit einem Aufschlag.
Die englische Sprache ist abwechslungsreich - es gibt beliebte Konferenzen, bei denen die Teilnehmer an der Lösung des NER-Problems teilnehmen (und fĂŒr die Wettbewerbe ein Markup erstellt wird). Beispiele fĂŒr solche Konferenzen, bei denen ihre Gremien mit benannten Einheiten erstellt wurden, sind MUC, TAC, CoNLL. Alle diese FĂ€lle bestehen fast ausschlieĂlich aus Nachrichtentexten.
Der Hauptteil, anhand dessen die QualitÀt der Lösung des NER-Problems bewertet wird, ist der Fall CoNLL 2003 (hier ist ein
Link zum Fall selbst , hier ist
ein Artikel darĂŒber ). Es gibt ungefĂ€hr 300.000 Token und bis zu 10.000 EntitĂ€ten. Jetzt zeigen SOTA-Systeme (Stand der Technik - also derzeit die besten Ergebnisse) in diesem Fall ein f-MaĂ in der GröĂenordnung von 0,93.
FĂŒr die russische Sprache ist alles viel schlimmer. Es gibt eine öffentliche Einrichtung (
FactRuEval 2016 , hier ist
ein Artikel darĂŒber , hier ist
ein Artikel ĂŒber HabrĂ© ), und sie ist sehr klein - es gibt nur 50.000 Token. In diesem Fall ist der Fall ziemlich spezifisch. Insbesondere das eher kontroverse Wesen von LocOrg (Standort in einem organisatorischen Kontext) fĂ€llt in dem Fall auf, der sowohl mit Organisationen als auch mit Standorten verwechselt wird, wodurch die QualitĂ€t der Auswahl des letzteren geringer ist, als es sein könnte.
So lösen Sie das NER-Problem
Reduktion des NER-Problems auf das Klassifizierungsproblem
Trotz der Tatsache, dass EntitĂ€ten hĂ€ufig ausfĂŒhrlich sind, kommt es bei der NER-Aufgabe normalerweise auf das Klassifizierungsproblem auf Token-Ebene an, d. H. Jedes Token gehört zu einer von mehreren möglichen Klassen. Es gibt verschiedene Standardmethoden, aber die hĂ€ufigste wird als BIOES-Schema bezeichnet. Das Schema besteht darin, der EntitĂ€tsbezeichnung ein PrĂ€fix hinzuzufĂŒgen (z. B. PER fĂŒr Personen oder ORG fĂŒr Organisationen), das die Position des Tokens in der EntitĂ€tsspanne angibt. AusfĂŒhrlicher:
B - vom Wortanfang an - das erste Token in der EntitÀtsspanne, das aus mehr als einem Wort besteht.
Ich - von den Worten im Inneren - ist das, was in der Mitte ist.
E - ab dem Wortende ist dies das letzte Token der EntitÀt, das aus mehr als einem Element besteht.
S ist Single. Wir fĂŒgen dieses PrĂ€fix hinzu, wenn die EntitĂ€t aus einem Wort besteht.
Daher fĂŒgen wir jedem EntitĂ€tstyp eines von 4 möglichen PrĂ€fixen hinzu. Wenn das Token keiner EntitĂ€t gehört, wird es mit einem speziellen Etikett gekennzeichnet, das normalerweise mit OUT oder O gekennzeichnet ist.
Wir geben ein Beispiel. Lassen Sie uns den Text "
Karl Friedrich Jerome von MĂŒnchhausen wurde in Bodenwerder geboren ." Hier gibt es eine wortreiche EntitĂ€t - die Person âKarl Friedrich Jerome von MĂŒnhausenâ und eine mit einem Wort - den Ort âBodenwerderâ.
Somit ist BIOES eine Möglichkeit, Projektionen von Bereichen oder Anmerkungen der Token-Ebene zuzuordnen.
Es ist klar, dass wir durch dieses Markup die Grenzen aller EntitĂ€tsanmerkungen eindeutig festlegen können. In der Tat wissen wir ĂŒber jedes Token, ob es wahr ist, dass eine EntitĂ€t mit diesem Token beginnt oder darauf endet, was bedeutet, ob die Annotation der EntitĂ€t auf einem bestimmten Token beendet oder auf die nĂ€chsten Token erweitert werden soll.
Die ĂŒberwiegende Mehrheit der Forscher verwendet diese Methode (oder ihre Variationen mit weniger Bezeichnungen - BIOE oder BIO), weist jedoch mehrere signifikante Nachteile auf. Das wichtigste ist, dass das Schema das Arbeiten mit verschachtelten oder sich ĂŒberschneidenden EntitĂ€ten nicht zulĂ€sst. Zum Beispiel die Essenz der â
Moskauer StaatsuniversitĂ€t, benannt nach M.V. Lomonosov âist eine Organisation. Aber Lomonosov selbst ist eine Person, und es wĂ€re auch schön, im Markup zu fragen. Mit der oben beschriebenen Markup-Methode können wir niemals beide Fakten gleichzeitig ĂŒbermitteln (da wir nur eine Markierung auf einem Token machen können). Dementsprechend kann das "Lomonosov" -Token entweder Teil der Annotation der Organisation oder Teil der Annotation der Person sein, jedoch niemals beide gleichzeitig.
Ein weiteres Beispiel fĂŒr eingebettete EntitĂ€ten: â
Institut fĂŒr Mathematische Logik und Algorithmus-Theorie der FakultĂ€t fĂŒr Mechanik und Mathematik der Moskauer Staatlichen UniversitĂ€t â. Im Idealfall möchte ich hier 3 verschachtelte Organisationen unterscheiden, aber mit der obigen Markup-Methode können Sie entweder 3 disjunkte EntitĂ€ten oder eine EntitĂ€t auswĂ€hlen, die das gesamte Fragment mit Anmerkungen versehen.
Neben der Standardmethode zum Reduzieren der Aufgabe auf die Klassifizierung auf Tokenebene gibt es auch ein Standarddatenformat, in dem das Markup fĂŒr die NER-Aufgabe (sowie fĂŒr viele andere NLP-Aufgaben) bequem gespeichert werden kann. Dieses Format heiĂt
CoNLL-U .
Die Hauptidee des Formats ist folgende: Wir speichern die Daten in Form einer Tabelle, wobei eine Zeile einem Token entspricht und die Spalten einem bestimmten Typ von Tokenattributen entsprechen (einschlieĂlich des Wortes selbst, der Wortform). Im engeren Sinne definiert das CoNLL-U-Format, welche Arten von Merkmalen (d. H. Spalten) in der Tabelle enthalten sind - insgesamt 10 Arten von Merkmalen fĂŒr jedes Token. In der Regel betrachten Forscher das Format jedoch allgemeiner und berĂŒcksichtigen die Arten von Funktionen, die fĂŒr eine bestimmte Aufgabe benötigt werden, sowie eine Methode zu deren Lösung.
Nachfolgend finden Sie ein Beispiel fĂŒr Daten in einem CoNLL-U-Ă€hnlichen Format, bei dem 6 Arten von Attributen berĂŒcksichtigt werden: Nummer des aktuellen Satzes im Text, Wortform (d. H. Das Wort selbst), Lemma (anfĂ€ngliche Wortform), POS-Tag (Teil der Sprache), morphologisch Merkmale des Wortes und schlieĂlich die Bezeichnung der EntitĂ€t, die diesem Token zugeordnet ist.

Wie haben Sie das NER-Problem zuvor gelöst?
Genau genommen kann das Problem ohne maschinelles Lernen gelöst werden - mit Hilfe von regelbasierten Systemen (in der einfachsten Version - mit Hilfe von regulĂ€ren AusdrĂŒcken). Dies scheint veraltet und ineffektiv zu sein. Sie mĂŒssen jedoch verstehen, ob Ihr Themenbereich begrenzt und klar definiert ist und ob die EntitĂ€t selbst keine groĂe VariabilitĂ€t aufweist. Dann wird das NER-Problem mithilfe regelbasierter Methoden relativ schnell und effizient gelöst.
, (, ), , .
, ( ), . .
, 2000- SOTA . , .
, â . . . , ( ), 1, 0.
, (POS-), ( â , , ), (. . ), (, ), .
, , :
- â , â,
- â â,
- â â,
- â â ( , , âiPhoneâ).
, , - , â .
, â . , , , â , , , â , , , â . , (ââ , ââ â ), . , , , â ( , NER 2 â ).
, NER, ,
Nadeau and Sekine (2007), A survey of Named Entity Recognition and Classification . , , , ( - , , , HMM, , , , ), .
(summarized pattern ). NLP. , 2018
(word shape) .
NER ?
NLP almost from scratch
NER
2011 .
SOTA- CoNLL 2003. , . ML , .
NER , , NLP . , , , , . , NER ( , NLP).
, .
, :
- «» (window based approach),
- (sentence based approach).
â , â , .. , .
: , â
The cat sat on the mat â.
K (, , , , . .). (, , 1 ). Lass

â , i- j- .
, sentence based approach , , â , . i i-core, core â , ( , , ).
â

, Lookup Table ( ââ ). ,

â , 1, â 0.

auf

, . .

( i 1 K) â , .
word2vec ( , word2vec, ) , , word2vec ( ).
, ,

auf

.
, sentence based approach (window based ). , (. . âThe cat sat on the matâ 6 ). , , , â core.
: 3-5. , , ( ). m f, m â , (. . ), f â .
, â max pooling (. . ), f. , , , core, (max pooling , , ). â â , , core.
- ( â HardTanh), softmax d, d â .
, , â ( ), softmax â , core.
CharCNN-BLSTM-CRF
CharCNN-BLSTM-CRF, , SOTA 2016-2018 ( 2018 , NLP ; ). NER
Lample et al (2016) Ma & Hovy (2016) .
, NLP,
.
- . . â , â , â : , . . - .
. , , . â . Lookup- , , .
, .
, . â , , ( , ).
CharCNN ( , CharRNN). , - . - (, 20) â . , â , .
, , , , â ( ). - , .
2 .
â ( CharCNN). , sentence based approach .
, (, 3), . max pooling, 1 . .
â (BLSTM BiGRU; ,
). RNN.
, - . - .
BLSTM BiGRU. i- , RNN. ( RNN), ( RNN). - .
NLP, NLP.
, , NER. - , . .
â softmax d, d â . ( ).
, â . BiRNN, , . , I-PER B-PER I-PER.
â CRF (conditional random fields). , (
), , CRF , .
, CharCNN-BLSTM-CRF, SOTA NER 2018 .
. CharCNN f- 1%, CRF â 1-1.5%, ( multi-task learning,
Wu et al (2018) ). BiRNN â , , ,
.
, NER. , , .
,
NLP Advanced Research Group