DE112020003767T5 - Erzeugen eines ausführbaren verfahrens aus einer textbeschreibung, die in einer natürlichen sprache geschrieben ist - Google Patents

Erzeugen eines ausführbaren verfahrens aus einer textbeschreibung, die in einer natürlichen sprache geschrieben ist Download PDF

Info

Publication number
DE112020003767T5
DE112020003767T5 DE112020003767.3T DE112020003767T DE112020003767T5 DE 112020003767 T5 DE112020003767 T5 DE 112020003767T5 DE 112020003767 T DE112020003767 T DE 112020003767T DE 112020003767 T5 DE112020003767 T5 DE 112020003767T5
Authority
DE
Germany
Prior art keywords
text document
formulas
statements
extracting
state transition
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
DE112020003767.3T
Other languages
English (en)
Inventor
Takeshi Inagaki
Aya Minami
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020003767T5 publication Critical patent/DE112020003767T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4498Finite state machines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)
  • Stored Programmes (AREA)

Abstract

Es werden Verfahren, Vorrichtungen und Produkte zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung beschrieben. Aus einem Textdokument, das in einer natürlichen Sprache geschrieben ist, wird eine Gruppe von Aussagen extrahiert. Auf Grundlage der extrahierten Gruppe von Aussagen wird aus dem Textdokument eine Gruppe von Formeln extrahiert. Anschließend wird ein Zustandsübergangsgraph erzeugt, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind. Der Zustandsübergangsgraph wird in eine Software-Anwendung übersetzt.

