semantische Ähnlichkeit zwischen Sätzen

7
Ich mache ein Open Source-Werkzeug oder eine Technik, um die semantische Ähnlichkeit zwischen Sätzen zu finden, wo ich Eingaben als zwei Sätze gebe und als Ergebnis (dh semantische Ähnlichkeit) ausgibt. Kann jemand diese Information wissen. Ich hoffe, ich werde bald antworten. danke euch allen.

    
salma 10.01.2010, 17:29
quelle

2 Antworten

19

Salma, ich fürchte, das ist nicht das richtige Forum für Ihre Frage, da es nicht direkt mit der Programmierung zu tun hat. Ich empfehle Ihnen, Ihre Frage erneut in der Korpora-Liste zu stellen. Vielleicht möchten Sie auch zuerst ihre Archive durchsuchen.

Abgesehen davon ist Ihre Frage nicht präzise genug, und ich werde erklären, was ich damit meine. Ich gehe davon aus, dass es in Ihrem Projekt darum geht, die semantische Ähnlichkeit zwischen Sätzen zu berechnen und nicht über etwas anderes, bei dem die semantische Ähnlichkeit nur eine Sache unter vielen ist. Wenn das der Fall ist, dann gibt es einige Dinge zu beachten: Erstens ist weder aus der Perspektive der Computerlinguistik noch der theoretischen Linguistik klar, was der Begriff "semantische Ähnlichkeit" genau bedeutet. Es gibt zahlreiche verschiedene Ansichten und Definitionen davon, alles abhängig von der Art des zu lösenden Problems, den Werkzeugen und Techniken, die zur Hand sind, und dem Hintergrund desjenigen, der sich dieser Aufgabe nähert, usw. Betrachten Sie diese Beispiele:

  1. Pete und Rob haben in der Nähe des Bahnhofs einen Hund gefunden.
  2. Pete und Rob haben nie einen Hund in der Nähe des Bahnhofs gefunden.
  3. Pete und Rob programmieren beide gern.
  4. Patricia hat in der Nähe des Bahnhofs einen Hund gefunden.
  5. Es war ein Hund, der Pete und Rob im Schnee gefunden hat.

Welche der Sätze 2-4 sind ähnlich wie 1? 2 ist das genaue Gegenteil von 1, dennoch geht es darum, dass Pete und Rob (nicht) einen Hund finden. 3 handelt von Pete und Rob, aber in einem völlig anderen Kontext. Es geht darum, einen Hund in der Nähe des Bahnhofs zu finden, obwohl der Finder jemand anderes ist. 5 handelt von Pete, Rob, einem Hund, und einem "Finding" -Ereignis, aber auf eine andere Weise als in 1. Ich wäre nicht in der Lage, diese Beispiele nach ihrer Ähnlichkeit einzustufen, auch ohne ein Computerprogramm schreiben zu müssen .

Um semantische Ähnlichkeit zu berechnen, müssen Sie zuerst entscheiden, was Sie als "semantisch ähnlich" behandeln möchten und was nicht. Um die semantische Ähnlichkeit auf der Satzebene zu berechnen, würden Sie idealerweise eine Art von Bedeutungsrepräsentation der Sätze vergleichen. Sinndarstellungen kommen normalerweise als logische Formel und sind extrem komplex zu generieren. Es gibt jedoch Werkzeuge, die dies versuchen, z. Boxer

Als einfache, aber oft praktische Herangehensweise würden Sie die semantische Ähnlichkeit als die Summe der Ähnlichkeiten zwischen den Wörtern in einem Satz und dem anderen definieren. Dies macht das Problem viel einfacher, obwohl es immer noch einige schwierige Probleme gibt, da die semantische Ähnlichkeit von Wörtern genauso schlecht definiert ist wie die von Sätzen. Wenn Sie sich einen Eindruck davon verschaffen wollen, werfen Sie einen Blick in das Buch 'Lexical Semantics' von D.A. Cruse (1986). Es gibt jedoch eine ganze Reihe von Werkzeugen und Techniken, um die semantische Ähnlichkeit zwischen Wörtern zu berechnen. Einige von ihnen definieren es im Grunde als die negative Entfernung von zwei Wörtern in einer Taxonomie wie Word Net oder der Wikipedia Taxonomie (siehe dieser Artikel , der eine API dafür beschreibt). Andere berechnen semantische Ähnlichkeit durch Verwendung einiger statistischer Maße, die über große Textkorpora berechnet werden. Sie basieren auf der Erkenntnis, dass ähnliche Wörter in einem ähnlichen Kontext vorkommen. Ein dritter Ansatz zur Berechnung der semantischen Ähnlichkeit zwischen Sätzen oder Wörtern befasst sich mit Vektorraummodellen, die Sie aus der Informationsbeschaffung kennen. Einen Überblick über diese Techniken gibt es in Kapitel 8.5 im Buch Grundlagen der Verarbeitung statistischer natürlicher Sprache von Manning und Schütze.

Hoffe, das bringt dich jetzt auf die Füße.

    
ferdystschenko 13.01.2010 15:30
quelle
8

Ich habe ein einfaches Open-Source-Tool entwickelt, das den semantischen Vergleich nach Kategorien durchführt: Ссылка

Es funktioniert mit Sätzen beliebiger Länge, ist einfach, stabil, schnell, klein ... Hier ist eine Beispielausgabe:
Ähnlichkeit zwischen den Sätzen
-Pete und Rob haben in der Nähe des Bahnhofs einen Hund gefunden.
-Pete und Rob haben nie einen Hund in der Nähe der Station gefunden.
 ist: 1.0000000000


Ähnlichkeit zwischen den Sätzen
- Patricia hat in der Nähe der Station einen Hund gefunden -Es war ein Hund, der Pete und Rob im Schnee fand  ist: 0.7363210405107239


Ähnlichkeit zwischen den Sätzen
- Patricia hat in der Nähe der Station einen Hund gefunden - Mir geht es gut, danke!
 ist: 0.0


Ähnlichkeit zwischen den Sätzen
- Hallo, wie geht es dir?
- Mir geht es gut, danke!
 ist: 0.29160592175990213



VERWENDUNG:

%Vor%     
Damir Olejar 23.08.2012 16:33
quelle

Tags und Links