A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 9 Ω
Das Banner der Rhetos-Website: zwei griechische Denker betrachten ein physikalisches Universum um sie herum.

Cosinus-Ähnlichkeit

Vektorrechnung

© 2024 - 2025




Basiswissen


Als Cosinus-Ähnlichkeit bezeichnet man einen Zahlenwert zwischen -1 und 1, der für die Ähnlichkeit von zwei Wortfolgen steht. Je ähnlicher sich zwei Wortfolgen, etwa Sätze, sind desto näher liegt der Wert bei 1. Mit Hilfe der Vektorrechnung läßt sich die Ähnlichkeit recht unkompliziert berechnen. Das ist hier mit einem Beispiel vorgestellt.

Grundidee


Zwei Sätze oder Wortfolgen sind umso cosinus-ähnlicher je mehr Worte sie gemeinsam und je weniger Worte sind nicht gemeinsam haben. Dabei werden mehrfach in einem Satz vorkommende Worte auch mehrfach gezählt. Also auch die Anzahl einzelner Worte spielteine Rolle. Anschaulich spannen alle vorkommenden Worte aus beiden Sätzen gemeinsam einen Vektorraum auf. Jede Wortfolge wird dann zu einem eigenen Vektor in diesem Vektorraum. Je kleiner der Winkel zwischen den Vektoren ist, desto mehr zeigen sie auch in dieselbe Richtung. Ist der Winkel gleich 0°, ist der Cosinus gleich 1 und damit maximal.

Rechenbeispiel


Nehmen wir fünf verschiedene Wortfolgen oder einfachste Sätze, die sich untereinander mehr oder minder stark ähneln oder auch unterscheiden. In ihnen kommen insgesamt drei verschiedene Worte vor: Fliegen, aufwärts und das Wort immer:

Fünf Beispielsätze


  • 1) Fliegen fliegen immer.
  • 2) Immer aufwärts fliegen!
  • 3) Aufwärts, immer aufwärts!
  • 4) Fliegen, immer fliegen!
  • 5) Immer? Immer! Immer!

Schritt 1: Den Vektorraum aufspannen ==

In einem ersten Schritt trägt man alle Worte zusammen, die insgesamt vorkommen. Dabei kann man alle für unwesentlich empfunden Bestandteile wie Satzzeichen oder Worte wie "und", "oder" etc. weglassen. Für das Beispiel oben kommt man dann zu drei Worten:

  • x-Achse: fliegen
  • y-Achse: aufwärts
  • z-Achse: immer

Diese drei Worte spannen dann das Koordinatensystem des Vektorraumes auf. Jedes Wort steht dann für eine der drei Achsen. Hat man mehr oder weniger als drei Worte, hat man entsprechend auch eine andere Anzahl von Achsen. Und jede Achse wird gedanklich beschriftet mit der Anzahl, wie oft das Wort in einer Wortfolge vorkommt.

Schritt 2: Die Sätze vektorisieren


Nun werden die gegebenen Sätze oder Wortfolgen vektorisiert: für jeden Satz wird dann mit einem Vektor angegeben, wie oft jedes der Worte vorkommt.

  • 1) Fliegen fliegen immer. -> vektorisieren -> (2 0 1)
  • 2) Immer aufwärts fliegen! -> vektorisieren -> (1 1 1)
  • 3) Aufwärts, immer aufwärts! -> vektorisieren -> (0 2 1)
  • 4) Fliegen, immer fliegen! -> vektorisieren -> (2 0 1)
  • 5) Immer? Immer! Immer! -> vektorisieren -> (0 0 1)

Der Vektor gibt immer an wie oft das Wort "fliegen", wie oft das Wort "aufwärts" und wie oft das Wort "immer" vorkommt - in genau dieser Reihenfolge. Beim ersten Beispiel hat man zweimal das Wort "fliegen", keinmal das Wort "aufwärts" und einmal das Wort "immer". So kommt man auf den Vektor (2 0 1).

Die so gebildeten Vektoren lässt man gedanklich im Koordinatenursprung beginnen. Mit ihrer Spitze zeigen sie dann als Ortsvektoren auf den Punkt, der im Koordinatensystem genau die entsprechende Anzahl der Worte markiert. So bilden zwei Vektoren zusammen immer auch die Schenkel eines Winkels.

Schritt 3: Ähnlichkeiten berechnen


Nun kann man für zwei beliebige Sätze immer die sogenannte Cosinus-Ähnlichkeit berechnen, also den Cosinus-Wert des Winkels, der durch die zwei betrachten Vektoren aufgespannt wird.

  • Cosinusähnlichkeit = (a·b)/(|a|·|b|)

Legende:


In Worten: man berechnet das Skalarprodukt a·b der zwei Vektoren. Dieses Skalarprodukt wird dann geteilt durch das Produkt aus den zwei Beträgen |a| und |b| der Vektoren.

Beispiel a:

  • Fliegen fliegen immer. -> vektorisieren -> (2 0 1)
  • Immer aufwärts fliegen! -> vektorisieren -> (1 1 1)

  • Das Skalarprodukt wird berechnet als 1·2+1·0+1·1=3
  • Der Betrag des ersten Vektors ist: √(2²+0²+1²)
  • Der Betrag des zweiten Vektors ist: √(1²+1²+1²)
  • Das Produkt der Beträge ist: √5 mal √3 = √15 ≈ 3,9
  • Die Cosinus-Ähnlichkeit ist dann etwa: 0,77 ✓

Beispiel b:

  • Fliegen fliegen immer. -> vektorisieren -> (2 0 1)
  • Immer? Immer! Immer! -> vektorisieren -> (0 0 3)

  • Das Skalarprodukt wird berechnet als 0·2+0·0+3·1=3
  • Der Betrag des ersten Vektors ist: √(2²+0²+1²)
  • Der Betrag des zweiten Vektors ist: √(0²+0²+3²)
  • Das Produkt der Beträge ist: √5 mal 3 ≈ 6,71
  • Die Cosinus-Ähnlichkeit ist dann etwa: 0,45 ✓

Beispiel c:

  • Fliegen fliegen aufwärts. -> vektorisieren -> (2 1 0)
  • Immer? Immer! Immer! -> vektorisieren -> (0 0 3)

  • Das Skalarprodukt wird berechnet als 0·2+0·1+3·0=0
  • Da das Skalarprodukt 0 wird, auch der ganze Bruch zu 0.
  • Die Cosinus-Ähnlichkeit ist dann genau: 0,00 ✓

Schritt 4: Rückblick


Stimmten zwei verschiedene Worte in den drei-Wort-Sätzen überein, so war die Cosinusähnlichkeit etwa 0,77. Gab es nur ein Wort, das in beiden Sätzen vorkam, ging die Ähnlichkeit auf etwa 0,45 zurück. Und gibt es keine Worte, die in beiden Sätzen vorkommen, war die Ähnlichkeit 0. Zumindest für die betrachteten Beispiele ist die Cosinus-Ähnlichkeit ein gutes Maß für die intuitiv erfasste Ähnlichkeit von Sätzen.