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

Как я объяснял в серии предыдущих сообщений в этом блоге, тематические модели — это захватывающий тип алгоритма, который предлагает исследователям возможность быстро идентифицировать (и, возможно, измерить) темы, скрытые в больших объемах текста. Например, в Исследовании Pew Research Center 2018 года мы с коллегами попытались использовать тематические модели для измерения распространенности примечательных тем в наборе открытых ответов на опросы о вещах, которые придают смысл жизни американцев.

В моем предыдущем посте из этой серии я описал, как мы интерпретировали темы в нашем исследовании 2018 года, присвоив каждой из них ярлык, например хорошее здоровье. Затем мы хотели сравнить решения моделей с ярлыками, которые наши собственные исследователи присвоили ответам на опрос. Но прежде чем мы смогли провести это сравнение, мы сначала должны были убедиться, что наши ярлыки достаточно ясны, чтобы реальные люди могли их интерпретировать и назначать последовательным образом.

Для каждой темы два исследователя просматривали случайную выборку из 100 ответов и помечали те, которые соответствовали метке, которую мы присвоили теме. Затем мы использовали межоценочный показатель надежности, называемый Каппа Коэна, чтобы сравнить оценки наших исследователей и определить, согласуются ли они друг с другом с приемлемой скоростью. Семь из наших 31 меток показали низкую надежность (каппа ниже 0,7), и нам пришлось их отложить. Но большинство тем показали многообещающие оценки надежности.

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

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

Используя начальную случайную выборку из 100 ответов по каждой теме, мы смогли получить приблизительную базовую линию распространенности темы в наших данных и вычислить предварительную Каппа для темы. Затем мы использовали эти значения, чтобы рассчитать, насколько больше должна быть выборка, чтобы подтвердить Каппа, которую мы наблюдали, с достоверностью 95%.

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

Включить передискретизацию ключевых слов

Чтобы решить эту проблему, мы использовали метод под названиемизбыточная выборка ключевых слов. Вместо того, чтобы кодировать большую случайную выборку для тем, которые присутствовали лишь в небольшой части ответов, мы создали новые выборки. Эти новые образцы непропорционально состояли из документов, содержащих набор ключевых слов, которые, как мы подозревали, были связаны с меткой темы, которую мы пытались закодировать: 50 % с одним или несколькими ключевыми словами и 50 % без них.

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

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

Преимущества передискретизации ключевых слов

Передискретизация ключевых слов может быть эффективным способом анализа необычных подмножеств текстовых данных.

В нескольких прошлых проектах Pew Research Center, в которых мы анализировали пресс-релизы Конгресса и посты в Facebook, нас интересовало измерение выражений политической поддержки и несогласия с использованием контролируемых моделей классификации. Для этого нам потребовалось собрать и пометить большой набор обучающих данных. Но поскольку партийные заявления являются лишь одним из многих различных типов заявлений, которые делают законодатели, мы были обеспокоены тем, что нам нужно будет пометить нереально большую случайную выборку, чтобы гарантировать, что она содержит достаточно релевантных примеров для обучения точной модели.

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

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

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

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

Чтобы увидеть пример передискретизации ключевых слов в действии, вы можете проверить эту записную книжку Jupyter на Github.

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