Description

  • HINTERGRUND
  • Gebiet der Erfindung
  • Das Gebiet der Erfindung ist die Datenverarbeitung oder sind spezieller Verfahren, Vorrichtungen und Produkte zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist.
  • Beschreibung des Stands der Technik
  • Die Entwicklung des EDVAC-Computersystems von 1948 wird oft als der Beginn des Computerzeitalters genannt. Seit dieser Zeit haben sich Computersysteme zu äußerst komplizierten Einheiten entwickelt. Die heutigen Computer sind viel höher entwickelt als die frühen Systeme wie der EDVAC. Computersysteme umfassen typischerweise eine Kombination von Hardware- und Software-Komponenten, Anwendungsprogrammen, Betriebssystemen, Prozessoren, Bussen, Speicher, Eingabe/Ausgabe-Einheiten usw. Da Fortschritte in der Halbleiterverarbeitung und der Computerarchitektur die Leistungsfähigkeit der Computer immer weiter vorantreiben, hat sich eine immer höher entwickelte Computer-Software entwickelt, um die hohe Leistungsfähigkeit der Hardware zu nutzen, was heute zu Computersystemen führt, die viel leistungsstärker sind als nur wenige Jahre zuvor.
  • Computer werden in zunehmendem Maße benutzt, um Aufgaben zu automatisieren. Bestimmte Aufgaben beruhen jedoch auf Dokumenten, die in einer natürlichen Sprache geschrieben sind, und erfordern daher eine Intervention durch Menschen. Wenn man beispielsweise während einer Online-Hilfssitzung mit einem Assistenten chattet, kann der Assistent in der Lage sein, eine Hilfsanleitung oder eine Problemlösungsbeschreibung zu Rate zu ziehen. Als ein anderes Beispiel kann, wenn man einen Versicherungsagenten anruft, um den Versicherungsschutz zu besprechen, der Versicherungsagent Policendokumente besitzen, um darauf zurückzugreifen, wenn er Fragen zu dem Schutz beantwortet. Um diese Aufgaben mit computerimplementierter künstlicher Intelligenz (Artificial Intelligence, AI) zu automatisieren, kann es schwierig und zeitaufwändig sein, die in natürlicher Sprache vorliegenden Dokumente in Computer-Code umzuwandeln, der von der AI verstanden werden kann.
  • KURZDARSTELLUNG
  • Eine Ausführungsform gemäß der vorliegenden Erfindung ist auf ein Verfahren zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung gerichtet, umfassend Extrahieren einer Gruppe von Aussagen aus einem Textdokument, welches in einer natürlichen Sprache geschrieben ist, Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen, Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, und Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung.
  • Eine weitere Ausführungsform gemäß der vorliegenden Erfindung ist auf eine Vorrichtung zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung gerichtet, die in einer natürlichen Sprache geschrieben ist, wobei die Vorrichtung einen Computerprozessor aufweist, einen Computerspeicher, der operativ mit dem Computer-Prozessor verbunden ist, wobei sich in dem Computerspeicher Computerprogrammanweisungen befinden, die, wenn sie von dem Computerprozessor ausgeführt werden, bewirken, dass die Vorrichtung die Schritte des Extrahierens einer Gruppe von Aussagen aus einem Textdokument, welches in einer natürlichen Sprache geschrieben ist, des Extrahierens einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen, des Erzeugens eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, und des Übersetzens des Zustandsübergangsgraphen in eine Software-Anwendung ausführt.
  • Noch eine weitere Ausführungsform gemäß der vorliegenden Erfindung ist auf ein Computerprogramm zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung gerichtet, die in einer natürlichen Sprache geschrieben ist, wobei sich das Computerprogrammprodukt auf einem computerlesbaren Medium befindet, wobei das Computerprogrammprodukt Computerprogrammanweisungen aufweist, die, wenn sie ausgeführt werden, bewirken, dass ein Computer die Schritte des Extrahierens einer Gruppe von Aussagen aus einem Textdokument, welches in einer natürlichen Sprache geschrieben ist, des Extrahierens einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen, des Erzeugens eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, und des Übersetzens des Zustandsübergangsgraphen in eine Software-Anwendung ausführt.
  • In verschiedenen Ausführungsformen gemäß der vorliegenden Erfindung kann das Extrahieren einer Gruppe von Aussagen aus dem Textdokument Maskieren von Schlüsselwörtern, die in einem vorab definierten Wörterbuch aufgelistet sind, in jedem Satz des Textdokuments, Maskieren von Zeichenfolgenstrukturen, die durch vorab definierte Ausdrucksregeln repräsentiert werden, in jedem Satz des Textdokuments und Abbilden der maskierten Abschnitte jedes Satzes auf eine Aussageklasse durch ein Maschinenlernverfahren umfassen.
  • In verschiedenen Ausführungsformen gemäß der vorliegenden Erfindung kann das Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen Extrahieren von Beziehungen innerhalb der Gruppe von Aussagen und Erzeugen einer Gruppe von logischen Formeln umfassen, welche die Beziehungen als bedingte Anweisungen repräsentieren. In einigen Ausführungsformen kann das Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen ferner Extrahieren einer Beziehung zwischen einer logischen Formel, die in einem ersten Satz des Textdokuments auftritt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments auftritt, umfassen.
  • In verschiedenen Ausführungsformen gemäß der vorliegenden Erfindung kann das Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, Konstruieren eines Verfahrensablaufbaums, welcher alle möglichen Zustände eines Aussagewerts repräsentiert, für jede Aussage in der Gruppe von Aussagen, Anwenden der Gruppe von Formeln als Beschränkungen für alle Wege in dem Verfahrensablaufbaum und Optimieren des Verfahrensablaufbaums umfassen.
  • In verschiedenen Ausführungsformen gemäß der vorliegenden Erfindung umfasst das Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung Erzeugen einer durch einen Computer ausführbaren Logik, welche Werte für Aussagevariablen bestimmt, die in dem Zustandsübergangsgraphen repräsentiert sind.
  • Die vorstehenden und andere Aufgaben, Merkmale und Vorteile der Erfindung werden aus den folgenden detaillierteren Beschreibungen beispielhafter Ausführungsformen der Erfindung ersichtlich, wie sie in den begleitenden Zeichnungen veranschaulicht sind, wobei gleiche Bezugszahlen im Allgemeinen gleiche Teile beispielhafter Ausführungsformen der Erfindung repräsentieren.
  • Figurenliste
  • Im Folgenden werden Ausführungsformen der Erfindung, lediglich beispielhaft, unter Bezugnahme auf die begleitenden Zeichnungen beschrieben, in welchen:
    • 1 ein Schaubild einer beispielhaften Netzwerkumgebung zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist;
    • 2 ein Blockschaubild eines beispielhaften Computers zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist;
    • 3 ein Blockschaubild eines beispielhaften Systems zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist;
    • 4 ein Ablaufplan eines beispielhaften Verfahrens zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist;
    • 5 ein Ablaufplan eines beispielhaften Verfahrens zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist;
    • 6 ein Ablaufplan eines beispielhaften Verfahrens zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist;
    • 7 ein Ablaufplan eines beispielhaften Verfahrens zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist; und
    • 8 ein Ablaufplan eines beispielhaften Verfahrens zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung ist.
  • DETAILLIERTE BESCHREIBUNG
  • Unter Bezugnahme auf die begleitenden Zeichnungen, beginnend mit 1, werden beispielhafte Verfahren, Vorrichtungen und Produkte zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, welche in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung beschrieben. In 1 ist ein Netzwerk-Schaubild eines Systems dargestellt, welches dafür konfiguriert ist, gemäß Ausführungsformen der vorliegenden Erfindung ein ausführbares Verfahren aus einer Textbeschreibung zu erzeugen, welche in einer natürlichen Sprache geschrieben ist. Das System der 1 umfasst einen für eine Verarbeitung natürlicher Sprache konfigurierten Server (106), welcher von einem Administrator (102) ein Dokument (101) empfängt, das in einer natürlichen Sprache geschrieben ist, und aus dem empfangenen Dokument das ausführbare Verfahren erzeugt. Der Server (106) empfängt außerdem von dem Administrator (102) ein Wörterbuch (109), welches Schlüsselwörter enthält, die eine signifikante Bedeutung in dem Dokument (101) aufweisen, sowie eine Gruppe von Strukturregeln (110), welche beim Erkennen natürlicher Sprachstrukturen von Nutzen sind.
  • Der Server (106) extrahiert Aussagen und Formeln aus jedem Satz in dem Dokument (101). Das Extrahieren von Aussagen umfasst Maskieren signifikanter Schlüsselwörter, die durch die aufgelisteten Wörter in einem Wörterbuch von Schlüsselwörtern identifiziert werden, und Zeichenfolgenstrukturen, die durch Regeln repräsentiert werden, wie z.B. Regeln eines regulären Ausdrucks. Anschließend werden durch Maschinenlernen Aussagen extrahiert, um die Ausdrucksstrukturen zu erkennen und die Aussage mit einer Aussageklasse zu kennzeichnen. Das Extrahieren von Formeln umfasst Extrahieren von Beziehungen zwischen den extrahierten Aussagen durch Maschinenlernen und Ausgeben einer logischen Formel als eine bedingte Anweisung unter den Aussagen.
  • Als Nächstes erzeugt der Server (106) Aussagewert-Bestimmungswege unter Einschränkung durch die extrahierten Formeln. Ein Baum-Ablaufplan, repräsentiert als ein Zustandsübergangsgraph, wird erzeugt, um alle möglichen Zustände der Werte jeder Aussage zu repräsentieren. Wege in dem Baum-Ablaufplan verzweigen sich gemäß einem wahren oder falschen Wert einer Aussage. Die extrahierten logischen Formeln werden auf alle Wege angewendet und Wege, welche die Bedingungen nicht erfüllen, werden ungültig gemacht. Die verbleibenden Wege werden optimiert, indem doppelte Wege entfernt werden, welche ungeachtet der Werte der Aussagevariablen zu denselben Endknoten führen.
  • Anschließend übersetzt der Server (106) den Zustandsübergangsgraphen in ein ausführbares Verfahren, z.B. eine Software-Anwendung. Die Anwendung bietet einen Weg zum Bestimmen von Werten von Aussagevariablen Variable für Variable gemäß dem Zustandsübergangs-Ablaufgraphen. Beispielsweise werden die Werte durch Abfragen an den Benutzer bestimmt, die für Aussagen relevant sind. Ein Benutzer erhält in Abhängigkeit von den gegebenen Antworten jeweils eine andere Folge von Fragen.
  • Nachdem das ausführbare Verfahren von dem Server (106) erzeugt worden ist, kann eine Anwendungsprogramm-Schnittstelle (Application Program Interface, API) auf dem Server (106) oder einem anderen Server (108) in Datenaustausch mit dem Server (106) einem Endbenutzer (103) über ein Netzwerk (100) Zugriff auf das ausführbare Verfahren auf dem Server (106) gewähren. Beispielsweise kann eine Benutzerschnittstelle (User Interface, UI) auf einem Client-Computer (105) über die API auf das ausführbare Verfahren zugreifen. In einer beispielhaften Anwendung kann das Dokument (101) eine Hilfsanleitung oder eine Wartungsanleitung sein und das ausführbare Verfahren kann eine Künstliche-Intelligenz(AI)-Software sein, welche eine Konversation (oder einen Chat) mit dem Benutzer (103) in natürlicher Sprache über Messaging-Anwendungen, Websites, Mobilfunk-Apps oder das Telefon simulieren kann, hierin als eine „Chatbot“-Anwendung bezeichnet. In einer weiteren beispielhaften Anwendung kann das Dokument (101) ein Versicherungspolicendokument und das ausführbare Verfahren kann eine automatisierte Anspruchsbewertungsanwendung sein, welche den Benutzer (103) dabei unterstützt, die Deckung eines Versicherungsanspruchs zu überprüfen.
  • Das Netzwerk (100) kann ein oder mehrere lokale Netzwerke (Local Area Networks, LANs), Weitverkehrsnetze (Wide Area Networks, WANs), persönliche Netzwerke, Mesh-Netzwerke, zelluläre Netzwerke, Internets, Intranets oder andere Netzwerke und Kombinationen davon umfassen. Das Netzwerk (100) kann eine oder mehrere drahtgebundene Verbindungen, drahtlose Verbindungen oder Kombinationen davon umfassen. Die Anordnung von Servern und anderen Einheiten, aus denen das beispielhafte System aufgebaut ist, das in 1 veranschaulicht ist, dient der Erläuterung und soll nicht beschränkend sein. Datenverarbeitungssysteme, die gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung geeignet sind, können zusätzliche Server, Router, andere Einheiten und Peer-to-Peer-Architekturen umfassen, die in 1 nicht dargestellt sind, wie der Fachmann erkennen wird. Netzwerke in solchen Datenverarbeitungssystemen können viele Datenkommunikationsprotokolle unterstützen, umfassend beispielsweise TCP (Transmission Control Protocol), IP (Internet Protocol), http (HyperText Transfer Protocol), WAP (Wireless Access Protocol), HDTP (Handheld Device Transport Protocol) und andere, welche dem Fachmann bekannt sind. Verschiedene Ausführungsformen der vorliegenden Erfindung können zusätzlich zu den in 1 veranschaulichten auf einer Vielfalt von Hardware-Plattformen implementiert werden.
  • Das Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß der vorliegenden Erfindung wird im Allgemeinen mit Computern implementiert, das heißt mit einer automatisierten Datenverarbeitungsanlage. In dem System der 1 werden zum Beispiel der Server (106), der Server (108) und der Client-Computer (105) alle zumindest in gewissem Maße als Computer implementiert. Zur weiteren Erklärung ist daher in 2 ein Blockschaubild einer automatisierten Datenverarbeitungsanlage dargestellt, welche einen beispielhaften Computer (152) umfasst, der zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung konfiguriert ist. Der Computer (152) der 2 umfasst mindestens einen Computerprozessor (156) oder eine ,CPU‘ sowie Direktzugriffsspeicher (168) (,RAM‘), welcher über einen Hochgeschwindigkeits-Speicherbus (166) und einen Busadapter (158) mit dem Prozessor (156) und anderen Komponenten des Computers (152) verbunden ist.
  • In dem RAM (168) ist ein Prozessor für natürliche Sprache (126) gespeichert, ein Modul von Computerprogrammanweisungen zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung. Außerdem ist in dem RAM (168) ein Aussageverarbeitungsmodell für natürliche Sprache (130) gespeichert, ein Modul von Computerprogrammanweisungen, die zum Extrahieren von Aussagen aus einer natürlichen Sprache durch Maschinenlernen geeignet sind. Außerdem ist in dem RAM (168) ein Formelverarbeitungsmodell für natürliche Sprache (131) gespeichert, ein Modul von Computerprogrammanweisungen, die zum Extrahieren von Formeln oder logischen Beziehungen zwischen Aussagen aus einer natürlichen Sprache durch Maschinenlernen geeignet sind. Außerdem ist in dem RAM (168) ein Zustandsübergangsgraph-Generator (132) gespeichert, ein Modul von Computerprogrammanweisungen zum Erzeugen eines Zustandsübergangsgraphen, welcher Aussagebestimmungswege repräsentiert, die durch die Formeln beschränkt sind.
  • Außerdem ist in dem RAM (168) ein Betriebssystem (154) gespeichert. Betriebssysteme, die in Computern geeignet sind, die zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung konfiguriert sind, umfassen UNIX™, Linux™, Microsoft XP™, AIX™, IBM's i5/OS™ und andere, wie dem Fachmann ersichtlich sein wird. Das Betriebssystem (154), die NLP (126), das Aussage-NLP-Modell (130), das Formel-NLP-Modell (131) und der STG-Generator (132) sind in dem Beispiel der 2 im RAM (168) dargestellt, jedoch werden viele Komponenten solcher Software typischerweise auch in einem nicht-flüchtigen Speicher gespeichert, wie zum Beispiel auf einer Festplatten-Speichereinheit (170). Die Ausgabe der NLP (126), d.h. Aussagen (171), Formeln (172) und STG (173), können auch in einem nicht-flüchtigen Speicher gespeichert werden, wie zum Beispiel auf dem Festplattenlaufwerk (170).
  • Der Computer (152) der 2 umfasst einen Festplattenlaufwerk-Adapter, welcher über einen Erweiterungsbus (160) und den Busadapter (158) mit dem Prozessor (156) und anderen Komponenten des Computers (152) verbunden ist. Der Festplattenlaufwerk-Adapter verbindet einen nicht-flüchtigen Datenspeicher in Form des Festplattenlaufwerks (170) mit dem Computer (152). Festplattenlaufwerk-Adapter, die in Computern geeignet sind, die zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung konfiguriert sind, umfassen Integrated-Drive-Electronics-Adapter (,IDE‘)-Adapter, Small-Computer-System-Interface-Adapter (,SCSI‘)-Adapter und andere, wie dem Fachmann ersichtlich sein wird. Der nicht-flüchtige Computerspeicher kann auch als ein optisches Festplattenlaufwerk, ein elektrisch löschbarer programmierbarer Nur-Lese-Speicher (ein so genannter ,EEPROM‘ oder ,Flash‘-Speicher), als RAM-Laufwerke usw. implementiert werden, wie dem Fachmann ersichtlich sein wird.
  • Der beispielhafte Computer (152) der 2 umfasst einen oder mehrere Eingabe/Ausgabe-Adapter (,E/A‘-Adapter) (178). Über E/A-Adapter werden benutzerorientierte Eingaben/Ausgaben implementiert, beispielsweise durch Software-Treiber und Computer-Hardware zum Steuern von Ausgaben an Anzeigeeinheiten, z.B. Computerbildschirme, sowie Benutzereingaben von Benutzereingabeeinheiten (181), z.B. Tastaturen und Mäusen. Der beispielhafte Computer (152) der 2 umfasst einen Videoadapter (209), welcher ein Beispiel eines E/A-Adapters ist, der speziell für Graphikausgaben an eine Anzeigeeinheit (180) ausgestaltet ist, z.B. an einen Anzeigebildschirm oder einen Computermonitor. Der Videoadapter (209) ist über einen Hochgeschwindigkeits-Videobus (164), den Busadapter (158) und den Front-Side-Bus (162), welcher ebenfalls ein Hochgeschwindigkeitsbus ist, mit dem Prozessor (156) verbunden.
  • Der beispielhafte Computer (152) der 2 umfasst einen Datenaustauschadapter für den Datenaustausch mit anderen Computern (197) und für den Datenaustausch mit einem Datenaustausch-Netzwerk (100). Ein solcher Datenaustausch kann seriell über RS-232-Verbindungen, über externe Busse, z.B. einen Universal Serial Bus (,USB‘), über Datenaustausch-Netzwerke, z.B. IP-Datenaustausch-Netzwerke, und auf andere Weise erfolgen, wie der Fachmann erkennen wird. Datenaustauschadapter implementieren die Hardware-Ebene eines Datenaustauschs, über welchen ein Computer Daten an einen anderen Computer sendet, direkt oder über ein Datenaustausch-Netzwerk. Beispiele für Datenaustauschadapter, die in Computern geeignet sind, die zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung konfiguriert sind, umfassen Modems für einen drahtgebundenen Einwahl-Datenaustausch, Ethernet-Adapter (IEEE 802.3) für einen drahtgebundenen Datenaustausch und 802.11-Adapter für einen drahtlosen Datenaustausch.
  • Zur weiteren Erläuterung ist in 3 ein Systemschaubild für ein beispielhaftes System zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung dargestellt. Das beispielhafte System, das in 3 dargestellt ist, kann für eine „Chatbot“-Anwendung oder eine andere Anwendung konfiguriert sein, bei welcher Ja/Nein-Antworten eines Benutzers eine Basis für einen Übergang von einem Zustand in den nächsten in dem ausführbaren Verfahren bieten.
  • In dem System der 3 umfasst ein Computersystem (352) einen Prozessor für natürliche Sprache (301), einen Speicher (370) und ein Textdokument (315), welches ein Handbuch, eine Beschreibung oder ein anderes Dokument in natürlicher Sprache sein kann, aus welchem ein ausführbares Verfahren zu erzeugen ist, wie zuvor beschrieben. Der Prozessor für natürliche Sprache (301) umfasst ein Schlüsselwort-Markierungsmodul (325), welches das Textdokument (315) als Eingabe annimmt. Das Schlüsselwort-Markierungsmodul (325) identifiziert Schlüsselwörter aus einem Schlüsselwort-Wörterbuch, wie zuvor beschrieben, und ersetzt die identifizierten Schlüsselwörter durch abstrakte Tags. Der Prozessor für natürliche Sprache (301) umfasst ferner ein Aussage-Maschinenlernmodell (330), welches die Schlüsselwort-Darstellungen aus dem Schlüsselwort-Markierungsmodul (325) als Eingabe annimmt und aus den Ausdrücken in natürlicher Sprache des Dokuments auf Grundlage von Aussageklassendefinitionen Aussagen (305) extrahiert. Die Aussagen (305) werden im Speicher (370) gespeichert. Der Prozessor für natürliche Sprache (301) umfasst ferner ein Formel-Maschinenlernmodell (335), welches Aussageklassendarstellungen aus dem Aussage-Maschinenlernmodell (330) annimmt und auf Grundlage von Formelklassendefinitionen Formeln (307) extrahiert, welche bedingte Anweisungen zwischen Aussagevariablen repräsentieren. Die Formeln (307) werden im Speicher (370) gespeichert. Der Prozessor für natürliche Sprache (301) umfasst ferner einen STG-Generator (340), welcher Formelklassendarstellungen aus dem Formel-Maschinenlernmodell (335) annimmt und einen Zustandsübergangsgraphen (309) erzeugt, welcher beispielsweise in der Form einer SCXML-Datei vorliegen kann.
  • Das System der 3 umfasst ferner einen Server (390), welcher auf derselben Anlage wie der Computer (352) implementiert sein kann, oder auf getrennten Anlagen, welche über ein Computernetzwerk Daten austauschen. Der Server (390) umfasst eine SCXML-Ausführungsmaschine (350), welche die SCXML-Datei (309) als seine Eingabe nimmt und die Datei einem Parsing unterzieht, um ein Verfahren auszuführen, welches auf Eingaben basiert, die in jedem Zustand gegeben werden. Der Server (390) umfasst ferner einen API-Server (355), z.B. einen REpresentational-State-Transfer-API-Server (REST-API-Server), welcher Fragen erzeugt und Antworten eines Benutzers empfängt, welche dann zu der SCXML-Ausführungsmaschine (350) weitergeleitet werden, um einen nächsten Zustand in dem ausführbaren Verfahren zu bestimmen. Der API-Server (355) kann mit einer Ul-Logik (360) auf einer Client-Einheit (397) Daten austauschen, um Antworten zu erhalten, die von einem Benutzer bereitgestellt werden. Beispielsweise kann die Ul-Logik (360) in einen Browser (365) oder eine andere Benutzerschnittstellen-Anwendung eingebettet sein.
  • Zur weiteren Erläuterung ist in 4 ein Ablaufplan dargestellt, welcher ein beispielhaftes Verfahren zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung veranschaulicht. Das Verfahren der 4 umfasst Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument (415). Eine Aussage, wie hierin verwendet, ist eine Boole'sche Variable, welche einen Wert „wahr“ oder „falsch“ aufweist. Eine Aussage umfasst Einheiten, die durch Schlüsselwörter repräsentiert werden. Beispielsweise ist „die versicherte Person ist jünger als 18 Jahre“ eine Aussage, die einen Wert wahr oder falsch aufweist, abhängig von der Person, auf welche die Aussage angewendet wird. Das Textdokument (415) ist ein Dokument in natürlicher Sprache, aus welchem das ausführbare Verfahren zu erzeugen ist. Beispielsweise kann das Textdokument (415) ein Dokument wie z.B. eine Versicherungspolice für eine automatisierte Versicherungsanspruchs-Verarbeitungsanwendung sein. In einem anderen Beispiel ist das Textdokument (415) eine Wartungs- oder Bedienungsanleitung für eine automatisierte Hilfeanwendung, wie z.B. einen „Chatbot“.
  • Das Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument kann durch Empfangen des Textdokuments (415) von einem Benutzer und Erkennen von Einheiten, wie z.B. Schlüsselwörtern und Ausdrücken, durch eine Verarbeitung natürlicher Sprache (Natural Language Processing, NLP) und durch Maschinenlerntechniken erfolgen. Das Erkennen von Einheiten, wie z.B. Schlüsselwörtern und Ausdrücken, durch NLP und Maschinenlerntechniken kann zum Beispiel durch das Aussage-Maschinenlernmodell (330) der 3 erfolgen. Eine Gruppe von Schlüsselwörtern kann in einem Wörterbuch (425) bereitgestellt werden, welches vom Benutzer eingegeben wird, um die Schlüsselwörter zu identifizieren. Das Wörterbuch (425) umfasst Schlüsselwörter, welche eine signifikante Bedeutung innerhalb des Textdokuments (415) aufweisen. Ausdrücke können auf Grundlage einer Gruppe von Ausdrucksregeln (435) erkannt werden, die beim Identifizieren von natürlichen Sprachstrukturen nützlich sind. Die Ausdrucksregeln (435) können ebenfalls vom Benutzer eingegeben werden. Für jeden Satz in dem Textdokument (415) werden Aussagen extrahiert, indem identifizierte Schlüsselwörter und Ausdrücke durch abstrakte Tags ersetzt werden. Es kann eine Aussageklasse verwendet werden, um die Aussage unter Verwendung der abstrakten Tags auszudrücken. Bei Weglassen jeweiliger Repräsentationen (Namen) von Einheiten beschreibt eine Aussageklasse eine allgemeine Eigenschaft der Einheiten. Beispielsweise ist eine Aussageklasse, die dem obigen Beispiel zugeordnet ist, T0_ALTER_KLEINER_ALS_T1, wobei T0 und T1 abstrakte Tags für Einheiten sind und wobei T0 „Person“ ist und T1 „18 Jahre“ ist. Die Aussageklasse wird zu einer Aussage, wenn jeweilige Schlüsselwörter der Einheit zugeführt werden. Jede Aussageklasse kann von dem Benutzer definiert und bereitgestellt werden.
  • Das Verfahren der 4 umfasst außerdem Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen. Eine Formel repräsentiert, wie hierin verwendet, eine Beziehung zwischen Werten mehrerer Aussagevariablen. Bei Formeln weist nicht jede Aussagevariable frei ihren Wert auf, sondern ist durch Werte von anderen beschränkt. Jede logische Formel in der extrahierten Gruppe von Formeln kann Aussagevariablen, logische Operatoren und bedingte Anweisungen umfassen. Das Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen kann durch Bestimmen logischer Beziehungen zwischen logischen Einheiten in einem Satz des Textdokuments durch NLP und Maschinenlerntechniken erfolgen. Das Bestimmen logischer Beziehungen zwischen logischen Einheiten in einem Satz des Textdokuments durch NLP und Maschinenlerntechniken kann durch das Formel-Maschinenlernmodell (335) erfolgen. Beispielsweise wird eine bedingte Anweisung als A->B geschrieben, wobei A und B Aussagevariablen sind und die Formel A->B mögliche Kombinationen von Aussagevariablenwerten über „wenn A wahr ist, sollte B wahr sein“ beschränkt. Eine Formelklasse kann verwendet werden, um Formeln auszudrücken, indem Aussagen durch abstrakte Tags ersetzt werden. Die Formelklasse repräsentiert logische Beziehungen zwischen Aussagen, ohne Aussagen zu spezifizieren. Somit repräsentieren die abstrakten Tags Aussagevariablen. Jede Formelklasse kann durch den Benutzer definiert und bereitgestellt werden.
  • Das Verfahren der 4 umfasst außerdem Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt werden. Ein Zustand ist eine geordnete Kombination von Aussagewerten. Ein Zustandsübergangsgraph repräsentiert alle möglichen Übergänge von einem Zustand auf einen anderen Zustand durch Bestimmen des Werts einer Variable. Ein Knoten des Zustandsübergangsgraphen repräsentiert einen Zustand und eine Kante repräsentiert einen Wert der Variable, die einem Zustandsübergang zwischen zwei verbundenen Knoten entspricht. Durch die Beschränkungen durch Formeln werden mögliche Übergänge begrenzt. Dieser beschränkte Übergangsgraph wird als Zustandsübergangsgraph eines Verfahrens bezeichnet. Mit anderen Worten, der Zustandsübergangsgraph ist ein Verfahrensablauf, welcher sich durch Bestimmung von Werten von Aussagen verzweigt. Ein Beispiel einer Standard-Ausgabeformel, welche den Zustandsübergangsgraphen repräsentiert, ist die State Chart eXtensible Markup Language (SCXML), welche Übergänge zwischen Zuständen durch Ereignisse repräsentiert. Beispielsweise repräsentiert im Anwendungsfall einer Chatbot-Anwendung ein Zustand einen Zustand der Konversation; im Anwendungsfall einer automatisierten Versicherungsanspruchsbewertung repräsentiert ein Zustand einen Zustand des Überprüfungsfortschritts.
  • Das Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt werden, kann durch Erzeugen eines Baumablaufplans erfolgen, in welchem jeweils eine erste Aussagevariable ein Startknoten ist und eine „Wahr“-Kante und eine „Falsch“-Kante jeweils mit einer anderen zugehörigen Aussagevariable verbinden und jede „Wahr“-Kante und jede „Falsch“-Kante der zugehörigen Aussagevariablen wiederum mit anderen Aussagevariablen verbinden usw., bis für jeden Weg ein letzter Knoten erreicht ist, der das Verfahren abschließt. Das Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt werden, umfasst ein Überprüfen einer Ergebnisbestimmung für alle Zustände auf jedem Weg.
  • In Fortführung des obigen Beispiels sei die folgende Gruppe von Formeln betrachtet, die extrahiert worden sind:
    • W0→W1
    • W0= T0_ALTER_KLEINER_ALS_T1
    • W1 = HAT_T2
    • T0=Person
    • T1=18 Jahre
    • T2=klinische Untersuchung
  • Nun sei eine dritte Aussagevariable W2 betrachtet, welche von W0 abhängt, so dass die Formel W2->0 erhalten wird. Wenn es drei Aussagevariablen (W0, W1, W2) gibt, weist das System 23 = 8 Zustände auf, welche die folgenden sind: (0,0,0), (1,0,0), (0,1,0), (0,0,1), (1,1,0), (1,0,1), (0,1,1), (1,1,1).
  • Bei einer gegebenen Formel W2->W0 werden die folgenden Ergebnisse abgeleitet, obwohl zwei Wege (der zweite und der vierte) zu einem „Anomalen Ende“ führen, weil W2 wahr ist, wenn W0 falsch ist:
    1. 1. Start -> (0) -> (0,0) -> (0,0,0) -> Normales Ende
    2. 2. Start -> (0) -> (0,0) -> (0,0,1) -> Anomales Ende
    3. 3. Start -> (0) -> (0,1) -> (0,1,0) -> Normales Ende
    4. 4. Start -> (0) -> (0,1) -> (0,1,1) -> Anomales Ende
    5. 5. Start -> (1) -> (1,0) -> (1,0,0) -> Normales Ende
    6. 6. Start -> (1) -> (1,0) -> (1,0,1) -> Normales Ende
    7. 7. Start -> (1) -> (1,1) -> (1,1,0) -> Normales Ende
    8. 8. Start -> (1) -> (1,1) -> (1,1,1) -> Normales Ende
  • Die zwei Wege mit anomalem Ende können ungültig gemacht werden, wodurch 6 gültige Wege verbleiben. In dem Beispiel eines Problemdiagnoseverfahrens oder eines Versicherungsanspruchs-Überprüfungsverfahrens wird der Wert jeder Variable Variable für Variable bestimmt, und wenn ein Weg nicht die Bedingungen der Formeln erfüllt, dann wird dieser Weg als ein anomaler Fall betrachtet, z.B. als ein ungelöster Fall (z.B. eine ungelöste Problemdiagnose) oder als ein abgelehnter Fall (z.B. ein abgelehnter Versicherungsanspruch).
  • Das Verfahren der 4 umfasst außerdem Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung. Das Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung kann durch Erzeugen einer Software-Anwendung erfolgen, welche die Werte von Aussagevariablen Variable für Variable gemäß dem Zustandsübergangsgraphen bestimmt. Das Bestimmen der Werte von Aussagevariablen Variable für Variable gemäß dem Zustandsübergangsgraphen kann durch Abbilden einer Aussageklasse auf eine Ja/Nein-Frage erfolgen, welche in einer Benutzerschnittstelle (User Interface, UI) bereitgestellt wird, um einen „Wahr“- oder „Falsch“-Wert für die Aussage zu bestimmen. Das Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung kann ein Parsing der SCXML-Datei durch die SCXML-Ausführungsmaschine (350) umfassen, auf welche durch die UI (360) über Ul-Ressourcenanforderungen an die API auf dem API-Server (355) zugegriffen werden kann, der mit der SCXML-Ausführungsmaschine (350) verbunden ist.
  • Beispielsweise kann in dem Anwendungsfall einer Chatbot-Anwendung das Erzeugen einer Software-Anwendung, welche die Werte von Aussagevariablen bestimmt, Erzeugen einer Chatbot-Anwendung umfassen, die einen Benutzer Ja/Nein-Fragen fragt, um einen Aussagewert zu bestimmen; in dem Anwendungsfall einer automatisierten Versicherungsanspruchsbewertung Erzeugen von Eingabeformen für die automatisierte Überprüfung eines Versicherungsanspruchs. Der Fachmann erkennt, dass die Software-Anwendung gemäß den Erfordernissen des Benutzers und gemäß dem Textdokument erzeugt werden kann, aus dem die Anwendung erzeugt wird, und nicht auf das in dieser Offenbarung gegebene Beispiel beschränkt ist.
  • Zur weiteren Erläuterung ist in 5 ein Ablaufplan dargestellt, welcher ein beispielhaftes Verfahren zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung veranschaulicht, welches Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument, Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen, Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, und Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung umfasst.
  • Das Verfahren der 5 unterscheidet sich von dem Verfahren der 4 jedoch darin, dass das Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument Maskieren (502) von Schlüsselwörtern, die in einem vorab definierten Wörterbuch aufgelistet sind, in jedem Satz des Textdokuments umfasst. Das Maskieren (502) von Schlüsselwörtern, die in einem vorab definierten Wörterbuch aufgelistet sind, in jedem Satz des Textdokuments kann durch das Schlüsselwort-Markierungsmodul (325) erfolgen, welches Schlüsselwörter, die in dem Wörterbuch (425) gefunden werden, durch abstrakte Tags ersetzt. Anfänglich erzeugt ein Benutzer ein Wörterbuch, um Schlüsselwörter zu markieren, welche eine spezielle Signifikanz in dem Dokument aufweisen. Mit dem Begriff „spezielle Signifikanz“ ist gemeint, dass diese Schlüsselwörter Schlüsseleinheiten sind, aus denen Aussagen aufgebaut sind. Die Schlüsselwörter können Normalformen aufweisen, um verschiedene Schreibweisen abzudecken.
  • In dem Verfahren der 5 umfasst das Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument ferner Maskieren (504) von Zeichenfolgenstrukturen, die durch vorab definierte Ausdrucksregeln repräsentiert werden, in jedem Satz des Textdokuments. Das Maskieren (504) von Zeichenfolgenstrukturen, die durch vorab definierte Ausdrucksregeln repräsentiert werden, in jedem Satz des Textdokuments kann durch die NLP (301) unter Anwendung von Strukturregeln (435) erfolgen, um reguläre Ausdrücke in einem Satz des Textdokuments (415) zu identifizieren. Um ein Registrieren aller Zahlen in dem Wörterbuch zu vermeiden, werden reguläre Ausdrücke verwendet, um Altersausdrücke zu markieren, ungeachtet des tatsächlichen numerischen Werts des Alters.
  • Wenn die Eingabe in die NLP (126) ein Satz eines Dokuments ist, erzeugt die NLP (126) durch Maskieren (502) von Schlüsselwörtern, die in einem vorab definierten Wörterbuch definiert sind, in jedem Satz des Textdokuments und durch Maskieren (504) von Zeichenfolgenstrukturen, die durch vorab definierte Ausdrucksregeln repräsentiert werden, in jedem Satz des Textdokuments einen maskierten Satz und Abbildungsdaten des maskierten Teils mit der Oberflächenform und der Normalform. Wenn beispielsweise die Eingabe Folgendes ist:
  • „Personen, deren Alter kleiner als achtzehn Jahre ist, sollten eine klinische Untersuchung haben“, ist die Ausgabe:
    • „T0, deren Alter kleiner als T1 ist, sollten T2 haben“, wobei
    • T0= Personen (Person)
    • T1=achtzehn Jahre (18 Jahre)
    • T2=klinische Untersuchung
  • Hier wird die Notation T# = Oberflächenform (Normalform) verwendet.
  • In dem Verfahren der 5 umfasst das Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument ferner Abbilden (506) der maskierten Abschnitte jedes Satzes auf eine Aussageklasse über ein Maschinenlernverfahren. Eine Aussage wird in einer Zone repräsentiert, die Schlüsselwörter enthält, die in dem Beispielsatz markiert sind. Das Abbilden (506) der maskierten Abschnitte jedes Satzes auf eine Aussageklasse über das Maschinenlernverfahren kann durch das Aussage-Maschinenlernmodell (330) unter Verwendung von Maschinenlernalgorithmen zum Erkennen von Strukturen von Ausdrücken von Aussagen und Markieren der Aussage mit einer Aussageklasse erfolgen. Wenn die Schlüsselwörter bereits maskiert sind, werden die identifizierten regulären Ausdrücke in dem Satz ebenfalls maskiert. Abbildungsdaten der maskierten Teile mit Oberfläche und Formen und Aussagemarkierungen werden ebenfalls ausgegeben.
  • Die Aussageklassen werden typischerweise durch Benutzer definiert und sind logisch allgemein. Beispielsweise die Aussageklasse-Kategorievariationen von Ausdrücken des Alters in einer einzelnen Klasse. Die Aussageklasse sollte einen Wahr- oder Falsch-Wert aufweisen und die logische Operation des Umkehrens des Wahr- oder Falsch-Werts ermöglichen. Beispielsweise ist [T0_ALTER_KLEINER_ALS_T1] wahr, wenn das Alter von T0 kleiner als T1 ist. Der Wert von [!T0_ALTER_KLEINER_ALS_T1] ist wahr, wenn das Alter von T0 größer oder gleich T1 ist. Hier wird das „!“-Symbol als eine logische Umkehroperation (NICHT-Operation) verwendet. Diese Markierungen werden als Aussagevariablen bezeichnet. Wenn beispielsweise die Ausgabe des vorhergehenden Schritts die folgende Eingabe ist:
    • „T0, dessen Alter kleiner als T1 ist, sollte T2 haben“, wobei T0= Personen (Person), T1=achtzehn Jahre (18 Jahre), T2=klinische Untersuchung,
    ist die Ausgabe:
    • „W0 sollte W1“, wobei
    • W0=„T0, dessen Alter kleiner als T1 ist“, (T0_ALTER_KLEINER_ALS_T1)
    • W1=„T2 haben“ (T2_HABEN)
    • T0=Personen (Person)
    • T1=achtzehn Jahre (18 Jahre)
    • T2=klinische Untersuchung
  • Zur weiteren Erläuterung ist in 6 ein Ablaufplan dargestellt, welcher ein beispielhaftes Verfahren zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung veranschaulicht, welches Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument, Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen, Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, und Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung umfasst.
  • Das Verfahren der 6 unterscheidet sich von dem Verfahren der 4 jedoch darin, dass das Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen Extrahieren (602) von Beziehungen unter der Gruppe von Aussagen über ein Maschinenlernverfahren umfasst. Formeln sind repräsentierte bedingte Anweisungen unter den Aussagen. Das Extrahieren (602) von Beziehungen unter der Gruppe von Aussagen über das Maschinenlernverfahren kann durch das Formel-Maschinenlernmodell (335) unter Anwendung von Maschinenlernen erfolgen, um Beziehungen zwischen den extrahierten Aussagen und Einheiten in den Aussagen zu identifizieren.
  • In dem Verfahren der 6 umfasst das Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen ferner Erzeugen (604) einer Gruppe von logischen Formeln, welche die Beziehungen als bedingte Anweisungen repräsentieren. Beim Erzeugen (604) einer Gruppe von logischen Formeln, welche die Beziehungen als bedingte Anweisungen repräsentieren, wird eine logische Formel ausgegeben, die durch ein ausführbares Verfahren implementiert werden kann. Eine logische Formel umfasst Aussagevariablen und logische Operatoren UND („&“), ODER („|“), NICHT („!“) und ein Symbol für eine bedingte Anweisung („→“). Eine bedingte Anweisung wird als „A→B“ geschrieben, wobei A und B Aussagevariablen sind und eine Formel A->B mögliche Kombinationen von Aussagevariablenwerten beschränkt durch „wenn A wahr ist, sollte B wahr sein“.
  • Man betrachte beispielsweise die Aussagevariablen W0 und W1 in dem maskierten Satz „W0 sollte W1“, wobei die Abbildungsdaten umfassen:
    • W0 = „T0, dessen Alter Kleiner als T1 ist“ (T0_ALTER_KLEINER_ALS_T1)
    • W1 = „T2 haben“ (T2_HABEN)
    • T0 = Personen (Person)
    • T1 = achtzehn Jahre (18 Jahre)
    • T2 = klinische Untersuchung
  • Die Ausgabe beim Erzeugen (604) einer Gruppe von logischen Formeln, welche die Beziehungen als bedingte Anweisungen repräsentieren, ist die logische Formel:
    • „W0->W1“, wobei die Abbildungsdaten umfassen:
      • W0 = „T0, dessen Alter Kleiner als T1 ist“ (T0_ALTER_KLEINER_ALS_T1)
      • W1 = „T2 haben“ (T2_HABEN)
      • T0 = Personen (Person)
      • T1 = achtzehn Jahre (18 Jahre)
      • T2 = klinische Untersuchung
  • Durch Verarbeiten mehrerer Sätze in dem Textdokument (415) Satz für Satz wird eine Gruppe von Formeln erhalten.
  • In einigen Ausführungsformen umfasst das Verfahren der 6 ferner Extrahieren (606) einer Beziehung zwischen einer logischen Formel, welche in einem ersten Satz des Textdokuments vorkommt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments vorkommt. In einigen Situationen kann es erforderlich sein, Beziehungen zwischen Aussagevariablen in verschiedenen Formeln in der Gruppe von Formeln zu identifizieren, die in verschiedenen Sätzen des Textdokuments (415) vorkommen. Es kann beispielsweise erforderlich sein, mit Pronomen oder Relativpronomen umzugehen, oder erforderlich sein, mit unvollständigen Aussagen umzugehen, welche durch Rückgriff auf eine ergänzende Aussage in einem anderen Satz vervollständigt werden können. Dies ist in dem Sinne beides das gleiche, dass nicht durch einen Satz eine vollständige Formel erzeugt wird, sondern eine vollständige Formel mit einer Kombination aus mehreren Sätzen aufgebaut werden kann. Das Extrahieren (606) einer Beziehung zwischen einer logischen Formel, welche in einem ersten Satz des Textdokuments vorkommt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments vorkommt, kann durch Markieren ergänzender Repräsentationen erfolgen, die sich auf einen anderen Satz beziehen. Zum Beispiel kann ein VORHERGEHEND-Tag verwendet werden, um eine Bezugnahme auf die gleiche Aussagevariable in einem vorhergehenden Satz zu identifizieren, und bei Erkennen dieses Tag kann angenommen werden, dass eine unvollständige Formel durch Rückbezug vervollständigt werden kann.
  • Es seien beispielsweise die folgenden beiden Sätze betrachtet, die getrennt auftreten:
    1. 1: „W0 muss W1 durchlaufen haben.“
    2. 2: „Das W1 muss in W3 stattgefunden haben.“
  • In diesem Fall werden zwei Formeln extrahiert:
    1. 1: W0 → W1
    2. 2: VORHERGEHEND_DAS_W1→W2
  • Das Erzeugen einer Formel nur aus der Aussage 1 ist jedoch nicht ausreichend, weil die Aussage 1 ebenfalls berücksichtigt werden muss. Dementsprechend werden durch Extrahieren (606) einer Beziehung zwischen einer logischen Formel, die in einem ersten Satz des Textdokuments vorkommt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments vorkommt, die folgenden zwei Formeln erzeugt: W 0 > W 1
    Figure DE112020003767T5_0001
    W 0 & W 1 > W 2
    Figure DE112020003767T5_0002
  • Als ein anderes Beispiel seien die folgenden beiden Sätze betrachtet:
    1. 1: „W0, wenn W1“
    2. 2: „Diese Beschränkung wird nicht auf W2 angewendet“
  • Es werden die folgenden Formeln extrahiert:
    1. 1: W1→W0
    2. 2: W2- >VORHERGEHEND_UNGÜLTIGE_FORMEL
  • In Anbetracht der identifizierten Beziehung zwischen der Aussage 1 und der Aussage 2 wird durch Extrahieren (606) einer Beziehung zwischen einer logischen Formel, die in einem ersten Satz des Textdokuments vorkommt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments vorkommt, die folgende Formel erzeugt: ! W 2 & W 1 > W 0
    Figure DE112020003767T5_0003
  • Zur weiteren Erläuterung ist in 7 ein Ablaufplan dargestellt, welcher ein beispielhaftes Verfahren zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung veranschaulicht, welches Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument, Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen, Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, und Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung umfasst.
  • Das Verfahren der 7 unterscheidet sich von dem Verfahren der 4 jedoch darin, dass das Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, Konstruieren (702) eines Verfahrensablaufbaums, welcher alle möglichen Zustände eines Aussagewerts umfasst, für jede Aussage in der Gruppe von Aussagen umfasst. Aus dem Satz von Aussagewerten wird ein Baumablauf konstruiert durch Erzeugen eines Startknotens und Auswählen einer ersten Variable und Erzeugen von zwei Knoten, welche Wahr- und Falsch-Werte der Variable repräsentieren. Diese Knoten werden mit dem Startknoten verbunden. Durch Bestimmen des Werts der Variable als wahr oder falsch werden durch Benutzereingabe oder Formeingabe dynamisch zwei Wege zu zwei neuen Knoten ausgewählt. Als ein N+1-ter Schritt für jeden Knoten, der durch den N-ten Schritt erzeugt wird, werden gemäß dem Wahr- oder Falsch-Wert der N-ten Variable zwei neue Knoten zugeordnet. Dadurch werden im N+1-ten Schritt 2(N+1) neue Knoten erzeugt, indem an 2N Knoten, die im N-ten Schritt erzeugte werden, zwei neue Knoten angebracht werden. Dieses Verfahren wird wiederholt, bis N die Anzahl der Aussagevariablen erreicht. Als Nächstes werden alle Randknoten (es werden 2M Randknoten erzeugt, wobei M die Anzahl der Variablen ist) mit einem letzten Knoten verbunden, welcher den normalen Abschluss des Verfahrens repräsentiert.
  • Mit diesen Schritten wird ein Baumdiagramm erzeugt, welches sich um den Faktor 2M ausbreitet, und alle Knoten am Rand der Ausdehnung werden mit einem Endknoten verbunden. Bei Verwendung des obigen Beispiels wird der folgende Graph erhalten:
    1. 1. Start -> (0) -> (0,0) -> (0,0,0) -> Normales Ende
    2. 2. Start -> (0) -> (0,0) -> (0,0,1) -> Normales Ende
    3. 3. Start -> (0) -> (0,1) -> (0,1,0) -> Normales Ende
    4. 4. Start -> (0) -> (0,1) -> (0,1,1) -> Normales Ende
    5. 5. Start -> (1) -> (1,0) -> (1,0,0) -> Normales Ende
    6. 6. Start -> (1) -> (1,0) -> (1,0,1) -> Normales Ende
    7. 7. Start -> (1) -> (1,1) -> (1,1,0) -> Normales Ende
    8. 8. Start -> (1) -> (1,1) -> (1,1,1) -> Normales Ende
  • In dem Verfahren der 7 umfasst das Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, ferner Anwenden (704) der Gruppe von Formeln als Beschränkungen für alle Wege in dem Verfahrensablaufbaum. Das Anwenden (704) der Gruppe von Formeln als Beschränkungen für alle Wege in dem Verfahrensablaufbaum kann durch Eliminieren ungültiger Wege erfolgen, welche nicht die Bedingungen der Formeln erfüllen. Durch jede Formel wird eine Beschränkung für Variablenwerte erklärt. Unter den oben konstruierten Variablenwert-Zustandsübergangswegen sollten die Wege, die nicht die Bedingungen erfüllen, ausgeschlossen werden. Das Anwenden (704) der Gruppe von Formeln als Beschränkungen für alle Wege in dem Verfahrensablaufbaum kann durch Repräsentieren aller Wege vom Startknoten bis zu den Endknoten durch den Wert jeder Variable und Ausschließen von Wegen erfolgen, die ungültige Übergänge enthalten. Bei Verwendung des obigen Beispiels mit der Formel „W2 →W0“ sollten der zweite und der vierte Weg mit (0,x,1) ausgeschlossen werden (wobei der Wert von W1 für das Ergebnis irrelevant ist und somit durch „x“ repräsentiert wird). Wenn Wege ausgeschlossen werden, wird ein anomaler Endknoten erzeugt und der Übergangsablauf wird mit dem anomalen Endknoten verbunden. Nun weist der Ablaufplan zwei Endknoten auf: Normales Ende und Anomales Ende. Der anomale Endknoten repräsentiert einen ungelösten Fall (z.B. eine ungelöste Problemdiagnose in einer Chatbot-Anwendung) oder einen abgelehnten Fall (z.B. einen abgelehnten Versicherungsanspruch in einer automatisierten Anspruchsüberprüfungsanwendung). Somit wird der Verfahrensablaufbaum aktualisiert zu:
    1. 1. Start -> (0) -> (0,0) -> (0,0,0) -> Normales Ende
    2. 2. Start -> (0) -> (0,0) -> (0,0,1) -> Anomales Ende
    3. 3. Start -> (0) -> (0,1) -> (0,1,0) -> Normales Ende
    4. 4. Start -> (0) -> (0,1) -> (0,1,1) -> Anomales Ende
    5. 5. Start -> (1) -> (1,0) -> (1,0,0) -> Normales Ende
    6. 6. Start -> (1) -> (1,0) -> (1,0,1) -> Normales Ende
    7. 7. Start -> (1) -> (1,1) -> (1,1,0) -> Normales Ende
    8. 8. Start -> (1) -> (1,1) -> (1,1,1) -> Normales Ende
  • In dem Verfahren der 7 umfasst das Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, ferner Optimieren (706) des Verfahrensablaufbaums. Das Optimieren (706) des Verfahrensablaufbaums kann durch Bestimmen von Kombinationen von Variablenwerten erfolgen, welche entweder zu dem normalen Ende oder dem anomalen Ende führen, und wenn Werte einer Variable auf einem Weg das Endergebnis nicht beeinflussen, wird der Weg abgekürzt, um die unnötige Bestimmung der Variablenwerte wegzulassen. Beispielsweise werden aus allen obigen Wegen:
    • Aus allen obigen Wegen werden nur die drei folgenden Wege benötigt.
      • 1'. Start -> (0) -> (0,x,0) → Normales Ende
      • 2'. Start -> (0) -> (0,x,1) → Anomales Ende
      • 8'. Start -> (1) -> Normales Ende
  • Das heißt, wenn W0 falsch ist und W2 falsch ist, sind die Beschränkungen der Formeln erfüllt, ungeachtet des Werts von W1. Somit können die Wege 1 und 3 auf einen Weg (Weg 1') reduziert werden. Wenn W0 falsch ist und W2 wahr ist, sind die Beschränkungen der Formeln niemals erfüllt, ungeachtet des Werts von W1. Somit können die Wege 2 und 4 auf einen Weg (Weg 2') reduziert werden. Wenn W0 wahr ist, können die Beschränkungen der Formeln erfüllt sein, ungeachtet der Werte von W1 und W2. Somit können die Wege 5 bis 8 auf einen Weg (Weg 8') reduziert werden. Dieser Verfahrensablaufbaum wird als ein Zustandsübergangsgraph ausgegeben.
  • Zur weiteren Erläuterung ist in 8 ein Ablaufplan dargestellt, welcher ein beispielhaftes Verfahren zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung veranschaulicht, welches Extrahieren (402) einer Gruppe von Aussagen aus einem Textdokument, Extrahieren (404) einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen, Erzeugen (406) eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, und Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung umfasst.
  • Das Verfahren der 8 unterscheidet sich von dem Verfahren der 4 jedoch darin, dass das Übersetzen (408) des Zustandsübergangsgraphen in eine Software-Anwendung Erzeugen (802) einer von einem Computer ausführbaren Logik umfasst, welche Werte für Aussagevariablen bestimmt, die in dem Zustandsübergangsgraphen repräsentiert sind. Das Erzeugen (802) der von einem Computer ausführbaren Logik, welche Werte für Aussagevariablen bestimmt, die repräsentiert sind, kann durch Übersetzen des Zustandsübergangsgraphen in ein von einem Computer ausführbares Format erfolgen, wie zum Beispiel State Chart XML (SCXML) State Machine Notation for Control Abstraction. Das ausführbare Verfahren beginnt bei dem Startknoten. Um zu einem nächsten Knoten überzugehen, muss ein Wert der Aussage bestimmt werden, die durch eine Kante repräsentiert wird, welche den aktuellen Knoten mit einem anderen Knoten verbindet. Im Anwendungsfall eines Chatbot kann dies zum Beispiel dadurch durchgeführt werden, dass der Chatbot eine Frage stellt, die für diese Aussage relevant ist. Jede Frage kann erzeugt werden, indem eine vorab definierte Frageschablone mit Fragen verwendet wird, welche der jeweiligen Aussageklasse entsprechen. Ein Beispiel für eine Frageschablone, welche Aussageklassen entspricht, ist in Tabelle 1 dargestellt. Tabelle 1
    Aussageklasse Frageschablone
    T0_ALTER_AUF_T1_KA_T2 „Ist das Alter von „+T0+“ kleiner als „+T2+“ auf „+T1+“?“
    VOR_T0_INNERHALB_T1 „Ist es innerhalb „+T1+“ vor „+T0+“?“
    NACH_T0_INNERHALB_T1 „Ist es innerhalb „+T1+“ nach „+T0+“?“
  • Die Aussageklasse, z.B. T0_ALTER_KLEINER_ALS_T1, wird nach dem Ersetzen der T#s durch aktuelle Werte zu einer Aussage. Das Aussage-Maschinenlernmodell und das Formel-Maschinenlernmodell, die oben beschrieben wurden, werden trainiert, einen Teil eines Satzes mit diesen Aussageklassen-Markierungen zu markieren. Sie werden zu Aussagen, indem abstrakte Tags T# durch aktuelle Werte aus den abgebildeten Daten ersetzt werden. Beispielsweise lautet die extrahierte Aussage des obigen Beispiels:
    • W0 = „T0, dessen Alter kleiner als T1 ist“ (T0_ALTER_KLEINER_ALS_T1), wobei:
      • T0 = Personen (Person)
      • T1 = achtzehn Jahre (18 Jahre)
  • Die aktuelle Aussage ist „Person_ALTER-KLEINER-ALS-18 Jahre“. Daher kann eine beispielhafte Frageschablone für diese Aussageschablone sein „Ist das Alter von T0 kleiner als T1“? Die aktuelle Frage kann in der erzeugten Software-Anwendung erscheinen, wo dem Benutzer die Frage gestellt wird: „Ist die Person jünger als 18 Jahre?“. Somit verwendet die erzeugte Software-Anwendung einen ausführbaren Zustandsübergangsgraphen, um einen Weg zu überqueren, der durch Formeln beschränkt ist und durch Werte von Aussagevariablen bestimmt ist, welche als Ja/Nein-Antworten auf Fragen erhalten werden, die einem Benutzer in einer Benutzerschnittstelle gestellt werden.
  • In einem anderen Anwendungsfall einer Überprüfung eines Versicherungsanspruchs wird ein eingegebenes Anspruchsformular oder eine Datenbank gelesen, um den Wert der Aussage zu bestimmen. In diesem Fall können aktuelle Werte abstrakter Tags T# verwendet werden, um eine SQL-Abfrage gegen eine Datenbank oder eine Leseanforderung für das eingegebene Formular zu erzeugen, z.B. repräsentiert im Format Javascript Object Notation (JSON).
  • In Anbetracht der obigen Erläuterungen wird der Leser erkennen, dass die Vorteile des Erzeugens eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, gemäß Ausführungsformen der vorliegenden Erfindung umfassen:
    • • durch Nutzung von Maschinenlern- und NLP-Technologien versteht die vorliegende Erfindung geschriebene natürliche Sprachen, indem sie die Kontextstrukturen mit logischer Folgerung erkennt, wie ein Mensch dies tut;
    • • Textdokumente, die in einer natürlichen Sprache geschrieben sind, können durch einen Prozessor für natürliche Sprache mit nur wenig Überwachung durch einen Menschen in ein ausführbares Verfahren umgewandelt werden;
    • • Textdokumente, die in einer natürlichen Sprache geschrieben sind, können direkt in eine ausführbare Logik umgewandelt werden, ohne dass zunächst ein Mensch die Beschreibung in natürlicher Sprache in eine Programmiersprache umwandeln muss; und
    • • da Textdokumente, die in einer natürlichen Sprache geschrieben sind und Geschäftspraktiken bestimmen, Bedienungsanleitungen und dergleichen bereits existieren, können ausführbare Verfahren, welche diese Prozeduren implementieren, direkt aus diesen Dokumenten erzeugt werden.
  • Beispielhafte Ausführungsformen der vorliegenden Erfindung werden weitgehend im Kontext eines vollständig funktionellen Computersystems zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung beschrieben, die in einer natürlichen Sprache geschrieben ist. Der Fachmann erkennt jedoch, dass die vorliegende Erfindung auch in einem Computerprogrammprodukt verkörpert sein kann, welches sich auf computerlesbaren Speichermedien zur Verwendung mit einem beliebigen geeigneten Datenverarbeitungssystem befindet. Bei solchen computerlesbaren Speichermedien kann es sich um ein beliebiges Speichermedium für maschinenlesbare Informationen handeln, z.B. magnetische Medien, optische Medien oder andere geeignete Medien. Beispiele für solche Medien umfassen magnetische Platten in Festplatten-Laufwerken oder Disketten, Compact-Disks für optische Laufwerke, Magnetband und andere, wie sie dem Fachmann bekannt sind. Der Fachmann wird unmittelbar erkennen, dass jedes Computersystem, welches geeignete Programmierungsmittel aufweist, in der Lage sein wird, die Schritte des Verfahrens der Erfindung auszuführen, wie sie in einem Computerprogrammprodukt verkörpert sind. Der Fachmann erkennt auch, dass, obwohl einige der beispielhaften Ausführungsformen, die in der vorliegenden Beschreibung beschrieben werden, auf eine Software ausgerichtet sind, die auf Computer-Hardware installiert ist und abläuft, dennoch alternative Ausführungsformen, die als Firmware oder als Hardware implementiert werden, vom Umfang der vorliegenden Erfindung umfasst sind.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder -medien) mit computerlesbaren Programmanweisungen darauf umfassen, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem computerlesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch ein System zur Ausführung von Anweisungen behalten und speichern kann. Bei dem computerlesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste speziellerer Beispiele des computerlesbaren Speichermediums gehören die Folgenden: eine auswechselbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein auswechselbarer Compact-Disk-Nur-Lese-Speicher (CD-ROM), eine DVD (Digital Versatile Disk), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein computerlesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene computerlesbare Programmanweisungen können von einem computerlesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server umfassen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt computerlesbare Programmanweisungen aus dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei computerlesbaren Programmanweisungen zum Ausführen von Operationen der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurorientierte Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gate-Arrays (FPGA, Field Programmable Gate Arrays) oder programmierbare Logik-Arrays (PLA, Programmable Logic Arrays) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung auszuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels computerlesbarer Programmanweisungen ausgeführt werden können.
  • Diese computerlesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte erzeugen. Diese computerlesbaren Programmanweisungen können auch auf einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das computerlesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt umfasst, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Arbeitsschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um computerimplementiertes Verfahren zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) umfassen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren dargestellt stattfinden. Zwei nacheinander dargestellte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Es versteht sich aus der vorstehenden Beschreibung, dass in verschiedenen Ausführungsformen der vorliegenden Erfindung Modifikationen und Änderungen vorgenommen werden können, ohne von ihrer Idee abzuweichen. Die Beschreibungen in dieser Beschreibung dienen lediglich der Veranschaulichung und sind nicht in beschränkender Weise auszulegen. Der Umfang der vorliegenden Erfindung wird lediglich durch den Wortlaut der folgenden Patentansprüche begrenzt.

