Косинусное сходство с использованием векторов слов дает семантическое сходство между двумя предложениями. Сначала давайте разберемся, как это рассчитывается. Предположим, есть два вектора, представляющих два текстовых документа,
и
.
Тогда скалярное произведение векторов определяется как
.
Геометрически тета представляет угол между векторами a и b на плоскости. Таким образом, чем меньше угол, тем больше сходство. Таким образом, метод сходства косинусов сообщает об этой угловой величине. Теперь геометрически, если разница между двумя векторами меньше, то угол мал, и, следовательно, косинусное сходство велико. Если углы далеки и близки к 90 ', то косинус этого равен нулю.
Итак, низкие оценки косинусного сходства представляют собой несвязанные векторы. Конечно, несвязанный вектор может быть мерой несоответствия в случае текстовых документов. В противном случае, если угол близок к 180 ', то косинусное сходство будет близко к 1, но будет пренебрегаться. Это может означать, что оба документа имеют противоположное значение. Это опять другой тип незнакомства. Итак, чтобы подвести итог, вы можете использовать как несвязанные, так и противоположные векторы для измерения различий в зависимости от вашего приложения.
Вы также можете рассмотреть синтетические различия, такие как различия в деревьях разбора зависимостей, именованные права доступа и т. Д. Но опять же, не зная, что именно вы пытаетесь достичь, трудно предложить один метод.