Автоматическая классификация стиля текстов

В настоящей работе на базе составленных автором корпусов текстов, относящихся к четырём различным функциональным стилям, построен автоматический классификатор функционального стиля текста на основе спектров длин слов, а также его упрощённая версия. Исследована зависимость успеха классификации текста от его размера. Изучена возможность применения алгоритма распознавания стиля для классификации web-сайтов с целью сужения области поиска нужной информации.

Корпуса текстов

В настоящее время существует целый ряд классификаций функциональных стилей текстов на русском языке (Розенталь, 1987). В данной работе принято деление на четыре стиля: разговорный стиль, стиль художественной литературы, стиль информационных сообщений ("газетный") и научно-деловой стиль. Автором составлены четыре корпуса текстов, соответствующих этим стилям, объём каждого текста превышает 2 миллиона слов. Корпус разговорной речи составили записи ("логи") программ общения через интернет, ICQ и IRC, накопленные в течение 1995-1999. Корпус художественной литературы составили тексты русских классиков с web-сайтов Института Русского Языка, современных авторов из библиотеки Максима Мошкова, а также тексты авторов, публикующихся в интернете, взятые из электронных журналов. Общее число авторов превышает 50. Из всех текстов удалены диалоги, так что оставшаяся часть текста представляет собой нарратив, то есть повествование. Газетный корпус составили статьи из "Коммерсанта", "Сегодня", с сайтов "ИТАР-ТАСС", "Русского журнала", Polit.ru, "Интеллектуального капитала". Общее число статей составляет три тысячи. Научно-деловой корпус составлен из статей, опубликованных на сайте РФФИ, в журнале "Химия растительного сырья", в журнале "Военный парад", а также из отчётов Центробанка.

 

Распределения длин слов, характеризующие различные функциональные стили

Рис.1

На графике показаны распределения (спектры) длин слов в четырех вышеописанных корпусах , справа налево:
  1. Научные и деловые статьи (черная линия)
  2. Информационно-новостные газетные статьи (синяя линия)
  3. Нарратив, повествовательная художественная проза (красная линия)
  4. Разговорная речь, логи IRC/ICQ. (желтая линия)


Здесь по горизонтальной оси отложена длина слов в буквах, а по вертикальной -- доля текста, которую составляют все слова с такой длиной (в процентах). Как следует из графика, в научных и деловых статьях доля "длинных" слов максимальна, в разговорной речи - минимальна. Впервые спектры длин слов использовались американским физиком Томасом Менденхоллом, который пытался проверить гипотезу о том, что подлинным автором сочинений Шекспира был Френсис Бэкон. Дальнейшие исследования показали, что спектры длин слов нечувствительны к особенностям стиля индивидуальных авторов.

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

В то же время, как показал анализ 6 миллионов слов, взятых из диалогов художественной прозы, распределение длин слов в диалогах прозаических произведений совпадает с таковым в записях IRC и ICQ логов. По-видимому, и те, и другие аппроксимирует разговорную речь. Разумеется, "сырая", неотредактированная устная речь может содержать гораздо больше частиц и междометий, необходимых для выражения эмоций, а также больше повторов и штампов. Тем не менее, отличия "письменной" разговорной речи от нарратива достаточно заметны в спектрах длин слов, чтобы разделить эти два стиля.

Автоматическое определение стиля текста

