DE102018213021A1 - Computerimplementiertes Verfahren und Vorrichtung für Textanalyse - Google Patents

Computerimplementiertes Verfahren und Vorrichtung für Textanalyse Download PDF

Info

Publication number
DE102018213021A1
DE102018213021A1 DE102018213021.3A DE102018213021A DE102018213021A1 DE 102018213021 A1 DE102018213021 A1 DE 102018213021A1 DE 102018213021 A DE102018213021 A DE 102018213021A DE 102018213021 A1 DE102018213021 A1 DE 102018213021A1
Authority
DE
Germany
Prior art keywords
neural network
artificial neural
term
components
domain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102018213021.3A
Other languages
English (en)
Inventor
Michael Dorna
Anna Constanze Haetty
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102018213021.3A priority Critical patent/DE102018213021A1/de
Priority to US17/259,864 priority patent/US11875265B2/en
Priority to PCT/EP2019/068692 priority patent/WO2020025285A1/de
Priority to JP2021505822A priority patent/JP7271652B2/ja
Priority to EP19739587.4A priority patent/EP3830761A1/de
Publication of DE102018213021A1 publication Critical patent/DE102018213021A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Machine Translation (AREA)
  • Image Analysis (AREA)

Abstract

Computerimplementiertes Verfahren zum Trainieren eines künstlichen neuronalen Netzes mit Trainingsdaten, die Merkmale (z; z, v) und Kennzeichen (s) umfassen, wobei die Merkmale (z; z,v) Termkandidaten (T; c) aus einem Korpus (302) charakterisieren, wobei der Korpus (302) einen Text aus einer Domäne umfasst, wobei das Kennzeichen (s) einen Grad einer Zugehörigkeit zu wenigstens drei voneinander verschiedene Klassen für die Termkandidaten (T; c) charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten (T; c) zu der Domäne angeben, wobei die Trainingsdaten eine Zuordnung von Merkmalen (z; z,v) zu Kennzeichen (s) umfassen, wobei einer Eingabeschicht des künstlichen neuronalen Netzes ein Merkmal (z; z,v) vorgegeben wird (S3), wobei das künstliche neuronale Netz dem Merkmal (z; z,v) aus der Eingabeschicht in einer Vorhersage in einer Ausgabeschicht des künstlichen neuronalen Netzes ein Kennzeichen (O) zuordnet (S5), wobei in einem Vergleich das Kennzeichen (O) aus der Ausgabeschicht mit dem Kennzeichen (s), das dem Merkmal (z; z,v) in den Trainingsdaten zugeordnet ist, verglichen wird (S4), wobei abhängig vom Ergebnis des Vergleichs wenigstens ein Parameter des künstlichen neuronalen Netzes gelernt wird (S4), der eine Verbindung des künstlichen neuronalen Netzes zwischen der Eingabeschicht und der Ausgabeschicht charakterisiert.Künstliches neuronales Netz, Verfahren zur Klassifizierung von Termkandidaten und computerimplementiertes Verfahren zum Erzeugen von Trainingsdaten.

