Я пытаюсь реализовать метод извлечения аспектов из Mining and Summarizing Reviews клиентов * Статья 1002 *. Я пытаюсь найти все частые функции с помощью интеллектуального анализа правил ассоциации (алгоритм Apriori). Сначала я применил функцию предварительной обработки (POS-тегирование), Стоп-слова, PorterStemmer) к предложениям, как к статье. Затем я извлекаю существительные / существительные-фразы из каждого предложения в файл транзакции и сохраняю их в формате csv, например
![this](https://i.stack.imgur.com/qFMq6.jpg)
После этого я применяю алгоритм apriori к этому файлу транзакций, и часто достигаются наборы элементов: ![enter image description here](https://i.stack.imgur.com/B6wi8.png)
В статье есть фаза сокращения компактности:
Этот метод проверяет объекты, содержащие как минимум два слова, которые мы называем фразами объектов, и удаляет те из них, которые могут быть бессмысленными. В интеллектуальном анализе алгоритм не учитывает положение элемента (или слова) в транзакции (или предложении). Однако в предложении на естественном языке слова, которые появляются вместе и в определенном порядке, с большей вероятностью являются осмысленными фразами. Таким образом, некоторые из часто встречающихся фраз, сгенерированных при сопоставлении ассоциаций, могут не быть подлинными. Идея сокращения компактности состоит в том, чтобы сократить те признаки кандидата, слова которых не появляются вместе. Мы используем расстояния между словами в ключевой фразе-кандидате (itemset), чтобы выполнить сокращение.
Определение: • Пусть f - частая характерная фраза, а f содержит n слов. Предположим, что предложение s содержит f, и последовательность слов в f, которые появляются в s, имеет вид: w1, w2,…, wn. Если расстояние слова в s между любыми двумя смежными словами (wi и wi + 1) в приведенной выше последовательности не больше 3, то мы говорим, что f компактно по s. • Если f встречается в m предложениях в базе данных рецензирования, и оно компактно как минимум в 2 из m предложений, то мы называем fa компактной характеристической фразой.
Я хочу знать, какреализовать фазу отсечения и как я могу вычислить расстояние между словами в предложениях. Также я хочу знать, правда ли считать фразы в наборе имен существительными, как то, что я делаю?