ься за допомогою наступної формули
accentLR=vowelNumber - accentRL + 1
де vowelNumber - кількість голосних у слові;
accentRL - ударна позиція, яка відлічується справа наліво.
Таким чином, отримуємо функцію з двома параметрами:
F (v, a)
Де v - кількість голосних у слові;
a - ударна позиція, яка відлічується зліва направо.
Відбувається аналіз слова по гласним від 1 до v. У випадку, коли v=a, в ритмічний малюнок записується «/», який означає ударний склад. У випадку, коли v? a, записується «-», що означає безударний склад. Наприклад, слово «комп'ютер» буде мати вигляд «-/-» .. Слово немає у словнику
У схему записується «?» стільки разів, скільки в поточному слові міститься голосних. Наприклад, слово «процесор» буде записано як «? ? ? ».
Якщо зустрічається порожній рядок, що означає нову строфу, в ритмічний малюнок також записується порожній рядок.
У результаті цієї процедури отримуємо готовий ритмічний малюнок вірша.
. 4 Збір статистичних відомостей
На даному етапі відбувається аналіз строф для виявлення найбільш часто зустрічаються фрагментів. Це необхідно для подальшої побудови еталонного ритмічного малюнка. Суть збору відомостей зводиться до підрахунку кількості знаходжень кожного з двох елементів («-» і «/») ритмічного малюнка в кожній з позицій. Інші елементи («X» і «?») При розборі ігноруються системою, тому що такі елементи не допоможуть у побудові якісного еталонного ритмічного малюнка.
Для оптимальної організації обліку даних вводиться матриця:
M (Ae)
Де А={«-», «/»} - алфавіт ритмічного малюнка (кількість рядків матриці);
e - кількість елементів у строфі ритмічного малюнка (кількість стовпців матриці);
елементи матриці - лічильники кількості входжень відповідного елемента ритмічного малюнка у відповідній позиції.
Заповнення матриці здійснюється під час розбору рядків кожної строфи. Кінець строфи - порожній рядок, сигналізує про те, що нумерація рядків починається з початку, після чого здійснюється розбір черговий строфи. У результаті аналізу всіх строф отримуємо готову таблицю з необхідними для формування еталонного ритмічного малюнка даними.
4.5 Формування еталонного ритмічного малюнка
Система готова до створення еталонного ритмічного малюнка. На основі матриці (9), система приступає до побудови гіпотез. Залежно від співвідношення значень стовпця, які стосуються одного кортежу, можливі такі ситуації:
· Якщо елемент a зустрічається більше одного разу, а елемент b не зустрівся одного разу, в еталон записується елемент a;
· Якщо елемент a зустрічається більш ніж в 4 рази частіше, ніж елемент b, в еталон записується елемент a;
· Якщо елемент a зустрічається менш ніж в 4 рази частіше, ніж елемент b, в еталон записується елемент a, що означає те, що в даній позиції найймовірніше розташування елемента a, ніж елемента b («=» для елемента «-» і «%» для елемента «/»);
· Якщо елемент a зустрічається стільки ж разів, скільки елемент b, в еталон записується знак невизначеності - «X»;
В результаті отримуємо еталонний ритмічний малюнок.
. 6 Розстановка наголосів у невідомих словах і занесення слів у словник
Система бере для аналізу вихідний ритмічний малюнок. У ньому вона знаходить строфи, в яких є невідомі слова по наявності в строфі «?» Елементів. Після цього здійснюється паралельне зчитування слів вірша і елементів вихідного ритмічного малюнка (голосна у вірші=знак ударності/ненаголошеності в ритмічному малюнку). По позиції «?» Елемента у вихідному ритмічному малюнку система знаходить елемент еталонного ритмічного малюнка, розташованого в аналогічній позиції і покроково заміняє елементи вихідного ритмічного малюнка елементами еталона. Наприклад, невідоме слово «картина», записане у вихідному ритмічному малюнку як «? ? ? », Має визначитися як« -/- ». За отриманим ритмічному малюнку система зможе автономно вирішити, в яку категорію словника наголосів слід додати дане слово.
Для цього знову вводиться функція (8). Вона бере значення своїх параметрів на основі нової ритмічної схеми слова. Для функції слова «клавіатура» параметр v буде дорівнює 5, а параметр a - 4. Далі використовується модифікована формула (7) для визначення категорії словника, яку слід доповнити даними словом
(10) accentRL=vowelNumber - accentLR + 1