Description

  • Stand der Technik
  • Die Offenbarung geht aus von computerimplementierten Verfahren und Vorrichtungen für Textanalyse, insbesondere für die Vorhersage einer Zugehörigkeit eines Kompositums aus einem Text zu einem Fachgebiet.
  • Maschinenbasierte Systeme für Textanalyse verwenden regelbasierte oder statistische Verfahren für Terminologieextraktion und Verschlagwortung. Hybride Verfahren und Machine-Learning Verfahren werden ebenfalls für Textanalyse eingesetzt.
  • DE 20 2017 102 235 U1 offenbart allgemein Aspekte eines Machine-Learning Verfahrens.
  • Eine Grundlage derartiger Verfahren für eine Zuordnung eines Kompositums zu einem bestimmten Fachgebiet sind binäre Entscheidungen. Wünschenswert ist es, ein demgegenüber verbessertes Vorgehen zu ermöglichen.
  • Offenbarung der Erfindung
  • Dies wird durch die Verfahren und Vorrichtungen gemäß den unabhängigen Ansprüchen erreicht.
  • In der folgenden Beschreibung bezeichnet der Ausdruck Korpus einen Text oder eine Kollektion von Texten. Ein fachspezifischer Korpus enthält nur Text, der für eine Domäne spezifisch ist. Ein allgemeinsprachlicher Korpus bezeichnet Text oder eine Kollektion von Texten, ohne spezifische Zuordnung zu einer Domain.
  • Alle Texte eines Kochforums im Internet stellen beispielsweise einen fachspezifischen Korpus dar. Alle Einträge der Wikipedia stellen beispielsweise einen allgemeinsprachlichen Korpus dar.
  • In der folgenden Beschreibung werden Teile eines Korpus, die analysiert werden, als Termkandidaten bezeichnet. Ein Text kann außer den Termkandidaten auch Teile enthalten, die nicht analysiert werden können oder sollen.
  • In der folgenden Beschreibung bezeichnet der Ausdruck Kompositum eine Wortzusammensetzung, d.h. ein Wort, das durch die Verbindung mindestens zweier bereits vorhandener Wörter oder Wortstämme zusammengesetzt ist.
  • In der folgenden Beschreibung bezeichnet der Ausdruck Komponente einen Teil eines Kompositums, d.h. einen Teil der Wortzusammensetzung.
  • Ein Grad einer Zugehörigkeit einer Komponente oder eines Kompositums zu einer bestimmten Domäne wird im Folgenden als Klasse bezeichnet. Ein bestimmtes Kompositum wird beispielsweise einer bestimmten Klasse zugeordnet, wenn sein Grad der Zugehörigkeit zu dieser Domäne einen bestimmten Wert aufweist oder in einem bestimmten Wertebereich liegt. Mit verschiedenen Werten oder mit verschiedenen, sich nicht überlappenden Wertebereichen, sind beispielsweise eindeutige Klassen definiert.
  • In einem computerimplementierten Verfahren zum Trainieren eines künstlichen neuronalen Netzes mit Trainingsdaten, die Merkmale und Kennzeichen umfassen, charakterisieren die Merkmale Termkandidaten aus einem Korpus, wobei der Korpus einen Text aus einer Domäne umfasst. Ein Kennzeichen charakterisiert einen Grad einer Zugehörigkeit zu wenigstens drei voneinander verschiedene Klassen für die Termkandidaten. Unterschiedliche Klassen geben unterschiedliche Grade der Zugehörigkeit des Termkandidaten zu der Domäne an. Die Trainingsdaten umfassen eine Zuordnung von Merkmalen zu Kennzeichen. Im Verfahren wird einer Eingabeschicht des künstlichen neuronalen Netzes ein Merkmal vorgegeben, wobei das künstliche neuronale Netz dem Merkmal aus der Eingabeschicht in einer Vorhersage in einer Ausgabeschicht des künstlichen neuronalen Netzes ein Kennzeichen zuordnet. In einem Vergleich wird das Kennzeichen aus der Ausgabeschicht mit dem Kennzeichen, das dem Merkmal in den Trainingsdaten zugeordnet ist, verglichen. Abhängig vom Ergebnis des Vergleichs wird wenigstens ein Parameter des künstlichen neuronalen Netzes gelernt, der eine Verbindung des künstlichen neuronalen Netzes zwischen der Eingabeschicht und der Ausgabeschicht charakterisiert. Dadurch werden Terme anstelle von in zwei Klassen Term oder Nicht-Term beispielsweise in vier Klassen NONTERM, SIMTERM, TERM, SPECTERM klassifizierbar.
  • Vorteilhafterweise werden die Termkandidaten einem bezüglich der Domäne fachspezifischen Korpus entnommen. Ein derartiger Korpus eignet sich besonders für das Training der Klassifizierung.
  • Vorteilhafterweise werden die Termkandidaten wenigstens einer der Klassen zugeordnet und die Merkmale für die Termkandidaten bestimmt, wobei insbesondere ein Wortvektor bestimmt wird, und wenigstens ein Parameter des künstlichen neuronalen Netzes mit den Merkmalen trainiert wird. Dadurch sind
  • Vorteilhafterweise sind die Termkandidaten Komposita mit wenigstens zwei Komponenten. Die Trainingsdaten ordnen Komposita zu wenigstens einer von mehr als drei Klassen zu. Diese ist insbesondere bei Komposita sinnvoll, da ein Kompositum abhängig von seinen Komponenten unterschiedliche Spezifität oder Zentralität für eine Domain aufweisen kann. Beispielsweise ist es wahrscheinlich, dass ein spezifischer Fachbegriff ein oder mehrere sehr spezifische Komponenten enthält. Ein allgemeiner Begriff enthält beispielsweise keine für diese Domain spezifische Komponente. Das künstliche neuronale Netz wird somit für eine sehr feine Unterscheidung trainiert.
  • Vorteilhafterweise werden Komposita aus einem bezüglich der Domäne fachspezifischen Korpus als Termkandidaten in Komponenten aufgeteilt, die Komposita wenigstens einer der Klassen zugeordnet, die Merkmale für die Komposita und die Komponenten bestimmt, und wird wenigstens ein Parameter des künstlichen neuronalen Netzes mit den Merkmalen trainiert. Dadurch werden Kompositum und seine Komponenten im Training berücksichtigt. Dies verbessert das Lernverhalten zusätzlich.
  • Vorteilhafterweise wird wenigstens ein Wortvektor als Merkmal bestimmt. Ein Wortvektor ist ein besonders gut geeignetes Merkmal für das Trainingsverfahren.
  • Vorteilhafterweise werden eine Produktivität und eine Frequenz der Komponenten als Merkmale auf Basis des spezifischen Korpus bestimmt werden. Produktivität und Frequenz sind weitere Merkmale mit Bezug zu einer Auftretenshäufigkeit der Komponenten. Dadurch wird das Training zusätzlich verbessert.
  • In einem computerimplementierten Verfahren zum Erzeugen von Trainingsdaten für ein Training eines künstlichen neuronalen Netzes, bei dem die Trainingsdaten Merkmale und Kennzeichen umfassen, werden Merkmale bestimmt, die Termkandidaten aus einem Korpus charakterisieren, wobei der Korpus einen Text aus einer Domäne umfasst, wobei ein Kennzeichen bestimmt wird, das einen Grad einer Zugehörigkeit zu wenigstens drei voneinander verschiedene Klassen für die Termkandidaten charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten zu der Domäne angeben, wobei wenigstens einem Merkmal wenigstens eines der Kennzeichen zugeordnet wird. Diese Trainingsdaten eignen sich besonders für ein Training einer Klassifikation mit mehr als drei Klassen.
  • Vorteilhafterweise werden die Termkandidaten einem bezüglich der Domäne fachspezifischen Korpus entnommen. Der fachspezifische Korpus bietet eine hohe Dichte an relevanten Termkandidaten einer Domäne.
  • Vorteilhafterweise werden die Termkandidaten wenigstens einer der Klassen zugeordnet und die Merkmale für die Termkandidaten bestimmt, wobei insbesondere ein Wortvektor bestimmt wird. Die Zuordnung von Merkmalen zu Klassen ist eine für das maschinelle Lernen besonders geeignete Darstellung der Klassifizierung der Termkandidaten.
  • Vorteilhafterweise sind die Termkandidaten Komposita mit wenigstens zwei Komponenten. Diese Form der Trainingsdaten sind besonders für eine Feinunterteilung der Klassen geeignet. Hinsichtlich der Zuordnung werden Komposita aufgrund einer möglichen Klassifizierung ihrer Komponenten in unterschiedliche Klassen nicht entweder als Term oder als Nicht-Term bezeichnet, sondern können je nach Grad ihrer Zugehörigkeit zu einer Domäne in eine von der Klasse Nicht-Term verschiedene andere Klassen klassifiziert werden.
  • Vorteilhafterweise werden Komposita aus einem bezüglich der Domäne fachspezifischen Korpus als Termkandidaten in Komponenten aufgeteilt, die Komposita wenigstens einer der Klassen zugeordnet, und die Merkmale für die Komposita und die Komponenten bestimmt. Die zusätzlichen Merkmale ermöglichen auch bei begrenzter Verfügbarkeit der Termkandidaten aus einem begrenzten Textumfang ein besseres Training des künstlichen neuronalen Netzes, ohne das zusätzlich neue Texte mit neuen Komposita hinzugezogen werden müssen.
  • Vorteilhafterweise wird wenigstens ein Wortvektor als Merkmal bestimmt. Wenn die Wortvektoren in den Trainingsdaten verwendet werden, benötigt das künstliche neuronale Netz selbst keinen Embedding Layer, der aus den Termkandidaten Wortvektoren als Merkmale bestimmt.
  • Vorteilhafterweise werden eine Produktivität und eine Frequenz der Komponenten als Merkmale auf Basis des spezifischen Korpus bestimmt. Die zusätzlichen Merkmale Produktivität und eine Frequenz ermöglichen auch bei begrenzter Verfügbarkeit der Termkandidaten aus einem begrenzten Textumfang ein besseres Training des künstlichen neuronalen Netzes, ohne das zusätzlich neue Texte mit neuen Komposita hinzugezogen werden müssen.
  • Ein künstliches neuronales Netz umfasst eine Eingabeschicht der ein Merkmal vorgebbar ist, wobei das künstliche neuronale Netz ausgebildet ist, dem Merkmal aus der Eingabeschicht in einer Vorhersage in einer Ausgabeschicht des künstlichen neuronalen Netzes ein Kennzeichen zuzuordnen, wobei die Merkmale Termkandidaten aus einem Korpus charakterisieren, wobei der Korpus einen Text aus einer Domäne umfasst, wobei das Kennzeichen wenigstens drei voneinander verschiedene Klassen für die Termkandidaten charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten zu der Domäne angeben. Dieses künstliche neuronale Netz ist eine besonders effiziente Umsetzung einer Klassifikation von Komposita in mehr als zwei Klassen.
  • Vorteilhafterweise umfasst das künstliche neuronale Netz wenigstens eine erste Eingabeschicht, der ein Kompositum und seine Komponenten für ein erstes Merkmal vorgebbar sind, wobei das künstliche neuronale Netz wenigstens eine zweite Eingabeschicht umfasst, der eine Produktivität und eine Frequenz der Komponenten für ein zweites Merkmal vorgebbar sind, wobei die Ausgabeschicht den Eingabeschichten nachgeordnet ist und das Kennzeichen in der Vorhersage abhängig vom ersten Merkmal und vom zweiten Merkmal ausgibt. Die zusätzlichen Merkmale verbessern die Effizienz und Zuverlässigkeit der Vorhersage des künstlichen neuronalen Netzes zusätzlich.
  • Vorzugsweise umfasst das künstliche neuronale Netz eine weitere Ausgabeschicht, die ausgebildet ist einen Grad einer Zuordnung eines Kompositums zu den wenigstens drei Klassen unabhängig von der Produktivität und der Frequenz seiner Komponenten auszugeben. Diese weitere Ausgabeschicht ist ein Hilfsausgang, der in einer Fehlerfunktion zu einer Optimierung verwendbar ist.
  • Vorzugsweise umfasst das künstliche neuronale Netz eine weitere Ausgabeschicht, die ausgebildet ist einen Grad einer Zuordnung einer der Komponenten zu den wenigstens drei Klassen abhängig von der Produktivität und der Frequenz dieser Komponente auszugeben. Diese weitere Ausgabeschicht ist ein Hilfsausgang, der in einer Fehlerfunktion zu einer Optimierung verwendbar ist.
  • In einem Verfahren zur Klassifizierung von Termkandidaten wird einer Eingabeschicht eines künstlichen neuronalen Netzes ein Merkmal vorgegeben, wobei dem Merkmal aus der Eingabeschicht in einer Vorhersage in einer Ausgabeschicht des künstlichen neuronalen Netzes ein Kennzeichen zugeordnet wird, wobei die Merkmale Termkandidaten aus einem Korpus charakterisieren, wobei der Korpus einen Text aus einer Domäne umfasst, wobei das Kennzeichen wenigstens drei voneinander verschiedene Klassen für die Termkandidaten charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten zu der Domäne angeben. Die Klassifizierung in mehr als zwei Klassen ermöglicht zusätzlich zu einer Erkennung, ob ein Termkandidat ein Term oder kein Term bezüglich der Domäne ist, das Bereitstellen eines fein klassifizierten Datensatzes mit mehr als zwei Klassen.
  • Vorteilhafterweise werden einer ersten Eingabeschicht ein Kompositum und seine Komponenten für ein erstes Merkmal vorgegeben, wobei einer zweiten Eingabeschicht eine Produktivität und eine Frequenz der Komponenten für ein zweites Merkmal vorgegeben werden, wobei die Ausgabeschicht den Eingabeschichten nachgeordnet ist und das Kennzeichen in der Vorhersage abhängig vom ersten Merkmal und vom zweiten Merkmal ausgegeben wird. Die Vorhersage wird durch das Hinzufügen dieser zusätzlichen Merkmale weiter verbessert.
  • Weitere vorteilhafte Ausführungen ergeben sich aus der folgenden Beschreibung und der Zeichnung. In der Zeichnung zeigt
    • 1 schematisch Teile eines künstlichen neuronalen Netzes,
    • 2 schematisch Teile eines Modells für Textanalyse,
    • 3 schematisch Schritte in einem Trainings- oder Klassifizierungsverfahren.
  • In der folgenden Beschreibung bezeichnet der Ausdruck Domäne ein Fach- oder Themengebiet.
  • In einem im Folgenden beschriebenen Beispiel werden die Klassen NONTERM, SIMTERM, TERM, SPECTERM verwendet.
  • NONTERM ist eine Klasse für Komponenten oder Komposita, die keinen besonderen Bezug zur Domäne haben. Beispielsweise wird ein allgemeinsprachliches Kompositum ohne besonderen Bezug zur Domäne als NONTERM klassifiziert.
  • SIMTERM ist eine Klasse für Komponenten oder Komposita, die einen größeren Bezug zur Domäne haben als Komponenten oder Komposita aus der Klasse NONTERM. Beispielsweise werden Komponenten oder Komposita mit einen semantischen Bezug zur Domäne als SIMTERM klassifiziert.
  • TERM ist eine Klasse für Komponenten oder Komposita, die einen größeren Bezug zur Domäne haben als Komponenten oder Komposita aus der Klasse SIMTERM. Beispielsweise werden verständliche Komponenten oder Komposita mit Bezug zur Domäne als TERM klassifiziert.
  • SPECTERM ist eine Klasse für Komponenten oder Komposita, die einen größeren Bezug zur Domäne haben als Komponenten oder Komposita aus der Klasse TERM. Beispielsweise werden unverständliche Komponenten oder Komposita mit Bezug zur Domäne als SPCTERM klassifiziert.
  • Diese vier Klassen stellen unterschiedliche Grade der Zugehörigkeit zu einer Domäne dar. Genauer nimmt der Grad der Zugehörigkeit zu der Domäne mit der Klassifizierung von NONTERM über SIMTERM und TERM zu SPECTERM zu. Beispielsweise werden den vier Klassen vier Kennzeichen wie folgt zugeordnet: Der Klasse NONTERM wird ein erster Skalar o1 zugeordnet, der Klasse SIMTERM wird ein zweiter Skalar o2 zugeordnet, der Klasse TERM wird ein dritter Skalar o3 zugeordnet und der Klassen SPECTERM wird ein vierter Skalar o4 zugeordnet. Im Beispiel wird als Kennzeichen ein Vektor O=(o1,o2,o3,o4)T verwendet. Jeder Skalar hat im Beispiel einen Wert zwischen 0 und 1, wobei der Grad der Zugehörigkeit mit dem Wert des jeweiligen Skalars von 0 bis 1 ansteigt.
  • Der Grad der Zugehörigkeit von Komponenten oder Komposita eines Korpus stellt ein Maß für einen Schwierigkeitsgrad des Textes aus dem Korpus, d.h. sein Niveau oder seine Spezifität bezüglich der Domäne dar. Texte mit Komponenten oder Komposita in der Klasse SPECTERM sind mit großer Wahrscheinlichkeit von Fachleuten oder für Fachleute verfasst. Texte ohne Komponenten oder Komposita in den Klassen TERM oder SPECTERM sind mit großer Wahrscheinlichkeit unspezifisch bezüglich der Domäne.
  • In der folgenden Beschreibung umfassen Trainingsdaten Merkmale und Kennzeichen. Genauer wird einem Merkmal in den Trainingsdaten wenigstens ein Kennzeichen zugeordnet. In einem Aspekt wird jedem Merkmal wenigstens ein Kennzeichen zugeordnet.
  • Merkmale charakterisieren in der folgenden Beschreibung Termkandidaten. In einem Aspekt repräsentiert ein Merkmal einen Termkandidaten eindeutig. Ein Merkmal ist beispielsweise ein Wortvektor, der den Termkandidaten darstellt. In einem weiteren Aspekt repräsentiert ein Merkmal eine Produktivität oder eine Frequenz einer Komponente eines Kompositums in einem fachspezifischen Korpus bezüglich eines allgemeinsprachlichen Korpus.
  • Kennzeichen charakterisieren in der folgenden Beschreibung eine Klasse. In einem Aspekt repräsentiert ein Kennzeichen eine Klasse eindeutig. Ein Kennzeichen ist beispielsweise ein Vektor s mit Skalaren s1, s2, s3, s4 deren Wert zwischen 0 und 1 einen Grad der Zugehörigkeit zu dieser Klasse darstellt. Der Wert 1 stellt beispielsweise einen hohen Grad der Zugehörigkeit dar. Der Wert 0 stellt beispielsweise einen niedrigen Grad der Zugehörigkeit dar.
  • Als Beispiel für ein Modell für eine Klassifizierung von Text abhängig vom Grad einer Zugehörigkeit einer Komponente oder eines Kompositums zu einer bestimmten Domäne wird im Folgenden anhand der 1 ein künstliches neuronales Netz nach einer ersten Ausführungsform beschrieben.
  • Eine Ausgabe O des Netzes ist beispielsweise definiert als: O = σ ( φ ( E ( x ) * W 1 ) * W 2 ) )
    Figure DE102018213021A1_0001
  • Dabei ist x ein Wort, d.h. ein Kompositum oder einer Komponente und z = E(x) ein der Ausgang eines Embedding Layers in welchem die Funktion E:x z
    Figure DE102018213021A1_0002
    ein Wort x auf einen Vektor z abbildet. Im Beispiel ist der Vektor z für ein Wort x ein 200-dimensionaler Wortvektor. Werden eine Anzahl n Wörter in einer Batch der Größe b verwendet, werden n Vektoren z in einer Matrix Z mit der Dimension [n*200, b] verwendet.
  • W1 und W2 sind Gewichtungsmatrizen. Die Gewichtungsmatrix W1 hat im Beispiel für n Wörter eine Dimension [64, n*200] passend zu den n 200-dimensionalen Vektoren z.
  • φ ist eine Aktivierungsfunktion. Im Beispiel wird als Aktivierungsfunktion die Tangenshyperbolikusfunktion wie folgt verwendet φ ( z*W 1 ) = tanh ( z * W 1 ) .
    Figure DE102018213021A1_0003
  • In einem Dense Layer wird im Beispiel am Ausgang d der zweiten verdeckten Schicht 106 d = φ(W1*z) mit den Dimensionen [64, b] verwendet.
  • Die Gewichtungsmatrix W2 hat im Beispiel eine Dimension [4, 64] passend zu den vier Klassen NONTERM, SIMTERM, TERM, SPECTERM. Im Beispiel werden als Ausgabe O in der Ausgabeschicht 4 Neuronen verwendet.
  • σ ist im Beispiel eine Softmax-Aktivierungsfunktion, mit der eine Wahrscheinlichkeit einer Zugehörigkeit zu einer der Klassen bestimmt wird. Die Softmax-Aktivierungsfunktion konvertiert dazu einen Rohwert in eine Wahrscheinlichkeit, die auch als Maß für eine Gewissheit hinsichtlich einer Korrektheit des Ergebnisses dient. Als Softmax-Aktivierungsfunktion wird für ein Neuron i aus der Ausgabe O beispielsweise bei n = 4 Neuronen O=(o1, o2, o3, o4) in der Ausgabeschicht für jeden skalaren Ausgang oi folgende Funktion verwendet o i = σ ( y i ) = e y i k = 0 n e y k
    Figure DE102018213021A1_0004
    wobei yi die Zeile i und yk die Zeile k eines Vektors y = φ(E(x)*W1)*W2 ist.
  • Eine beispielhafte Zuordnung ist im Folgenden angegeben:
    • NONTERM wird o1 zugeordnet, SIMTERM wird o2 zugeordnet, TERM wird o3 zugeordnet, SPECTERM wird o4 zugeordnet. Der skalare Wert oi ist ein Grad für die Zugehörigkeit des Terms zu der jeweiligen Klasse.
  • 1 zeigt schematisch, als Beispiel für einen Modell, Teile eines künstlichen neuronalen Netzes 100 mit hintereinander liegenden Schichten. Das künstliche neuronale Netz 100 umfasst eine Eingabeschicht 102, eine erste verdeckte Schicht 104, eine zweite verdeckte Schicht 106 und eine Ausgabeschicht 108.
  • Die Eingabeschicht 102 ist ausgebildet, einen Termkandidaten T als Wort x an die erste verdeckte Schicht 104 zu übergeben.
  • Die erste verdeckte Schicht 104 ist im Beispiel die Funktion E(x), d.h. der Embedding Layer in welchem die Funktion E:x z
    Figure DE102018213021A1_0005
    das Wort x auf den Vektor z abbildet.
  • Die Abbildung erfolgt beispielsweise mittels eines Continuous Bag-of-Words, CBOW, Modells. Beispielsweise wird ein Word2Vec CBOW Modell nach Tomas Mikolov et. al, 2013, Distributed representations of words and phrases and their compositionality, Advances in Neural Information Processing Systems, pages 3111-3119, Curran Associatates, Inc., verwendet, um den 200-dimensionalen Wortvektor zu erzeugen.
  • In einem Aspekt wird das CBOW Modell beispielsweise mittels eines Lexikons trainiert, um die Gewichte der ersten verdeckten Schicht 104 für Worte zu lernen. Beispielsweise wird ein zuvor trainiertes CBOW Modell verwendet um den Embedding Layer zu initialisieren. Die erste verdeckte Schicht 104 ist dann mit entsprechenden Gewichten für Worte initialisiert.
  • Worte, die nicht als solches erkannt werden, werden beispielsweise auf einen Wortvektor z mit zufälligen Elementen abgebildet. Worte, die erkannt wurden, werden auf den entsprechenden Wortvektor z abgebildet. Der Wortvektor repräsentiert die Termkandidaten.
  • Der Wortvektor z wird von der ersten verdeckten Schicht 104 an die zweite verdeckte Schicht 106 übergeben.
  • Die zweite verdeckte Schicht 106 verwendet die erste Gewichtmatrix W1 und die Aktivierungsfunktion φ. Im Beispiel wird als Aktivierungsfunktion in der zweiten verdeckten Schicht 106 die Tangenshyperbolikusfunktion wie folgt verwendet: d = φ ( E ( x ) *W 1 ) = tanh ( z * W 1 ) .
    Figure DE102018213021A1_0006
  • Der Ausgang d wird an die Ausgabeschicht 108 übergeben. Im Beispiel wird die Softmax-Aktivierungsfunktion verwendet, mit der die Wahrscheinlichkeit der Zugehörigkeit des Worts x zu einer der Klassen bestimmt wird.
  • Die Gewichtsmatrizen und die Aktivierungsfunktionen sind Parameter des künstlichen neuronalen Netzes 100. Die Parameter, insbesondere die Gewichtsmatrizen sind in einem Training veränderlich.
  • Ein Verfahren zum Trainieren dieses künstlichen neuronalen Netzes 100 wird im Folgenden beschrieben.
  • Trainingsdaten zum Trainieren dieses künstlichen neuronalen Netzes 100 umfassen Merkmale und Kennzeichen. Genauer umfassen die Trainingsdaten eine Zuordnung von Merkmalen zu Kennzeichen.
  • Die Merkmale charakterisieren Termkandidaten T aus einem fachspezifischen Korpus. Ein Kennzeichen s charakterisiert wenigstens drei voneinander verschiedene Klassen für die Termkandidaten T. Im Beispiel charakterisiert das Kennzeichen s die vier Klassen NONTERM, SIMTERM, TERM, SPECTERM. Die Klassen geben den Grad der Zugehörigkeit des Termkandidaten T zu der Domäne an.
  • Annotatoren, d.h. beispielsweise Menschen, suchen aus dem fachspezifischen Korpus Worte oder Wortzusammensetzungen als Termkandidaten T heraus und ordnen diese einer der vier Klassen zu. Für einen Termkandidaten T umfasst die Zuordnung in den Trainingsdaten beispielsweise als Merkmal einen Wortvektor z, der den Termkandidaten T repräsentiert. Im Kennzeichen s wird der Klasse NONTERM ein erster Skalar s1, der Klasse SIMTERM ein zweiter Skalar s2, der Klasse TERM ein dritter Skalar s3 und der Klassen SPECTERM ein vierter Skalar s4 zugeordnet. Im Beispiel wird als Kennzeichen ein Vektor s=(s1, s2, s3, s4)T verwendet. Jeder Skalar hat im Beispiel einen Wert zwischen 0 und 1, wobei der Grad der Zugehörigkeit beispielsweise mit dem Wert des jeweiligen Skalars von 0 bis 1 ansteigt. Das Kennzeichen umfasst Werte, die der Annotator auswählt.
  • Wenn das künstliche neuronale Netzes 100 trainiert ist, können die Komposita automatisch mithilfe eines Splitters gesucht, und mithilfe des schon trainierten künstlichen neuronalen Netzes 100 die Klassen vorhersagen.
  • Der Eingabeschicht 102 des künstlichen neuronalen Netzes 100 wird ein Termkandidat T vorgegeben. Es kann vorgesehen sein, die Parameter des künstlichen neuronalen Netzes 100 vor dem Training mit zufälligen Werten zu initialisieren. Zum Training kann eine Gruppe von Termkandidaten T als Batch, beispielsweise mit b = 32 Trainingsbeispielen, gleichzeitig vorgegeben werden.
  • Das künstliche neuronale Netz 100 ordnet einem Merkmal, das den Termkandidaten T aus der Eingabeschicht 102 repräsentiert in einer Vorhersage in der Ausgabeschicht 108 des künstlichen neuronalen Netzes 100 ein Kennzeichen o zu. Die Vorhersage erfolgt mittels des beschriebenen Modells. Das Ergebnis der Vorhersage sind im Beispiel mit b = 32 Trainingsbeispielen eine Matrix O mit 32 Vektoren o1, ... o32.
  • In einem Vergleich wird das Kennzeichen o aus der Ausgabeschicht 108 mit dem, diesem Merkmal in den Trainingsdaten zugeordneten Kennzeichen s verglichen. Beispielsweise wird im Vergleich eine Fehlerfunktion ausgewertet, beispielsweise eine Differenz, insbesondere ein euklidischer Abstand, zwischen dem Vektor s und dem Vektor o.
  • Abhängig vom Ergebnis des Vergleichs wird wenigstens ein Parameter des künstlichen neuronalen Netzes 100 gelernt. Der Parameter charakterisiert eine Verbindung des künstlichen neuronalen Netzes 100 zwischen der Eingabeschicht 102 und der Ausgabeschicht 108. Beispielsweise werden die Gewichtsmatrizen W1 und W2 abhängig von der Fehlerfunktion gelernt, bis die Fehlerfunktion minimiert ist. Dabei wird beispielsweise die Stochastic Gradient Descent (SGD) Methode verwendet.
  • Vorzugsweise wird in den Trainingsdaten eine Vielzahl von Zuordnungen von Merkmalen zu Kennzeichen vorgesehen. Im Beispiel werden 50 Epochen verwendet. In jeder der 50 Epochen werden 32 Trainingsbeispiele verarbeitet. Ein Trainingsdatensatz umfasst in diesem Falle 1600 Zuordnungen. Es kann vorgesehen sein, das Training mit einer anderen Anzahl Epochen oder einer anderen Größe eines Trainingsdatensatzes durchzuführen.
  • Durch die Verwendung der wenigstens drei Klassen ist es möglich, anstelle einer binären Entscheidung, ob ein Termkandidat T ein Term aus der Domäne ist oder nicht, ein künstliches neuronales Netz bereitzustellen, das einen Grad der Zugehörigkeit definiert. Damit ist eine feinere Klassifizierung möglich.
  • Besonders vorteilhaft ist es, wenn als Termkandidaten T ausschließlich Komposita verwendet werden. Ein derartiges trainiertes künstliches neuronales Netz ermöglicht eine besonders effiziente Klassifizierung von Texten anhand darin enthaltener Komposita.
  • Trainingsdaten eines Trainingsdatensatzes umfassen in diesem Fall eine Zuordnung von Merkmalen, die Komposita repräsentieren, zu den Kennzeichen, die die Klasse repräsentieren, in die die Komposita von Annotatoren klassifiziert wurden. Die Komposita werden einem bezüglich einer Domain fachspezifischen Korpus entnommen. Das Modell wird für eine Klassifizierung abhängig vom Grad einer Zugehörigkeit einer Komponente zu einer bestimmten Domäne trainiert.
  • Dem Trainingsdatensatz liegen folgende Aspekte zugrunde.
  • Komposita sind Wortzusammensetzungen, die als Komponenten Wörter oder Wortstämme enthalten. Je nach der Zusammensetzung der Komponenten entstehen Komposita die einen mehr oder weniger großen Grad der Zugehörigkeit zu einer Domäne haben. Beispielsweise kann eine Komponente Mais einer Domäne Kochen oder einer Domäne Landwirtschaft zugeordnet werden. Ein Kompositum Maisanbau kann in diesem Beispiel nur der Domäne Landwirtschaft zugeordnet werden. Ein Kompositum Maismehl kann in diesem Beispiel nur der Domäne Kochen zugeordnet werden. Eine Klassifizierung des Kompositums ist in diesem Beispiel durch eine Klassifizierung der beiden weiteren Komponenten -anbau und -mehl möglich. Das Kompositum Maisanbau lässt sich zudem inhaltlich mit der Domäne Kochen assoziieren. Das Kompositum Maisanbau lässt sich beispielsweise in die Klasse SIMTERM klassifizieren.
  • Zur Erstellung des Trainingsdatensatzes wird ein Text oder eine Textkollektion mit bekanntem Bezug zu dieser Domäne als fachspezifischer Korpus verwendet. Im Beispiel ist der fachspezifische Korpus eine Textkollektion von Kochrezepten. Diese enthält als Termkandidaten mögliche Fachbegriffe aus der Domäne „Kochen“.
  • Aus dem fachspezifischen Korpus werden Termkandidaten identifiziert. Im Beispiel werden Komposita als Termkandidaten identifiziert. Den Termkandidaten, d.h. den Komposita werden lexikalische Kompositumsdefinitionen oder Beispiele zugeordnet. Als lexikalische Definition oder Beispiel wird beispielsweise ein Text verwendet.
  • Für das Training und die Klassifizierung werden im Beispiel Termkandidaten berücksichtigt, die eine bestimmte Mindestlänge haben. Termkandidaten mit nur einem Buchstaben werden in diesem Fall ignoriert. Ohne eine Mindestlänge könnten Termkandidaten mit nur einem Buchstaben alternativ dazu in die Klasse NONTERM klassifiziert werden.
  • Den Termkandidaten wird als Gold-Standard für das Training durch einen Annotator oder mehrere Annotatoren eine nutzerbasierte Bewertung hinsichtlich einer Spezifität und Zentralität zugeordnet. Im Beispiel wird für einen Termkandidat mittels der vier Klassen eine mehrdimensionale Skala verwendet, um dem Termkandidaten eine Klassifizierung in eine der Klassen NONTERM, SIMTERM, TERM oder SPECTERM zuzuweisen. Die Annotatoren sind angehalten, einen Termkandidat in die Klasse SPECTERM zu klassifizieren, wenn er sehr spezifisch für die bestimmte Domäne, im Beispiel „Kochen“ ist und einen hohen Grad der Nähe zu der bestimmten Domäne aufweist. Die Annotatoren sind angehalten, einen Termkandidat in die Klasse SIMTERM zu klassifizieren, wenn er sehr spezifisch ist und einen mittleren Grad der Nähe zu der bestimmten Domäne aufweist. Die Annotatoren sind angehalten, einen Termkandidat in die Klasse TERM zu klassifizieren, wenn er einen hohen Grad der Nähe zu der bestimmten Domäne, im Beispiel „Kochen“ aufweist, aber ansonsten fachlich unspezifisch ist. Die Annotatoren sind angehalten, andere Termkandidaten in die Klasse NONTERM zu klassifizieren.
  • Beispielhaft für eine Klassifizierung eines Termkandidaten aus dem fachspezifischen Korpus wird das Kompositum „Maisanbau“ betrachtet. Einer Vielzahl Annotatoren wird das Kompositum Maisanbau und die Definition zur Klassifizierung vorgelegt. Einige Annotatoren klassifiziert das Kompositum beispielsweise aufgrund dieser Definition in die Klasse NONTERM. Andere Annotatoren klassifizieren das Kompositum beispielsweise in die Klasse SIMTERM.
  • Der Trainingsdatensatz wird im Beispiel um den Eintrag Maisanbau in der Klasse ergänzt, in die das Kompositum Maisanbau von allen oder einer Mehrzahl der Annotatoren klassifiziert wurde. Ein Trainingssatz enthält beispielsweise eine Zuordnung von einem Merkmal, das den Eintrag Maisanbau repräsentiert zu einer der Klassen. Beispielsweise wird der Wortvektor z, der den Termkandidaten Maisanbau charakterisiert, dem Vektor s zugeordnet, der die Klasse SIMTERM charakterisiert.
  • Ein Trainingsdatensatz enthält eine Vielzahl derartiger Zuordnungen für eine Vielzahl von verschiedenen Termkandidaten. Ausgehend von diesem Trainingssatz, wird das Modell trainiert. Im Training wird die Vielzahl derartiger Zuordnungen aus einem Trainingsdatensatz verwendet, um die Gewichtsmatrizen zu lernen.
  • In der ersten Ausführungsform werden die Wortvektoren z, die die Komposita repräsentieren als Merkmale verwendet. Die Gewichtsmatrizen W1 und W2 werden abhängig von diesen Wortvektoren z, dem Vektor s und einer entsprechenden Fehlerfunktion gelernt.
  • Eine weitere Verbesserung ist möglich, wenn zusätzlich zu den Komposita deren Komponenten verwendet werden. Dazu werden weitere Merkmale verwendet.
  • Dies wird im Folgenden anhand des künstlichen neuronalen Netzes 200 nach einer zweiten Ausführungsform beschrieben, das in 2 schematisch dargestellt ist.
  • Das künstliche neuronale Netz 200 umfasst eine erste Eingabeschicht 202a, eine zweiten Eingabeschicht 202b, eine dritte Eingabeschicht 202c, eine vierte Eingabeschicht 202d und eine fünfte Eingabeschicht 202e. Das künstliche neuronale Netz 200 umfasst eine erste verdeckte Schicht 204a, die der zweiten Eingabeschicht 202b nachgeordnet ist, eine zweite verdeckte Schicht 204b, die der dritten Eingabeschicht 202c nachgeordnet ist, eine dritte verdeckte Schicht 204c, die der vierten Eingabeschicht 202e nachgeordnet ist.
  • Das künstliche neuronale Netz 200 umfasst eine vierte verdeckte Schicht 206a, die der ersten Eingabeschicht 202a nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine fünfte verdeckte Schicht 206b, die der ersten verdeckten Schicht 204a nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine sechste verdeckte Schicht 206c, die der zweiten verdeckten Schicht 204b nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine siebte verdeckte Schicht 206d, die der dritten verdeckten Schicht 204c nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine achte verdeckte Schicht 206e, die der fünften Eingabeschicht 202e nachgeordnet ist.
  • Das künstliche neuronale Netz 200 umfasst eine neunte verdeckte Schicht 208a, die der vierten verdeckten Schicht 206a und der fünften verdeckten Schicht 206b nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine zehnte verdeckte Schicht 208b, die der siebten verdeckten Schicht 206d und der achten verdeckten Schicht 206e nachgeordnet ist.
  • Das künstliche neuronale Netz 200 umfasst eine elfte verdeckte Schicht 210, die der neunten verdeckten Schicht 208a und der zehnten verdeckten Schicht 208b nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine erste Ausgabeschicht 212a, die der neunten verdeckten Schicht 208a nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine zweite Ausgabeschicht 212b, die der sechsten verdeckten Schicht 206c nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine dritten Ausgabeschicht 212c, die der zehnten verdeckten Schicht 208b nachgeordnet ist. Das künstliche neuronale Netz 200 umfasst eine vierte Ausgabeschicht 214, die der elften verdeckten Schicht 210 nachgeordnet ist.
  • Die dritte Eingabeschicht 202c ist als Eingang für Termkandidaten ausgebildet. Im Beispiel werden als Termkandidaten Komposita c2, d.h. Wortzusammensetzungen verwendet.
  • Die zweite Eingabeschichten 202b, und die vierte Eingabeschicht 202d sind als Eingabeschicht für Komponenten c1, c3 des Kompositums c2 ausgebildet. In 2 sind eine erste Komponente c1 und eine zweite Komponente c3 dargestellt, es können aber auch mehr als zwei Komponenten verwendet werden, wenn das Kompositum mehr als zwei Komponenten enthält.
  • Allgemein umfasst ein Eingang des künstlichen neuronalen Netzes 200 das Kompositum c2 und jede seiner Komponenten.
  • In einem Batch mit einer Anzahl b Trainingsdatensätzen wird den Eingabeschichten jeweils eine Vektor der Dimension [1, b] für jede der Komponenten und das Kompositum einzeln vorgegeben.
    Als Eingang für die der zweiten Eingabeschicht 202b, der dritten Eingabeschicht 202c und der vierten Eingabeschicht 202d nachgeordneten verdeckten Schichten wird beispielweise ein Vektor x verwendet, in dem das Kompositum c2 und seine Komponenten konkateniert sind. Für das in 2 dargestellte Beispiel mit zwei Komponenten c1, c3 wird in einem Modell für konkatenierte Vektoren beispielsweise der folgende Vektor verwendet: x = ( c 1 , c 2 , c 3 ) .
    Figure DE102018213021A1_0007
  • Die Funktion E bildet x beispielsweise auf einen konkatenierten Wortvektor z = ( z 1 , z 2 , z 3 ) .
    Figure DE102018213021A1_0008
    ab. Der Wortvektor z ist ein Merkmal für die Zuordnung.
  • Es kann auch vorgesehen sein, jedem Eingang ein einzelnes Wort zuzuweisen, und erst im Dense Layer zu konkatenieren. In diesem Fall werden einzelne Vektoren x 1 = c 1
    Figure DE102018213021A1_0009
    x 2 = c 2
    Figure DE102018213021A1_0010
    x 3 = c 3
    Figure DE102018213021A1_0011
    und z 1 = E ( x 1 )
    Figure DE102018213021A1_0012
    z 2 = E ( x 2 )
    Figure DE102018213021A1_0013
    z 3 = E ( x 3 )
    Figure DE102018213021A1_0014
    verwendet.
  • Bei einem Batch der Größe b haben die Vektoren x1, x2, x3 die Dimension [1, b] wobei z1, z2, z3 eine Matrix der Dimension [200, b] darstellt.
  • Ein jeweiliger Ausgang der fünften verdeckten Schicht 206b, der sechsten verdeckten Schicht 206c und der siebten verdeckten Schicht 206d wird im Folgenden für die einzeln berechneten Vektoren wiedergegeben: I 2 = φ ( E ( c 1 ) * W 1 ) Ausgang der fünften  verdeckten Schicht 206b ,
    Figure DE102018213021A1_0015
    I 2 = φ ( E ( c 2 ) * W 2 ) Ausgang der sechsten  verdeckten Schicht 206c ,
    Figure DE102018213021A1_0016
    I 3 = φ ( E ( c 3 ) * W 3 ) Ausgang der siebten  verdeckten Schicht 206d .
    Figure DE102018213021A1_0017
  • Die Funktion E stellt den Embedding Layer dar, der beispielsweise mittels des bag-of-words Modells den jeweiligen Teil des Vektors x auf einen jeweiligen Teil des Wortvektor z abbildet. E:x z
    Figure DE102018213021A1_0018
  • Der Ausgang I1 der fünften verdeckten Schicht 206b, der Ausgang I2 der sechsten verdeckten Schicht 206c und der Ausgang I3 der siebten verdeckten Schicht 206d hat im Beispiel der Batch mit b Trainingsdaten jeweils die Dimension [64, b].
  • Die erste Eingabeschicht 202a ist ein Eingang für eine erste Frequenz f(c1) und eine erste Produktivität P(c1) einer ersten Komponente c1 aus einem Kompositum c2.
  • Die fünfte Eingabeschicht 202c ist ein Eingang für eine zweite Frequenz (fc3) und eine zweite Produktivität P(c3) einer zweiten Komponente c3 aus einem Kompositum c2. Frequenz bezeichnet hierbei eine Häufigkeit eines Auftretens der jeweiligen Komponente c1 ,c3 in anderen Komposita im fachspezifischen Korpus bezogen auf alle Komponenten aus dem fachspezifischen Korpus.
  • Produktivität bezeichnet hierbei eine Anzahl voneinander verschiedener Komposita, in denen die jeweilige Komponente c1, c3 in anderen Komposita als dem Kompositum c2 im fachspezifischen Korpus enthalten ist.
  • Die Produktivität und die Frequenz sind zwei weitere Merkmale für die Zuordnung.
  • Im Beispiel werden für erste Eingabeschicht 202a v 1 = ( f ( c 1 ) ;   P ( c 1 ) )
    Figure DE102018213021A1_0019
    und die fünfte Eingabeschicht 202c v 2 = ( f ( c 3 ) ;   P ( c 3 ) )
    Figure DE102018213021A1_0020
    verwendet.
  • Als Eingang wird allgemein ein mehrdimensionaler Vektor v mit den Dimensionen Frequenz und Produktivität der einzelnen Komponenten verwendet: v = ( v 1 , v 2 ) .
    Figure DE102018213021A1_0021
  • Ein Ausgang I4 der vierten verdeckten Schicht 206a und ein Ausgang I5 der achten verdeckten Schicht 206e sind I 4 = φ ( W 4 * v 1 ) Ausgang der vierten  verdeckten Schicht 206a ,
    Figure DE102018213021A1_0022
    I 5 = φ ( W 5 * v 2 ) Ausgang der achten  verdeckten Schicht 206e .
    Figure DE102018213021A1_0023
  • Der Ausgang I4 der vierten verdeckten Schicht 206a und der Ausgang I1 der fünften verdeckten Schicht 206b haben im B Beispiel der Batch mit b Trainingsdaten jeweils die Dimension [64, b]. Der Ausgang I4 der vierten verdeckten Schicht 206a und der Ausgang I1 der fünften verdeckten Schicht 206b bilden einen Eingang der neunten verdeckten Schicht 208a.
  • Der Ausgang I5 der achten verdeckten Schicht 206e und der Ausgang I3 der siebten verdeckten Schicht 206d haben im Beispiel der Batch mit b Trainingsdaten jeweils die Dimension [64, b]. Der Ausgang I5 der achten verdeckten Schicht 206e und der Ausgang I3 der siebten verdeckten Schicht 206d bilden einen Eingang der zehnten verdeckten Schicht 208b.
  • Ein Ausgang I6 der neunten verdeckten Schicht 208a und ein Ausgang I7 der zehnten verdeckten Schicht 208b sind I 6 = [ I 1 ; I 4 ] T Ausgang der neunten  verdeckten Schicht 208a ,
    Figure DE102018213021A1_0024
    I 7 = [ I 3 ; I 5 ] T Ausgang der zehnten  verdeckten Schicht 208b .
    Figure DE102018213021A1_0025
  • Die neunte verdeckte Schicht 208a und die zehnte verdeckte Schicht 208b konkatenieren im Beispiel ihre jeweiligen Eingänge.
  • Der Ausgang I6 der neunten verdeckten Schicht 208a und der Ausgang I7 der zehnten verdeckten Schicht 208b haben im Beispiel der Batch mit b Trainingsdaten jeweils eine Dimension [128, b]. Der Ausgang I6 der neunten verdeckten Schicht 208a und der Ausgang I7 der zehnten verdeckten Schicht 208b bilden mit dem Ausgang I2 der sechsten verdeckten Schicht 206c den Eingang der elften verdeckten Schicht 210.
  • Der Ausgang I8 der elften verdeckten Schicht 210 ist I 8 = [ I 6 ; I 2 I 7 ] T Ausgang der elften  verdeckten Schicht 210 .
    Figure DE102018213021A1_0026
  • Der Ausgang I8 der elften verdeckten Schicht 210 hat im Beispiel der Batch mit b Trainingsdaten die Dimension [320, b]. Den Ausgang des künstlichen neuronalen Netzes 200 bildet in einem Aspekt der Ausgang der vierten Ausgabeschicht 214: O = σ ( W 6 * I 8 ) .
    Figure DE102018213021A1_0027
  • Den Ausgang des künstlichen neuronalen Netzes 200, im Beispiel der Ausgang der vierten Ausgabeschicht 214, hat im Beispiel der Batch mit b Trainingsdaten eine Dimension [4, b].
  • Für eine Optimierung des künstlichen neuronalen Netzes 200 beim Training oder danach wird dieser Ausgang O in einer Fehlerfunktion, beispielsweise in einem Stochastic gradient descent Verfahren, mit dem Vektor s verwendet, um die Gewichte der Gewichtsmatrizen anzupassen.
  • In einem optionalen weiteren Aspekt sind der Ausgang O und Hilfsausgänge Oaux vorgesehen O = σ ( W 6 * I 8 ) Ausgang der vierten  Ausgabeschicht 214 ,
    Figure DE102018213021A1_0028
    O aux1 = σ ( W 7 * I 6 ) Ausgang der ersten  Ausgabeschicht 212a ,
    Figure DE102018213021A1_0029
    O aux2 = σ ( W 8 * I 2 ) Ausgang der zweiten  Ausgabeschicht 212b ,
    Figure DE102018213021A1_0030
    O aux3 = σ ( W 9 * I 7 ) Ausgang der dritten  Ausgabeschicht 212c .
    Figure DE102018213021A1_0031
  • Die Hilfsausgänge Oaux1, Oaux2 und Oaux3 haben im Beispiel der Batch mit b Trainingsdaten eine Dimension [4, b].
  • Die Information aus den Hilfsausgängen Oaux1 und Oaux3 für die Komponenten c1, c3 werden verwendet, um das künstliche neuronale Netz 200 auf dem Weg zum Ausgang O zu optimieren. Mit den Schichten, die zu den Hilfsausgängen Oaux1 und Oaux3 führen, wird das Wissen im künstlichen neuronalen Netz 200 geschärft, in welche Klassen die Komponenten gehören. Für den Ausgang O lernt das künstliche neuronale Netz 200, inwiefern diese Information zur Klassifizierung des Kompositums hilft.
  • Zum Beispiel werden bei einem Kompositum „Tomatenlsuppe“ wahrscheinlich beide Komponenten als TERM klassifiziert, und dann das Kompositum am Ausgang O auch. Bei einem Kompositum „Dosenlsuppe“ wird die Komponente „Dose“ wahrscheinlich als NONTERM und die Komponente „suppe“ als TERM Klassifiziert. Das künstliche neuronale Netz 200 lernt für den Ausgang O noch einmal, dass bei dieser Komponentenkombination TERM meistens überwiegt und die Klasse ausmacht.
  • Zum Beispiel lernt das künstliche neuronale Netz 200 für das Kompositum „Portulaklsalat“ aus einer Kombination von „Portulak“ als SPECTERM und „salat“ als TERM, dass die Klasse des Kompositums SPECTERM ist.
  • Die Aktivierungsfunktion φ ist beispielsweise für einen jeweiligen Eingang yi und eine jeweilige der i Gewichtsmatrizen Wi definiert als φ ( y i ) = tanh ( y i * W i ) ) )
    Figure DE102018213021A1_0032
  • Im Beispiel charakterisiert der Ausgang O in dieser Reihenfolgt die i-te der vier Klassen NONTERM, SIMTERM, TERM, SPECTERM. Beispielsweise wird der Ausgang als O = (o1; o2, o3, o4) in der Ausgabeschicht für einen jeweiligen Eingang yi und einen i-ten der n skalaren Ausgänge oi folgende Funktion verwendet o i = σ ( y i ) = e y i k = 0 n e y k
    Figure DE102018213021A1_0033
  • Der Wert von oi gibt im Beispiel von 0 beginnend einen bis zum maximalen Wert 1 zunehmenden Grad der Zugehörigkeit zu der Klasse an, für die oi bestimmt wurde.
  • Die j optionalen zusätzlichen Ausgänge Oauxj = (oauxj1, oauxj2, oauxj3, oauxj4) geben jeweils i Wert oauxji an, die im Beispiel ebenfalls von 0 beginnend bis zum maximalen Wert 1 zunehmenden Grad für die Zugehörigkeit zu der i-ten Klasse angeben. Genauer gibt der Ausgang Oaux1 den Grad der Zugehörigkeit der ersten Komponente c1 zu den Klassen an. Der Ausgang Oaux2 gibt den Grad der Zugehörigkeit des Kompositums c2 zu den Klassen an. Der Ausgang Oaux3 gibt den Grad der Zugehörigkeit der Komponente c3 zu den Klassen an. Für eine weitere Optimierung des künstlichen neuronalen Netzes 200 werden die Werte oauxj1, oauxj2, oauxj3, oauxj4 gewichtet in einer Fehlerfunktion verwendet. In einer beispielhaften Fehlerfunktion wird der Ausgang der vierten Ausgabeschicht 214 mit einem Faktor 1 und alle optionalen Ausgänge mit einem Faktor 0.2 gewichtet verwendet. Eine andere Gewichtung kann ebenfalls verwendet werden. Für das Training des neuronalen Netzes wird beispielsweise ein Backpropagation Algorithmus genutzt, der verschiedene Ausgänge zur Optimierung der Gewichte der Gewichtsmatrizen mit verschiedenen Gewichtungen verwendet.
  • Die Dimensionen der Gewichtsmatrizen W werden passend zu den Dimensionen der jeweiligen Eingabeschicht 202a, 202b, 202c, 202d, 202e und der jeweiligen Ausgabeschicht 212a, 212b, 212c, 214 festgelegt. Die Gewichtsmatrix W1 der fünften verdeckte Schicht 206b hat beispielsweise für einen 200-dimensionalen Wortvektor z1 eine Dimension 200 x 64. Entsprechend haben Gewichtsmatrizen W2 und W3 der sechsten verdeckten Schicht 206c und der siebten verdeckten Schicht 206d für ebenfalls 200-dimensionalen Wortvektoren z2 und z3 dieselben Dimensionen.
  • Die Produktivität und die Frequenz einer Komponente sind im Beispiel Skalare, der zugehörige Vektor v1 oder v2 ist zweidimensional. Die Gewichtsmatrizen W3, und W4 haben beispielsweise bei dem Batch der Größe b die Dimension 2 x b. Die neunte verdeckte Schicht 208a fasst die Ausgänge I1 und I4 zusammen. Die zehnte verdeckte Schicht 208b fasst die Ausgänge I3 und I5. Die Dimensionen der jeweiligen Gewichtsmatrizen ist an die Dimensionen der jeweiligen Ausgänge und an die Größe der Batch b angepasst.
  • Es können auch mehr oder weniger optionale Ausgänge und andere passende Dimensionen verwendet werden. Das Zusammenfassen der Ausgänge und Vektoren erfolgt beispielsweise durch Konkatenation.
  • Das künstliche neuronale Netz 200 ordnet allgemein einem Merkmal z, v, welches das Kompositum c2 aus der Eingabeschicht 202 repräsentiert, in einer Vorhersage in der Ausgabeschicht 214 des künstlichen neuronalen Netzes 200 ein Kennzeichen O zu. Die Vorhersage erfolgt mittels des beschriebenen Modells. Das Ergebnis der Vorhersage ist im Beispiel der Vektor O.
  • In einem Vergleich wird das Kennzeichen O mit dem, diesem Merkmal in den Trainingsdaten zugeordneten Kennzeichen s verglichen. Beispielsweise wird im Vergleich eine Fehlerfunktion, insbesondere eine Differenz zwischen dem Vektor s und dem Vektor O verwendet.
  • Abhängig vom Ergebnis des Vergleichs wird wenigstens ein Parameter des künstlichen neuronalen Netzes gelernt. Der Parameter charakterisiert eine Verbindung des künstlichen neuronalen Netzes zwischen der Eingabeschicht 102 und der Ausgabeschicht 108. Beispielsweise werden die Gewichtsmatrizen W1 und W2 abhängig von der Differenz bestimmt. Dazu wird eine Fehlerfunktion ausgewertet, mit der die Differenz minimiert wird. Dabei wird beispielsweise die Stochastic Gradient Descent (SGD) Methode verwendet.
  • Der zweiten Ausführungsform liegen gegenüber der ersten Ausführungsform folgende zusätzlichen Aspekte zugrunde.
  • Die Produktivität und die Frequenz bilden ein Grad für eine thematische Zuordnung, d.h. eine Zentralität, und ein Grad für eine Schwierigkeit, d.h. eine Spezifität oder ein Niveau. Komponenten eines Kompositums, die häufig in verschiedenen Komposita auftreten, sind mit großer Wahrscheinlichkeit zentrale Komponenten für diese Domäne. Komponenten eines Kompositums, die in geringer Anzahl auftreten, sind mit großer Wahrscheinlichkeit Komponenten, die für die Domäne spezifisch sind.
  • Je nach der Zusammensetzung der Komponenten entstehen Komposita die einen mehr oder weniger großen Grad der Zugehörigkeit zu einer Domäne haben. Beispielsweise kann eine Komponente Mais einer Domäne Kochen oder einer Domäne Landwirtschaft zugeordnet werden. Ein Kompositum Maisanbau kann in diesem Beispiel nur der Domäne Landwirtschaft zugeordnet werden. Ein Kompositum Maismehl kann in diesem Beispiel nur der Domäne Kochen zugeordnet werden. Eine Klassifizierung des Kompositums ist in diesem Beispiel durch eine Klassifizierung der gemeinsamen Komponente Mais und/oder durch die beiden weiteren Komponenten -anbau und -mehl möglich.
  • Beispielsweise ist eines der Wörter oder Wortstämme einer Wortzusammensetzung als Komponente nur einer Klasse zuordenbar. Beispielsweise ist jede der Komponenten zumindest in ein und dieselbe Klasse klassifizierbar. Die Wortzusammensetzung, d.h. das Kompositum, das aus diesen Komponenten besteht oder das diese Komponenten enthält, wird beispielsweise automatisiert in diese Klasse klassifiziert.
  • In einem anderen Aspekt der Klassifizierung enthält eine Wortzusammensetzung wenigstens zwei Komponenten, die in verschiedenen Klassen klassifizierbar sind wobei die wenigstens zwei Komponenten in keiner gemeinsamen Klasse klassifizierbar sind. In diesem Fall ist eine Klassifizierung des Kompositums, das aus diesen Komponenten besteht oder das diese Komponenten enthält, nicht eindeutig. In diesem Fall kann beispielsweise automatisiert eine Mehrheitsentscheidung getroffen werden, nach der das Kompositum in die Klasse klassifiziert wird, in der auch die meisten seiner Komponenten klassifiziert sind. Selbst falls dies aufgrund fehlender Mehrheitsverhältnisse ausgeschlossen ist, sind bestimmte Klassen, in die keines der Wörter oder keiner der Wortstämme der Wortzusammensetzung als Komponente klassifiziert wurde ausgeschlossen.
  • Daher bietet eine Verwendung der Komponenten in der Klassifizierung zusätzlich zur Verwendung der Komposita selbst eine signifikante Verbesserung der Klassifizierung. Dies fällt besonders bei Komposita ins Gewicht, die nicht sehr häufig auftreten, oder deren Zusammensetzung im Trainingsdatensatz unbekannt war, mit dem das Modell trainiert wurde. Selbst wenn einzelne Komponenten eines Kompositums unbekannt sind, kann im Training mit diesem Trainingsdatensatz eine Klassifizierung mittels der anderen Komponenten des Kompositums für zuvor unbekannte Komponenten gelernt werden.
  • Zur Erstellung eines Trainingsdatensatzes werden die Wortvektoren auf einem allgemeinsprachlichen Korpus trainiert um möglichst umfangreiches Datenmaterial zu erhalten. Eine Feinjustierung erfolgt mittels eines Trainings der Wortvektoren auf einem Korpus, der fachspezifisch für die Domäne ist. Beispielsweise wird Text oder eine Textkollektion mit bekanntem Bezug zu dieser Domäne als fachspezifischer Korpus verwendet. Im Beispiel ist der fachspezifische Korpus eine Textkollektion von Kochrezepten. Diese enthält als Termkandidaten mögliche Fachbegriffe aus der Domäne „Kochen“. Zur Bestimmung von Produktivität oder Frequenz wird beispielsweise nur der fachspezifische Korpus herangezogen.
  • Aus dem fachspezifischen Korpus werden Termkandidaten identifiziert. Im Beispiel werden Komposita als Termkandidaten identifiziert. Den Termkandidaten werden lexikalische Kompositumsdefinitionen oder Beispiele zugeordnet. Als lexikalische Definition oder Beispiel wird beispielsweise ein Text verwendet.
  • Für das Training und die Klassifizierung werden im Beispiel Termkandidaten berücksichtigt, die eine bestimmte Mindestlänge haben. Termkandidaten mit nur einem Buchstaben werden in diesem Fall ignoriert. Ohne eine Mindestlänge könnten Termkandidaten mit nur einem Buchstaben alternativ dazu in die Klasse NONTERM klassifiziert werden.
  • Den Termkandidaten wird als Gold-Standard für das Training durch einen Annotator oder mehrere Annotatoren eine nutzerbasierte Bewertung hinsichtlich einer Spezifität und Zentralität zugeordnet. In diesem Fall wird für einen Termkandidat eine mehrdimensionale Skala verwendet, um dem Termkandidaten eine Klassifizierung in eine der Klassen NONTERM, SIMTERM, TERM oder SPECTERM zuzuweisen. Frequenz und Produktivität werden beispielsweise dem Trainingsdatensatz als Vektor v zusätzlich zum Wortvektor z zugefügt. Die Annotatoren sind angehalten, einen Termkandidat in die Klasse SPECTERM zu klassifizieren, wenn er sehr spezifisch für die bestimmte Domäne, im Beispiel „Kochen“ ist und einen hohen Grad der Nähe zu der bestimmten Domäne aufweist. Die Annotatoren sind angehalten, einen Termkandidat in die Klasse SIMTERM zu klassifizieren, wenn er einen mittleren Grad der Nähe zu der bestimmten Domäne aufweist. Die Annotatoren sind angehalten, einen Termkandidat in die Klasse TERM zu klassifizieren, wenn er einen hohen Grad der Nähe zu der bestimmten Domäne, im Beispiel „Kochen“ aufweist, aber ansonsten fachlich unspezifisch ist. Die Annotatoren sind angehalten, andere Termkandidaten in die Klasse NONTERM zu klassifizieren.
  • Beispielhaft für eine Klassifizierung eines Termkandidaten aus dem fachspezifischen Korpus wird das Kompositum „Tomatenpüree“ betrachtet. Nach einer Definition ist Tomatenpüree eine aus Tomaten hergestellte Paste, die in der Küche vor allem zur Herstellung von Saucen verwendet wird. Einer Vielzahl Annotatoren wird das Kompositum Tomatenpüree und die Definition zur Klassifizierung vorgelegt. Einige Annotatoren klassifiziert das Kompositum beispielsweise aufgrund dieser Definition in die Klasse TERM. Andere Annotatoren klassifizieren das Kompositum beispielsweise in die Klasse SPECTERM.
  • Der Trainingsdatensatz wird im Beispiel um den Eintrag Tomatenpüree in der Klasse ergänzt, in die das Kompositum Tomatenpüree von allen oder einer Mehrzahl der Annotatoren klassifiziert wurde. Ein Trainingssatz enthält beispielsweise eine Zuordnung von einem Merkmal, das den Eintrag Tomatenpüree repräsentiert zu einer der Klassen. Beispielsweise werden als Merkmale der Wortvektor z und der Vektor v, die den Termkandidaten Tomatenpüree charakterisieren, dem Vektor s zugeordnet, der die Klasse SPECTERM charakterisiert.
  • Der Trainingsdatensatz umfasst eine Vielzahl derartiger Zuordnungen.
  • Im Training wird eine Vielzahl derartiger Zuordnungen aus dem Trainingsdatensatz verwendet, um die Gewichtsmatrizen zu lernen.
  • In der zweiten Ausführungsform werden die Gewichtsmatrizen abhängig von den Merkmalen gelernt, die die Komposita repräsentieren. Die zusätzlichen Merkmale, die abhängig von den Komponenten und der Produktivität und/oder Frequenz der Komponenten bestimmt sind, werden ebenfalls verwendet.
  • Zusätzlich zum Kompositum „Tomatenpüree“ werden im Training Merkmale verwendet, die seine relevanten Komponenten „Tomate“ und „püree“ charakterisieren. Beispielsweise wird ein entsprechend konkatenierter Wortvektor z und ein konkatenierter Vektor v verwendet, der die Produktivität und Frequenz charakterisiert. Die Schichten des künstlichen neuronalen Netzes 200 und die Vektoren und Matrizen zur Berechnung werden dazu beispielsweise entsprechend zusammengefasst und umsortiert.
  • Bei der Erzeugung des Trainingsdatensatzes für die Domäne „Kochen“ werden die relevanten Komposita im Beispiel von Annotatoren manuell in die Klassen SIMTERM, TERM oder SPECTERM klassifiziert, da es sich um Bezeichnungen mit unterschiedlich zentralem und unterschiedlich spezifischen Bezug zum Thema Kochen handelt. Die Klasse von Komponenten wird anhand der Komposita aus dem Trainingsdatensatz, in denen sie vorkommen, geschätzt. Zum Beispiel, wird für eine Komponente „Tomate“ wahrscheinlich geschätzt, dass sie die Klasse TERM hat, da die Komponente „Tomate“ sehr häufig in Komposita wie „Tomatensuppe“, „Tomatensalat“, „Tomatenauflauf“, „Tomatenpüree“, ... auftritt, die als TERM klassifiziert sind, und seltener in anderen Komposita. Diese Klassifizierung muss nicht immer dieselbe sein wie die von den Annotatoren annotieren Komposita-Klassen. Trotzdem optimiert diese Information aus den Hilfsausgängen Oaux1 und Oaux3 das Ergebnis.
  • Ausgehend von diesem Trainingssatz, wird ein Modell gemäß der zweiten Ausführungsform wie im Folgenden beschrieben trainiert.
  • Alle Gewichte aus den Gewichtsmatrizen des künstlichen neuronalen Netzes 200 werden beispielsweise zu Beginn des Trainings auf denselben Wert gesetzt. Es können auch zufällige Werte verwendet werden.
  • Ein Training des Modells mit dem Trainingsdatensatz wird am Beispiel des Kompositums „Tomatenpüree“ beschrieben.
  • In einem ersten Schritt wird das Kompositum in Komponenten zerlegt. Die Wortzusammensetzung „Tomatenpüree“ umfasst als Komponenten den Wortstamm „Tomate“ und das Wort „püree“. Die verbleibende Komponente „n“ wird im Beispiel als Fugenelement und nicht betrachtet. D.h. im Beispiel werden nur Komponenten verwendet, die länger als eine Mindestlänge von zwei Buchstaben sind. Die resultierenden relevanten Komponenten „Tomate“ und „püree“ sowie das Kompositum „Tomatenpüree“ bilden die Eingangsterme der Klassifizierung durch das Modell.
  • Im Beispiel wird das künstliche neuronale Netz 200 verwendet, dessen Gewichte durch wenigstens eine Optimierungsfunktion anpassbar sind. Die Gewichte werden abhängig von der Optimierungsfunktion und dem Trainingsdatensatz so angepasst, dass das Kompositum „Tomatenpüree“ mit hoher Wahrscheinlichkeit der Klasse TERM zugeordnet wird. Es kann vorgesehen sein, die weiteren Ausgänge für die Komponenten ebenfalls zu optimieren, sodass die Komponente „Tomate“ mit hoher Wahrscheinlichkeit der Klasse TERM zugeordnet wird und die Komponente „püree“ mit hoher Wahrscheinlichkeit der Klasse SPECTERM zugeordnet wird. Dazu wird ein erweiterter Trainingsdatensatz verwendet, in dem Zuordnungen von Merkmalen, die bekannten Komponenten repräsentieren, zu entsprechenden Klassen enthalten sind. Das bedeutet, dass die Komposita genauer der Kompositumsvektor zur Entscheidungshilfe dient.
  • Allgemein werden, wie in 3 dargestellt, in einem ersten Schritt S1 die Komposita als Termkandidaten im spezifischen Korpus 302 gesucht und in Komponenten aufgeteilt. In einem zweiten Schritt S2 werden die Komposita automatisiert oder durch Annotatoren wenigstens einer der Klassen zugeordnet. In einem dritten Schritt S3 werden die Merkmale für die Komposita und die Komponenten bestimmt. Das heißt, Wortvektoren, Produktivität und Frequenz werden auf Basis des spezifischen Korpus 302 bestimmt. In einem vierten Schritt S4 werden die verschiedenen Modelle des künstlichen neuronalen Netzes mit den Merkmalen trainiert, um in einem fünften Schritt S5 für die Komposita ihre Klassen vorherzusagen.
  • Eine Analyse eines Textes, der das Kompositum „Tomatenpüree“ enthält, mittels des Modells nach zweiten Ausführungsform, das mit dem entsprechenden Trainingsdatensatz trainiert wurde, umfasst folgende Aspekte.
  • Das Kompositum Tomatenpüree wird zunächst in seine Komponenten zerlegt. Die resultierenden relevanten Komponenten „Tomate“ und „püree“ werden hinsichtlich ihrer Produktivität und ihrer Frequenz im fachspezifischen Korpus bewertet. Die Merkmale werden abhängig vom Kompositum Tomatenpüree, seinen relevanten Komponenten Tomate und püree, sowie der Produktivität und der Frequenz den entsprechenden Eingabeschichten des Modells übergeben. Das Kompositum „Tomatenpüree“ wird einer der Klassen zugeordnet.
  • Die Komposita und ihre Komponenten werden optional durch einen Splitter erzeugt, der als Termkandidaten T Komposita c aus einem fachspezifischen Korpus extrahiert und in eine Anzahl i Komponenten ci aufteilt.
  • Der Splitter arbeitet beispielsweise wie in einer der folgenden Referenzen beschrieben:
    • CharSplit: Character ngram-based splitting of sparse compound nouns, Appendix A.3, Don Tuggener, 2016, Incremental Coreference Resolution for German, Thesis presented to the Faculty of Arts and Social Sciences of the University of Zurich.
    • CompoST: Fabienne Cap, 2014, Morphological Processing of Compounds for Statistical Machine Translation, dem Institut für Maschinelle Sprachverarbeitung Universität Stuttgart vorgelegt Abhandlung.
    • SCS: Marion Weller-Di Marco, 2017, Simple compound splitting for German, Proceedings of the 13th workshop on Multiword Expressions, MWE@EACL 2017, pages 161-166, Valencia, Spain.
  • Vorzugsweise werden Komposita aus dem fachspezifischen Korpus in deutscher Sprache zuerst mit einem Vorgehen nach CompoST aufgeteilt. Anschließend wird das Vorgehen nach SCS angewendet und schließlich das Vorgehen nach CharSplit angewendet. Damit sind besonders gute Ergebnisse erzielbar. Für andere Sprachen werden entsprechende andere Splitter in gleicher Art und Weise eingesetzt.
  • Wird eine Analyse des Texts mittels des Modells nach der ersten Ausführungsform durchgeführt, wird wie für die zweite Ausführungsform beschrieben verfahren. Der Schritt der Zerlegung in Komponenten und die Bestimmung und Verwendung von Produktivität und Frequenz entfallen in diesem Fall. Stattdessen wird das Modell nach der ersten Ausführungsform direkt mit den Termkandidaten eingesetzt.
  • Beide Verfahren zur Textanalyse stellen eine wesentliche Verbesserung für herkömmliche Verfahren zur Klassifizierung von Text dar.
  • Anstelle der Ausschließlichen Verwendung eines künstlichen neuronalen Netzes können auch andere Machine Learning Ansätze verwendet werden. Zum Beispiel kann ein anderer Deep Learning Ansatz oder ein anderer Klassifikator verwendet werden, der für mehr als zwei Klasen vorhersagen kann. Anstelle eines auf einem künstlichen neuronalen Netz basierenden computerimplementierten Verfahrens kann für die Klassifizierung auch ein anderes statistisches Verfahren verwendet werden.
  • In einem Aspekt umfasst die Klassifizierung von Text das künstliche neuronale Netz. Das künstliche neuronale Netz kann als Vorrichtung, beispielsweise als spezifische Hardware, beispielsweise anwendungsspezifische integrierte Schaltung, ASIC, oder im Feld programmierbare Logik-Gatter-Anordnung, FPGA, ausgebildet sein. Das System kann auch einen Prozessor als universelle integrierte Schaltung umfassen, die das künstliche neuronale Netz abbildet oder mit der spezifischen Hardware zusammenwirkt. Das künstliche neuronale Netz stellt insbesondere für einen Computer mit einer universellen integrierten Schaltung eine computerimplementierte Datenstruktur dar, welche die interne Funktionsweise des Computers selbst erheblich verbessert.
  • 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
    • DE 202017102235 U1 [0003]