Claims (20)

  1. Verfahren zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, wobei das Verfahren umfasst: Extrahieren einer Gruppe von Aussagen aus einem Textdokument, das in einer natürlichen Sprache geschrieben ist; Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen; Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind; und Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung.
  2. Verfahren nach Anspruch 1, wobei das Extrahieren einer Gruppe von Aussagen aus dem Textdokument umfasst: Maskieren von Schlüsselwörtern, die in einem vorab definierten Wörterbuch aufgelistet sind, in jedem Satz des Textdokuments; Maskieren von Zeichenfolgenstrukturen, die durch vorab definierte Ausdrucksregeln repräsentiert werden, in jedem Satz des Textdokuments; und Abbilden der maskierten Abschnitte jedes Satzes auf eine Aussageklasse durch ein Maschinenlernverfahren.
  3. Verfahren nach Anspruch 1, wobei das Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen umfasst: Extrahieren von Beziehungen innerhalb der Gruppe von Aussagen durch ein Maschinenlernverfahren; und Erzeugen einer Gruppe von logischen Formeln, welche die Beziehungen als bedingte Anweisungen repräsentieren.
  4. Verfahren nach Anspruch 3, ferner umfassend Extrahieren einer Beziehung zwischen einer logischen Formel, die in einem ersten Satz des Textdokuments vorkommt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments vorkommt.
  5. Verfahren nach Anspruch 1, wobei das Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, umfasst: Konstruieren eines Verfahrensablaufbaums, welcher alle möglichen Zustände eines Aussagewerts repräsentiert, für jede Aussage in der Gruppe von Aussagen; Anwenden der Gruppe von Formeln als Beschränkungen für alle Wege in dem Verfahrensablaufbaum; und Optimieren des Verfahrensablaufbaums.
  6. Verfahren nach Anspruch 1, wobei das Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung Erzeugen einer durch einen Computer ausführbaren Logik umfasst, welche Werte für Aussagevariablen bestimmt, die in dem Zustandsübergangsgraphen repräsentiert sind.
  7. Verfahren nach Anspruch 1, ferner umfassend Empfangen eines vorab definierten Wörterbuchs signifikanter Schlüsselwörter, einer Aussageklassendefinition und einer Formelklassendefinition.
  8. Vorrichtung zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, wobei die Vorrichtung einen Computerprozessor aufweist, einen Computerspeicher, der operativ mit dem Computer-Prozessor verbunden ist, wobei sich in dem Computerspeicher Computerprogrammanweisungen befinden, die, wenn sie von dem Computerprozessor ausgeführt werden, bewirken, dass die Vorrichtung die Schritte ausführt: Extrahieren einer Gruppe von Aussagen aus einem Textdokument, das in einer natürlichen Sprache geschrieben ist; Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen; Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind; und Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung.
  9. Vorrichtung nach Anspruch 8, wobei das Extrahieren einer Gruppe von Aussagen aus dem Textdokument umfasst: Maskieren von Schlüsselwörtern, die in einem vorab definierten Wörterbuch aufgelistet sind, in jedem Satz des Textdokuments; Maskieren von Zeichenfolgenstrukturen, die durch vorab definierte Ausdrucksregeln repräsentiert werden, in jedem Satz des Textdokuments; und Abbilden der maskierten Abschnitte jedes Satzes auf eine Aussageklasse durch ein Maschinenlernverfahren.
  10. Vorrichtung nach Anspruch 8, wobei das Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen umfasst: Extrahieren von Beziehungen innerhalb der Gruppe von Aussagen durch ein Maschinenlernverfahren; und Erzeugen einer Gruppe von logischen Formeln, welche die Beziehungen als bedingte Anweisungen repräsentieren.
  11. Vorrichtung nach Anspruch 10, ferner umfassend Extrahieren einer Beziehung zwischen einer logischen Formel, die in einem ersten Satz des Textdokuments vorkommt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments vorkommt.
  12. Vorrichtung nach Anspruch 8, wobei das Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, umfasst: Konstruieren eines Verfahrensablaufbaums, welcher alle möglichen Zustände eines Aussagewerts repräsentiert, für jede Aussage in der Gruppe von Aussagen; Anwenden der Gruppe von Formeln als Beschränkungen für alle Wege in dem Verfahrensablaufbaum; und Optimieren des Verfahrensablaufbaums.
  13. Vorrichtung nach Anspruch 8, wobei das Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung Erzeugen einer durch einen Computer ausführbaren Logik umfasst, welche Werte für Aussagevariablen bestimmt, die in dem Zustandsübergangsgraphen repräsentiert sind.
  14. Vorrichtung nach Anspruch 8, ferner umfassend den Schritt des Empfangens eines vorab definierten Wörterbuchs signifikanter Schlüsselwörter, einer Aussageklassendefinition und einer Formelklassendefinition.
  15. Computerprogrammprodukt zum Erzeugen eines ausführbaren Verfahrens aus einer Textbeschreibung, die in einer natürlichen Sprache geschrieben ist, wobei sich das Computerprogrammprodukt auf einem computerlesbaren Medium befindet, wobei das Computerprogrammprodukt Computerprogrammanweisungen aufweist, welche, wenn sie ausgeführt werden, bewirken, dass ein Computer die Schritte ausführt: Extrahieren einer Gruppe von Aussagen aus einem Textdokument, das in einer natürlichen Sprache geschrieben ist; Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen; Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind; und Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung.
  16. Computerprogrammprodukt nach Anspruch 15, wobei das Extrahieren einer Gruppe von Aussagen aus dem Textdokument umfasst: Maskieren von Schlüsselwörtern, die in einem vorab definierten Wörterbuch aufgelistet sind, in jedem Satz des Textdokuments; Maskieren von Zeichenfolgenstrukturen, die durch vorab definierte Ausdrucksregeln repräsentiert werden, in jedem Satz des Textdokuments; und Abbilden der maskierten Abschnitte jedes Satzes auf eine Aussageklasse durch ein Maschinenlernverfahren.
  17. Computerprogrammprodukt nach Anspruch 15, wobei das Extrahieren einer Gruppe von Formeln aus dem Textdokument in Abhängigkeit von der Gruppe von Aussagen umfasst: Extrahieren von Beziehungen innerhalb der Gruppe von Aussagen durch ein Maschinenlernverfahren; und Erzeugen einer Gruppe von logischen Formeln, welche die Beziehungen als bedingte Anweisungen repräsentieren.
  18. Computerprogrammprodukt nach Anspruch 17, ferner umfassend Extrahieren einer Beziehung zwischen einer logischen Formel, die in einem ersten Satz des Textdokuments vorkommt, und einer anderen logischen Formel, die in einem zweiten Satz des Textdokuments vorkommt.
  19. Computerprogrammprodukt nach Anspruch 15, wobei das Erzeugen eines Zustandsübergangsgraphen, welcher eine Gruppe von Aussagewert-Bestimmungswegen umfasst, die durch die Gruppe von Formeln beschränkt sind, umfasst: Konstruieren eines Verfahrensablaufbaums, welcher alle möglichen Zustände eines Aussagewerts repräsentiert, für jede Aussage in der Gruppe von Aussagen; Anwenden der Gruppe von Formeln als Beschränkungen für alle Wege in dem Verfahrensablaufbaum; und Optimieren des Verfahrensablaufbaums.
  20. Computerprogrammprodukt nach Anspruch 15, wobei das Übersetzen des Zustandsübergangsgraphen in eine Software-Anwendung Erzeugen einer durch einen Computer ausführbaren Logik umfasst, welche Werte für Aussagevariablen bestimmt, die in dem Zustandsübergangsgraphen repräsentiert sind.
