Lexikon-Dateiformat
Informationen zum Lexikon-Dateiformat
Bei der Vorbereitung einer Lexikondatei ist es wichtig, dass die Syntax jeder Zeile korrekt ist, damit die NLP-Engine Ihre neuen Glossareinträge korrekt verarbeitet. Dieser Abschnitt beschreibt den Zweck und die spezifische Syntax für jeden Teil der Lexikondatei.
- Alle Lexikon-Dateien müssen in einem DCT Dateiformat. Dies stellt eine Dictionary-Datei dar.
- Die erste Zeile in einer DCT-Datei sollte den Lexikon-Typ bezeichnen. Siehe Lexikontypen für weitere Informationen.
- Alle Spalten in einer DCT-Datei sollten durch Tabulatoren getrennt sein.
Tipp: Tabulatorgetrennt bedeutet, dass Spalten durch die Registerkarte Schlüssel, nicht der Leerzeichen Balken. Eine einfache Möglichkeit, die tabulatorgetrennte Formatierung beizubehalten, besteht darin, Ihre Lexikon-Datei in einem Texteditor (wie Notepad++ unter Windows oder TextEdit auf Mac) vorzubereiten und die Datei als DCT-Dateityp zu speichern. Sie können dies auch in einem Texteditor erreichen, indem Sie die Registerkarte Schlüssel zwischen den einzelnen Spalten.
Spalte 1: Mustervariation
Die erste Spalte der Lexikondatei enthält Variationen oder Synonyme, die Sie Normalformen zuordnen möchten (oder Chiclets, siehe Spalte 3: Normalform).
Jede Zeile in Ihrer Lexikondatei sollte genau eine Variation. Zusätzliche Variationen sollten auf zusätzliche Zeilen gesetzt werden. Wenn ein Wort keine Variationen hat, müssen Sie es nicht in Ihrem Lexikon definieren, obwohl dies nicht schädlich wäre.
Eine Variation kann eine häufige falsche Schreibweise, eine Abkürzung, ein Akronym oder einen potenziellen alternativen Namen enthalten. Werte in dieser Spalte sollten immer aus Kleinbuchstaben bestehen, mit Ausnahme von Einträgen, bei denen die Groß-/Kleinschreibung und die Groß-/Kleinschreibung des Titels beachtet werden (siehe Spalte 2: Synonymcode).
Für jede Entität mit mehr als zwei Wörtern müssen Sie sie im Wörterbuch in ihrer Standardform definieren. Dieser Schritt ist für Lexikoneinträge mit einem Wort nicht erforderlich, da die NLP-Engine bereits alle einzelnen Wörter tokenisiert, die verarbeitet werden. Wenn ein Einzelworteintrag jedoch bei Großschreibung eine neue Bedeutung annimmt, initialisieren Sie ihn in einer eigenen Zeile. Siehe Beispiele unten.
Beispiel:
Harley Davidson | CSYN | Harley Davidson | {SpeechPart=”Noun”} |
Harley | CSYN | Harley Davidson | {SpeechPart=”Noun”} |
Beispiel: Wenn bei einem Eintrag mit einem Wort die Groß- und Kleinschreibung beachtet wird, fügen Sie einen initialen Eintrag hinzu, der die Variation der Normalform zuordnet, wie in diesem Beispiel, der sich auf den Los Angeles International Airport (LAX) bezieht. Es wird hier kapitalisiert, um es aus dem Adjektiv “lax” zu bezeugen.
LAX | SYN | Flughafen Los Angeles | {SpeechPart=”Noun”} |
Sonderzeichen
Die erste Spalte kann Sonderzeichen wie Bindestriche, Apostrophe oder Rautenzeichen enthalten. Bei der Verwendung von Sonderzeichen in Ihrem Lexikon sind keine speziellen Escape-Zeichen erforderlich. Dasselbe gilt für Buchstaben mit diakritischen Zeichen wie Akzentzeichen, Tilden, Umflexe usw.
Beachten Sie jedoch Folgendes: Wenn die NLP-Engine Sonderzeichen parst, sieht sie sie als separate Wörter:
- Die Phrase “~two days” wird als drei Wörter geparst: “~”,” “two” und “days”. Wenn Sie einen Lexikon-Eintrag für “~zwei Tage” anlegen, stimmt er nicht mit Ihren Daten überein. Stattdessen sollte das Lexikon “~ zwei Tage” lauten (beachten Sie das Leerzeichen zwischen “~” und “zwei”).
- Die Phrase “Total Recall” (mit Anführungszeichen) wird als 4 Wörter geparst. Um diese Phrase zu erfassen, sollte der Lexikon-Eintrag Leerzeichen zwischen dem Anführungszeichen und dem angrenzenden Wort enthalten und als Gesamtrückruf gelesen werden.
Zeiträume
Wenn Akronyme Punkte zwischen den einzelnen Buchstaben enthalten, ist kein zusätzliches Leerzeichen erforderlich. Für das Akronym „b.o.a.“ ist beispielsweise kein zusätzliches Leerzeichen erforderlich. Für Lexika, die mit einem einzelnen Buchstaben enden, wie z.B. “John D.”, wird jedoch der Raum benötigt, der zu “John D.” wird.
Hashtags und @ Erwähnungen
Beim Hinzufügen eines neuen Eintrags werden die Hashtagged (#) oder erwähnten (@) Formen eines Worts nicht automatisch eingeschlossen. Wenn Sie möchten, dass diese Teil Ihres Lexikon-Eintrags sind, nehmen Sie bitte separate Zeilen vor.
Beispiel: Für #qualtrics und @qualtrics sind separate Zeilen erforderlich, um „ qualtrics“ zuzuordnen. Beachten Sie, dass Sie in diesen Fällen kein Leerzeichen zwischen # oder @ und Ihrem Begriff benötigen.
qualtrics | CSYN | qualtrics | {SpeechPart=”Noun”} |
#qualtrics | CSYN | qualtrics | {SpeechPart=”Noun”} |
@qualtrics | CSYN | qualtrics | {SpeechPart=”Noun”} |
Diakritika
Wenn Ihre Variation eine diakritische Markierung enthält, erkennt das Wörterbuch nur diese spezifische Variation. Wenn Ihre Variation jedoch keine diakritische Markierung enthält, erkennt das Wörterbuch sowohl das nicht markierte Formular als auch das markierte Formular. In vielen Fällen ist es besser, die nicht markierte Form als Variation zu verwenden, da sie bei der Erfassung von Wörtern hilft, wenn Benutzer zu faul sind, um das diakritische Zeichen zu verwenden. Seien Sie jedoch vorsichtig, da es viele Beispiele von Wörtern gibt, die Bedeutungen vollständig ändern, wenn eine diakritische Markierung hinzugefügt wird.
Beispiel: Der folgende Eintrag wird den und den Té erfassen. Diese Wörter haben aber im Spanischen unterschiedliche Bedeutungen! Te = Du, té = Tee.
te | CSYN | té | {SpeechPart=”Noun”} |
Der Eintrag unten erfasst jedoch nur té und nicht te.
té | CSYN | té | {SpeechPart=”Noun”} |
Sternchen
Wenn Sie mit Daten arbeiten, die mit Sternchen geschwärzt wurden, fügen Sie Leerzeichen zwischen den Sternchen in Ihrem Lexikoneintrag hinzu.
* * * * * * | CSYN | [Geschwärzt] | {SpeechPart=”Noun”} |
Spalte 2: Synonymcode
Die zweite Spalte der Lexikondatei enthält den Synonymcode, der der NLP-Engine mitteilt, wie die in Spalte 1 geschriebene Variation gelesen werden soll.
Es gibt mehrere akzeptierte Codes:
- SYN: Dies ist ein Synonym. Der SYN-Code teilt der NLP-Engine mit, dass die Variation in Spalte 1 genau wie geschrieben interpretiert werden soll. Kapitalisierung wird Benutzerkonto. Dieser Code ist nützlich, wenn Sie Lexika basierend auf Akronymen erstellen, in denen das Akronym eine neue Bedeutung übernimmt, wenn es nicht in Großbuchstaben geschrieben ist, z.B. die Flughafenabkürzung LAX und das Wort lax.
- CSYN: Unter Umständen handelt es sich um eine Synonym ohne Beachtung der Groß-/Kleinschreibung. Wenn der CSYN-Code mit einem beliebigen Wort verwendet wird, das mit einem Kleinbuchstaben beginnt, teilt er der NLP-Engine mit, dass die Variation in Spalte eins ohne Berücksichtigung der Groß-/Kleinschreibung interpretiert werden sollte. Verwenden Sie diesen Code, wenn Sie nur die spezifische Form des in der Variation aufgeführten Wortes erfassen möchten und wenn die Variation kein standardmäßiger Glossarbegriff ist.
- CSYN: Unter Umständen handelt es sich um eine Titelcase-Synonym. Wenn der CSYN-Code mit einem beliebigen Wort verwendet wird, das mit einem Großbuchstaben beginnt, teilt er der NLP-Engine mit, dass die Variation in Spalte eins ohne Berücksichtigung der Groß-/Kleinschreibung mit dem Schlüssel interpretiert werden sollte, da der erste Buchstabe des ersten Wortes mit einem Großbuchstaben beginnen muss. Verwenden Sie diesen Code, wenn Sie ein geeignetes Substantiv erfassen möchten, das bei der Entapitalisierung möglicherweise nicht eindeutig ist, z.B. die Firma “Best Buy” oder die “Great Value”Instanz von Walmart. Die Verwendung von CSYN Title Case sollte ein seltenes Vorkommen sein. Lexika sollten so konzipiert sein, dass sie möglichst tolerant zu nicht standardmäßigen Groß-/Kleinschreibung sind. In bestimmten Fällen ist diese Syntax jedoch sinnvoll.
- MSYN: Dies ist ein Morph-unempfindliches Synonym. Der MSYN-Code weist die NLP-Engine an, den Lexikoneintrag um die zugehörigen morphologischen Formen zu erweitern (z. B. „springen“ umfasst „Sprünge“, „springen“ und „gesprungen“. XM Discover umfasst alle morphologischen Variationen, unabhängig davon, welchen Wortteil Sie angeben. Sie benötigen keine zusätzlichen Zeilen in der Lexikondatei, um diese verschiedenen Verbformen zu verarbeiten. Die Suffixe “-er” und “-est” sind nicht Teil derselben Normalform und nicht in einer MSYN-Erweiterung enthalten.
Tipp: Der MSYN-Code funktioniert nur für Standardwörterbuchbegriffe. Die XM Discover kennen möglicherweise nicht die richtigen morphologischen Formen für richtige Substantive wie Qualtrics. Beachten Sie außerdem, dass bei der Verwendung von MSYN alle Variationen unabhängig von Groß- und Kleinschreibung berücksichtigt werden. Verwenden Sie den MSYN-Code immer dann, wenn Ihr Lexikon Glossarbegriffe enthält, in denen Sie alternative Suffixe einschließen möchten. Diese Methode macht Ihre Lexikonliste kürzer und enthält mehr Sprachvariationen.
Spalte 3: Normalform
Die dritte Spalte in der Lexikondatei sollte optional die “normale Form” des Wortes enthalten.
Die normale Form, oder Master-Token, ist die Version, die im Designer angezeigt wird. Dieses Wort oder diese Phrase sollte die Standardversion der Variationen sein, die Sie in Spalte 1 definiert haben. Die Normalform sollte in den nachfolgenden Zeilen in Ihrer Lexikondatei für jede entsprechende Variation in Spalte 1 wiederholt werden.
Die NLP-Engine aktiviert die Normalform automatisch, wenn das Lexikon-Dictionary verarbeitet wird. Dadurch wird die Groß-/Kleinschreibung nicht berücksichtigt. Wenn diese Spalte weggelassen wird, wird die Variation in Spalte eins als Normalform zugewiesen.
Wie Spalte 1 kann Spalte 3 Sonderzeichen wie Bindestriche, Apostrophe oder Rautenzeichen enthalten. Bei der Verwendung von Sonderzeichen in Ihrem Lexikon sind keine speziellen Escape-Zeichen erforderlich. Dasselbe gilt für Buchstaben mit diakritischen Zeichen wie Akzentzeichen, Tilden, Umflexe usw.
Spalte 4: Tags
In der vierten Spalte der Lexikondatei können Sie grammatikalische Attribute für Ihren spezifischen Lexikoneintrag definieren.
In den meisten Fällen müssen Sie das SpeechPart nur in Spalte 4 angeben. In einigen Fällen möchten Sie jedoch auch den Grad, die Spannung usw. angeben. Dieser Punkt gilt insbesondere für nicht-englische Lexika, die eine Übereinstimmung von Fall, Geschlecht, Zahl usw. zwischen Wörtern erfordern. Sie können bei Bedarf Semantiktyp hinzufügen. Diese Metadaten können zukünftig verwendet werden für Intelligente Entitäten.
Für jeden Lexikoneintrag können ein oder mehrere Attribute definiert werden. Alle Attribute sollten in {geschweifte Klammern} gekapselt sein. Jeder Attribut sollte in Anführungszeichen stehen. Mehrere Attribute werden durch ein Komma und ein Leerzeichen getrennt.
Edelstahl | MSYN | Edelstahl | {SpeechPart=”Noun”, Stimmung=”0″} |
Die möglichen Tags und ihre Werte sind:
- Fall (eine der folgenden Optionen):
- Nicht definiert (Standard)
- Nominativ
- Zielsetzung
- Allgemein
- Possessiv
- ControlFlags: Kombination der folgenden Werte (semikolongetrennte Liste):
- Leer (Standard)
- SubjectAnimate
- SubjectInanimate
- ObjectAnimate
- ObjectInanimate
- IndirectObjectAnimate
- IndirectObjectInanimate
- Infinitiv
- AdjectiveOrNoun
- Adjektiv
- PrepNoun
- PrepAdj
- ObjectSentence
- SubjectSentence
- SubjectInfinitive
- AdverbModifier
- ObjektVP
- PhrasalVerb
- ProperAdjective
- ControlPrepositions: Eine kommaseparierte Liste von Präpositionen. Dieses Attribut sollte gesetzt werden, wenn ControlFlags einen der folgenden Werte hat: PrepNoun, PrepAdj oder PhrasalVerb. Standardmäßig ist es leer.
- Leer (Standard)
- Abschluss: Eine der folgenden Zeichenfolgen:
- Nicht definiert (Standard)
- Vergleichend
- Superlative
- Geschlecht: Eine der folgenden Zeichenfolgen:
- Nicht definiert (Standard)
- Maskulin
- Feminin
- Anzahl: Eine der folgenden Zeichenfolgen:
- Nicht definiert (Standard)
- Singular
- Plural
- Person: Eine der folgenden Zeichenfolgen:
- Nicht definiert (Standard)
- Erste
- Sekunde
- Dritter
- PronounType: Eine der folgenden Zeichenfolgen:
- Nicht definiert (Standard)
- Persönlich
- Possessiv
- Demonstrativ
- PossessiveAbsolute
- Reflexiv
- Relativ
- Property-Typ: Eine der folgenden Zeichenfolgen:
- Nein (Standard)
- Unbekannt
- Name
- Nachname
- PersonName
- Organisation
- Geografie
- Semantik: Kombination der folgenden Werte (semikolongetrennte Liste):
- Organisation
- Kommunikation
- Gruppe
- Handeln
- Artefakt
- Standort
- Kognition
- Beziehung
- Zeit
- Essen
- Stoff
- Bundesstaat
- Verarbeiten
- Objekt
- Besitz
- Phänomen
- Werk
- Form
- Text
- Person
- Obere
- Ereignis
- Attribut
- Tier
- Geografie
- Menge
- Gefühl
- Motiv
- Stimmung: Ganzzahlwert, der eine Kennzahl des entsprechenden Worts auswertet Stimmung.
- SpeechPart: Eine der folgenden Zeichenfolgen:
- Unbekannt (Standard)
- Adverb
- Adjektiv
- AdjectivePronoun
- Pronoun
- PronounInterrogative
- Noun
- Verb
- TeilnahmeI
- BeteiligteII
- Gerund
- Aux
- ModalVerb
- Vorpositionieren
- ConjunctionCoord
- ConjunctionSubordinated
- SentenceModifier
- Partitiv
- Proform
- Determiner
- Einleitung
- NumeralCardinal
- NumeralOrdinal
- Teilchen
- Artikel
- InfinitiveMark
- Spezial
- Breaker
- Trennzeichen
- Tense: Eine der folgenden Zeichenfolgen:
- Nicht definiert (Standard)
- PastSimple
- PresentSimple
- FutureSimple
- PastContinuous
- PresentContinuous
- FutureContinuous
- PastPerfect
- PresentPerfect
- FuturePerfect
- PastPerfectContinuous
- PresentPerfectContinuous
- FuturePerfectContinuous
- FutureInThePastSimple
- FutureInThePastPerfect
- FutureInThePastContinuous
- FutureInThePastPerfectContinuous
- Perfekt
- Kontinuierlich
- Einfach
- PerfectContinuous
- Unbestimmt
- Sprachdienste: Eine der folgenden Zeichenfolgen:
- Nicht definiert (Standard)
- Aktiv
- Passiver
SpeechPart Tag
Die SpeechPart tag legt fest, wann das Lexikon übernehmen werden soll, nicht wie es angewendet werden soll. Indem Sie das SpeechPart=”Noun”-Tag zu einem Lexikon-Eintrag hinzufügen, weisen Sie die NLP-Engine an, das Lexikon übernehmen, wenn der Begriff als Substantiv in einem Satz verwendet wird, der von der NLP-Engine erkannt wurde. Dieses Tag weist die NLP-Engine nicht an, das Lexikon als Substantiv zu setzen. Stellen Sie sicher, dass Sie den richtigen Wortteil definieren, wenn Sie Ihre Lexikondatei vorbereiten.
Die @übereinstimmend -Tag ist eine leistungsstarke Syntax, die verwendet werden kann, wenn Sie ein Standardwort ändern müssen. Wenn Sie ein Lexikon hinzufügen, wird den XM Discover, die mit Ihrem Benutzerkonto installiert sind, ein Eintrag für das spezifische Wort hinzugefügt. Beim Hinzufügen eines Instanz Begriffs wie „ qualtrics“, der bisher nicht in den englischen Standardwörterbüchern vorhanden wäre, erhält der Begriff einen Eintrag mit dem designierten Sprechteil. Dieser Eintrag wird ausgelöst, wenn der Begriff als dieser Wortteil in den tatsächlichen Daten verwendet wird. Bei Wörtern, die bereits in den Standardwörterbüchern vorhanden sind, hängt der Lexikoneintrag einfach eine weitere Zeile für die vorgesehene Wortart an das Wörterbuch an. Wenn das Wort in Ihrem Datensatz vorkommt, bestimmt die NLP-Engine seinen Wortteil in diesem Satz und ordnet die entsprechenden linguistischen Attribute zu. In einigen Fällen führt das Hinzufügen eines Lexikons für einen Standardwörterbuchbegriff zu mehreren Einträgen mit demselben Wortteil für ein einzelnes Wort. Wenn mehrere Spracheinträge für ein einzelnes Wort vorhanden sind, ordnet die NLP-Engine unter Umständen nicht das richtige Wort zu. Um dieses Problem zu vermeiden, können Sie das @match-Tag verwenden, um alle bereits vorhandenen Einträge für diese Sprach-/Wortkombination zu überschreiben. In vielen Fällen können ähnliche Ergebnisse durch positionsbezogene Ausnahmeregeln mit Sprachkennzeichen im Designer erzielt werden.
Beispiel: Standardmäßig wird „Issue“ als neutrales Verb und negatives Substantiv aufgeführt. Möglicherweise möchten Sie jedoch das negative Substantiv mit einem neutralen Substantiv überschreiben, um Fälle wie “Ausgabe einer Zeitschrift” zu Benutzerkonto. Mit dem @match -Tag weisen Sie die NLP-Engine an, alle anderen Einträge für ISSUE als Substantiv mit diesem Eintrag zu überschreiben, wodurch die Stimmung auf 0 gesetzt wird.
Problem | MSYN | Problem | {SpeechPart=”Noun” @match, Stimmung=”0″} |
Beispiel: Sie haben einen Fehler entdeckt, bei dem das Adjektiv „atemberaubend“ auf die Verbform von „stun“ abgebildet wurde. Um dies in “atemberaubend” zu ändern, können Sie den SpeechPart=”Adjektiv” und @Match-Code verwenden, um den vorhandenen Eintrag für “atemberaubend” als Adjektiv zu überschreiben.
atemberaubend | CSYN | atemberaubend | {SpeechPart=”Adjektiv” @match) |
Tipps zum Erstellen einer Lexikondatei
- Schreiben Sie immer Ihre Lexikon-Variationen (Spalte eins) in Kleinbuchstaben, es sei denn, Sie haben einen bestimmten Anwendungsfall für Groß-/Kleinschreibung, z.B. ein mehrdeutiges Akronym.
- Wenn Ihr Lexikon ein einzelnes Wort ist, müssen Sie es wahrscheinlich nicht selbst definieren, da die NLP-Engine es bereits als Entität erkennt. Wenn Ihr Lexikon eine bestimmte Groß-/Kleinschreibung erfordert, müssen Sie es vorab definieren.
- Verwendung MSYN wenn Ihr Lexikon Standardwörterbuchbegriffe enthält. Dadurch werden automatisch andere Wortformen eingeschlossen, sodass Sie nicht für jede einzelne Zeile spezifische Positionen anlegen müssen.
- Wenn Sie nicht sicher sind, ob Ihr Lexikon Standardwörterbuchbegriffe enthält, verwenden Sie CSYN.
- Wenn Ihr Lexikoneintrag ein Sonderzeichen am Anfang oder Ende des Wortes enthält, wird Ihre Variation in Spalte eins sollte ein Leerzeichen zwischen dem Zeichen und dem Wort haben. Beispiel: “Black Friday” sollte ” Black Friday ” sein (beachten Sie die Leerzeichen).
- Lexika enthalten nicht automatisch die Präfixvarianten @ und #. Diese sollten Sie separat definieren.
- Bereiten Sie Ihre Datei in einem Texteditor (wie Notepad++ unter Windows oder TextEdit auf Mac) vor, und speichern Sie die Datei als DCT-Dateityp.
- Wenn Sie eine Lexikondatei auf einem Mac erstellen, stellen Sie sicher, dass Sie das Zeilenumbruchzeichen Carriage Return Line Feed (CRLF) zwischen Zeilen verwenden. Dieses Zeichen ist sowohl von Windows als auch von Mac lesbar, was im Gegensatz zu dem häufigeren Carriage Return (CR)-Zeichen, das in Windows-Anwendungen verwendet wird, und dem Line-Feed-Zeichen (LF-Zeichen), das auf Macs verwendet wird. Die Unterscheidung zwischen diesen Typen ist in vielen Texteditoren unsichtbar, einschließlich der TextEdit-Anwendung, die nativ für MacOS ist. Wir empfehlen, eine herunterladbare Anwendung namens TextWrangler zu verwenden. Am Ende dieser Anwendung befindet sich eine Einstellung, mit der Sie auswählen können, welchen Zeilenumbruchsstil Sie verwenden möchten. Wählen Sie die Windows-Option, bevor Sie Ihre Lexikondatei erstellen.