Claims (20)

  1. Computerimplementiertes Verfahren zum Trainieren eines künstlichen neuronalen Netzes (100; 200) mit Trainingsdaten, die Merkmale (z; z, v) und Kennzeichen (s) umfassen, dadurch gekennzeichnet, dass die Merkmale (z; z, v) Termkandidaten (T; c2) aus einem Korpus (302) charakterisieren, wobei der Korpus (302) einen Text aus einer Domäne umfasst, wobei das Kennzeichen (s) einen Grad einer Zugehörigkeit zu wenigstens drei voneinander verschiedene Klassen für die Termkandidaten (T; c2) charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten (T; c2) zu der Domäne angeben, wobei die Trainingsdaten eine Zuordnung von Merkmalen (z; z, v) zu Kennzeichen (s) umfassen, wobei einer Eingabeschicht (102; 202a, ..., 202e) des künstlichen neuronalen Netzes (100; 200) ein Merkmal (z; z, v) vorgegeben wird (S3), wobei das künstliche neuronale Netz (100; 200) dem Merkmal (z; z, v) aus der Eingabeschicht (102; 202a, ..., 202e) in einer Vorhersage in einer Ausgabeschicht (208; 214) des künstlichen neuronalen Netzes (100; 200) ein Kennzeichen (O) zuordnet (S5), wobei in einem Vergleich das Kennzeichen (O) aus der Ausgabeschicht (208; 214) mit dem Kennzeichen (s), das dem Merkmal (z; z, v) in den Trainingsdaten zugeordnet ist, verglichen wird (S4), wobei abhängig vom Ergebnis des Vergleichs wenigstens ein Parameter (W1, W2; W1, W2, W3, W4, W5, W6, W7, W8, W9) des künstlichen neuronalen Netzes (100; 200) gelernt wird (S4), der eine Verbindung des künstlichen neuronalen Netzes zwischen der Eingabeschicht (102; 202a, ..., 202e) und der Ausgabeschicht (208; 214) charakterisiert.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Termkandidaten (T, c2) einem bezüglich der Domäne fachspezifischen Korpus (302) entnommen werden (S1).
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Termkandidaten (T) wenigstens einer der Klassen zugeordnet werden (S2) und die Merkmale (z) für die Termkandidaten (T) bestimmt werden (S3), wobei insbesondere ein Wortvektor (z) bestimmt wird, und wenigstens ein Parameter (W1, W2) des künstlichen neuronalen Netzes (100) mit den Merkmalen (z) trainiert wird (S4).
  4. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Termkandidaten (c2) Komposita (c2) mit wenigstens zwei Komponenten (c1, c3) sind.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass Komposita (c2) aus einem bezüglich der Domäne fachspezifischen Korpus (302) als Termkandidaten (c2) in Komponenten (c1, c3) aufgeteilt werden (S1), die Komposita (c2) wenigstens einer der Klassen zugeordnet werden (S2), die Merkmale (z, v) für die Komposita (c2) und die Komponenten (c1, c2) bestimmt werden (S3), und wenigstens ein Parameter (W1, W2, W3, W4, W5, W6, W7, W8, W9) des künstlichen neuronalen Netzes (200) mit den Merkmalen (z, v) trainiert wird (S4).
  6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass wenigstens ein Wortvektor als Merkmal (z) bestimmt wird.
  7. Verfahren nach Anspruch 5 oder 6, dadurch gekennzeichnet, dass eine Produktivität (P(c1), P(c3)) und eine Frequenz (f(c1), f(c3)) der Komponenten (c1, c2) als Merkmale (v) auf Basis des spezifischen Korpus (302) bestimmt werden.
  8. Computerimplementiertes Verfahren zum Erzeugen von Trainingsdaten für ein Training eines künstlichen neuronalen Netzes (100; 200) wobei die Trainingsdaten Merkmale (z; z, v) und Kennzeichen (s) umfassen, dadurch gekennzeichnet, dass Merkmale (z; z, v) bestimmt werden, die Termkandidaten (T, c2) aus einem Korpus (302) charakterisieren, wobei der Korpus (302) einen Text aus einer Domäne umfasst, wobei ein Kennzeichen (s) bestimmt wird, das einen Grad einer Zugehörigkeit zu wenigstens drei voneinander verschiedene Klassen für die Termkandidaten (T; c2) charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten zu der Domäne angeben, wobei wenigstens einem Merkmal (z; z, v) wenigstens eines der Kennzeichen (s) zugeordnet wird.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die Termkandidaten (T, c2) einem bezüglich der Domäne fachspezifischen Korpus (302) entnommen werden (S1).
  10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass die Termkandidaten (T) wenigstens einer der Klassen zugeordnet werden (S2) und die Merkmale (z) für die Termkandidaten (T) bestimmt werden (S3), wobei insbesondere ein Wortvektor (z) bestimmt wird.
  11. Verfahren nach Anspruch 8 oder 9, dadurch gekennzeichnet, dass die Termkandidaten (c2) Komposita (c2) mit wenigstens zwei Komponenten (c1, c3) sind.
  12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass Komposita (c) aus einem bezüglich der Domäne fachspezifischen Korpus (302) als Termkandidaten (c2) in Komponenten (c1, c3) aufgeteilt werden (S1), die Komposita (c2) wenigstens einer der Klassen zugeordnet werden (S2), und die Merkmale (z, v) für die Komposita (c2) und die Komponenten (c1, c3) bestimmt werden (S3).
  13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass wenigstens ein Wortvektor als Merkmal (z) bestimmt wird.
  14. Verfahren nach Anspruch 12 oder 13, dadurch gekennzeichnet, dass eine Produktivität (P(c1), P(C3)) und eine Frequenz (f(c1), f(c3)) der Komponenten (c1, c3) als Merkmale (v) auf Basis des spezifischen Korpus (302) bestimmt werden.
  15. Künstliches neuronales Netz (100; 200), dadurch gekennzeichnet, dass einer Eingabeschicht (102; 202a, ..., 202e) des künstlichen neuronalen Netzes (100; 200) ein Merkmal (z; z, v) vorgebbar ist, wobei das künstliche neuronale Netz (100; 200) ausgebildet ist, dem Merkmal (z; z, v) aus der Eingabeschicht (102; 202a, ..., 202e) in einer Vorhersage in einer Ausgabeschicht (208, 214) des künstlichen neuronalen Netzes (100; 200) ein Kennzeichen (O) zuzuordnen, wobei die Merkmale (z; z, v) Termkandidaten (T, c2) aus einem Korpus (302) charakterisieren, wobei der Korpus (302) einen Text aus einer Domäne umfasst, wobei das Kennzeichen (O) wenigstens drei voneinander verschiedene Klassen für die Termkandidaten (T, c2) charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten (T, c2) zu der Domäne angeben.
  16. Künstliches neuronales Netz (100; 200) nach Anspruch 15, dadurch gekennzeichnet, dass das künstliche neuronale Netz (200) wenigstens eine erste Eingabeschicht (202b, 202c, 202d) umfasst, der ein Kompositum (c2) und seine Komponenten (c1, c3) für ein erstes Merkmal (z) vorgebbar sind, wobei das künstliche neuronale Netz (200) wenigstens eine zweite Eingabeschicht (202a, 202e) umfasst, der eine Produktivität (P(c1), P(c3) ) und eine Frequenz (f(c1), f(c3)) der Komponenten (c1, c3) für ein zweites Merkmal (v) vorgebbar sind, wobei die Ausgabeschicht (214) den Eingabeschichten nachgeordnet ist und das Kennzeichen (O) in der Vorhersage abhängig vom ersten Merkmal (z) und vom zweiten Merkmal (v) ausgibt.
  17. Künstliches neuronales Netz (100; 200) nach Anspruch 15 oder 16, dadurch gekennzeichnet, dass das künstliche neuronale Netz (200) eine weitere Ausgabeschicht (212b) umfasst, die ausgebildet ist einen Grad einer Zuordnung eines Kompositums (c) zu den wenigstens drei Klassen unabhängig von der Produktivität (P(c1), P(c3) ) und der Frequenz (f(c1), f(c3)) seiner Komponenten (c1, c3) auszugeben.
  18. Künstliches neuronales Netz (100; 200) nach einem der Ansprüche 15 bis 17, dadurch gekennzeichnet, dass das künstliche neuronale Netz (200) eine weitere Ausgabeschicht (212a, 212c) umfasst, die ausgebildet ist einen Grad einer Zuordnung einer der Komponenten (c1, c3) zu den wenigstens drei Klassen abhängig von der Produktivität (P(c1), P(c3) ) und der Frequenz (f(c1), f(c3)) dieser Komponente (c1, c3) auszugeben.
  19. Verfahren zur Klassifizierung von Termkandidaten (T, c2), dadurch gekennzeichnet, dass einer Eingabeschicht (102; 202a, ..., 202e) eines künstlichen neuronalen Netzes (100; 200) ein Merkmal (z; z, v) vorgegeben wird, wobei dem Merkmal (z; z, v) aus der Eingabeschicht (102; 202a, ..., 202e) in einer Vorhersage in einer Ausgabeschicht (208, 214) des künstlichen neuronalen Netzes (100; 200) ein Kennzeichen (O) zugeordnet wird, wobei die Merkmale (z; z, v) Termkandidaten (T, c2) aus einem Korpus (302) charakterisieren, wobei der Korpus (302) einen Text aus einer Domäne umfasst, wobei das Kennzeichen (O) wenigstens drei voneinander verschiedene Klassen für die Termkandidaten (T, c2) charakterisiert, wobei unterschiedliche Klassen unterschiedliche Grade der Zugehörigkeit des Termkandidaten (T, c2) zu der Domäne angeben.
  20. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass einer ersten Eingabeschicht (202b, 202c, 202d) ein Kompositum (c) und seine Komponenten (c1, c3) für ein erstes Merkmal (z) vorgegeben werden, wobei einer zweiten Eingabeschicht (202a, 202e) eine Produktivität (P(c1), P(c3) ) und eine Frequenz (f(c1), f(c3)) der Komponenten (c1, c3) für ein zweites Merkmal (v) vorgegeben werden, wobei die Ausgabeschicht (214) den Eingabeschichten nachgeordnet ist und das Kennzeichen (O) in der Vorhersage abhängig vom ersten Merkmal (z) und vom zweiten Merkmal (v) ausgegeben wird.
