Euklidische Distanzbewertung und Ähnlichkeit

13

Ich arbeite gerade mit dem Buch Collective Intelligence (von Toby Segaran) und bin auf die euklidische Distanz-Bewertung gestoßen. In dem Buch zeigt der Autor, wie die Ähnlichkeit zwischen zwei Empfehlungsarrays (dh berechnet wird .person×moviescore)

Er berechnet den euklidischen Abstand für zwei Personen und p 2 durch d ( p 1 , p 2 ) = p1p2

d(p1,p2)=i  item(sp1sp2)2

Das macht für mich völlig Sinn. Was ich nicht wirklich verstehe, ist, warum er am Ende Folgendes berechnet, um eine "entfernungsbasierte Ähnlichkeit" zu erhalten:

11+d(p1,p2)

Ich verstehe also irgendwie, dass dies die Umwandlung von einer Entfernung in eine Ähnlichkeit sein muss (oder?). Aber warum sieht das Formular so aus? Kann das jemand erklären?

navige
quelle
Es gibt viele Möglichkeiten, Unähnlichkeiten und Ähnlichkeiten ineinander umzuwandeln - die spezifische Formel hängt davon ab, was für Sie und für die zukünftige Analyse sinnvoll ist. In diesem Lehrbuch bevorzugte der Autor die Formel, die Sie aus irgendeinem Grund zeigen; jemand anderes in einer anderen Situation könnte eine andere Formel wählen. Der geometrisch korrekteste Weg, um den euklidischen Abstand in eine Ähnlichkeit umzuwandeln, ergibt sich aus dem Kosinussatz unter datenzentrierten Bedingungen und wird hier in Abs. 1 beschrieben . 1.
ttnphns
In Ordnung! Aber wenn ich richtig verstehe, konvertieren Sie den euklidischen Abstand nicht wirklich in eine Ähnlichkeit, sondern verwenden nur eine andere Funktion, die Ihre Werte zwischen 0 und 1 zurückgibt (aufgrund des Kosinus), richtig? Ich meine, es scheint mir anders zu sein, als alle Entfernungen zu berechnen und sie dann in eine Ähnlichkeit umzuwandeln, indem z. B. zwischen der kleinsten und der größten Entfernung interpoliert wird. Richtig?
navige
Wenn Sie eine quadratische symmetrische Matrix quadratischer euklidischer Abstände haben und eine "doppelte Zentrierung" durchführen, erhalten Sie die Matrix der Skalarprodukte, die beobachtet werden würde, wenn Sie den Ursprung des euklidischen Raums in die Mitte Ihrer Konfiguration von setzen Objekte. Diese Skalarprodukte sind winkelartige Ähnlichkeiten. Sie ähneln Kovarianzen . Sie sind nicht innerhalb des Bereichs 0-1 gebunden, sie können negativ, positiv sein und diagonale Elemente müssen nicht unbedingt 1 sein. Dennoch sind sie Ähnlichkeiten.
TTNPHNS

Antworten:

12

Die Umkehrung besteht darin, von Abstand zu Ähnlichkeit zu wechseln.

Die 1 im Nenner soll es so machen, dass der maximale Wert 1 ist (wenn der Abstand 0 ist).

Die Quadratwurzel - da bin ich mir nicht sicher. Wenn der Abstand normalerweise größer als 1 ist, macht die Wurzel große Abstände weniger wichtig. Wenn der Abstand kleiner als 1 ist, werden große Abstände wichtiger.

Peter Flom - Wiedereinsetzung von Monica
quelle
Es tut uns leid! Quadratwurzel war falsch. Der Autor hat es tatsächlich in die zweite Formel eingetragen, aber in der ersten weggelassen. Also sollte es nicht da sein
navige
Ja, aber Ihr Hinweis, den Maximalwert auf 1 zu setzen, macht Sinn! Vielen Dank!
navige
4

Um den Abstand und die Ähnlichkeit (im semantischen Sinne) zu messen, müssen Sie zunächst prüfen, ob Sie sich in einem euklidischen Raum bewegen oder nicht. Eine empirische Möglichkeit, dies zu überprüfen, besteht darin, den Abstand eines Wertepaares zu schätzen, für das Sie die Bedeutung kennen.

Claudio Martines
quelle
1

Wie Sie bereits erwähnt haben, kennen Sie die Berechnung der Euklidenzdistanz, also erkläre ich die zweite Formel.

Die euklidische Formel berechnet den Abstand, der für Personen oder Gegenstände, die ähnlicher sind, kleiner ist. Wenn sie gleich sind, ist der Abstand 0 und völlig anders als höher als 0.

Wir brauchen jedoch eine Funktion, deren höherer Wert ähnlich ist. Dies kann erreicht werden, indem der Funktion eine 1 hinzugefügt wird (damit Sie keinen Fehler durch Division durch Null erhalten) und diese invertiert wird. Wie wenn Distanz 0 und Ähnlichkeit 1/1 = 1 sind

user10009133
quelle
Ich verstehe diese Antwort nicht.
Michael R. Chernick
Angenommen, der euklidische Abstand zwischen Element 1 und Element 2 beträgt 4, und zwischen Element 1 und Element 3 beträgt 0 (bedeutet, dass sie sich zu 100% ähneln). Dies ist die Entfernung von Objekten in einem virtuellen Raum. Je kleiner der Abstandswert, desto ähnlicher ist die Wahrscheinlichkeit, dass sie nahe beieinander liegen. Jetzt wollen wir einen numerischen Wert, der eine höhere Zahl ergibt, wenn sie sich stark ähneln. Wir können also den Entfernungswert umkehren. Aber was ist, wenn wir eine Distanz von 0 haben? Deshalb addieren wir 1 im Nenner. Daher ist der Ähnlichkeitswert für Artikel 1 und 2 1 / (1 + 4) = 0,2 und für Artikel 1 und Artikel 3 1 / (1 + 0) = 0
user10009133
Vielleicht sprechen Sie von einer Art Distanzmaß, aber die euklidische Distanz folgt einer bestimmten Formel in Bezug auf einen Vektorraum.
Michael R. Chernick
1/1+d(p1,p2)