Meine Frage mag albern sein. Also werde ich mich im Voraus entschuldigen.
Ich habe versucht, das von der Stanford NLP-Gruppe vorbereitete GLOVE-Modell zu verwenden ( Link ). Ich bemerkte jedoch, dass meine Ähnlichkeitsergebnisse einige negative Zahlen zeigten.
Das veranlasste mich sofort, mir die Wortvektordatendatei anzusehen. Anscheinend durften die Werte in den Wortvektoren negativ sein. Das erklärte, warum ich negative Kosinusähnlichkeiten sah.
Ich bin an das Konzept der Kosinusähnlichkeit von Frequenzvektoren gewöhnt, deren Werte in [0, 1] begrenzt sind. Ich weiß, dass das Punktprodukt und die Kosinusfunktion je nach Winkel zwischen Vektor positiv oder negativ sein können. Aber es fällt mir wirklich schwer, diese negative Kosinusähnlichkeit zu verstehen und zu interpretieren.
Wenn ich beispielsweise ein Wortpaar mit einer Ähnlichkeit von -0,1 habe, sind sie weniger ähnlich als ein anderes Paar mit einer Ähnlichkeit von 0,05? Wie wäre es mit einem Vergleich der Ähnlichkeit von -0,9 mit 0,8?
Oder sollte ich nur den absoluten Wert der minimalen Winkeldifferenz von ? Absolutwert der Scores?
Vielen, vielen Dank.
An angular-type similarity coefficient between two vectors. It is like correlation, only without centering the vectors.
Der einzige Unterschied zwischen den beiden besteht darin, dass bei Korrelationsabweichungen (Momenten) - die kreuzmultipliziert werden - vom Mittelwert abweichen, während bei Cosinus-Abweichungen von der ursprünglichen 0 - dh die Werte so sind, wie sie sind .Antworten:
Bei zwei Vektorena und b ergibt sich der Winkel θ aus dem Skalarprodukt und der Norm der Vektoren:
Da dercos(θ) -Wert im Bereich [−1,1] :
Beispiel : Lassen Sie zwei Benutzer und und die Ähnlichkeit zwischen diesen beiden Benutzern entsprechend ihrem Geschmack für Filme:U1 U2 sim(U1,U2)
quelle
Verwenden Sie keine absoluten Werte, da das negative Vorzeichen nicht beliebig ist. Um einen Kosinuswert zwischen 0 und 1 zu erhalten, sollten Sie die folgende Kosinusfunktion verwenden:
(R-Code)
(Python-Code)
quelle
Die Kosinusähnlichkeit ähnelt der Pearson-Korrelation, ohne jedoch die Mittelwerte zu subtrahieren. Sie können also die relative Stärke von 2 Kosinusähnlichkeiten vergleichen, indem Sie die absoluten Werte betrachten, genau wie Sie die absoluten Werte von 2 Pearson-Korrelationen vergleichen würden.
quelle
Es ist richtig, dass die Kosinusähnlichkeit zwischen Frequenzvektoren nicht negativ sein kann, da die Anzahl der Wörter nicht negativ sein kann, aber mit Worteinbettungen (wie z. B. Handschuhen) können Sie negative Werte haben.
Eine vereinfachte Ansicht der Worteinbettungskonstruktion lautet wie folgt: Sie weisen jedes Wort einem Zufallsvektor in R ^ d zu. Führen Sie als nächstes einen Optimierer aus, der versucht, zwei ähnliche Vektoren v1 und v2 nahe beieinander zu schieben oder zwei unterschiedliche Vektoren v3 und v4 weiter auseinander zu treiben (je nach Abstand, z. B. Kosinus). Sie führen diese Optimierung für genügend Iterationen aus und am Ende haben Sie Worteinbettungen mit dem einzigen Kriterium, dass ähnliche Wörter engere Vektoren haben und unterschiedliche Vektoren weiter voneinander entfernt sind. Das Endergebnis kann dazu führen, dass einige Dimensionswerte negativ sind und einige Paare eine negative Kosinusähnlichkeit aufweisen - einfach, weil der Optimierungsprozess dieses Kriterium nicht berücksichtigt hat. Möglicherweise hat es einige Vektoren gut in die negativen Werte gestoßen. Die Dimensionen der Vektoren entsprechen nicht den Wortzahlen,
quelle