DE102018213021.3A 2018-08-03 2018-08-03 Computerimplementiertes Verfahren und Vorrichtung für Textanalyse Pending DE102018213021A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE102018213021.3A DE102018213021A1 (de) 2018-08-03 2018-08-03 Computerimplementiertes Verfahren und Vorrichtung für Textanalyse
US17/259,864 US11875265B2 (en) 2018-08-03 2019-07-11 Computer-implemented method and device for text analysis
PCT/EP2019/068692 WO2020025285A1 (de) 2018-08-03 2019-07-11 Computerimplementiertes verfahren und vorrichtung für textanalyse
JP2021505822A JP7271652B2 (ja) 2018-08-03 2019-07-11 テキスト分析のためのコンピュータ実装方法及び装置
EP19739587.4A EP3830761A1 (de) 2018-08-03 2019-07-11 Computerimplementiertes verfahren und vorrichtung für textanalyse

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018213021.3A DE102018213021A1 (de) 2018-08-03 2018-08-03 Computerimplementiertes Verfahren und Vorrichtung für Textanalyse

Publications (1)

Publication Number Publication Date
DE102018213021A1 true DE102018213021A1 (de) 2020-02-06

Family

ID=67262319

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018213021.3A Pending DE102018213021A1 (de) 2018-08-03 2018-08-03 Computerimplementiertes Verfahren und Vorrichtung für Textanalyse

