косинусное сходство против косинусного расстояния, в чем разница? - PullRequest
1 голос
/ 14 октября 2019

Похоже, что scipy.spatial.distance.cdist косинус подобного расстояния:

ссылка на расстояние cos 1

1 - u*v/(||u||||v||)

отличается от sklearn.metrics. pairwise.cosine_simility, которая

ссылка на cos Подобие 2

 u*v/||u||||v||

Кто-нибудь знает причину для различных определений?

1 Ответ

2 голосов
/ 14 октября 2019

Хороший вопрос, но да, это две разные вещи, но они связаны следующим уравнением:

Cosine_distance = 1 - cosine_simility


Но почему?

Обычно люди используют косинусное сходство в качестве метрики сходства между векторами. Теперь расстояние может быть определено как 1-cos_simility.

Интуиция заключается в том, что если 2 вектора абсолютно одинаковы, то сходство равно 1 (angle =0) и, таким образом, расстояние равно 0 (1-1 = 0).

Аналогичным образом вы можете определить косинусное расстояние для результирующего диапазона значений подобия.

Диапазон сходства косинусов: -1 означает абсолютно противоположное, 1 означает точно то же самое, 0 означает ортогональность.


Ссылки : Сципи Вольфрам

From scipy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...