-
TECHNISCHES GEBIET
-
Die vorliegende Erfindung betrifft eine Satzstrukturvektorisierungsvorrichtung, ein Satzstrukturvektorisierungsverfahren und ein Satzstrukturvektorisierungsprogramm.
-
ALLGEMEINER TECHNISCHER HINTERGRUND
-
Mit der Verbreitung des World Wide Web sammelt sich eine große Zahl von E-Texten (im Folgenden auch als „Texte“ bezeichnet) an, die in natürlichen Sprachen geschrieben sind. Demgemäß nimmt die Wichtigkeit einer Volltext-Suchtechnologie zum Durchsuchen angesammelter Texte nach einem gewünschten Text, einer Dokumentklassifikationstechnologie zum Klassifizieren angesammelter Texte gemäß dem Inhalt der Beschreibung usw. zu. Zum Beispiel wird bei der Volltextsuchtechnologie eine Rangordnung (d.h. eine Reihenfolge) von Abfrageobjekttexten auf Basis des Grades einer inhaltlichen Ähnlichkeit zwischen einem eingegebenen Anfragetext (d.h. Fragesatztext) und den einzelnen Abfrageobjekttexten bestimmt. Bei der Dokumentklassifizierungstechnologie wird jeder Text auf Basis des Grades der inhaltlichen Ähnlichkeit zwischen Texten einer von einer Mehrzahl von Klassen zugeteilt.
-
Eine Technologie, bei der ein als „Konzeptvektor“ bezeichneter Merkmalswert aus einem Text extrahiert wird, um den Grad der inhaltlichen Ähnlichkeit zwischen Texten, das heißt den Grad einer Bedeutungsähnlichkeit zwischen in dem Text enthaltenen Sätzen zu bestimmen, ist bekannt. Zum Beispiel schlägt Patentliteratur 1 ein System vor, das eine morphologische Analyse an einem Text durchführt, Inhaltswörter (d.h. Terme) extrahiert und gleichzeitig einen Index erzeugt, der auf der Basis von Termen gebildet wird, jeden Term als Termvektor behandelt, der gemäß einem Wichtigkeitsgrad in dem Text gewichtet wird, und einen Merkmalswert von jedem Text durch einen Vektor darstellt, der durch Kombinieren der Termvektoren erhalten wird. Bei der Abfrage wird der Grad der Ähnlichkeit zwischen dem Anfragetext und jedem Abfrageobjekttext unter Verwendung eines Suchanfragevektors berechnet, der durch Kombinieren der gewichteten Termvektoren erhalten wird. Der Grad der Ähnlichkeit ist beispielsweise der Cosinus eines Winkels, der von zwei Vektoren gebildet wird, das heißt die Cosinusähnlichkeit. Da dieses Verfahren die Vektoren unter Verwendung jedes individuellen Terms bildet, der durch die morphologische Analyse erhalten wird, besteht ein Problem dahingehend, dass auch Texte, die ihrer Bedeutung nach voneinander verschieden sind, als solche mit einem hohen Grad an Ähnlichkeit bestimmt werden, falls die Texte einander in dem Satz von Inhaltswörtern (Bag-of-Words: BoW) gleich sind.
-
Um dieses Problem zu lösen, schlägt Patentliteratur 2 ein Verfahren vor, das die Struktur eines Textes durch Durchführen einer Abhängigkeits-Syntaxanalyse an der Struktur des Textes in einen gelabelten geordneten Baum (d.h. einen Dependenzstrukturbaum) umwandelt und Teilstrukturen des Dependenzstrukturbaums als Merkmalswerte vektorisiert. Jedoch hat man kürzlich erkannt, dass eine semantische Struktur eines Satzes, wie etwa eine parallele Struktur, durch einen Dependenzstrukturbaum nicht ausreichend gut ausgedrückt werden kann.
-
Um dieses Problem zu lösen, schlägt die Nicht-Patentliteratur 1 ein Verfahren zum Ausdrücken der semantischen Struktur eines Satzes unter Verwendung einer Abhängigkeitsgraphenstruktur (eines Abhängigkeitsgraphen) vor.
-
STAND DER TECHNIK
-
PATENTVERWEISE
-
- Patentliteratur 1: Japanische veröffentlichte Patentanmeldung Nr. 2002-14970
- Patentliteratur 2: Japanische veröffentlichte Patentanmeldung Nr. 2003-271599
-
NICHT-PATENTLITERATUR
-
- Nicht-Patentliteratur 1: Sebastian Schuster et al., „Enhanced English Universal Dependencies: An Improved Representation for Natural Language Understanding Tasks", LREC Stanford University, ID 779, 2016
- Nicht-Patentliteratur 2: Marie-Catherine de Marneffe et al., „Stanford typed dependencies manual", überarbeitet für den Stanford Parser v.3.7.0, Sept. 2016
-
ABRISS DER ERFINDUNG
-
AUFGABE DER ERFINDUNG
-
In einem Fall, wo Teilgraphen als Teilstrukturen der Abhängigkeitsgraphenstruktur aus der Abhängigkeitsgraphenstruktur extrahiert werden, besteht ein Problem dahingehend, dass die Anzahl der Berechnungen zunimmt, die notwendig sind, um die Textstruktur zu vektorisieren, da die Anzahl der extrahierten Teilgraphen mit der Größe der Abhängigkeitsgraphenstruktur exponentiell zunimmt.
-
Die vorliegende Erfindung, die gemacht wurde, um das oben beschriebene Problem zu lösen, soll eine Satzstrukturvektorisierungsvorrichtung, ein Satzstrukturvektorisierungsverfahren und ein Satzstrukturvektorisierungsprogramm bereitstellen, die es ermöglichen, eine Satzstruktur mit einer kleinen Zahl von Berechnungen angemessen zu vektorisieren.
-
MITTEL ZUR LÖSUNG DES PROBLEMS
-
Eine Satzstrukturvektorisierungsvorrichtung gemäß einem Aspekt der vorliegenden Erfindung weist auf: eine morphologische Analyseeinheit, die durch Durchführen einer morphologischen Analyse an einem Eingabesatz eine Mehrzahl von Morphemen erzeugt, eine Abhängigkeits-Syntaxanalyseeinheit, die durch Durchführen einer Abhängigkeits-Syntaxanalyse an der Mehrzahl von Morphemen einen Dependenzstrukturgraphen in Bezug auf die Mehrzahl von Morphemen erzeugt, und eine Satzstrukturvektorisierungseinheit, die einen Satzstrukturvektor erzeugt durch Extrahieren einer Mehrzahl von Teilstrukturinformationen aus dem Dependenzstrukturgraphen und Umwandeln einer Morphemreihe, die der Mehrzahl von Teilstrukturinformationen entspricht, in eine numerische Folge.
-
Ein Satzstrukturvektorisierungsverfahren gemäß einem anderen Aspekt der vorliegenden Erfindung schließt ein: einen Schritt des Erzeugens einer Mehrzahl von Morphemen durch Durchführen einer morphologischen Analyse an einem Eingabesatz, einen Schritt des Erzeugens eines Dependenzstrukturgraphen in Bezug auf die Mehrzahl von Morphemen durch Durchführen einer Abhängigkeits-Syntaxanalyse an der Mehrzahl von Morphemen und einen Schritt des Erzeugens eines Satzstrukturvektors durch Extrahieren einer Mehrzahl von Teilstrukturinformationen aus dem Dependenzstrukturgraphen und Umwandeln einer Morphemreihe, die der Mehrzahl von Teilstrukturinformationen entspricht, in eine numerische Folge.
-
WIRKUNG DER ERFINDUNG
-
Gemäß der vorliegenden Erfindung kann die Satzstruktur mit einer kleinen Zahl von Berechnungen angemessen vektorisiert werden.
-
Figurenliste
-
- 1 ist eine Skizze, die ein Beispiel für eine Hardware-Konfiguration einer Satzstrukturvektorisierungsvorrichtung gemäß einer ersten Ausführungsform der vorliegenden Erfindung darstellt.
- 2 ist eine Skizze, die ein anderes Beispiel der Hardwarekonfiguration der Satzstrukturvektorisierungsvorrichtung gemäß der ersten Ausführungsform zeigt.
- 3 ist ein funktionales Blockdiagramm, das schematisch eine Konfiguration der Satzstrukturvektorisierungsvorrichtung gemäß der ersten Ausführungsform zeigt.
- 4 ist ein Flussdiagramm, das eine Funktionsweise der Satzstrukturvektorisierungsvorrichtung gemäß der ersten Ausführungsform zeigt.
- 5 ist eine Skizze, die ein Beispiel für einen Eingabesatz zeigt, der in die Satzstrukturvektorisierungsvorrichtung gemäß der ersten Ausführungsform eingegeben wird.
- 6 ist eine Skizze, die ein Beispiel für ein Ergebnis der morphologischen Analyse zeigt, die von der morphologischen Analyseeinheit der Satzstrukturvektorisierungsvorrichtung gemäß der ersten Ausführungsform durchgeführt wird.
- 7 ist eine Skizze, die ein Beispiel für ein Ergebnis der Abhängigkeits-Syntaxanalyse zeigt, die von einer Abhängigkeits-Syntaxanalyseeinheit der Satzstrukturvektorisierungsvorrichtung gemäß der ersten Ausführungsform durchgeführt wird.
- 8 ist eine Skizze, die das Ergebnis der Abhängigkeits-Syntaxanalyse von 7 in einer Graphenstruktur zeigt.
- 9 ist eine Skizze, die Morpheminformationen zeigt, die N-Gramm-Nummern 1 bis 4 aufweisen, die in einem Arbeitsspeicher gespeichert sind.
- 10A bis 10D sind Skizzen, die Informationen zeigen, die durch die Zuordnung von Neunummerierungsmorphemnummern und Neunummerierungsabhängigkeitsnummern zu extrahierten Informationen in Bezug auf zwei Morpheme erzeugt werden.
- 11 ist eine Skizze, die Morpheminformationen mit N-Gramm-Nummern 1 bis 7 zeigt, die in dem Arbeitsspeicher gespeichert sind.
- 12 ist eine Skizze, die eine Entsprechungsbeziehung zwischen einer 2-Morphemstrukturnummer und Neunummerierungsabhängigkeitsnummern zeigt, die für einen Prozess verwendet werden, wenn ein Teilgraph aus zwei Morphemen erstellt wird.
- 13A bis 13E sind Skizzen, die Informationen zeigen, die durch Zusammenführen einer Mehrzahl von Informationen erzeugt werden, die aus in 10A bis 10D gezeigten Informationen extrahiert wurden.
- 14 ist eine Skizze, die Morpheminformationen mit N-Gramm-Nummern 1 bis 10 zeigt, die in dem Speicher gespeichert sind.
- 15 ist eine Skizze, die eine Entsprechungsbeziehung zwischen einer 3-Morphemstrukturnummer und Neunummerierungsabhängigkeitsnummern zeigt, die für einen Prozess verwendet werden, wenn ein Teilgraph aus drei Morphemen erstellt wird.
- 16 ist eine Skizze, die ein Beispiel für Informationen in Bezug auf die Satzstrukturvektorisierung zeigt, die aus den in 9 bis 15 gezeigten Informationen extrahiert wurden.
- 17 ist ein funktionales Blockdiagramm, das schematisch eine Konfiguration einer Satzstrukturvektorisierungsvorrichtung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung zeigt.
-
MODUS ZUR AUSFÜHRUNG DER ERFINDUNG
-
Eine Satzstrukturvektorisierungsvorrichtung, ein Satzstrukturvektorisierungsverfahren und ein Satzstrukturvektorisierungsprogramm gemäß den einzelnen Ausführungsformen der vorliegenden Erfindung werden nachfolgend unter Bezugnahme auf die Zeichnungen beschrieben. In den Zeichnungen ist Komponenten, die einander gleich sind, das gleiche Bezugszeichen zugeordnet. Die folgenden Ausführungsformen sind nur Beispiele, und innerhalb des Umfangs der vorliegenden Erfindung sind eine Reihe von Modifikationen möglich. Zum Beispiel können Konfigurationen von Ausführungsformen auf geeignete Weise miteinander kombiniert werden. In dieser Anmeldung wird eine Terminologie verwendet, die in den Nicht-Patentliteraturen 1 und 2 beschrieben ist.
-
Erste Ausführungsform
-
Als erstes wird nachstehend die Konfiguration einer Satzstrukturvektorisierungsvorrichtung 100 gemäß einer ersten Ausführungsform der vorliegenden Erfindung beschrieben. 1 ist eine Skizze, die ein Beispiel einer Hardwarekonfiguration der Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform zeigt. In dem in 1 gezeigten Beispiel weist die Satzstrukturvektorisierungsvorrichtung 100 beispielsweise auf: einen Arbeitsspeicher 20, der ein Programm als Software, das heißt ein Satzstrukturvektorisierungsprogramm, speichert, und einen Prozessor 10 als arithmetische Verarbeitungseinheit, die das in dem Arbeitsspeicher 20 gespeicherte Programm ausführt. Der Prozessor 10 ist eine Informationsverarbeitungsschaltung, wie etwa eine CPU (zentrale Verarbeitungseinheit). Der Arbeitsspeicher 20 ist eine flüchtige Speichervorrichtung, wie etwa ein RAM (Speicher mit wahlfreiem Zugriff). Die Satzstrukturvektorisierungsvorrichtung 100 ist beispielsweise ein Computer.
-
Das Satzstrukturvektorisierungsprogramm gemäß der ersten Ausführungsform wird von einem Aufzeichnungsmedium, auf dem Informationen aufgezeichnet sind, über eine Mediuminformationen-Lesevorrichtung (nicht gezeigt) oder über eine Kommunikationsschnittstelle (nicht gezeigt), die mit dem Internet oder dergleichen verbindbar ist, in dem Arbeitsspeicher 20 gespeichert. Das Satzstrukturvektorisierungsprogramm gemäß der ersten Ausführungsform kann von dem Prozessor 10 ausgeführt werden. Ein Satzstrukturvektorisierungsverfahren gemäß der ersten Ausführungsform kann von dem Prozessor 10 implementiert werden, der das in dem Arbeitsspeicher 20 gespeicherte Satzstrukturvektorisierungsprogramm ausführt.
-
Die Satzstrukturvektorisierungsvorrichtung 100 kann eine Eingabeschnittstelle 30 aufweisen, mit der eine Eingabevorrichtung als Benutzerbedieneinheit, wie etwa eine Maus, eine Tastatur oder ein Touchpanel, verbunden ist. Ferner kann die Satzstrukturvektorisierungsvorrichtung 100 eine Ausgabeschnittstelle 40 aufweisen, mit der eine Anzeigevorrichtung zum Anzeigen von Bildern verbunden ist. Ferner kann die Satzstrukturvektorisierungsvorrichtung 100 eine Speichervorrichtung 50 zum Speichern verschiedener Arten von Informationen, wie etwa ein HDD (Hard Disk Drive, Festplattenlaufwerk) oder ein SSD (Solid State Drive, Festkörperspeicher) aufweisen. Die Speichervorrichtung 50 kann eine externe Speichervorrichtung der Satzstrukturvektorisierungsvorrichtung 100 sein. In Fällen, wo die Satzstrukturvektorisierungsvorrichtung 100 eine Kommunikationsschnittstelle (nicht gezeigt) zum Kommunizieren mit einer externen Vorrichtung aufweist, kann die Speichervorrichtung 50 eine Speichervorrichtung sein, die in der Cloud existiert und die über die Kommunikationsschnittstelle verbindbar ist.
-
2 ist eine Skizze, die ein anderes Beispiel der Hardwarekonfiguration der Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform zeigt. In dem in 2 gezeigten Beispiel weist die Satzstrukturvektorisierungsvorrichtung 100 eine Verarbeitungsschaltung 60, eine Eingabeschaltung 70 mit einer Eingabeschnittstelle, eine Ausgabeschaltung 80 mit einer Ausgabeschnittstelle und eine Speichervorrichtung 50 auf. Die Verarbeitungsschaltung 60 ist beispielsweise zweckgebundene Hardware. Die Verarbeitungsschaltung 60 kann einen Prozessor aufweisen, der durch Einlesen und Ausführen eines Programms, das in einem Arbeitsspeicher gespeichert ist, eine Funktion jeder Einheit implementiert. Es ist auch möglich, einen Teil der Verarbeitungsschaltung 60 durch zweckgebundene Hardware zu implementieren und einen anderen Teil der Verarbeitungsschaltung 60 durch eine Schaltung zu implementieren, die einen Prozessor aufweist, der Software oder Firmware ausführt.
-
3 ist ein funktionales Blockdiagramm, das schematisch eine Konfiguration der Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform zeigt. Wie in 3 gezeigt ist, weist die Satzstrukturvektorisierungsvorrichtung 100 eine morphologische Analyseeinheit 110, eine Abhängigkeits-Syntaxanalyseeinheit 120 und eine Satzstrukturvektorisierungseinheit 130 auf. Ferner kann die Satzstrukturvektorisierungsvorrichtung 100 eine Speichereinheit 140 aufweisen, die einen erzeugten Satzstrukturvektor speichert. Die Speichereinheit 140 kann beispielsweise der Arbeitsspeicher 20, die Speichervorrichtung 50 oder sowohl der Arbeitsspeicher 20 als auch die Speichervorrichtung 50 in 1 oder 2 sein.
-
Die morphologische Analyseeinheit 110 empfängt einen Anfragetext als Text, der eine Mehrzahl eingegebener Sätze aufweist, und segmentiert jeden von der Mehrzahl eingegebener Sätze mittels morphologischer Analyse. Dieser Prozess wird auch als morphologische Segmentierung bezeichnet. Die morphologische Analyseeinheit 110 gibt eine Mehrzahl von Morphemen als Ergebnis der morphologischen Analyse aus. Das „Morphem“ ist die kleinste Einheit eines aussagekräftigen Elements, das eine Bedeutung trägt. Ein Prozess für die Durchführung der morphologischen Segmentierung kann unter Verwendung einer allgemein bekannten Technologie ausgeführt werden. Ein Beispiel für den Eingabesatz ist in 5 gezeigt, die weiter unten erklärt wird. Beispiele für das Morphem sind in 6 gezeigt, die weiter unten erklärt wird.
-
Die Abhängigkeits-Syntaxanalyseeinheit 120 analysiert eine Abhängigkeit, das heißt eine Dependenzstruktur, in einer Mehrzahl von Morphemen in Bezug auf jeden Eingabesatz, der von der morphologischen Analyseeinheit 110 ausgegeben wird. Die Abhängigkeits-Syntaxanalyseeinheit 120 gibt Dependenzstrukturinformationen als das Ergebnis der Analyse der Dependenzstruktur aus. Die „Dependenzstruktur“ gibt eine Syntaxstruktur eines Satzes an und drückt die Struktur einer Morphemreihe, die aus einer Mehrzahl von Morphemen besteht, unter Verwendung einer Gruppe von Dependenzbeziehungen zwischen Morphemen in dem Satz aus. Die Dependenzbeziehung zwischen Morphemen wird auch als Abhängigkeitsbeziehung zwischen Morphemen bezeichnet. Ein Prozess der Durchführung der Abhängigkeits-Syntaxanalyse kann unter Verwendung einer allgemein bekannten Technologie ausgeführt werden. Ein Beispiel für die Dependenzstruktur ist in 7 gezeigt, die weiter unten erklärt wird.
-
Die Satzstrukturvektorisierungseinheit 130 empfängt die Dependenzstrukturinformationen in Bezug auf jeden Eingabesatz, die von der Abhängigkeits-Syntaxanalyseeinheit 120 ausgegeben werden, und erzeugt einen Satzstrukturvektor, welcher der Dependenzstruktur entspricht.
-
Als nächstes wird eine Funktionsweise der Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform beschrieben. 4 ist ein Flussdiagramm, das die eine Funktionsweise der Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform zeigt. 5 ist eine Skizze, die ein Beispiel für den Eingabesatz zeigt, der von der Satzstrukturvektorisierungsvorrichtung 100 empfangen wird. Dieses Beispiel für einen Eingabesatz: „The boy who lived“ („Der Junge, der überlebt hat“) wird aus Beispielen zitiert, die in der linken Spalte auf Seite 4 der Nicht-Patentliteratur 1 gezeigt sind.
-
(Schritt S101: Morphologische Analyse)
-
Wenn der in 5 gezeigte Eingabesatz 200 in Schritt S101 in die morphologische Analyseeinheit 110 eingegeben wird, führt die morphologische Analyseeinheit 110 die morphologische Analyse an dem Eingabesatz 200, das heißt einem Text, durch und gibt das Ergebnis der morphologischen Analyse aus.
-
6 ist eine Skizze, die ein Beispiel für das Ergebnis der morphologischen Analyse zeigt, die von der morphologischen Analyseeinheit 110 durchgeführt wird. In 6 sind vier Morpheme gezeigt. In dem in 6 gezeigten Ergebnis 210 einer morphologischen Analyse sind Beispiele für das Morphem in der Spalte gezeigt, die die zweite von links ist, und Morphemnummern, die den in der zweiten Spalte gezeigten Morphemen zugeteilt sind, sind in der ersten Spalte von links gezeigt. In 6 ist die zweite Spalte in Oberflächenformen (d.h. in vereinheitlichten Kleinbuchstabenreihen) gezeigt.
-
(Schritt S102: Abhängigkeits-Syntaxanalyse)
-
Wenn das Ergebnis 210 der morphologischen Analyse, das in 6 gezeigt ist, im nächsten Schritt S102 in die Abhängigkeits-Syntaxanalyseeinheit 120 eingegeben wird, führt die Abhängigkeits-Syntaxanalyseeinheit 120 die Abhängigkeits-Syntaxanalyse an dem Ergebnis 210 der morphologischen Analyse durch.
-
7 ist eine Skizze, die ein Beispiel für das Ergebnis der Abhängigkeits-Syntaxanalyse zeigt, die von der Abhängigkeits-Syntaxanalyseeinheit 120 durchgeführt wird. Informationen in der ersten Spalte und der zweiten Spalte in 7 sind den Informationen in der ersten Spalte und der zweiten Spalte in 6 gleich. In 7 zeigt die dritte Spalte Abhängigkeitsnummern, und die vierte Spalte zeigt die Abhängigkeitsbeziehungen. Hier steht „Abhängigkeitsnummer“ für die Morphemnummer eines Schlüsselworts (den Kopf) in der Abhängigkeit. Die „Abhängigkeitsbeziehung“ ist ein Label. Die Abhängigkeitsnummer und die Abhängigkeitsbeziehung sind beispielsweise in der Nicht-Patentliteratur 2 erklärt.
-
In 7 steht die Abhängigkeitsbeziehung „det“ für ein Bestimmungswort, und die Abhängigkeitsbeziehung „nsubj“ steht für ein Nominalsubjekt. Die Abhängigkeitsbeziehung „ref“ steht für ein Bezugsobjekt. Die Buchstabenreihe „acl“ steht für einen klausalen Modifizierer eines Nomens. Die Buchstabenreihe „relcl“ steht für einen Relativsatz. Die Abhängigkeitsbeziehung „acl:relcl“ steht für einen Relativsatzmodifizierer eines Nomens.
-
8 ist eine Skizze, die das Ergebnis der Abhängigkeits-Syntaxanalyse von 7 in einer Graphenstruktur zeigt. Die Graphenstruktur wird auch als „Abhängigkeitsstruktur“ oder „Dependenzstrukturgraph“ bezeichnet. In 8 modifiziert „lived“ („hat überlebt“) „boy“ („Junge“) als „nsubj“, und „boy“ modifiziert „lived“ als „acl:relcl“. Anders ausgedrückt modifizieren sich „boy“ und „lived“ gegenseitig und bilden eine Schleifenstruktur in der Graphenstruktur 255. Daher kann die in 8 gezeigte Abhängigkeitsstruktur durch die herkömmliche Baumstruktur, die nicht in der Lage ist, eine Schleifenstruktur auszudrücken, nicht angemessen verarbeitet werden.
-
(Schritt S103: 1-Gramm-Extraktion)
-
9 ist eine Skizze, die Informationen zeigt, die durch Sortieren von Morpheminformationen 1 als Informationen über die in 7 gezeigten Paare, die jeweils aus einem Morphem und einer Abhängigkeitsbeziehung bestehen, in der Reihenfolge der Buchstaben erhalten werden. Hier ist die Reihenfolge der Buchstaben die alphabetische Reihenfolge. Die Satzstrukturvektorisierungseinheit 130 sortiert die Morpheminformationen 1 als die Informationen über die Paare, die jeweils aus einem Morphem und einer Abhängigkeitsbeziehung bestehen, in der Reihenfolge der Buchstaben und teilt den Morpheminformationen 1 N-Gramm-Nummern zu. N ist eine positive ganze Zahl. Die N-Gramm-Nummern werden ausgehend von 1 in aufsteigender Ordnung zugeteilt (d.h. die Zählung beginnt mit 1), wie in 9 gezeigt ist. 9 zeigt einen Fall, wo N = 1, das heißt einen Fall von 1-Gramm. 1-Gramm bedeutet Unigramm. Die in 9 gezeigten Informationen werden in einem Speicher (z.B. dem Arbeitsspeicher 20 oder der Speichervorrichtung 50 in 1) gespeichert. Zum Beispiel ist die Morpheminformation „boy.nsubj“ eine Morpheminformation, die von dem Paar gebildet wird, das aus dem Morphem „boy“ und der Abhängigkeitsbeziehung „nsubj“ gebildet wird. Anhand des oben beschriebenen Prozesses werden Informationen 300 mit den N-Gramm-Nummern 1 bis 4, die in 9 gezeigt sind, in dem Arbeitsspeicher gespeichert.
-
(Schritt S104: Zwei-Morphem-Strukturinformationsextraktion)
-
10A bis 10D sind Skizzen, die Informationen zeigen, die durch die Zuordnung von Neunummerierungsmorphemnummern und Neunummerierungsabhängigkeitsnummern zu extrahierten Informationen in Bezug auf zwei Morpheme erzeugt werden. Die Satzstrukturvektorisierungseinheit 130 führt einen Prozess des Extrahierens von Informationen in Bezug auf zwei Morpheme in einer Abhängigkeitsbeziehung aus den Morphemen in dem Eingabesatz aus. Dieser Prozess wird für jedes Morphem in dem Eingabesatz ausgeführt. Hier wird eine Beschreibung eines Falles gegeben, wo dieser Prozess für die Morpheme mit den Morphennummern 1 bis 4, die in 7 gezeigt sind, ausgeführt wird.
-
In 7 ist die Abhängigkeitsnummer des Morphems „the“ („der“) mit der Morphemnummer 1 „2“. Wie als Information 230 in 10A angegeben, extrahiert somit die Satzstrukturvektorisierungseinheit 130 zwei Informationen in Bezug auf das Morphem „the“ mit der Morphemnummer 1 und das Morphem „boy“ mit der Morphemnummer 2 in einer Abhängigkeitsbeziehung und teilt die Neunummerierungsmorphemnummern als Seriennummern, die bei 1 anfangen, den zwei extrahierten Informationen zu.
-
Die Neunummerierungsmorphemnummern sind in der ersten Spalte von 10A gezeigt. Wie in 10A gezeigt ist, speichert die Satzstrukturvektorisierungseinheit 130 Informationen, die den Informationen mit der Morphemnummer 1 und den Informationen mit der Morphemnummer 2 gleich sind, von den Informationen 220, die in 7 gezeigt sind, in dem Arbeitsspeicher als die Morphemnummern, die Morpheme, die Abhängigkeitsnummern und die Abhängigkeitsbeziehungen.
-
Die Neunummerierungsmorphemnummern sind in der zweiten Spalte von 10A gezeigt. Da die Abhängigkeitsnummer in Bezug auf „the“ mit der Morphemnummer 1 in 7 „2“ ist, nimmt die Satzstrukturvektorisierungseinheit 130 Bezug auf die Neunummerierungsmorphemnummer von „boy“ mit der Morphemnummer 2. Da diese Neunummerierungsmorphemnummer „2“ ist, speichert die Satzstrukturvektorisierungseinheit 130 denselben numerischen Wert „2“ in dem Speicher als die Neunummerierungsabhängigkeitsnummer.
-
Da die Abhängigkeitsnummer in Bezug auf „boy“ mit der Morphemnummer 2 in 7 „4“ ist, sucht die Satzstrukturvektorisierungseinheit 130 nach der Morphemnummer 4. Jedoch existiert die Morphemnummer 4 nicht in den Informationen 230, die in 10A gezeigt sind, und somit speichert die Satzstrukturvektorisierungseinheit 130 „* ‟ als Symbol, was bedeutet, dass kein Modifiziertes existiert, in dem Speicher als die Neunummerierungsabhängigkeitsnummer von „boy“ mit der Morphemnummer 2.
-
Die Satzstrukturvektorisierungseinheit 130 führt einen Prozess, der dem oben beschriebenen Prozess ähnlich ist, für jedes der in 7 gezeigten Morpheme mit den Morphemnummern 2 bis 4 aus, wodurch Informationen 240, 250 und 260 erzeugt werden, die in 10b bis 10D gezeigt sind, und speichert die erzeugten Informationen 240, 250 und 260 in dem Speicher.
-
(Schritt S105: 2-Gramm-Extraktion)
-
11 ist eine Skizze, die Informationen zeigt, die von der Satzstrukturvektorisierungseinheit 130 aus den in 10A bis 10D gezeigten Informationen extrahiert werden. Die Satzstrukturvektorisierungseinheit 130 speichert Informationen, die durch Extrahieren von Morpheminformationen als Informationen über ein Paar, das aus einem Morphem und einer Abhängigkeitsbeziehung besteht, in Bezug auf die beiden Morpheme aus jeder von den Informationen 230, 240, 250 und 260, die in 10A bis 10D gezeigt sind, erhalten werden, und sortiert die extrahierten Morpheminformationen in der Reihenfolge von Buchstaben in dem Arbeitsspeicher zusätzlich zu den Informationen, die gespeichert werden, wenn die N-Gramm-Nummern 1-Gramm-Nummer sind. 11 zeigt einen Fall, wo N = 2, das heißt einen Fall von 2-Gramm. 2-Gramm bedeutet Bigramm.
-
In der ersten Ausführungsform wurden Informationen mit den N-Gramm-Nummern 1 bis 4 bereits in dem Arbeitsspeicher gespeichert, wie in 9 gezeigt, wenn die N-Gramm-Nummern 1-Gramm-Nummern sind. Wenn die N-Gramm-Nummern 2-Gramm-Nummern sind, speichert die Satzstrukturvektorisierungseinheit 130 daher Informationen mit den N-Gramm-Nummern 5 und höher in dem Speicher. Auf eine Weise, die dem Fall ähnlich ist, wo die N-Gramm-Nummern 1-Gramm-Nummern sind, speichert die Satzstrukturvektorisierungseinheit 130 die Informationen über das Morphem und die Abhängigkeitsbeziehung mit der Neunummerierungsmorphemnummer 1 in der Spalte der Morpheminformationen 1 und speichert die Informationen über das Morphem und die Abhängigkeitsbeziehung mit der Neunummerierungsmorphemnummer 2 in einer Spalte von Morpheminformationen 2. Wie in 11 gezeigt, speichert die Satzstrukturvektorisierungseinheit 130 die Informationen mit den N-Gramm-Nummern 5, 6 und 7 in dem Speicher. Anhand des oben beschriebenen Prozesses werden Informationen 310 mit den N-Gramm-Nummern 1 bis 7, die in 11 gezeigt sind, in dem Arbeitsspeicher gespeichert.
-
(Schritt S106: N-Morphem-Strukturinformationsextraktion)
-
Anschließend führt die Satzstrukturvektorisierungseinheit 130 den Prozess durch Einstellen der Zahl der Morpheme als Verarbeitungsziele auf N ein. Beispielsweise stehe N für eine ganze Zahl größer oder gleich 3, eine Mehrzahl von Teilstrukturinformationen schließt Strukturinformationen von 1-Morphem-Strukturinformationen in Bezug auf Ein-Morphem- bis N-Morphem-Strukturinformationen in Bezug auf N Morpheme ein, und die Satzstrukturvektorisierungseinheit 130 erzeugt die N-Morphem-Strukturinformationen durch Durchführen eines Prozesses des Zusammenführens von (N-1)-Morphem-Strukturinformationen und 2-Morphem-Strukturinformationen.
-
In der ersten Ausführungsform wird um der Einfachheit willen ein Fall beschrieben, wo der Prozess bis N = 3 ausgeführt wird. Um N Morpheme zu verarbeiten, werden Morphem-Strukturinformationen über N - 1 Morpheme (d.h. (N-1)-Morphem-Strukturinformationen) und Morphem-Strukturinformationen über zwei Morpheme (d.h. 2-Morphem-Strukturinformationen) verwendet. Da drei Morphem-Strukturinformationen in diesem Beispiel erzeugt werden, werden (N-1)-Morphem-Strukturinformationen (d.h. 2-Morphem-Strukturinformationen) und 2-Morphem-Strukturinformationen verwendet. Die Satzstrukturvektorisierungseinheit 130 führt den folgenden Prozess für jede (N - 1 (=2))-Morphem-Strukturinformation in 10A bis 10D aus.
-
13A bis 13E sind Skizzen, die Informationen zeigen, die durch Zusammenführen einer Mehrzahl von Informationen erzeugt werden, die aus den in 10A bis 10D gezeigten Informationen extrahiert wurden. Die Satzstrukturvektorisierungseinheit 130 führt den Prozess durch, indem sie sich auf die Morphemnummer 1 und die Morphemnummer 2 in den Informationen 230 in 10A konzentriert. Die Satzstrukturvektorisierungseinheit 130 führt eine Suche durch, um zu bestimmen, ob oder ob nicht Informationen über eine andere 2-Morphemstruktur existieren, die ein Kombinationspartner für die in 10A gezeigten Informationen 230 sein können. In den in 10A gezeigten Informationen 230 und den in 10B gezeigten Informationen 240 existieren die Morphemnummern 1 und 3 als unterschiedliche Morphemnummern, die Morphemnummer 2 existiert als gemeinsame Morphemnummer und die Neunummerierungsabhängigkeitsnummer in Bezug auf die Morphemnummer 2 ist „* ‟. Daher sind diese Informationen 230 und 240 kombinierbar, das heißt zusammenführbar. Demgemäß erzeugt die Satzstrukturvektorisierungseinheit 130 Informationen 270, die in 13A gezeigt sind, durch Zusammenführen der Zeilen mit der Neunummerierungsmorphemnummer 2 und speichert die Morphem-Strukturinformationen in Bezug auf drei Morpheme (d.h. 3-Morphem-Strukturinformationen) in dem Arbeitsspeicher. Hierbei bedeutet „zusammenführen“ das Integrieren einer Mehrzahl von Informationen zu einer einzigen Information gemäß einer vorgegebenen Regel.
-
Ebenso existieren in den in 10A gezeigten Informationen 230 und den in 10C gezeigten Informationen 250 die Morphemnummern 1 und 4 als unterschiedliche Morphemnummern und die Morphemnummer 2 existiert als gemeinsame Morphemnummer. Jedoch ist die Neunummerierungsabhängigkeitsnummer in Bezug auf die Morphemnummer 2, die in 10A gezeigt ist, „* ‟, während die Neunummerierungsabhängigkeitsnummer in Bezug auf die Morphemnummer 2, die in 10C gezeigt ist, „2“ ist. Daher führt die Satzstrukturvektorisierungseinheit 130 die Zeilen mit der Morphemnummer 2 zusammen. Da die Abhängigkeitsnummer in Bezug auf die Neunummerierungsabhängigkeitsnummer 2 zur Bildung der Kombination „4“ ist, wie in 10C gezeigt, erzeugt die Satzstrukturvektorisierungseinheit 130 in diesem Fall Informationen 280, die in 13B gezeigt sind, durch Durchführen der Zusammenführung unter Verwendung von „3“, das heißt der Neunummerierungsmorphemnummer der Informationen 250, die in 10C gezeigt sind, nach dem Zusammenführen als die Neunummerierungsabhängigkeitsnummer. Diese Informationen 280 werden zusätzlich als 3-Morphem-Strukturinformationen in dem Arbeitsspeicher gespeichert. Durch Wiederholen des gleichen Prozesses werden 3-Morphem-Strukturinformationen, die in 13C bis 13E gezeigt sind, erzeugt.
-
(Schritt S107: N-Gramm-Extraktion)
-
14 ist eine Skizze, die Informationen zeigt, die von der Satzstrukturvektorisierungseinheit 130 aus Informationen über N Paare extrahiert werden. 14 zeigt einen Fall, wo N = 3, das heißt einen Fall von 3-Gramm. 3-Gramm bedeutet Trigramm. In 14 sind die Informationen über N Paare die Morpheminformationen 1 bis 3. Die Satzstrukturvektorisierungseinheit 130 teilt Informationen, die durch Durchführen der Sortierung in der Buchstabenreihenfolge erhalten werden, N-Gramm-Nummern zu und speichert die Informationen in dem Arbeitsspeicher zusätzlich zu den in dem Fall von (N-1)-Gramm gespeicherten Informationen. Anschließend speichert die Satzstrukturvektorisierungseinheit 130 Informationen, die durch Zuteilen der N-Gramm-Nummern zu den Informationen, die durch Sortieren der Informationen über die N Paare, die jeweils aus einem Morphem und einer Abhängigkeitsbeziehung bestehen, erhalten werden, die in 13A bis 13E gezeigt sind, in der Buchstabenreihenfolge in dem Arbeitsspeicher zusätzlich zu den in 11 gezeigten Informationen.
-
In der ersten Ausführungsform wurden Informationen mit den N-Gramm-Nummern 1 bis 7 bereits in dem Arbeitsspeicher gespeichert, wie in 14 gezeigt, wenn die N-Gramm-Nummern 2-Gramm-Nummern sind. Daher speichert die Satzstrukturvektorisierungseinheit 130 Informationen mit den N-Gramm-Nummern „8“ und höher in dem Speicher. Das heißt, die Satzstrukturvektorisierungseinheit 130 speichert die in 14 gezeigten Informationen mit den N-Gramm-Nummern 8 bis 10, die gespeichert werden, wenn die N-Gramm-Nummern 3-Gramm-Nummern sind, in dem Arbeitsspeicher zusätzlich zu den Informationen mit den in 9 gezeigten N-Gramm-Nummern 1 bis 4, die gespeichert werden, wenn die N-Gramm-Nummern 1-Gramm-Nummern sind, und den in 11 gezeigten Informationen mit den N-Gramm-Nummern 5 bis 7, die gespeichert werden, wenn die N-Gramm-Nummern 2-Gramm-Nummern sind. Genauer speichert die Satzstrukturvektorisierungseinheit 130 Informationen über ein Morphem und eine Abhängigkeitsbeziehung mit der Neunummerierungsmorphemnummer 1 in 13A bis 13E in der Spalte mit den Morpheminformationen 1, speichert Informationen über ein Morphem und eine Abhängigkeitsbeziehung mit der Neunummerierungsmorphemnummer 2 in 13A bis 13E in der Spalte mit den Morpheminformationen 2 und speichert Informationen über ein Morphem und eine Abhängigkeitsbeziehung mit der Neunummerierungsmorphemnummer 3 in 13A bis 13E in der Spalte mit den Morpheminformationen 3. Anhand des oben beschriebenen Prozesses werden Informationen 320 mit den N-Gramm-Nummern 1 bis 10, die in 14 gezeigt sind, in dem Arbeitsspeicher gespeichert.
-
(Schritt S108: Abschließende Beurteilung)
-
Im nächsten Schritt S108 beurteilt die Satzstrukturvektorisierungseinheit 130, ob der Prozess für jeden Satz beendet wurde oder nicht. Falls der Prozess für jeden Satz beendet wurde, lautet das Urteil JA und der Prozess geht zu Schritt S109 weiter. Falls der Prozess noch nicht abgeschlossen ist, lautet das Urteil NEIN, die Zahl N wird um 1 vergrößert und der Prozess kehrt zum Schritt S106 zurück.
-
(Schritt S109: Satzstrukturvektorausgabe)
-
16 ist eine Skizze, die ein Beispiel für Informationen in Bezug auf die Satzstrukturvektorisierung zeigt, die aus den in 9 bis 15 gezeigten Informationen extrahiert wurden. 16 zeigt Vektorwerte Vk, die Vektordimensionen entsprechen, die von der Satzstrukturvektorisierungseinheit 130 extrahiert werden. Die Satzstrukturvektorisierungseinheit 130 gibt eine Zahlenfolge, die aus den Vektorwerten Vk besteht, als den Satzstrukturvektor aus.
-
Im Schritt S109 extrahiert die Satzstrukturvektorisierungseinheit 130 den Satzstrukturvektor aus den Morphemstrukturinformationen.
-
In den Dimensionen 1 bis 4 in 16 sind Vektorwerte Vk gezeigt, wenn ein Teilgraph als Teilstruktur, die aus dem Dependenzstrukturgraphen extrahiert wird, aus nur einem Morphem gebildet wird. Die Morpheminformationen mit den N-Gramm-Nummern 1 bis 4 bilden eine Morphemreihe und werden in dem Arbeitsspeicher gespeichert. Die Morphemstrukturnummern (d.h. 1-Morphem-Strukturnummern) sind dabei alle „0“, wie in 16 gezeigt ist, gemäß einer Berechnung von N - 1 = 1 - 1 = 0 auf Basis von genau einem Morphem und genau einer Art von Morphem.
-
Dann sind in den Dimensionen 5 bis 8 in 16 Vektorwerte Vk gezeigt, wenn der Teilgraph als Teilstruktur, die aus dem Dependenzstrukturgraphen extrahiert wird, aus zwei Morphemen gebildet wird. Die Morpheminformationen mit den N-Gramm-Nummern 5 bis 7 bilden eine Morphemreihe und werden in dem Arbeitsspeicher gespeichert. Da die Morphemstruktur mit der N-Gramm-Nummer 5 zwei Informationen beinhaltet: die Information 250 in 10C und die Information 260 in 10D, werden aus der Information 285, die in 12 gezeigt ist, Morphemstrukturen (in diesem Fall 2-Morphem-Strukturnummern) erhalten und „0“ und „1“ als die jeweiligen Morphemnummern aufgezeichnet. Danach werden für die Dimensionen 6, 7 und 8 Prozesse ausgeführt, die dem Prozess in dem Fall der Dimension 5 ähneln. 12 ist hierbei eine Skizze, die eine Entsprechungsbeziehung zwischen der 2-Morphemstrukturnummer und Neunummerierungsabhängigkeitsnummern zeigt, die für einen Prozess verwendet werden, wenn ein Teilgraph aus zwei Morphemen erstellt wird.
-
Dann sind in den Dimensionen 9 bis 13 in 16 Vektorwerte Vk gezeigt, wenn der Teilgraph als Teilstruktur, die aus dem Dependenzstrukturgraphen extrahiert wird, aus drei Morphemen gebildet wird. Die Morpheminformationen mit den N-Gramm-Nummern 8 bis 10 bilden eine Morphemreihe und werden in dem Arbeitsspeicher gespeichert. Da die Morphemstruktur mit der N-Gramm-Nummer 8 zwei Informationen beinhaltet: die Information 300 in 13D und die Information 310 in 13E, werden aus der Information 315, die in 15 gezeigt ist, Morphemstrukturen (in diesem Fall 3-Morphem-Strukturnummern) erhalten und „4“ und „7“ als die jeweiligen Morphemnummern aufgezeichnet. Danach werden für die Dimensionen 10, 11, 12 und 13 Prozesse ausgeführt, die dem Prozess in dem Fall der Dimension 9 ähneln. 15 ist hierbei eine Skizze, die eine Entsprechungsbeziehung zwischen der 3-Morphemstrukturnummer und Neunummerierungsabhängigkeitsnummern zeigt, die für einen Prozess verwendet werden, wenn ein Teilgraph aus drei Morphemen erstellt wird.
-
In der ersten Ausführungsform ist die Zahl der Morphemstrukturnummern, die in jeder der in 16 gezeigten Dimensionen erscheinen, immer 1, und somit werden die Vektorwerte Vk alle 1. Die Satzstrukturvektorisierungseinheit 130 gibt einen Vektor mit den resultierenden Vk-Werten, die den Dimensionsnummern entsprechen, als Satzstrukturvektor aus. Der ausgegebene Satzstrukturvektor wird in der Speichereinheit 140 gespeichert.
-
Wie oben beschrieben, kann mit der Satzstrukturvektorisierungsvorrichtung 100, dem Satzstrukturvektorisierungsverfahren oder dem Satzstrukturvektorisierungsprogramm gemäß der ersten Ausführungsform der Dependenzstrukturgraph als Ergebnis der Abhängigkeit in Teilstrukturen erweitert werden, die für Sprachbeschränkungen einer natürlichen Sprache geeignet sind. Zum Beispiel ist es möglich, Teilgraphen als Teilstrukturen aus dem Dependenzstrukturgraphen zu extrahieren, während eine Abhängigkeit, die in der Realität nicht existieren kann, ausgeschlossen wird, und den Satzstrukturvektor unter Verwendung solcher Teilgraphen zu erzeugen. Demgemäß kann ein geeigneter Satzstrukturvektor gemäß der Bedeutung des Satzes erzeugt werden.
-
Ferner kann in der ersten Ausführungsform die Anzahl von Kombinationen von Morphemstrukturen, die verarbeitet werden müssen, durch den Prozess des allmählichen Zusammenführens von Morphemstrukturen verringert werden. Ferner kann durch ein vorgegebenes Extrahieren von Teilstrukturen ohne Suchen nach schleifenbildenden Graphenstrukturen der Satzstrukturvektor mit einer kleinen Anzahl von Berechnungen erzeugt werden.
-
Die obige Beschreibung wurde für eine Fall gegeben, wo mehr als eine Teilstruktur in dem Eingabesatz erscheint, in der die Menge an Informationen durch Weglassen von 0 als dem Vektorwert Vk verringert ist, der einen Fall darstellt, wo keine Teilstruktur existiert. Demgemäß kann eine Speicherkapazität, die für den Arbeitsspeicher erforderlich ist, verringert werden. Jedoch kann der Satzstrukturvektor, der ausgegeben wird, auch ein Vektor sein, der den Vektorwert 0 einschließt, der einen Fall darstellt, wo keine Teilstruktur existiert.
-
Auch wenn die obige Beschreibung für einen Fall gegeben wird, wo der Eingabesatz, der in die Satzstrukturvektorisierungsvorrichtung 100 eingegeben wird, ein englischer Satz ist, kann der Eingabesatz auch ein Satz in einer Sprache mit Rückwärtsbezügen sein, wie etwa Japanisch oder Koreanisch. Im Falle der Verarbeitung einer Sprache mit Rückwärtsbezügen kann die Satzstrukturvektorisierungsvorrichtung 100 die Anzahl der Berechnungen und die Speicherkapazität, die für den Arbeitsspeicher nötig ist, durch Ausführen eines Prozesses der Löschung von Morphemstrukturnummern, die in der Realität nicht existieren können, verringern.
-
Zweite Ausführungsform
-
In der obigen ersten Ausführungsform wird die Satzstrukturvektorisierungsvorrichtung 100 beschrieben, die den Eingabesatz vektorisiert. In einer zweiten Ausführungsform wird eine Satzstrukturvektorisierungsvorrichtung 100a beschrieben, die es möglich macht, eine Dokumentenabfrage oder eine Dokumentenklassifizierung unter Verwendung des Satzstrukturvektors auszuführen, der von der Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform erzeugt wird. Mit der Satzstrukturvektorisierungsvorrichtung 100a ist es möglich, eine Dokumentenabfrage oder eine Dokumentenklassifikation, die in der Vergangenheit nicht unterschieden werden konnten, mit hoher Genauigkeit durchzuführen.
-
17 ist ein funktionales Blockdiagramm, das schematisch eine Konfiguration der Satzstrukturvektorisierungsvorrichtung 100a gemäß der zweiten Ausführungsform der vorliegenden Erfindung zeigt. Die Satzstrukturvektorisierungsvorrichtung 100a, ein Satzstrukturvektorisierungsverfahren und ein Satzstrukturvektorisierungsprogramm gemäß der zweiten Ausführungsform können durch eine Hardware-Konfiguration implementiert werden, die der in 1 oder 2 gezeigten Hardware-Konfiguration ähnlich ist. Die Satzstrukturvektorisierungsvorrichtung 100a gemäß der zweiten Ausführungsform kann durch Modifizieren des Programms, das von der Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform ausgeführt wird, implementiert werden.
-
Wie in 17 gezeigt ist, weist die Satzstrukturvektorisierungsvorrichtung 100a eine Vektorisierungseinheit 500, eine Wahrscheinlichkeitsberechnungseinheit 520 und eine Rangbestimmungseinheit 530 auf. Die Vektorisierungseinheit 500 ist die Satzstrukturvektorisierungsvorrichtung 100 gemäß der ersten Ausführungsform. Die Satzstrukturvektorisierungsvorrichtung 100a kann eine Abfrageobjekt-Dokumentenspeichereinheit 510, die Abfrageobjektdokumente speichert, und eine Kandidatendokumentenspeichereinheit 540, die Kandidatendokumente speichert, aufweisen. Ferner kann die Satzstrukturvektorisierungsvorrichtung 100a eine Abrufverarbeitungseinheit 550, die einen Satzabrufprozess ausführt, eine Klassifikationsverarbeitungseinheit 560, die einen Satzklassifikationsprozess ausführt, oder sowohl die Abrufverarbeitungseinheit 550 als auch die Klassifikationsverarbeitungseinheit 560 aufweisen. In dem Fall, wo die Satzstrukturvektorisierungsvorrichtung 100a die Abrufverarbeitungseinheit 550 aufweist, ist die Satzstrukturvektorisierungsvorrichtung 100a eine Dokumentenabrufvorrichtung. In dem Fall, wo die Satzstrukturvektorisierungsvorrichtung 100a die Klassifikationsverarbeitungseinheit 560 aufweist, ist die Satzstrukturvektorisierungsvorrichtung 100a eine Dokumentenklassifizierungsvorrichtung.. In 17 bilden die Wahrscheinlichkeitsberechnungseinheit 520, die Rangbestimmungseinheit 530, die Abrufverarbeitungseinheit 550 und die Klassifikationsverarbeitungseinheit 560 eine Verarbeitungseinheit 570, die einen Prozess auf Basis des Satzstrukturvektors ausführt.
-
Die Vektorisierungseinheit 500 führt einen Prozess des Vektorisierens eines Anfragetextes als Text, der einen Eingabesatz aufweist, und von Texten der Abfrageobjektdokumente, die in der Abfrageobjektdokumentenspeichereinheit 510 gespeichert sind, unter Verwendung eines Vektorraummodells aus. Zum Beispiel erzeugt die Vektorisierungseinheit 500 gewichtete Vektoren in Bezug auf Terme, die in den einzelnen Texten, das heißt in sowohl dem Anfragetext als auch den Texten der Abfrageobjektdokumente, vorhanden sind, gemäß einem Wichtigkeitsgrad von tfidf oder dergleichen in jedem Text. Hierbei ist „tfidf“ eine Abkürzung für Term Frequency-Inverse Document Frequency (Häufigkeit des Erscheinens, inverse Dokumentenfrequenz). tfidf ist ein allgemein bekanntes Verfahren zur Evaluierung des Grades der Wichtigkeit eines Terms, der in dem Text eines Dokuments enthalten ist. Die Vektorisierungseinheit 500 ermittelt den Satzstrukturvektor als den Vektor jedes Textes durch Kombinieren der gewichteten Vektoren in Bezug auf die in dem Text enthaltenen Terme.
-
Anschließend berechnet die Wahrscheinlichkeitsberechnungseinheit 520 die Wahrscheinlichkeit des Anfragetextes und des Textes jedes Abfrageobjektdokuments unter Verwendung des Cosinus eines Winkels, der durch die beiden erhaltenen Vektoren gebildet wird, das heißt die Cosinusähnlichkeit.
-
Anschließend gibt die Rangbestimmungseinheit 530 Kandidatendokumente, die durch rangmäßiges Ordnen der Abfrageobjektdokumente in absteigender Ordnung der Wahrscheinlichkeit auf Basis der von der Wahrscheinlichkeitsberechnungseinheit 520 errechneten Wahrscheinlichkeit erhalten werden, an die Kandidatendokumentenspeichereinheit 540 aus.
-
Die Abrufverarbeitungseinheit 550 ist in der Lage, auf Basis der Satzstrukturvektoren ein gewünschtes Dokument aus den Abfrageobjektdokumenten unter Verwendung der erhaltenen Wahrscheinlichkeit abzurufen.
-
Die Klassifikationsverarbeitungseinheit 560 ist in der Lage, auf Basis der Satzstrukturvektoren Sätze, die in den Abfrageobjektdokumenten enthalten sind, unter Verwendung der Wahrscheinlichkeit einer Mehrzahl von Klassen zuzuteilen.
-
Mit der oben beschriebenen Satzstrukturvektorisierungsvorrichtung 100a kann ein Dokumentenabruf oder eine Dokumentklassifikation mit hoher Genauigkeit verwirklicht werden.
-
Bezugszeichenliste
-
- 100, 100a
- Satzstrukturvektorisierungsvorrichtung,
- 110
- morphologische Analyseeinheit,
- 120
- Abhängigkeits-Syntaxanalyseeinheit,
- 130
- Satzstruk turvektorisierungseinheit,
- 140
- Speichereinheit,
- 500
- Vektorisierungseinheit,
- 510
- Abfrage-Dokumentenverarbeitungseinheit,
- 520
- Wahrscheinlichkeitsbe-rechnungseinheit,
- 530
- Rangbestimmungseinheit,
- 540
- Kandidatendokument-speichereinheit,
- 550
- Abrufverarbeitungseinheit,
- 560
- Klassifikationsverarbei-tungseinheit,
- 570
- Verarbeitungseinheit.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- JP 200214970 [0005]
- JP 2003271599 [0005]
-
Zitierte Nicht-Patentliteratur
-
- Sebastian Schuster et al., „Enhanced English Universal Dependencies: An Improved Representation for Natural Language Understanding Tasks“, LREC Stanford University, ID 779, 2016 [0005]
- Marie-Catherine de Marneffe et al., „Stanford typed dependencies manual“, überarbeitet für den Stanford Parser v.3.7.0, Sept. 2016 [0005]