Country Status (5)

Country Link
US (1) US11875265B2 (de)
EP (1) EP3830761A1 (de)
JP (1) JP7271652B2 (de)
DE (1) DE102018213021A1 (de)
WO (1) WO2020025285A1 (de)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3889010B2 (ja) 2004-03-19 2007-03-07 沖電気工業株式会社 語句分類システム、語句分類方法、および語句分類プログラム
JP6440732B2 (ja) * 2013-11-27 2018-12-19 株式会社Nttドコモ 機械学習に基づく自動タスク分類
US10073834B2 (en) 2016-02-09 2018-09-11 International Business Machines Corporation Systems and methods for language feature generation over multi-layered word representation
US20170308790A1 (en) * 2016-04-21 2017-10-26 International Business Machines Corporation Text classification by ranking with convolutional neural networks
DE202017102235U1 (de) 2017-04-13 2017-05-12 Robert Bosch Gmbh Trainingssystem
CN107301246A (zh) 2017-07-14 2017-10-27 河北工业大学 基于超深卷积神经网络结构模型的中文文本分类方法
US11455541B2 (en) * 2018-05-10 2022-09-27 Fmr Llc AI-based neighbor discovery search engine apparatuses, methods and systems

Also Published As

Publication number Publication date
US11875265B2 (en) 2024-01-16
WO2020025285A1 (de) 2020-02-06
JP7271652B2 (ja) 2023-05-11
US20210279512A1 (en) 2021-09-09
EP3830761A1 (de) 2021-06-09
JP2021533477A (ja) 2021-12-02

