Gibt es eine mathematische Beziehung zwischen:
- die Kosinusähnlichkeit zweier Vektoren und und
- die Kosinusähnlichkeit von und , ungleichmäßig skaliert über eine gegebene Matrix ? Hier ist eine gegebene Diagonalmatrix mit ungleichen Elementen auf der Diagonale.
Ich habe versucht, die Berechnungen durchzugehen, konnte aber keinen einfachen / interessanten Link (Ausdruck) erreichen. Ich frage mich, ob es einen gibt.
ZB bleiben die Winkel bei ungleichmäßiger Skalierung nicht erhalten, aber wie ist die Beziehung zwischen den ursprünglichen Winkeln und denen nach der ungleichmäßigen Skalierung? Was kann über die Verbindung zwischen einem Satz von Vektoren S1 und einem anderen Satz von Vektoren S2 gesagt werden - wobei S2 durch ungleichmäßige Skalierung von S1 erhalten wird?
linear-algebra
cosine-similarity
Turdus-Merula
quelle
quelle
Antworten:
Da ziemlich allgemein ist und die Änderung der Kosinusähnlichkeit von A und B und ihrer Beziehung zu M abhängt , ist keine bestimmte Formel möglich. Es gibt jedoch praktisch berechenbare Grenzen dafür, wie stark sich die Kosinusähnlichkeit ändern kann . Sie können durch Extremisieren des Winkels zwischen M A und M B gefunden werden, vorausgesetzt, die Kosinusähnlichkeit zwischen A und B ist ein spezifizierter Wert, beispielsweise cos ( 2 ϕ ) (wobei 2 ϕ der Winkel zwischen A und istM EIN B. M. M.EIN M.B. EIN B. cos( 2ϕ) 2ϕ A ). Die Antwort sagt uns, um wie viel ein Winkel 2 ϕ möglicherweise durch die Transformation M gebogen werden kann.B. 2ϕ M.
Die Berechnungen drohen chaotisch zu sein. Einige clevere Notationsoptionen sowie einige vorläufige Vereinfachungen reduzieren den Aufwand. Es stellt sich heraus, dass die Lösung in zwei Dimensionen alles enthüllt, was wir wissen müssen. Dies ist ein nachvollziehbares Problem, das nur von einer reellen Variablen abhängt und mit Hilfe von Kalkültechniken leicht gelöst werden kann. Ein einfaches geometrisches Argument erweitert diese Lösung auf eine beliebige Anzahl von Dimensionen n .θ n
Mathematische Vorbereitungen
Per Definition wird der Kosinus des Winkels zwischen zwei beliebigen Vektoren und B erhalten, indem sie auf Längeneinheit normalisiert und ihr Produkt genommen werden. Somit,EIN B.
und Schreiben , den Cosinus des Winkels zwischen den Bildern A und B unter der Transformation M istΣ = M.'M. EIN B. M.
Beachten Sie, dass in der Analyse nur ist,Σ nicht selbst. Wir können daher die Singular Value Decomposition (SVD) von M nutzen , um das Problem zu vereinfachen. Es sei daran erinnert, dass dies M als Produkt (von rechts nach links) einer orthogonalen Matrix V ' , einer diagonalen Matrix D und einer anderen orthogonalen Matrix U ausdrückt :M. M. M. V.' D. U.
Mit anderen Worten, es gibt eine Basis von privilegierten Vektoren (die Spalten von V ) , auf dem M wirkt , indem jede Neuskalierung e i separat von der i - ten diagonalen Eintrag von D (was ich nenne d i ) und anschließend Anwenden einer Drehung (oder einer Antirotation) U auf das Ergebnis. Diese endgültige Drehung ändert keine Längen oder Winkel und sollte daher Σ nicht beeinflussen . Sie können dies formal mit der Berechnung sehene1, … , E.n V. M. eich ichth D. dich U. Σ
Um zu studieren , können wir M frei durch jede andere Matrix ersetzen , die die gleichen Werte in ( 1 ) erzeugt . Durch die Bestellung von e i , so dass die d i in der Größe abnehmen (und unter der Annahme M nicht gleich Null ist), eine schöne Auswahl an M istΣ M. ( 1 ) eich dich M. M.
Die diagonalen Elemente von sind( 1 / d1) D.
Insbesondere wird die Wirkung von (ob in seiner ursprünglichen oder geänderten Form) auf alle Winkel vollständig durch die Tatsache bestimmt, dassM.
Analyse eines Sonderfalls
Sei . Da das Ändern der Länge von Vektoren den Winkel zwischen ihnen nicht ändert, können wir annehmen, dass A und B Einheitsvektoren sind. In der Ebene können alle diese Vektoren durch den Winkel bezeichnet werden, den sie mit e 1 bilden , so dass wir schreiben könnenn = 2 EIN B. e1
Deshalb
(Siehe Abbildung unten.)
Das Anwenden von ist einfach: Es legt die ersten Koordinaten von A und B fest und multipliziert ihre zweiten Koordinaten mit λ 2 . Daher ist der Winkel von M A bis M B istM A B λ2 MA MB
Da eine stetige Funktion ist, ist diese Winkeldifferenz eine stetige Funktion von θ . In der Tat ist es differenzierbar. Dies ermöglicht es uns, die extremen Winkel zu finden, indem wir die Nullen der Ableitung f ' ( θ ) untersuchen . Diese Ableitung ist einfach zu berechnen: Sie ist ein Verhältnis trigonometrischer Funktionen. Die Nullen können nur unter den Nullen des Zählers auftreten. Lassen Sie uns also nicht den Nenner berechnen. Wir erhaltenM θ f′(θ)
Die Sonderfälle von , λ 2 = 1 und ϕ = 0 sind leicht zu verstehen: Sie entsprechen den Situationen, in denen M einen reduzierten Rang hat (und so alle Vektoren auf eine Linie quetscht); wobei M ein Vielfaches der Identitätsmatrix ist; und wo A und B parallel sind (woher kann sich der Winkel zwischen ihnen nicht ändern, unabhängig von θ ). Der Fall λ 2 = - 1 wird durch die Bedingung λ 2 ≥ 0 ausgeschlossen .λ2=0 λ2=1 ϕ=0 M M A B θ λ2=−1 λ2≥0
Neben diesen speziellen Fällen treten die Nullstellen nur dort , wo , das heißt, θ = 0 oder θ = π / 2 . Dies bedeutet, dass die durch e 1 bestimmte Linie den Winkel A B halbiert . Wir wissen jetzt, dass die Extremwerte des Winkels zwischen M A und M B unter den Werten von f ( θ ) liegen müssen , also berechnen wir sie:sin(2θ)=0 θ=0 θ=π/2 e1 AB MA MB f(θ)
Die entsprechenden Kosinusse sind
und
Oft reicht es zu verstehen, wie rechte Winkel verzerrt. In diesem Fall ist 2 ϕ = π / 2 , was zu tan ( ϕ ) = cot ( ϕ ) = 1 führt , das Sie in die vorhergehenden Formeln einfügen können.M 2ϕ=π/2 tan(ϕ)=cot(ϕ)=1
Es ist zu beachten, dass je kleiner wird, desto extremer werden diese Winkel und desto größer ist die Verzerrung.λ2
Diese Figur zeigt vier Konfigurationen der Vektoren und B.A B die durch einen Winkel von . Der Einheitskreis und sein elliptisches Bild unter M sind als Referenz schattiert (wobei die Wirkung von M gleichmäßig neu skaliert wird, um λ 1 = 1 zu ergeben ). Die Figur Schriften zeigen den Wert von θ , der Mittelpunkt von A und B . Das nächste, was ein solches A und B erreichen kann, wenn es durch M transformiert wird, ist eine Konfiguration wie die links mit θ =2ϕ=π/3 M M λ1=1 θ A B A B M . Am weitesten voneinander entfernt ist eine Konfiguration wie die rechts mit θ = π / 2 . Es werden zwei Zwischenmöglichkeiten gezeigt.θ=0 θ=π/2
Lösung für alle Dimensionen
Wir haben gesehen, wie wirkt, indem jede Dimension i um einen Faktor λ i erweitert wird . Dies verzerrt die Einheitskugel { A.M i λi in ein Ellipsoid. Das e i bestimmt seine Hauptachsen. Das λ i sind die Abstände vom Ursprung entlang dieser Achsen zum Ellipsoid. Folglichdie kleinste, λ n , ist derkürzeste Abstand(in jede Richtung) von dem Ursprung zu dem Ellipsoid und die größten, λ 1 , ist dieweitesten Abstand(in jede Richtung) von dem Ursprung zu dem Ellipsoid.{A|A′A=1} ei λi λn λ1
In höheren Dimensionen sind A und B Teil eines zweidimensionalen Unterraums. M bildet den Einheitskreis in diesem Unterraum auf den Schnittpunkt des Ellipsoids mit einer Ebene ab, die M A und M B enthält . Dieser Schnittpunkt ist eine lineare Verzerrung eines Kreises und eine Ellipse. Offensichtlich beträgt der weiteste Abstand zu dieser Ellipse nicht mehr als λ 1 = 1 und der kürzeste Abstand nicht weniger als λ n .n>2 A B M MA MB λ1=1 λn
Wie wir am Ende des vorhergehenden Abschnitts beobachtet haben, besteht die extremste Möglichkeit darin, dass und B in einer Ebene liegen, die zwei der e i enthält, für die das Verhältnis des entsprechenden λ i so klein wie möglich ist. Dies geschieht in der Ebene e 1 , e n . Wir haben bereits die Lösung für diesen Fall.A B ei λi e1,en
Schlussfolgerungen
Die Extreme der Kosinusähnlichkeit, die durch Anwenden von auf zwei Vektoren mit Kosinusähnlichkeit cos ( 2 ϕ ) erreicht werden können, sind gegeben durch (M cos(2ϕ) und ( 3 ) gegeben . Sie werden erreicht, indem A und B in gleichen Winkeln zu einer Richtung angeordnet werden, in der Σ = M ' M einen Vektor maximal verlängert (wie dieRichtung e 1 ), und sie in einer Richtung getrennt werden, in der Σ einen Vektor minimal verlängert (wiez. B. dieRichtung e ) e n Richtung).(2) (3) A B Σ=M′M e1 Σ en
Diese Extreme können als SVD von berechnet werden .M
quelle
Sie interessieren sich wahrscheinlich für:
Sie können (oder wie Sie es nennen, PCA) diagonalisieren , was Ihnen sagt, dass die Ähnlichkeit vonMTM=UΣUT unter Transformation M verhält, indem Sie A , B auf Ihre Hauptkomponentenprojizierenund anschließend die Ähnlichkeit berechnen in diesem neuen Raum. Um dies etwas näher zu erläutern, seien die Hauptkomponenten u i mit den Eigenwerten λ i . DannA,B M A,B ui λi
was dir gibt:
Beachten Sie, dass hier eine Skalierung stattfindet: Die dehnen / schrumpfen. Wenn A , B Einheitsvektoren sind und wenn jedes λ i = 1 ist , dann entspricht M einer Drehung, und Sie erhalten: ist invertierbar und die polare Zerlegung von M erfüllt M = O P.λi A,B λi=1 M , was gleichbedeutend ist mit der Aussage, dass innere Produkte sind unter Rotationen invariant. Im Allgemeinen bleibt der Winkel gleich, wenn M eine konforme Transformation ist, was in diesem Fall erfordert, dass M.sim(MA,MB)=sim(A,B) M M M M=OP mit , also M T M = a 2 I .P=aI MTM=a2I
quelle