Сравните документы по вектору последовательности

Я пытаюсь классифицировать документы по вектору последовательности. В основном, у меня есть словарный запас (более 5000 слов). Каждый документ преобразуется в вектор целых чисел, так что каждый элемент вектора соответствует позиции слова в словаре.

Например, если словарь [привет, как дела, ты, сегодня] и документ "привет, ты", тогда у меня будет вектор: [1 4].
Другой документ из "как дела" приведет к [2 3 4].

Теперь я хочу оценить сходство между первым и вторым векторами. Здесь вы можете видеть, что эти векторы не имеют одинаковой длины. Кроме того, их прямое сравнение может не иметь смысла, поскольку они представляют собой последовательность слов. Этот случай отличается от вектора бинарного (мешка слов), который учитывает появление слова в документе (1, если появляется, иначе 0), а также вектора частоты (числа слов), который учитывает частоту слова в документе. документ с заданной лексикой.
Можете ли вы дать мне предложение?


person lenhhoxung    schedule 09.12.2015    source источник
comment
вероятно, какой-то рецепт с использованием containers.Map, union и, возможно, уникальный   -  person brown.2179    schedule 09.12.2015
comment
Ну, я думаю, это о методе, который мы используем   -  person lenhhoxung    schedule 10.12.2015
comment
Если речь идет о методе/рецепте, то, вероятно, лучше перенести вопрос на CrossValidated.   -  person brown.2179    schedule 10.12.2015
comment
ты прав, я перейду на этот сайт   -  person lenhhoxung    schedule 10.12.2015


Ответы (1)


сходство Жаккара обычно используется для сравнения схожести наборов (в вашем случае текста). Текст n-grammed (черепичный), а затем хеширование с учетом местных особенностей используется для определения сходства Jaccard.

Этому посвящено целое поле — Google вам в помощь!

person RPM    schedule 09.12.2015