Similar Documents

Publication Publication Date Title
DE112018000334T5 (de) System und Verfahren zur domänenunabhängigen Aspektebenen-Stimmungserkennung
DE60208223T2 (de) Anordnung und verfahren zur gesichtserkennung unter verwendung von teilen des gelernten modells
CN107577739B (zh) 一种半监督的领域词挖掘与分类的方法和设备
DE102013205737A1 (de) System und Verfahren zum automatischen Erkennen und interaktiven Anzeigen von Informationen über Entitäten, Aktivitäten und Ereignisse aus multimodalen natürlichen Sprachquellen
DE112018002047T5 (de) Dokumentenanalyse mit mehreren faktoren
DE112013006770B4 (de) Spracherkennungsvorrichtung und Spracherkennungsverfahren
DE112018001165T5 (de) Automatisierte dokumentenanalyse für unterschiedliche natürliche sprachen
DE102018005611A1 (de) Automatische Paarbildung von Fonts unter Verwendung des asymmetrischen Metriklernens
DE112020006402T5 (de) Maschinelle lernmodelle basierend auf veränderter daten sowie systeme und verfahren zum trainieren und deren verwendung
DE112020005572T5 (de) Tiefe Gesichtserkennung basierend auf Clustern über unbezeichnete Gesichtsdaten
DE112013001740T5 (de) Textverarbeitungsverfahren zum Aufbauen eines Textmodells
DE112013002654T5 (de) Verfahren zum Klassifizieren von Text
DE102021004157A1 (de) Maschinell lernendes Modellieren zum Schutz gegen die Online-Offenlegung empfindlicher Daten
DE112007000051T5 (de) Dreiteiliges-Modell-basiertes Verfahren zur Informationsgewinnung und -verarbeitung
CN108280164A (zh) 一种基于类别相关单词的短文本过滤与分类方法
DE102019107591A1 (de) Anzeigesystem, programm und speichermedium
DE202023102803U1 (de) System zur Erkennung von Emotionen und zur Stimmungsanalyse durch maschinelles Lernen
DE102021124445A1 (de) Metamerkmal-trainingsmodelle für maschinenlernalgorithmen
DE102012025349B4 (de) Bestimmung eines Ähnlichkeitsmaßes und Verarbeitung von Dokumenten
EP2221735A2 (de) Verfahren zum automatischen Klassifizieren eines Textes durch ein Computersystem
DE102018213021A1 (de) Computerimplementiertes Verfahren und Vorrichtung für Textanalyse
EP3816844A1 (de) Computerimplementiertes verfahren und vorrichtung zum verarbeiten von daten
DE102019210994A1 (de) Vorrichtung und Verfahren zum Verarbeiten eines digitalen Datenstroms
EP3905097A1 (de) Vorrichtung und verfahren zum bestimmen eines knowledge graph
DE102007044380A1 (de) Verfahren zum rechnergestützten Lernen eines probabilistischen Netzes

Legal Events

Date Code Title Description
R163 Identified publications notified