Кластеризация документов (или текстовая кластеризация ) — это применение кластерного анализа к текстовым документам. Она применяется в автоматической организации документов, извлечении тем и быстром поиске или фильтрации информации.
Кластеризация документов включает использование дескрипторов и извлечение дескрипторов. Дескрипторы — это наборы слов, которые описывают содержимое внутри кластера. Кластеризация документов обычно считается централизованным процессом. Примерами кластеризации документов являются кластеризация веб-документов для пользователей поиска.
Применение кластеризации документов можно разделить на два типа: онлайн и офлайн. Онлайн-приложения обычно ограничены проблемами эффективности по сравнению с офлайн-приложениями. Текстовая кластеризация может использоваться для различных задач, таких как группировка схожих документов (новостей, твитов и т. д.) и анализ отзывов клиентов/сотрудников, обнаружение значимых неявных тем во всех документах.
В целом, существует два распространенных алгоритма. Первый из них — иерархический алгоритм, который включает в себя одиночную связь, полную связь, групповое среднее и метод Уорда. Путем агрегации или разделения документы можно сгруппировать в иерархическую структуру, которая подходит для просмотра. Однако такой алгоритм обычно страдает от проблем с эффективностью. Другой алгоритм разработан с использованием алгоритма K-средних и его вариантов. Обычно иерархические алгоритмы производят более подробную информацию для детального анализа, в то время как алгоритмы, основанные на вариантах алгоритма K-средних, более эффективны и предоставляют достаточную информацию для большинства целей. [1] : Ch.14
Эти алгоритмы можно далее классифицировать как алгоритмы жесткой или мягкой кластеризации. Жесткая кластеризация вычисляет жесткое назначение — каждый документ является членом ровно одного кластера. Назначение алгоритмов мягкой кластеризации является мягким — назначение документа представляет собой распределение по всем кластерам. При мягком назначении документ имеет дробное членство в нескольких кластерах. [1] : 499 Методы снижения размерности можно считать подтипом мягкой кластеризации; для документов они включают скрытую семантическую индексацию ( усеченное сингулярное разложение значений на гистограммах терминов) [2] и тематические модели .
Другие алгоритмы включают кластеризацию на основе графов, кластеризацию с поддержкой онтологий и кластеризацию, чувствительную к порядку.
Учитывая кластеризацию, может быть полезно автоматически выводить понятные человеку метки для кластеров. Для этой цели существуют различные методы .
Поисковая система часто возвращает тысячи страниц в ответ на широкий запрос, что затрудняет пользователям просмотр или определение релевантной информации. Методы кластеризации могут использоваться для автоматической группировки извлеченных документов в список значимых категорий.
На практике кластеризация документов часто включает следующие этапы:
1. Токенизация
Токенизация — это процесс разбора текстовых данных на более мелкие единицы (токены), такие как слова и фразы. Обычно используемые методы токенизации включают модель Bag-of-words и модель N-gram .
2. Стемминг и лемматизация
Различные токены могут нести схожую информацию (например, токенизация и токенизация). И мы можем избежать повторного вычисления схожей информации, сведя все токены к их базовой форме, используя различные словари стемминга и лемматизации.
3. Удаление стоп-слов и знаков препинания
Некоторые токены менее важны, чем другие. Например, такие распространенные слова, как "the", могут быть не очень полезны для выявления основных характеристик текста. Поэтому обычно бывает полезно исключить стоп-слова и знаки препинания перед дальнейшим анализом.
4. Вычисление частот терминов или tf-idf
После предварительной обработки текстовых данных мы можем перейти к генерации признаков. Для кластеризации документов одним из наиболее распространенных способов генерации признаков для документа является вычисление частот терминов всех его токенов. Хотя эти частоты не идеальны, они обычно могут дать некоторые подсказки о теме документа. Иногда также полезно взвешивать частоты терминов по обратным частотам документа. Подробные обсуждения см. в tf-idf .
5. Кластеризация
Затем мы можем кластеризовать различные документы на основе сгенерированных нами признаков. См. раздел алгоритма в кластерном анализе для различных типов методов кластеризации.
6. Оценка и визуализация
Наконец, кластерные модели можно оценить с помощью различных метрик. Иногда бывает полезно визуализировать результаты, нанося кластеры в низкомерное (двухмерное) пространство. Рассмотрите многомерное масштабирование как возможный подход.
Алгоритмы кластеризации в вычислительном анализе текста группируют документы в наборы текста, которые называются подмножествами или кластерами , где цель алгоритма — создать внутренне связные кластеры, которые отличаются друг от друга. [3] Классификация, с другой стороны, является формой контролируемого обучения , где характеристики документов используются для прогнозирования «типа» документов.