Частотний аналіз тексту: особливості і приклади

З цим поняттям ви не раз зустрічалися в житті, якщо вам доводилося працювати з текстами. Зокрема, ви могли звертатися до онлайн-калькуляторів, здійснює саме частотний аналіз тексту. Ці зручні інструменти показують, скільки разів той чи інший символ або літера зустрічалися в якому-небудь уривку тексту. Нерідко показується і процентне співвідношення. Навіщо це потрібно? Як частотний аналіз тексту сприяє “злому” простих шифрів? У чому його суть, хто його винайшов? На ці та інші важливі питання по темі ми відповімо по ходу статті.

Визначення

Частотний аналіз виступає однією з різновидів криптоаналізу. Він ґрунтується на припущенні вчених про існування статистичного нетривіального розподілу окремих символів та їх закономірних послідовностей як у відкритому, так і шифрованому видах тексту.

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

Характеристка процесу

Розберемо тепер частотний аналіз простою мовою. Тут мається на увазі, що кількість появ одного і того ж символу алфавіту в текстах достатньої довжини одне і те ж у різних текстах, написаних на одному і тому ж мовою.

І що тепер з моноалфавитным шифруванням? Передбачається, що якщо на ділянці з шифрованим текстом буде символ з такою аналогічної ймовірністю появи, то реально припустити, що саме він і є та зашифрована літера.

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

Історія методу

Частотний аналіз слів не є знахідкою сучасності. Науковому світові він відомий ще з 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-грамі (“шубу норкову купити”).

Але сьогодні пошукові алгоритми навчилися визначати переоптімізацію так само ефективно, як і переспам – перенасиченість тексту ключовими словами, тегами, які впливають на ранжирування результатів на сторінці пошуку. Надмірно оптимізовані сторінки тепер, навпаки, отримують більш низьке положення за запитом користувача. Та й самі люди не прагнуть читати безглуздий, перенасичений тегами текст, віддаючи йому корисну інформацію на іншому ресурсі.

Допомога частнотного аналізу СЕО-фахівців

Таким чином, сучасні текстові фільтри пошукових систем сьогодні віддають перевагу тим інтернет-сторінки, інформація на яких не тільки зручно читається, але і корисна відвідувачам. Щоб оптимізувати свою роботу під нові стандарти, СЕО-спеціалісти і звертаються до частотного аналізу тексту. Його надають сьогодні багато популярні сервіси.

Частотний аналіз допомагає переглянути готується до публікації текст на інформативність. Виключити непотрібну надмірність тегів і ключових фраз. Дозволяє також звернути увагу автора і на неприродні сполучення слів, які викликають підозру у текстових фільтрів пошукових систем.

Частотний аналіз тексту, таким чином, допомагає визначити частоту згадування того чи іншого символу в джерелі. Метод сьогодні застосовується для оцінки перенасиченість тексту тегами, неприродними перестановками слів.