DE112020003767.3T 2019-09-11 2020-09-01 Erzeugen eines ausführbaren verfahrens aus einer textbeschreibung, die in einer natürlichen sprache geschrieben ist Pending DE112020003767T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/567,231 2019-09-11
US16/567,231 US11681873B2 (en) 2019-09-11 2019-09-11 Creating an executable process from a text description written in a natural language
PCT/IB2020/058135 WO2021048690A1 (en) 2019-09-11 2020-09-01 Creating executable process from text description written in natural language

Publications (1)

Publication Number Publication Date
DE112020003767T5 true DE112020003767T5 (de) 2022-05-19

Family

ID=74851004

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020003767.3T Pending DE112020003767T5 (de) 2019-09-11 2020-09-01 Erzeugen eines ausführbaren verfahrens aus einer textbeschreibung, die in einer natürlichen sprache geschrieben ist

Country Status (6)

Country Link
US (1) US11681873B2 (de)
JP (1) JP7438609B2 (de)
CN (1) CN114341797A (de)
DE (1) DE112020003767T5 (de)
GB (1) GB2603341A (de)
WO (1) WO2021048690A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230140974A1 (en) * 2021-11-10 2023-05-11 Pencil Learning Technologies, Inc. Systems and methods for deeply integrated presentation gadgets
CN114021574B (zh) * 2022-01-05 2022-05-17 杭州实在智能科技有限公司 政策文件智能解析与结构化方法及***

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867649A (en) * 1996-01-23 1999-02-02 Multitude Corporation Dance/multitude concurrent computation
US20030066050A1 (en) 2001-09-26 2003-04-03 Wang Douglas W. Method and system for programming devices using finite state machine descriptions
US20040090439A1 (en) * 2002-11-07 2004-05-13 Holger Dillner Recognition and interpretation of graphical and diagrammatic representations
US7739102B2 (en) * 2003-10-08 2010-06-15 Bender Howard J Relationship analysis system and method for semantic disambiguation of natural language
WO2005050475A1 (en) * 2003-11-21 2005-06-02 Agency For Science, Technology And Research Method and system for validating the content of technical documents
JP4946651B2 (ja) * 2007-06-15 2012-06-06 富士通株式会社 仕様検証プログラム、該プログラムを記録したコンピュータに読み取り可能な記録媒体、仕様検証装置、および仕様検証方法
US8429605B2 (en) * 2009-12-30 2013-04-23 The United States Of America As Represented By The Secretary Of The Navy Finite state machine architecture for software development
US10198431B2 (en) * 2010-09-28 2019-02-05 Siemens Corporation Information relation generation
US20120210296A1 (en) 2011-02-14 2012-08-16 Microsoft Corporation Automatically creating business applications from description of business processes
JP5460629B2 (ja) 2011-03-10 2014-04-02 株式会社日立製作所 表形式ソフトウェア仕様作成支援方法、及び装置
US20140195897A1 (en) * 2011-09-20 2014-07-10 Helen Y. Balinsky Text Summarization
US11195057B2 (en) * 2014-03-18 2021-12-07 Z Advanced Computing, Inc. System and method for extremely efficient image and pattern recognition and artificial intelligence platform
US8873813B2 (en) * 2012-09-17 2014-10-28 Z Advanced Computing, Inc. Application of Z-webs and Z-factors to analytics, search engine, learning, recognition, natural language, and other utilities
US9495395B2 (en) * 2013-04-11 2016-11-15 Oracle International Corporation Predictive diagnosis of SLA violations in cloud services by seasonal trending and forecasting with thread intensity analytics
US9235653B2 (en) * 2013-06-26 2016-01-12 Google Inc. Discovering entity actions for an entity graph
US9489373B2 (en) * 2013-07-12 2016-11-08 Microsoft Technology Licensing, Llc Interactive segment extraction in computer-human interactive learning
US9900177B2 (en) * 2013-12-11 2018-02-20 Echostar Technologies International Corporation Maintaining up-to-date home automation models
US9460075B2 (en) 2014-06-17 2016-10-04 International Business Machines Corporation Solving and answering arithmetic and algebraic problems using natural language processing
US10303441B2 (en) * 2015-04-28 2019-05-28 Nadia Analía Huebra Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language
TWI590095B (zh) * 2016-05-19 2017-07-01 緯創資通股份有限公司 軟體功能驗證系統及其驗證方法
CN106250159B (zh) 2016-08-04 2020-12-22 深圳市微我科技有限公司 一种利用自然语言的混合编程方法
US10255269B2 (en) * 2016-12-30 2019-04-09 Microsoft Technology Licensing, Llc Graph long short term memory for syntactic relationship discovery
CN106910001B (zh) 2017-01-11 2021-04-30 中国电力科学研究院有限公司 基于有限状态机的电力仿真软件时序状态转换方法及***
JP7181230B2 (ja) * 2017-05-31 2022-11-30 コーニンクレッカ フィリップス エヌ ヴェ 臨床判断支援のための生医療画像データの機械学習
US11334692B2 (en) * 2017-06-29 2022-05-17 International Business Machines Corporation Extracting a knowledge graph from program source code
US10606586B2 (en) * 2017-08-01 2020-03-31 Accenture Global Solutions Limited Application architecture generation
CN107590192B (zh) 2017-08-11 2023-05-05 深圳市腾讯计算机***有限公司 文本问题的数学化处理方法、装置、设备和存储介质
US10817578B2 (en) * 2017-08-16 2020-10-27 Wipro Limited Method and system for providing context based adaptive response to user interactions
DE102017128413A1 (de) 2017-11-30 2019-06-06 Schott Ag Verfahren zur Herstellung eines Glasartikels
CN109634578B (zh) 2018-10-19 2021-04-02 北京大学 一种基于文本说明的程序生成方法
US10664246B2 (en) * 2018-10-23 2020-05-26 BiznessLegion, LLC Method and system for using information about change to design evolvable compositions of reusable software components
US11238850B2 (en) * 2018-10-31 2022-02-01 Walmart Apollo, Llc Systems and methods for e-commerce API orchestration using natural language interfaces

