2013-02-12 6 views
0

Ввод на подобие косинуса - это два вектора, представляющих два разных данных, которые я хочу сравнить. Существует ли требование для семантики вектора? Может ли это просто быть байтовым представлением каждого файла. А затем вычислить частоту каждого байта? Имеет ли это смысл? Или должна быть векторизация файла, где каждое измерение не является исходной частью данных из файла, но некоторые метаданные являются частотой каждого термина, если мы говорим о текстовых файлах или модели кодирования tf-idf? Чтобы выразить это в другой форме: похоже ли сходство косинуса, чтобы быть «правильным», требует сложного этапа предварительной обработки данных, или я могу дать его как входные целочисленные значения, которые представляют каждый байт моих данных без учета текста или только частоты срок каждого байта?Каковы требования предварительной обработки косинусоидальности?

ответ

1

«Семантика» данных имеет решающее значение. Например, скажем, вы сравниваете текстовые документы на английском языке. Для больших документов частота появления различных букв будет примерно одинаковой, поэтому, если элементы вашего вектора представляют собой подсчет букв, у вас возникнут проблемы с отличительными документами. Если элементы вашего вектора представляют количество слов, вы получите лучшие результаты. Если элементы вашего вектора представляют собой подсчеты «стеблированных» слов, еще лучше. И т. Д.

Косинус-сходство - это «тупая» статистическая мера - вам решать, что-то значимое для сравнения.

+0

Что делать, если я хочу сравнивать записи, и каждый вектор состоит из числовых данных, булевых значений и строк? Ie: [number] [number] [string] [boolean] – curious

+0

@Curious - я не уверен, что вы спрашивая. Не могли бы вы привести краткий пример, показывающий некоторые векторные представления, которые вы рассматриваете? – kc2001

+0

Предположим, у меня две записи. r1 = 234,1023, нет, сегодня воскресенье. и r2 = 876,423, да, завтра я ухожу. Как я могу вычислить косинус из этих двух записей? Как я могу вычислить их векторы? Я просто возьму char по char их ascii-представлению и сделаю вектор? Тогда нет семантического и косинуса, которые могут дать неточные результаты. – curious

Смежные вопросы