В этом разделе опишем алгоритм классификации функционального стиля текста (см. практическую реализацию на http://teneta.rinet.ru/hudlomer/). Алгоритм использует четыре эмпирические обучающие кривые, описанные выше. Распределения длин в отдельных текстах "близки" к этим обучающим кривым, как правило, располагаясь "между" ними. Мы предполагаем, что эти распределения можно получить путём интерполяции четырёх базовых кривых. Через соотвествующие функциональным стилям четыре значения средней длины слова и четыре значения вероятности проводится полином третей степени. В качестве независимой переменной выступает непрерывный параметр, который удобно задавать так, чтобы в интерполяционных узлах полиномов он совпадал со средней длиной слова в обучающих текстах. Вычисляя значение полиномов для любой новой заданной "средней длины слова", мы рассчитываем интерполированное распределение вероятностей. (После интерполяции это распределение следует нормировать). Варьируя затем независимую переменную, единую для всех длин слов, можно найти значение, минимизирующее отклонения наблюденных спектров от синтетических, и классифицировать новые тексты, относя их к стилю, соответствующему ближайшему интерполяционному узлу. При этом результирующая переменная обычно довольно близка к средней длине слова в исследуемых текстах. В нашей реализации алгоритма используется метод Ньютона минимизации функционала ошибки (Press, 1992).


Рис.2



На Рис.2 показано распределение длин слов в первой части сборника рассказов Ю.А.Мамлеева "Шатуны" (2140 слов). Расчетное распределение вероятностей сравнивается с эмпирически измеренной гистограммой частот слов, при этом ищется параметр распределения, который обеспечивает максимальную близость "теоретической" и наблюденной кривых.

Рис.3


Минимальное значение функционала ошибки, иллюстрируемое Рис.3, может служить мерой успеха классификации текста.

Упрощённый алгоритм


Далее будет проиллюстрировано, что при размере текста более 500 слов обычно можно ограничиться расчётом средней длины слова. При этом в качестве разделителей разговорной речи, художественной литературы, газетных статей и научно-деловых текстов выступают длины слов в 4.9, 5.9, 6.9 букв соответственно. Основное преимущество этого метода - его простота, и возможность очень быстрой реализации.

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

 

Влияние размера текста на процент успеха классификации

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

Табл.1

Процент успеха классификации. Длина текста: 100 слов. 10-20 тысяч тестов. Упрощённый алгоритм.

Стиль РАЗГОВОРНЫЙ ХУДОЖЕСТВЕННЫЙ ГАЗЕТНЫЙ НАУЧНО-ДЕЛОВОЙ
РАЗГОВОРНЫЙ 78.6 21 0.2 0
ХУДОЖЕСТВЕННЫЙ 13.5 68.8 16.8 0.7
ГАЗЕТНЫЙ 1.1 29.6 58.7 10.3
НАУЧНО-ДЕЛОВОЙ 0.5 4.9 33.2 61.2

Рассмотрим в качестве примера третью сверху строку. Истинный стиль текстов -- "газетный". 1.1% газетных текстов алгоритм определяет как разговорную речь, 29.6% - как художественную литературу, 60.9% текстов правильно классифицируются как газетные тексты и 10.3% текстов классифицируются как научно-деловые.

Чем меньше размер текста, тем сложнее правильно определить его стиль. Рис.4 определяет разрешающую способность упрощенного метода распознавания:

Рис.4

Здесь по горизонтали отложена длиа текста, а по вертикали - стандартные отклонения распределений вероятности средних длин слов. Распределения вероятности средних длин слов в наших корпусах приблизительно гауссовы и обладают почти равной шириной для всех стилей, будучи немного уже для разговорного стиля. Для разделения на уровне значимости 15% "соседних" стилей, например, стиля художественной литературы и газетно-новостного стиля, параметры стиля которых отличаются на единицу, требуется, чтобы стандартное отклонение гауссового распределения не превосходило 0.5. Это достижимо для текстов в 50 слов и более -- для разговорного стиля, 200 слов и более -- для художественной прозы и газетных текстов, 500 слов и более -- для научных текстов. Для разделения с порогом значимости 5% требуется, чтобы 0.5 составляло два (точнее 1.96) стандартных отклонения, таким образом, стандартное отклонение не должно превышать 0.25. Исходя из графика, потребуется размер текста 500 слов и выше -- для разговорного стиля и более 10 тысяч слов для остальных стилей.

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

Рассмотрим теперь вероятность ошибки на две единицы, то есть, например, классификации научного текста как художественной литературы. На уровне значимости 15% стандартное отклонение параметра распознавания должно превысить единицу. Как явствует из графика, для достижения такой точности распознавания достаточный объём текстов любого стиля составляет 50 слов. На уровне значимости 5% стандартное отклонение параметра распознавания должно превышать 0.5. Для достижения такой точности потребуются тексты размером не менее 50 слов -- для разговорного стиля, 200 слов и более -- для художественной прозы и газетных текстов, 500 слов и более -- для научных текстов.

Использование дисперсии распределения длин слов

 

Промежуточное положение между "полным" и "упрощённым" методами классификации занимает метод, использующий среднее значение и дисперсию длин слов. Рассмотрим характер распределений среднего значения и дисперсии параметра распознавания, отложенных соответственно по вертикали и горизонтали. При этом четыре стиля последовательно сменяют друг друга.

 

На нижеследующем графике цветными точками показаны тексты из 100 слов. Ипользуется около 20 тысяч таких текстов каждого стиля. Линейная зависимость дисперсии от среднего значения показывает, что форма гистограмм параметра распознавания, в основном, определяется средним значением этого параметра .

 

Рис.5

Области, которые занимают стили в пространстве {среднее,дисперсия}, - эллиптические. По совокупности двух параметров: среднее и дисперсия, распознавание можно проводить немного точнее, чем по одному только среднему значению.

При увеличении размера текста графики будут сжиматься, как показано на Рис.4 Начиная с текстов в 200-500 слов облака практически перестанут перекрываться "через одно". Ниже приведен график {среднее,дисперсия} для текстов из 500 слов.

Рис.6

Дисперсия в среднем линейно растет с ростом среднего значения параметра, обладая при этом некоторым естественным разбросом, приблизительно одинаковым для каждого из стилей в "центральной" части каждого цветного облака.

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

Табл.2

Процент успеха классификации. Длина текста: 100 слов. 10-20 тысяч тестов. Полный алгоритм.

Стиль РАЗГОВОРНЫЙ ХУДОЖЕСТВЕННЫЙ ГАЗЕТНЫЙ НАУЧНО-ДЕЛОВОЙ
РАЗГОВОРНЫЙ 88.7 11.1 0.1 0
ХУДОЖЕСТВЕННЫЙ 24.4 61.5 11.9 2
ГАЗЕТНЫЙ 3.6 24.4 51.3 20.4
НАУЧНО-ДЕЛОВОЙ 0.6 6.2 15 78

Определение стиля web-страниц

Как показали наши исследования, определение стиля текстов по страницам web-сайта, даже при достаточном количестве слов, возможно не всегда. Титульные страницы сайтов зачастую содержат не столько естественный, связный текст, сколько "меню", состоящие из названий разделов. К таким страницам классификаторы, полученные путём обучения на "естественных" текстах, оказываются неприменимы, при этом главной задачей становится идентификация этих страниц. Так, титульная страница сайта Anekdot.ru классифицируется как "газета". Это связано, по-видимому, с тем, что титульная страница не содержит анекдотов, а только перечисляет разделы сайта. Внутренние страницы сайта твечают уже стилю художественной литературы.

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

Определение функционального стиля Web-сайтов


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

Табл.3

Разговорная речь "Сиреневая" и "Зеленая" гостевые конкурса "Тенета-Ринет", "Поэтическая" и "Прозаическая" обсуждалки и Курилка ЛИТО им. Стерна
Художественная литература Анти-Тенета, Студия Лебедева
Газеты Галлерея Гельмана , Московские Новости , Lenta.ru , Vesti.ru , Gazeta.ru , Smi.ru , Academia.ru , Polit.ru
Научные, деловые ТАСС, ФЭП, РАИ, Агенство Результат, InternetAcademy.ru

Титульная страница новостного сайта "РБК" (www.rbk.ru) неожиданно оказалась между "Новостями" и "Художеcтвенной литературой". Это связано с малым объемом текста: всего 141 слово. Если же учесть внутренние страницы сайта, то "РБК" идентифицируется как "Газета".

Отличия от Флэш-теста

Предлагаемый алгоритм отличается от т.н. Флэш-теста, который широко применяется с 1950-х гг для определения "сложности" текста. Этот тест основан на использовании средней длины слова и средней длины предложения. Флеш-тест не оцениват надежность измерения сложности текста и неспособен отличить "неестественные" тексты от "естественных". Кроме того, работа флэш-теста может быть затруднена отсутствием знаков пунктуации в "неестественных" текстах. Наконец, как показывает Рис.4, при малых размерах текстов классификация текстов даже на четыре категории сопровождается значительным процентом ошибок. При этом результаты флэш-теста, который классифицирует тексты на 10 и более категорий, оказываются ещё менее надёжными.

Литертура:

Розенталь Д.Э. Практическая стилистика русского языка. Москва. "Высшая школа". 1987.

Частотный словарь русского языка. Под ред. Л.Н.Засориной. М.: Русс.яз., 1977.

Numerical Recipes in C, The Art of Scientific Computing. Press, William H., Teukolsky, Saul A., Vetterling, William T. and Flannery, Brian P., Cambridge University Press, 1992.

levon@manifest.ru