Also Published As

Publication number Publication date
JP7438609B2 (ja) 2024-02-27
CN114341797A (zh) 2022-04-12
GB2603341A (en) 2022-08-03
US11681873B2 (en) 2023-06-20
JP2022549065A (ja) 2022-11-24
US20210073330A1 (en) 2021-03-11
GB202203987D0 (en) 2022-05-04
WO2021048690A1 (en) 2021-03-18

Similar Documents

Publication Publication Date Title
DE112018004376T5 (de) Schützen kognitiver systeme vor auf gradienten beruhenden angriffen durch die verwendung irreführender gradienten
DE112019000631T5 (de) Verwenden von gradienten, um backdoors in neuronalen netzen zu erkennen
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
DE112020000227T5 (de) Maschinelles lernen eines computermodells auf grundlage von korrelationenvon trainingsdaten mit leistungstrends
DE112019002206B4 (de) Knockout-autoencoder zum erkennen von anomalien in biomedizinischen bildern
DE102019000294A1 (de) Erstellen unternehmensspezifischer Wissensgraphen
DE112017006151T5 (de) Anpassbare Verarbeitungskomponenten
EP3100174A1 (de) Verfahren zur automatischen sinnerkennung und messung der eindeutigkeit von text
DE112018006345T5 (de) Abrufen von unterstützenden belegen für komplexe antworten
DE102014113870A1 (de) Identifizieren und Anzeigen von Beziehungen zwischen Kandidatenantworten
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE112007000053T5 (de) System und Verfahren zur intelligenten Informationsgewinnung und -verarbeitung
DE112018005272T5 (de) Suchen von mehrsprachigen dokumenten auf grundlage einer extraktion der dokumentenstruktur
DE112018005725T5 (de) Daten-deidentifikation auf der grundlage eines erkennens von zulässigen konfigurationen für daten-deidentifikationsprozesse
DE112021001986T5 (de) Verfahren und System zum Verarbeiten von Datenaufzeichnungen
DE112012005998T5 (de) Vorrichtung, Verfahren und Programm zur Wortsinnschätzung
DE112020005268T5 (de) Automatisches erzeugen von schema-annotationsdateien zum umwandeln von abfragen in natürlicher sprache in eine strukturierte abfragesprache
DE112017007656T5 (de) Verschobene aktualisierung von datenbank-hashcode in einer blockchain
DE102014103281A1 (de) Verknüpfen unterschiedlicher typerzwingungskomponenten zum beurteilen eines latenten typs
DE102015121509A1 (de) Methodik und Vorrichtung zur Konsistenzprüfung durch Vergleich von Ontologiemodellen
DE102014116369A1 (de) Verwaltung von sprachmarkern bei internationaler datenspeicherung
DE112020002961T5 (de) Übersetzen einer abfrage in natürlicher sprache in eine formale datenabfrage
DE112020002129T5 (de) Deep-learning-ansatz für datenverarbeitungsspannen
DE112017007530T5 (de) Entitätsmodell-erstellung
DE102021004562A1 (de) Abwandlung von Szenengraphen auf Grundlage von Befehlen in natürlicher Sprache

Legal Events

Date Code Title Description
R012 Request for examination validly filed