(Связанные сообщения: Осмысление тематических моделей, Преодоление ограничений тематических моделей с помощью полу-контролируемого подхода, Интерпретация и проверка тематических моделей, Как передискретизация ключевых слов может помочь при анализе текста и Насколько надежны или полезны тематические модели?)

Если вам когда-либо приходилось анализировать набор документов - таких как сообщения в социальных сетях, открытые ответы на опросы, расшифровки стенограмм фокус-групп, журналы программного обеспечения и т. Д. - вы, возможно, задавались вопросом об обработке естественного языка (NLP). НЛП - это общий термин, охватывающий широкий спектр алгоритмических методов, которые можно использовать для автоматического анализа больших объемов текста.

Некоторые из этих методов являются «контролируемыми», что означает, что они требуют, чтобы исследователи сначала классифицировали образец набора документов вручную. Затем алгоритмы могут использовать эту ручную классификацию, чтобы достаточно хорошо изучить словесные ассоциации, чтобы применить ту же систему к большему набору документов. Алгоритмы контролируемого обучения могут сэкономить исследователям много времени, но они по-прежнему предполагают тщательное и внимательное чтение документов и детальную категоризацию.

Другие методы НЛП являются «неконтролируемыми», что означает, что они не требуют данных для обучения, классифицируемых людьми. Вместо этого эти алгоритмы смотрят, как слова используются в документах, которые вы изучаете. Они подбирают закономерности и дают оценку того, что передают документы, без непосредственного контроля со стороны исследователя. Одной из самых популярных форм обучения без учителя для анализа текста являются тематические модели, о которых я буду говорить здесь и в будущих публикациях.

Тематическая модель - это тип алгоритма, который сканирует набор документов (известный в области НЛП как корпус), исследует, как слова и фразы встречаются в них, и автоматически «изучает» группы или кластеры слов, которые лучше всего их характеризуют. документы. Эти наборы слов часто представляют собой связную тему или тему.

Существует множество широко используемых алгоритмов тематического моделирования, в том числе неотрицательная матричная факторизация, Скрытое распределение Дирихле (LDA) и Структурные тематические модели. Текущие исследования также привели к появлению других вариантов. В Pew Research Center мы тестировали некоторые из этих алгоритмов и изучали, как тематические модели могут помочь нам анализировать большие коллекции текста, такие как открытые ответы на опросы и сообщения в социальных сетях. Здесь я буду изучать набор данных, состоящий из открытых ответов на опрос о том, что делает жизнь полноценной. Все, что нам нужно для обучения модели, - это электронная таблица с одним столбцом текста, одним ответом (т. Е. Документом) на строку.

Как работают тематические модели

Так или иначе, каждый алгоритм моделирования тем начинается с предположения, что ваши документы состоят из фиксированного числа тем. Затем модель оценивает базовую структуру слов в ваших данных и пытается найти группы слов, которые лучше всего «подходят» вашему корпусу на основе этого ограничения. В конце у вас останутся две выходные таблицы: матрица термин-тема, в которой темы разбиваются по их словесным компонентам, и матрица документ-тема, которая описывает документы с точки зрения их тем. В зависимости от конкретного алгоритма, который вы используете, слово может быть назначено нескольким темам в различных пропорциях или назначено исключительно одной теме.

Давайте рассмотрим приведенный ниже пример матрицы терминов и тем, которая основана на темах из модели, обученной на наших открытых ответах. (Темы настоящие, но для простоты числа и документы здесь являются иллюстративными и не основаны на реальных данных.) Первый столбец содержит произвольный идентификатор для каждой темы, поэтому мы можем ссылаться на каждую тему по имени, за которым следует столбец для каждого возможное слово, которое может содержать каждая тема (известное как наш «словарь»). Значения в ячейках показывают, насколько каждое слово «принадлежит» каждой теме. Их точное значение будет зависеть от конкретного используемого алгоритма, но обычно наиболее частым значением в этой таблице будет ноль (или близкое к нему), поскольку только часть нашего словаря будет иметь отношение к какой-либо конкретной теме. Поскольку эти таблицы могут быть огромными, в приведенном ниже примере показаны только три темы и несколько их основных слов.

Поскольку этот необработанный вывод может быть трудным для чтения и интерпретации, исследователи часто сортируют слова по каждой теме и выбирают главные слова на основе некоторой степени важности. Для моделей, которые пропорционально назначают слова темам, мы можем посмотреть на слова, которые имеют наибольший вес для каждой темы, то есть те, которые составляют наибольшую долю темы. Мы также можем использовать другие показатели, такие как взаимная информация, чтобы сравнивать слова в каждой теме со всеми другими темами и выбирать слова, которые являются наиболее отличительными. Используя один из этих методов сортировки, мы можем выбрать пять или 10 самых важных слов для каждой темы, что упрощает их просмотр и интерпретацию:

Если наша цель - просто лучше понять, что содержится в наших документах, то, возможно, мы уже выполнили свою задачу. В случаях, когда у нас есть большая коллекция текста, но мы не знаем природу ее содержания, тематические модели могут помочь нам заглянуть внутрь и определить основные темы в нашем корпусе. Тема 4 показывает нам, что некоторые из наших документов имеют какое-то отношение к хобби и увлечениям. Тема 5, похоже, имеет какое-то отношение к благотворительности и возвращению обществу, а Тема 88 затрагивает более общее понятие о том, чтобы тратить время на более серьезные дела, такие как работа, и вносить свой вклад в них. Но вы также могли заметить некоторые причуды или нестыковки в этих темах. Кажется, что каждая группа слов отражает отдельную тему, но все три трудно интерпретировать точно, а некоторые слова выглядят немного неуместно.

Использование тематических моделей для классификации документов

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

Большинство тематических моделей разбивают документы по тематическим пропорциям - например, модель может сказать, что конкретный документ состоит на 70% из одной темы и на 30% из другой, - но другие алгоритмы могут просто классифицировать, содержит ли документ каждую тему. При использовании модели, которая распределяет темы по документам в виде пропорций, исследователи могут анализировать темы либо как непрерывные переменные, либо как дискретные классификации, устанавливая порог отсечения, чтобы решить, содержит ли документ тему или нет. Вот пример того, как могут выглядеть соответствующие веса для наших трех примеров документов для трех разных тем выше:

Установив порог отсечения 50%, мы также можем превратить их в категориальные переменные, подобные тем, которые вы можете собрать в опросе:

Когда вы впервые видите результаты тематической модели, это может вдохновить. Возможность автоматически определять и измерять основные темы в коллекции документов открывает дверь для всевозможных интересных исследовательских вопросов, и вы можете захотеть начать. Однако оказывается, что запуск тематической модели - это простая часть - и первый из нескольких шагов. Прежде чем мы сможем использовать нашу модель в качестве инструмента измерения, мы также должны выяснить, что она измеряет, - задача, которая может оказаться на удивление сложной. В моем следующем посте я объясню почему.

Патрик ван Кессель, старший научный сотрудник исследовательского центра Pew Research Center.