Angenommen, ich habe einen Text wie den folgenden, der normalerweise 2/3 Sätze und 100-200 Zeichen enthält.
Johny kaufte 50 Dollar Milch von Walmart. Jetzt hat er nur noch 20 Dollar übrig.
Ich möchte extrahieren
Name der Person: Johny
Verbrauchte: 50 Dollar
Geld übrig: 20 Dollar.
Verbrachte wo: Walmart.
Ich habe viel Material über das wiederkehrende neuronale Netzwerk durchgesehen. Habe das Video cs231n auf RNN gesehen und die nächste Zeichenvorhersage verstanden. In diesen Fällen haben wir 26 Zeichen, die wir als Ausgabeklassen verwenden können, um das nächste Zeichen mithilfe der Wahrscheinlichkeit zu finden. Aber hier scheint das Problem ganz anders zu sein, weil wir die Ausgabeklassen nicht kennen. Die Ausgabe hängt von den Wörtern und Zahlen im Text ab, bei denen es sich um beliebige Wörter oder Zahlen handeln kann.
Ich habe auf Quora gelesen, dass das Faltungsnetzwerk auch Merkmale im Text extrahieren kann. Sie fragen sich, ob dies auch dieses spezielle Problem lösen kann?
Antworten:
Das Problem, das Sie hier aufwerfen, wird als NER (Named Entity Recognition) oder Named Entity Extraction bezeichnet.
Es gibt mehrere Technologien (nicht notwendige neuronale Netze), die für dieses Problem verwendet werden können, und einige von ihnen sind ziemlich ausgereift. In diesem Repo finden Sie eine einfach zu Plug-in-Lösung, oder versuchen Sie, die
ne_chunk_sents
Funktion aus demNLTK
Modul in Python anzuwenden .quelle
Ich denke, Sie könnten sich mit dem Parsen von Abhängigkeiten befassen . Ihre Faktentupel könnten aus Kanten im Abhängigkeitsdiagramm extrahiert werden.
PS1 Wenn Sie etwas mit NLP tun möchten, sollten Sie cs224n und nicht cs231n überprüfen. Ich erinnere mich auch, dass cs224 einen Abschnitt über DL zum Parsen von Abhängigkeiten enthält.
PS2 Der Abhängigkeitsbaum stammt aus dem Stanford Neural Network Dependency Parser
quelle