Czy podobieństwo cosinus jest identyczne z odległością euklidesową znormalizowaną przez l2?

27

Identyczne ten sposób, że spowoduje to identyczne wyniki dla podobieństwa kolejności pomiędzy wektorem u i zestaw wektorów V .

Mam model przestrzeni wektorowej, który ma parametry pomiaru odległości (odległość euklidesowa, podobieństwo cosinusa) i techniki normalizacji (brak, l1, l2) jako parametrów. Z mojego zrozumienia, wyniki z ustawień [cosinus, none] powinny być identyczne lub przynajmniej naprawdę bardzo podobne do [euclidean, l2], ale nie są.

Istnieje duża szansa, że ​​system jest nadal wadliwy - czy mam coś bardzo złego w wektorach?

edycja: Zapomniałem wspomnieć, że wektory oparte są na liczbie słów z dokumentów w korpusie. Biorąc pod uwagę dokument zapytania (który również przekształcam w wektor liczenia słów), chcę znaleźć dokument z mojego korpusu, który jest do niego najbardziej podobny.

Samo obliczenie odległości euklidesowej jest prostą miarą, ale w rodzaju zadania, nad którym pracuję, podobieństwo kosinusowe jest często preferowane jako wskaźnik podobieństwa, ponieważ wektory o różnej długości są nadal uważane za równe. Dokument o najmniejszym podobieństwie odległości / cosinusa jest uważany za najbardziej podobny.

Arne
źródło
Wszystko zależy od tego, co twój „model przestrzeni wektorowej” robi z tymi odległościami. Czy możesz być bardziej szczegółowy na temat tego, co robi model?
whuber
Przepraszam, czasem trudno mi się wydostać z głowy. Dodałem specyfikację.
Arne,
Nadal nie opisujesz żadnego modelu. W rzeczywistości jedyną wskazówką, którą pozostawiłeś na temat „rodzaju zadania, nad którym pracujesz”, jest tag nlp - ale jest on tak szeroki, że niewiele pomaga. Mam nadzieję, że uda ci się dostarczyć, aby ludzie mogli zrozumieć pytanie i udzielić dobrych odpowiedzi, to wystarczająca informacja, aby móc dokładnie określić, w jaki sposób korzystasz z miary odległości i jak określa ona „wyniki”.
whuber
stats.stackexchange.com/a/36158/3277 . Każde podobieństwo kątowe typu sscp jest przekształcalne na odpowiadającą mu odległość euklidesową.
ttnphns

Odpowiedzi:

31

2x,y

||x||2=||y||2=1,
||xy||22=(xy)(xy)=xx2xy+yy=22xy=22cos(x,y)
Lucas
źródło
Czy miałoby to wpływ na ranking? Oznacza to, że jeśli posortuję liczbę wektorów „v_i w V” według ich odległości cosinusowej do wektora „u”, otrzymam dla nich określoną kolejność. Czy uszeregowanie tych samych wektorów ze znormalizowaną odległością euklidesową l_2 dałoby tę samą kolejność?
Arne,
2
iirc, ponieważ kwadratowanie jest transformacją monotyczną (dla liczb dodatnich), nie może zmienić kolejności sekwencji posortowanej według długości.
Arne,
5
u
Dziękujemy, czy zdarza ci się mieć źródło cytowane dla tego połączenia?
Arne,
1
No cóż, chyba wystarczy „Linear Alebra I”;) jeszcze raz dziękuję za wgląd!
Arne,
5

uv

cos(u,v)=u,vuv=uTvuv[1,1].
Marc Claesen
źródło