Анализ текстов

Анализ текстов

В данной статье мы начнем обсуждение чрезвычайно интересной темы — применение статистики для анализа текстовой информации. Заметим, что применение статистики для анализа текстов – традиционная задача.

Вначале мы приведем некоторые интересные факты относительно частоты встречаемости букв и их сочетаний в разных языках (подробнее см. книгу [1] ). В последующих статьях покажем, как применять более сложные методы анализа и графического представления.

Частотные характеристики текстовых сообщений

Итак, текст состоит из слов, слова из букв. Количество различных букв в каждом языке ограничено и буквы могут быть просто перечислены. Важными характеристиками текста являются повторяемость букв, пар букв (биграмм) и вообще m -ок (m -грамм), сочетаемость букв друг с другом, чередование гласных и согласных и некоторые другие. Замечательно, что эти характеристики являются достаточно устойчивыми. Вопрос "почему" мы оставляем за кадром.

Используя систему STATISTICA Вы можете проверить эти закономерности, например, в текстах Интернет.

Идея состоит в подсчете чисел вхождений каждой n m возможных m -грамм в достаточно длинных открытых текстах T =t1 t2 …tl . составленных из букв алфавита <a1. a2. an >. При этом просматриваются подряд идущие m -граммы текста:

Если – число появлений m -граммы ai1 ai2. aim в тексте T. а L – общее число подсчитанных m -грамм, то опыт показывает, что при достаточно больших L частоты

для данной m -граммы мало отличаются друг от друга.

В силу этого, относительную частоту (1) считают приближением вероятности P (ai1 ai2. aim ) появления данной m -граммы в случайно выбранном месте текста (такой подход принят при статистическом определении вероятности).

Ниже приводится таблицы частот букв (в процентах) ряда европейских языков. Данные заимствованы из книги [2] .

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

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

Наглядное представление о частотах букв дает диаграмма встречаемости. Так, для ангийского языка, в соответствии с таблицей, такая диаграмма изображена на рис.1. Для ее построения мы импользовали систему STATISTICA .

Для русского языка частоты (в порядке убывания) знаков алфавита, в котором отождествлены E c Ё. Ь с Ъ. а также имеется знак пробела (-) между словами, приведены в следующей таблице (см. [3] ).

На основании таблицы получаем следующую диаграмму частот (рис.2).

Имеется мнемоническое правило запоминания десяти наиболее частых букв русского алфавита. Эти буквы составляют нелепое слово СЕНОВАЛИТР. Можно также предложить аналогичный способ запоминания частых букв английского языка, например с помощью слова TETRIS-HONDA (см. таблицу).

E, S, A, N, T, I, R, U, L, O

E, N, I, S, T, A, H, D, U

E, T, A, I, N, R, O, S, H, D

E, A, O, S, I, R, N, L, D, C

I, E, A, O, N, T, R, L, S, T

Устойчивыми являются также частотные характеристики биграмм, триграмм и четырехграмм осмысленных текстов.

Приведем таблицы частот биграмм для русского и английского языков (таблицы заимствованы из книги [4] ). Для удобства они разбиты на четыре части по следующей схеме:

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

Для получения более точных сведений об открытых текстах можно строить и анализировать таблицы k -грамм при k >2, однако для учебных целей вполне достаточно ограничиться биграммами. Неравномерность k -грамм (и даже слов) тесно связана с характерной особенностью открытого текста – наличием в нем большого числа повторений отдельных фрагментов текста: корней, окончаний, суффиксов, слов и фраз. Так, для русского языка такими привычными фрагментами являются наиболее частые биграммы и триграммы:

СТ, НО, ЕН, ТО, НА, ОВ, НИ, РА, ВО, КО
СТО, ЕНО, НОВ, ТОВ, ОВО, ОВА

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

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

Сочетаемость букв русского языка:

л, н, с, т, р, в, к, м

о, а, и, ы, с, н, л, р

е, а, и, о, н, у, р, в

н, т, р, с, л, в, м, и

с, н, в, и, е, м, к, з

о, а, и, р, у, т, л, е

и, е, о, а, ь, я, ю, у

и, е, о, у, а, н, п, ы

в, с, т, р, и, д, н, м

а, е, о, и, у, я, ы, н

т, к, о, я, е, ь, с, н

о, а, е, и, ь, в, р, с

ь, у, ы, е, о, а, и, в

л, х, е, м, и, в, с, н

н, к, в, п, с, е, о, и

с, ы, м, л, д, т. р, н

в, с, т, п, д, к, м, л

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

Наблюдения над открытыми текстами показывают, что для условных вероятностей выполняются неравенства p(ai1 )&ne;p(ai1 /ai2 ). p(ai1 /ai2 )&ne;p(ai1 /ai2 ai3 ).

Систематически вопрос о зависимости букв алфавита в открытом тексте от предыдущих букв исследовался известным русским математиком А. А. Марковым (1856 – 1922). Он доказал, что появления букв в открытом тексте нельзя считать независимыми друг от друга. В связи с этим А. А. Марковым отмечена еще одна устойчивая закономерность открытых текстов, связанная с чередованием гласных и согласных букв. Им были подсчитаны частоты встречаемости биграмм вида гласная-гласная (г. г ), гласная-согласная (г. с ), согласная-гласная (с. г ), согласная-согласная (с. с ) в русском тексте длиной в 10 5 знаков. Результаты подсчета отражены в следующей таблице:

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

В качестве примера приведем частотные характеристики букв английского алфавита, входящих в состав кода ASCII.

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

Литература:

[1] Алферов А.П. и др. "Криптография"

[2] Яглом А.М. Яглом И.М. Вероятость и информация, М. Наука, 1973.

[3] Baudouin C. Elements de cryptographie / Ed. Pedone A. – Paris, 1939.

[4] Friedman W. F. Callimahos D. Military cryptanalysis, Part i, Vol 2, Aegean Park Press, Laguna Hills CA, 1920.

Trial-версия STATISTICA 13

STATISTICA Neural Networks
STATISTICA Data Miner
STATISTICA Text Miner
STATISTICA Enterprise

© 2017 StatSoft Russia
(495) 787-77-33
(499) 674-06-15
info@statsoft.ru

Авторские права на дизайн и материалы Портала принадлежат компании StatSoft Russia. Все права защищены.

Поделиться в соц. сетях

Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники