У меня есть набор из 300 000 или около того векторов, которые я бы хотел каким-то образом сравнить, и, учитывая один вектор, я хочу найти ближайший вектор, о котором я подумал о трех методах.Измерение расстояния между векторами
- Простой евклидово расстояние
- косинус сходство
- Используйте ядро (например, гауссовой) вычислить матрицу Грама.
- Рассматривайте вектор как дискретное распределение вероятности (что делает смысл ) и вычисляет некоторую мера дивергенции.
Я действительно не понимаю, когда полезно делать одно, а не другое. У моих данных много нулевых элементов. Имея это в виду, существует ли какое-то общее правило о том, какой из трех методов является лучшим?
Извините за слабый вопрос, но я должен был начать где-то ...
Спасибо!