Выбор ответа Middle Векторы и матрицы спрашивают часто обновлено
Косинусная близость против евклидова расстояния
Вопрос
Почему для сравнения текстовых эмбеддингов чаще берут косинусную близость, а не евклидово расстояние?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Косинус смотрит на направление и не зависит от длины вектора. cos(a, b) = a·b / (a·b) зависит только от угла.
Варианты ответа
- Косинус быстрее считается: в нём нет умножений
- Евклидово расстояние не определено для векторов размерности больше 3
- Косинус всегда даёт значения от 0 до 1, а расстояние нет
- Косинус смотрит на направление и не зависит от длины вектораправильный ответ
Разбор
cos(a, b) = a·b / (|a|·|b|) зависит только от угла. Длина эмбеддинга часто отражает что-то побочное (частоту слова, длину текста), а смысл закодирован в направлении. Если векторы нормированы, косинус и евклидово расстояние ранжируют одинаково: |a - b|² = 2 - 2cos.
- В косинусе те же умножения, что и в скалярном произведении, плюс нормы.
- Евклидово расстояние определено в любой размерности.
- Косинус лежит в диапазоне от -1 до 1, а не от 0 до 1.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.