In Programmiersprachen gibt es eine Reihe von Grammatikregeln, die die Konstruktion gültiger Anweisungen und Ausdrücke regeln. Diese Regeln helfen beim Parsen der vom Benutzer geschriebenen Programme.
Kann es jemals einen funktional vollständigen Satz von Grammatikregeln geben, die jede Anweisung in Englisch (länderspezifisch) genau analysieren und möglicherweise für die Verwendung in AI-basierten Projekten implementiert werden können?
Ich weiß, dass viele NLP-Toolkits online verfügbar sind, aber sie sind nicht so effektiv. Die meisten von ihnen werden mit bestimmten Korpussen trainiert, die manchmal nicht auf komplexe Korrelationen zwischen verschiedenen Teilen eines Ausdrucks schließen lassen.
Mit anderen Worten, ich frage, ob es einem Computer möglich ist, einen gut versierten Satz in Englisch zu analysieren, als ob er von einem erwachsenen englischsprachigen Menschen analysiert worden wäre.
EDIT: Wenn es nicht mit einfachen Grammatikregeln dargestellt werden kann, welche Art von semantischer Struktur kann verwendet werden, um es zu verallgemeinern?
EDIT2: Dieses Papier beweist das Fehlen von Kontextfreiheit in natürlichen Sprachen. Ich suche nach einer Lösung, auch wenn sie zu komplex ist.
quelle
Antworten:
Analysieren Sie es ja, genau höchstwahrscheinlich nein.
Warum ?
Nach meinem Verständnis darüber, wie wir aus Klängen Bedeutung ableiten, gibt es zwei komplementäre Strategien:
Grammatikregeln: Ein regelbasiertes System zum Ordnen von Wörtern, um die Kommunikation zu erleichtern. Hier wird die Bedeutung aus der Interaktion diskreter Laute und ihrer unabhängigen Bedeutung abgeleitet, sodass Sie einen Satz anhand eines Regelbuchs analysieren können.
EG "Dies war ein Triumph" : Der Parser extrahierte ein Pronomen ( Dies ) mit entsprechender Bedeutung (eine bestimmte Person oder Sache); ein Verb ( war ) mit entsprechender Bedeutung (aufgetreten); ( a ) und hier beginnen wir mit einigen Analyseproblemen. Was würde der Parser extrahieren, ein Substantiv oder einen unbestimmten Artikel? Wenn wir also das Grammatik-Regelbuch konsultieren und uns mit der Bedeutung zufrieden geben (unbestimmter Artikel), müssen Sie das nächste Wort analysieren und darauf verweisen, aber lassen Sie uns dies zunächst beschönigen und schließlich ( triumphieren ) Sie ein Substantiv (Es könnte auch ein Verb sein, aber dank des Grammatik-Regelbuchs haben wir uns für ein Substantiv mit der Bedeutung entschieden: (Sieg, Eroberung), also haben wir am Ende (die Bedeutungen verbinden):
Eine bestimmte Sache ereignete sich vom Sieg. Nah genug und ich beschönige ein paar andere Regeln, aber das ist nicht der Punkt, die andere Strategie ist:
Ein lexikalisches Wörterbuch (oder Lexikon), in dem Wörter oder Töne einer bestimmten Bedeutung zugeordnet sind. Hier wird die Bedeutung von einem oder mehreren Wörtern oder Lauten als Einheit abgeleitet. Dies führt das Problem in einen Parser ein, da er nichts analysieren sollte.
EG "Non Plus Ultra" Und so würde der KI-Parser erkennen, dass dieser Satz nicht analysiert und stattdessen mit der Bedeutung abgeglichen werden soll:
Der höchste Punkt oder Höhepunkt
Lexikalische Einheiten führen ein weiteres Problem ein, da sie selbst Teil des ersten Beispiels sein können und Sie am Ende eine Rekursion haben.
Ich glaube, es könnte möglich sein, die meisten Beispiele, die ich gesehen habe, befassen sich effektiv mit dem Grammatik-Regelbuch oder dem Lexikon-Teil, aber mir ist keine Kombination von beiden bekannt, aber in Bezug auf die Programmierung könnte es passieren.
Selbst wenn Sie dieses Problem lösen, würde Ihre KI die Dinge leider nicht wirklich im engeren Sinne verstehen, sondern Ihnen sehr ausgefeilte Synonyme präsentieren. Zusätzlich spielt der Kontext (wie in den Kommentaren erwähnt) eine Rolle in den Grammatik- und Lexikonstrategien.
Eine gemischte, bei der es sowohl Grammatikregeln als auch ein Lexikon gibt und beide sich ändern und basierend auf dem AI-spezifischen Kontext und der Erfahrung beeinflusst werden können, sowie ein System für den Umgang mit diesen Objekten könnte eine Möglichkeit sein.
quelle
Ich bin mir ziemlich sicher, dass die Antwort im strengsten Sinne "Nein" ist, da Englisch einfach keine formale Definition hat. Das heißt, niemand kontrolliert Englisch und veröffentlicht eine formale Grammatik, an die sich jeder halten muss. Englisch wird durch einen Erfahrungsprozess aufgebaut und weist Widersprüche und Mängel auf, aber die probabilistische Natur des menschlichen Geistes ermöglicht es uns, diese zu umgehen.
Zum Beispiel, dass dieser "Satz":
Dieser Satz kein Verb
Technisch gesehen ist es überhaupt kein Satz, da es kein Verb gibt. Aber hatte jemand Probleme zu verstehen, was es bedeutete? Zweifelhaft. Versuchen Sie jedoch, eine formale Regel dafür zu finden. Und das ist nur ein Beispiel.
Könnten Sie sich eine formale Grammatik einfallen lassen, die vielleicht 90% der Fälle abdeckt und für die meisten praktischen Anwendungen "gut genug" ist? Möglicherweise, vielleicht sogar wahrscheinlich. Aber ich bin mir ziemlich sicher, dass es nicht möglich ist, 100% zu erreichen.
quelle
Wir sind zu dem Schluss gekommen, dass es sich um ein facettenreiches, zirkuläres Problem handelt: Struktur kann nicht ohne Kontext abgeleitet werden, aber die Kenntnis der Struktur hilft auch, den Kontext abzuleiten. Hier ist also Ihre komplexe Lösung: Beginnen Sie mit dem Kontext, der durch die Kombination von Wörtern im Satz bestimmt wird (Kombinatorik und Suchproblem), bestimmen Sie von dort aus Ihre Struktur oder "analysieren" (in diesem Schritt können Sie auch einige herausfiltern unbedeutende Wörter oder weisen ihnen zumindest geringere Gewichte zu), gehen Sie zurück zum Kontext, zurück zum Parsen und weiter, bis Sie zur Bedeutung gelangen. Somit kann durch iterative, rekursive Reduktion das gesamte Problem gelöst werden.
quelle
Ich bin mit allen früheren Kommentaren überhaupt nicht einverstanden. Nicht weil sie falsch sind - was sie nicht sind - sondern weil sie irreführend sind - wenn auch ungewollt.
Zum Beispiel: Wenn man diese Probleme von einer akademischen Position aus betrachtet, werden die Probleme immer unüberwindbar erscheinen. Dies liegt daran, dass alles kalt bewertet und isoliert von allem anderen berechnet wird.
Die Antwort liegt überwiegend in der Wortassoziation . Sie müssen ein Programm schreiben, das eine große Datenbank digitaler Bücher verarbeiten kann, um jedes Wort und alle damit verbundenen Wörter in dieser Sprache zu registrieren. Plus alle statistischen Informationen mit jedem zugeordneten Wort und der zugehörigen Interpunktion.
Dies gibt Ihnen dann die Grundlage, auf der eine KI mehrere Dinge entscheiden kann:
Zusammenfassend müssen Sie also zwei Dinge beachten: Assoziation und Wahrscheinlichkeit.
Bei der digitalen Datenbankierung eines Sprachmodells besteht die Möglichkeit von Wort- und Satz- "Zeichenfolgen", so dass jede Variation der Sprachstruktur in einem bestimmten Satz vor, während und nach dem Schreiben eines Textmusters bestimmt werden kann. Diese genaue Kontrolle über Sprachmodellmuster bedeutet, dass sensible Komponenten wie "Subjekt" und "Objekt" leicht durch Code bestimmt werden können.
quelle