Какой алгоритм я могу использовать для поиска общих соседних слов / распознавания образов?

У меня есть большая таблица в моей базе данных с большим количеством слов из разных текстов в текстовом порядке. Я хочу найти число o f раз / частота, когда некоторый набор слов встречается вместе.

Пример : Предположим, у меня есть эти 4 слова во многих текстах: United | Штаты | из | Америка .Я получу в результате:

Соединенные Штаты : 50
Соединенные Штаты из : 45
Соединенные Штаты Америки : 40

(Это только пример с 4 слов, а может есть с меньшим и более чем 4).

Есть какой-нибудь алгоритм, который может сделать то или подобное?

Изменить: Приветствуется некоторый код R или SQL, показывающий, как это сделать. Мне нужен практический пример того, что мне нужно делать.

Структура таблицы

У меня есть две таблицы: Токен , который имеет id и текст . Текст имеет вид UNIQUE , и каждая запись в этой таблице представляет отдельное слово.

TextBlockHasToken - это таблица, в которой сохраняется порядок текста. Каждая строка представляет собой слово в тексте.

Он имеет textblockid , который представляет собой блок текста, которому принадлежит токен. предложение , которое является предложением токена, позиция , которая представляет собой позицию токена внутри предложения, и токенид , который является ссылкой на таблицу токенов.

7
задан Renato Dinhani 17 November 2011 в 02:32
поделиться