С этим понятием вы не раз встречались в жизни, если вам приходилось работать с текстами. В частности, вы могли обращаться к онлайн-калькуляторам, осуществляющим именно частотный анализ текста. Эти удобные инструменты показывают, сколько раз тот или иной символ или буква встречались в каком-либо отрывке текста. Нередко показывается и процентное соотношение. Зачем это нужно? Как частотный анализ текста способствует "взлому" простых шифров? В чем его суть, кто его изобрел? На эти и другие важные вопросы по теме мы ответим по ходу статьи.
Определение
Вам будет интересно:Формулы ускорения в физике: линейное и центростремительное ускорение
Частотный анализ выступает одной из разновидностей криптоанализа. Он основывается на предположении ученых о существовании статистического нетривиального распределения отдельных символов и их закономерных последовательностей как в открытом, так и шифрованном видах текста.
Считается, что подобное распределение с точностью до замены отдельных символов будет сохраняться также в процессах шифрования/дешифрования.
Характеристка процесса
Разберем теперь частотный анализ простым языком. Здесь подразумевается, что количество появлений одного и того же символа алфавита в текстах достаточной длины одно и то же в различных текстах, написанных на одном и том же языке.
Вам будет интересно:Как правильно: ЗАКС или ЗАГС?
И что теперь с моноалфавитным шифрованием? Предполагается, что если в участке с шифрованным текстом будет символ с такой аналогичной вероятностью появления, то реально предположить, что именно он и есть та зашифрованная буква.
Такие же рассуждения последователи частотного анализа текста применяют и по отношении к биграммам (последовательностям из двух букв). Триграммам - это для случая уже полиалфавитных шифров.
История метода
Частотный анализ слов не является находкой современности. Научному миру он известен еще с IX века. Его создание связывают с именем Ал-Кинди.
Но известные случаи применения метода частотного анализа относятся к гораздо более позднему периоду. Самым ярким примером здесь можно назвать дешифровку египетских иероглифов, произведенную в 1822 году Ж.-Ф. Шампольоном.
Если мы обратимся к художественной литературе, то можем найти немало любопытных отсылов к подобному методу дешифровки:
- Конан Дойль - "Плящущие человечки".
- Жюль Верн - "Дети капитана Гранта".
- Эдгар По - "Золотой жук".
Однако начиная с середины прошлого века большинство используемых алгоритмов в шифровании разрабатывается с учетом их устойчивости к подобному частотному криптоанализу. Поэтому его сегодня применяют чаще всего лишь для обучения будущих криптографов.
Вам будет интересно:Азбука – это начало всех знаний
Основа метода
Представим теперь анализ частотных характеристик детально. Эта разновидность анализа прямо базируется на том, что тест состоит из слов, а те, в свою очередь, из букв. Количество букв, наполняющих национальные алфавиты, ограничено. Буквы могут быть тут просто перечислены.
Важнейшими характеристиками подобного текста будет как повторяемость букв, различных биграмм, триграмм и n-грамм, так и сочетаемость различных букв друг с другом, чередование согласных/гласных и других разновидностей данных символов.
Главная идея методов - в подсчете вхождений из возможных n-грамм (обозначается nm) в достаточно длинных для анализа открытых текстах (обозначаются T=t1t2…tl), составленных из букв национального алфавита (обозначаются {a1, a2, ..., an}). Все вышеперечисленное обуславливает некоторые идущие подряд m-граммы текста:
t1t2...tm, t2t3... tm+1, ..., ti-m+1tl-m+2...tl.
Если это – количество появлений m-граммы ai1ai2...aim в определенном тексте T, а L – общее число проанализированных исследователем m-грамм, то опытным путем возможно установить, что при достаточно больших L частоты для такой m-граммы будут мало чем отличаться друг от друга.
Часто встречающиеся буквы русского алфавита
А вот частотно-временной анализ, несмотря на похожее название, к теме нашего разговора никакого отношения не имеет. Такого рода анализ осуществляется в отношении сигналов малозаметных радиолокационных станций при помощи специального вейвлет-преобразования.
Вернемся теперь к главной теме. При проведении частотного анализа можно выяснить, какие буквы русского алфавита встречаются в достаточно объемных текстах чаще всего (процентное отношение от 0,062 до 0,018):
- А.
- В.
- Д.
- Ж.
- И.
- К.
- М.
- О.
- Р.
- Т.
- Ф.
- Ц.
- Ш.
- Ь.
- Э.
- Я.
Введено даже специальное мнемоническое правило, которое помогает усвоить самые распространенные буквы русского алфавита. Для этого достаточно запомнить всего одно слово - "сеновалитр".
В общих случаях частота использования букв в процентном выражении устанавливается просто: специалист подсчитывает, сколько раз буква встречается в тексте, затем делит получившееся значение на общее количество символов в тексте. А для выражения данной величины в процентах достаточно умножить ее на 100.
Важно учитывать, что частотность будет зависит не только от объема текста, но также и от его характера. К примеру, в технических источниках буква "Ф" фигурирует гораздо чаще, нежели в художественных. Поэтому для объективных результатов специалист должен набирать для исследования тексты различного характера и стилистики.
Би-, три-, четырехграммы
В осмысленных текстах также можно встретить самые распространенные (соответственно, самые повторяющиеся) сочетания из двух и более букв. Специалистами составлено и несколько таблиц, где указаны частоты подобных биграмм разнообразных алфавитов.
Что касается русского, то частотный анализ систем объемных осмысленных текстов позволил установить самые распространенные биграммы и триграммы:
- ЕН.
- СТ.
- НО.
- НИ.
- НА.
- РА.
- ОВ.
- КО.
- ВО.
- СТО.
- НОВ.
- ЕНО.
- ТОВ.
- ОВА.
- ОВО.
Предпочтительные связи букв друг с другом
И это еще не все возможности, которые может предоставить частотный анализ исследователям текста. Систематизировав информацию из подобных таблиц биграмм и триграмм, реально извлечь данные о самых распространенных сочетаниях букв. Или, другими словами, их предпочтительных связях между собой.
Такое обширное исследование уже было проведено специалистами. Его результатом стала таблица, где вместе с каждой буквой алфавита были указаны ее соседи. Притом те символы, которые часто встречаются как непосредственно перед ней, так и после нее. Буквы в таблице прописаны не случайно. Ближе к символу обозначены самые частые соседи, дальше - более редкие.
Рассмотрим примеры:
- Буква "А". Тут выделяются следующие предпочтительные связи: л-д-к-т-в-р-н-А-л-н-с-т-р-в-к-м. Отсюда мы видим, что чаще всего перед "А" в текстах идет "Н" ("НА"). А после "А" чаще всего в текстах на русском языке мы можем встретить "Л" ("АЛ").
- Буква "М". Специалисты выделили такие предпочтительные связи: "я-ы-а-и-е-о-М-и-е-о-у-а-н-п-ы".
- Буква "Ь". Предпочтительные связи следующие: "н-с-т-л-Ь-н-к-в-п-с-е-о-и".
- Буква "Щ". Предпочтительные связи: "е-б-а-я-ю-Щ-е-и-а".
- Буква "П". Предпочтительные связи с данным символом русского алфавита: "в-с-у-а-и-е-о-П-о-р-е-а-у-и-л".
Что определяет анализ?
Современные программы частотного анализа текста помогают изучить большие объемы самых разнообразных статей, сочинений, отрывков и проч. Исследователю стандартно предоставляется следующая информация:
- Общее количество символов в тексте.
- Число использованных автором пробелов.
- Количество цифр.
- Информация об использованных знаках препинания - точках, запятых и проч.
- Количество букв каждого из имеющихся алфавитов - кириллицы, латиницы и проч.
- Информация о частоте использования каждой буквы и символа в тексте - количество упоминаний и процентная величина в сравнении со всем текстом.
Борьба с переоптимизацией и перенасыщенностью
Зачем проводится частотный анализ текста? Только ли с целью любопытства - установить, какие символы в написанном тексте оказались часто встречаемыми? Нет, главное применение анализа - практическое, и оно заключается в другом.
К N-граммам относятся не только устойчивые биграммы и триграммы. К этой же категории можно отнести ключевые слова (теги), коллокации. То есть устойчивые сочетания, состоящие из двух и более слов. Их отличает факт, что такие композиции встречаются в тексте вместе и при этом несут определенную смысловую нагрузку.
Это на руку недобросовестным СЕО-специалистам. В своей работе они порой злоупотребляют повторением в тексте тегов, ключевых слов, чтобы искусственно повысить релевантность той или иной интернет-страницы. Они стараются обмануть систему и таким "фокусом": превращая естественное сочетание с обычным, традиционным для русского языка сочетанием слов ("купить норковую шубу") в несогласованное. То есть, полученное перестановкой слов в такой естественной N-грамме ("шубу норковую купить").
Но сегодня поисковые алгоритмы научились определять переоптимизацию так же эффективно, как и переспам - перенасыщенность текста ключевыми словами, тегами, влияющими на ранжирование результатов на странице поиска. Чрезмерно оптимизированные страницы теперь, напротив, получают более низкое положение по запросу пользователя. Да и сами люди не стремятся читать бессмысленный, перенасыщенный тегами текст, предпочитая ему полезную информацию на другом ресурсе.
Помощь частнотного анализа СЕО-специалистам
Таким образом, современные текстовые фильтры поисковиков отдают сегодня предпочтение тем интернет-страницам, информация на которых не только удобно читаема, но и полезна посетителям. Чтобы оптимизировать свою работу под новые стандарты, СЕО-специалисты и обращаются к частотному анализу текста. Его предоставляют сегодня многие популярные сервисы.
Частотный анализ помогает пересмотреть готовящийся к публикации текст на информативность. Исключить ненужную избыточность тегов и ключевых фраз. Позволяет также обратить внимание автора и на неестественные сочетания слов, которые вызывают подозрение у текстовых фильтров поисковых систем.
Частотный анализ текста, таким образом, помогает определить частоту упоминания того или иного символа в источнике. Метод сегодня применяется для оценки перенасыщенности текста тегами, неестественными перестановками слов.