asyan.org
добавить свой файл
  1 2 3

Розпізнавання злитної мови з великим словником



Сучасні системи для розпізнавання злитної мови з великим словником грунтуються на принципах статистичного розпізнавання образів. На рис.42 показана структура типової системи статистичного розпізнавання. Вона включає чотири складових.



рис.42 Структура системного розпізнавання мови
Розглянемо кожну з цих чотирьох складових більш детально.

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

Принципове припущення, яке робиться в сучасних розпізнавачах [1,4] є те, що мовний сигнал розглядається як стаціонарний (тобто спектральні характеристики відносно постійні) на інтервалі в кілька десятків мілісекунд. Тому основною функцією попередньої обробки є розбити вхідну мову на інтервали [1,4] і для кожного інтервалу отримати згладжену спектральну оцінку. Зсув між інтервалами звичайно рівний 10 мс. Інтервали, як правило , перекриваються і мають тривалість 25 мс. Як звичайно для обробки такого типу до кожного інтервалу на початку застосовується функція вікна (наприклад, вікно Хемінга). Часто застосовують високочастотне підсилення, щоб компенсувати послаблення, спричинене розсіюванням від губ.

Щоб отримати спектральні оцінки використовується швидке перетворення Фур’є.

Фур’є спектр згладжується додаванням спектральних коефіцієнтів у межах “трикутних” частотних смуг розташованих на нелінійній (подібній до логарифмічної) Mel-шкалі [4]. Для граничної частоти мови рівної 16 КГц беруть 24 таких частотних смуги. Mel-шкала введена для наближення частотного розділення людського вуха, яке є лінійним до 1000 Гц та логарифмічним понад 1000 Гц.

З метою зробити статистику оціненого спектру потужності мови близькою до Гауссової до виходів набору фільтрів застосовують логарифмічний стиск.

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

Є ряд додаткових перетворень, які можна застосувати для отримання остаточного звукового вектора.

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

Компоненти логарифму енергії даного мовного зразка, які менші від максимального значення на 50 дБ, заміняються на значення цього порогу. Потім всі значення логарифму енергії масштабуються так, що максимальне значення стає рівним 1,0.

Припускається, що кожен звуковий вектор не зв’язаний зі своїми сусідами. Це досить грубе припущеня, бо фізичні обмеження голосового тракту людини передбачають плавні переходи між сусідніми спектральними оцінками. Проте додавання різниць та різниць різниць базових елементів значно пом’якшує припущення. Переважно для цього беруться два попередні та два наступні вектори. У результаті отримуємо 39-елементний вектор [4]. Кілька інших можливих варіантів отримання звукових векторів описано в [6].

Звукова модель. Мета звукової моделі – дати метод обчислення правдоподібності будь-якої послідовності звукових векторів при заданій послідовності слів.

У принципі потрібний розподіл імовірностей звукових векторів можна було б знайти маючи багато зразків кожної послідовності слів та збираючи статистику відповідних послідовностей векторів. Проте це нереально для систем розпізнавання з великим словником.

Замість цього в звуковій моделі послідовності слів розбиваються на базові “будівельні” блоки. Кожен базовий блок представляється прихованою моделлю за Марковим (англійська назва – hidden Markov model (HMM)). HMM-модель має формальні вхідний і вихідний стани та ряд породжуючих станів (рис.43). Вхідний і вихідний стани дозволяють моделям об’єднуватися, щоб утворювати послідовності слів [1,4,5].


рис.43 HMM-модель базових блоків

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

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

Ця проблема настільки серйозна, що використовуються додаткові еврістичні обмеження [4,8]:

1.Розподіли ймовірностей появи звукових векторів для різних станів моделей можуть бути зв’язані, тобто користуватися тими самими параметрами. Звичайно це корисно лише тоді, коли вони представляють подібні звукові ситуації [8,9].

2.Коваріаційна матриця розподілів припускається діагональною.

3.Число розподілів Гаусса, сума яких моделює розподіл імовірностей для стану, може змінюватися, щоб досягти найкращого балансу між гнучкістю моделювання і складністю.

Перед тим, як HMM може бути застосована, повинні бути визначені її параметри. Цей процес називають навчанням. Він вимагає три елементи.

1. Навчальну базу даних, у якій є мовні записи та відповідні їм тексти.

Для англійської мови існує багато загальнодоступних баз даних мовних зразків (ISOLET, CONNEX,Resource Management Database, Wall Street Journal Database та інші [1-5] ). Створення таких баз даних для української мови є завданням на часі.

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

2 Цільову функцію, яка разом з навчальною базою даних може бути використана, щоб поміряти “відповідність” HMM.

Найбільш широко вживаними є три типи цільових функцій: максимальної правдоподібності, максимальної взаємної інформації, міжінтервальної відмінності, і завданням є вибрати одну з них.

3. Процедуру оптимізації, яка може бути використана, щоб максимізувати цільову функцію.

При цьому найчастіше використовується рекурсивний у часі алгоритм Баума-Велча для повторного оцінювання параметрів моделі [1,4].

Під час навчання процедура оптимізації використовується, щоб знайти вектор параметрів HMM, який має високу відповідність.

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

Простий, але ефективний шлях [4] зробити це – використати N-ки слів, у яких приймається, що дане слово залежить лише від попередніх (N-1)-слів. N-ки слів одночасно мають у собі граматику, смисл і предметну область та зосереджуються на локальних залежностях. Більш того, розподіли ймовірностей для N-ок можна обчислити прямо з текстових навчальних даних. Тому не потрібно мати такі точні лінгвістичні правила, як формальна граматика мови.

У принципі, N-ки можна оцінити простим підрахунком частоти повторюваності слова в навчальних текстах. Як правило, приймають N=3.

Проблема полягає в тому, що при словнику L слів є L3 можливих трійок. Навіть для помірного словника в 5000 слів це дуже велике число. Тому багато трійок не з’явиться в навчальних даних, а багато інших з’явиться лише раз чи двічі. Внаслідок цього отримані для них оцінки будуть нереальними.

Підхід до вирішення цієї проблеми полягає в тому, що оцінки трійок, які найчастіше з’являються, зменшуються, а отримана залишкова ймовірнісна маса розподіляється між трійками, що рідко зустрічаються [4].

Класифікатор. Ця складова системи зводить воєдино дані від трьох раніше описаних компонент і знаходить найбільш імовірний текст (транскрипцію).

Як правило, усі можливі гіпотези відслідковуються паралельно. Цей підхід спирається на принцип оптимальності Белмана (динамічного програмування) і його часто називають алгоритмом Вітербі [4,7].

Із-за складності сучасних систем розпізнавання мови суттєвим завданням є звуження області пошуку найбільш імовірної гіпотези.

Обчислення за алгоритмом Вітербі ведуться послідовно (рекурсивно) в часі. Для обмеження пошуку вводиться поняття активного стану. Оцінка V(t) прадоподібності гіпотези в момент часу t обчислюється, коли вона досяжна з активного стану в момент часу t-1. Активні стани – це такі стани гіпотез, для яких оцінка V(t-1) близька до max V(t-1). Якщо ретельно вибрати поріг, який задає близькість оцінок V(t-1) та max V(t-1),то цей еврістичний прийом значно зменшує обсяг обчислень при незначному погіршенні точності розпізнавання.

Попередня обробка ISOLET.
Для бази даних ISOLET були використані стандартні Mel- частотні коефіцієнти косинусного перетворення Фур’є, MFCC, попередня обробка, що створена HTK Hcodde V1.3. Їх створення ілюстроване на формулі 6.1 , а кроки описані більш детально нижче:

  1. Оцифрована мова розбивається на блоки по 25.6 мс кожні 10 мс , тобто, 409 блоків як відбитки 160-ти.

  2. Блоки пропускаються через перший по порядку фільтр

(6.1)

де Sn – n-на мовна виборка в блоці.

  1. До блоку застосовується вікно Гемінга. Таким чином,

для n =1...409 (6.2)

4. Блок збільшується до 512 елементів за рахунок кінцевих нулів. Після цього застосовується дискретне перетворення Фурє для отримання 256 комплексних спектральних доменних значень.

5. Величини останніх 255 комплексних спектральних значень усереднюються ( тобто, нульовий терм ігнорується.) Усереднення реалізуються як 24 трикутні смугопропускні фільтри. Частоти/індекси нижньої границі, середнього вузла і верхньої границі подані в табл. 6.1 . Їх розбивка вибирається для апроксимації Mel-шкали, що подана нижче :

g=2595 log10(1+ f / 700)

де g – частота в Mel,

f – частота в Герц.

6. 24 значення логарифмуються.

7. Обраховуються перші 12 значень дискретного косинусного перетворення.

for i=1…12 (6.4)

де mjзначення логарифму від j-го Mel-усереднення.

8. В кінець додається тринадцятий елемент, енергія поточного фрейму .

  1. Далі додаються подальші 26 елементів. Це”delta” та “delta-delta” коефіцієнти. 13 “дельт” [O(u)t]14,….,[O(u)t]26, апроксимують степінь зміни базових коефіцієнтів косинусного перетворення Фурє та енергетичних коефіцієнтів і обчислюються :



13 “дельта-дельт” , які апроксимують прискорення базових коефіцієнтів косинусного перетворення Фурє та енергетичних коефіцієнтів, обраховуються за наведеною вище формулою.

  1. Кожний логарифмічний енергетичний профіль запису сканується і низькочастотні

значення заміняються значенням на 50дБ нижче пікового значення. Потім енергетичний профіль масштабується таким чином, щоб пікове значення було 1.0.
Сучасні системи для розпізнавання суцільної мови з великим словником грунтуються на принципах статистичного розпізнавання образів [1].

На першому етапі мовний зразок перетворюється акустичним процесором на послідовність акустичних векторів . Кожен вектор є стислим поданням короткочасного мовного спектру на інтервалі, як правило, близько 25 мс зі зсувом інтервалів на 10 мс. Типова фраза з десяти слів по 6-7 звуків у кожному може мати тривалість біля 3 с і представлятися послідовністю з Т=300 акустичних векторів.

У загальному, фраза складається з послідовності слів . Робота системи розпізнавання полягає у визначенні найбільш імовірної послідовності слів , маючи акустичний сигнал Y. Для цього використовується правило Байєса [1]:

.

Ця рівність показує, що для знаходження найбільш правдоподібної послідовності слів W, повинна бути знайдена послідовність, що робить максимальним добуток P(W) та P(Y/W).Так як знаменник P(Y) не залежить від W, то його при розпізнаванні ігнорують.

Перший із співмножників представляє апріорну ймовірність спостереження W незалежно від спостереження мовного сигналу. Ця ймовірність визначається моделлю мови.

Другий співмножник представляє ймовірність спостереження послідовності векторів Y при заданій послідовності слівW. Ця ймовірність визначається акустичною моделлю.

В акустичній моделі послідовності слів розбиваються на базові звуки – фонеми. Кожна індивідуальна фонема представляється прихованою моделлю за Марковим (англійська назва – hidden Markov model (HMM)). HMM-модель фонеми, як правило, має три породжуючі стани та вхідний і вихідний стан. Вхідний і вихідний стани дозволяють моделям фонем об’єднуватися, щоб утворювати слова, та об’єднувати слова, щоб утворювати речення (послідовності слів).

Вважається, що число фонем в українській мові рівне 38 [2]. Здавалось би, потрібно здійснити навчання лише 38 HMM-моделей. На практиці, проте, контекстні ефекти спричиняють значні зміни у способі утворення звуків (так зване явище коартикуляції). Тому, щоб досягти доброго фонетичного розрізнення, треба навчати різні HMM для різних контекстів.

Найбільш загальним є підхід з використанням трифонів, коли кожна фонема має окрему HMM-модель для кожної індивідуальної пари сусідів зліва та справа [1]. В останніх публікаціях згадується і про використання квінфонів [3,4].

Наприклад, нехай позначення x-y+z представляє фонему y, що трапилась після x і перед z. Тоді фраза “Цей комп’ютер” подається послідовністю фонем  ц е й к о м п й у т е р , де  позначає паузу. Якщо використовуються HMM-моделі трифонів, то фраза буде моделюватися наступним чином:

-ц+е ц-е+й е-й+к й-к+о к-о+м о-м+п м-п+й п-й+у й-у+т у-т+е т-е+р е-р+

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

При 38 фонемах є 383=54872 можливих трифони, проте не всі трапляються через обмеження української мови.

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

Використання лінійної комбінації багатовимірних розподілів Гаусса дозволяє промоделювати розподіл акустичного виходу для кожного породжуючого стану дуже точно [1]. Проте, коли використовуються трифони, отримуємо систему з надто великою кількістю параметрів, які треба оцінити (здійснити навчання). Приблизно 10 компонент лінійної комбінації дають добрі показники для системи розпізнавання. Припускається, що всі коваріаційні матриці розподілів Гаусса є діагональними, а довжина акустичного вектора рівна 39 (енергія фрагменту сигналу + 12 значень кепстру + їх “дельти” та “дельти дельт”). Тоді на один стан треба 790 параметрів. Отже, 4000 трифонів з трьома породжуючими станами вимагають близько 9,5 мільйона параметрів.

Ця проблема надто великого числа параметрів та надто малого обсягу навчальних даних є ключовою при розробці систем статистичного розпізнавання мови. Для вирішення цієї проблеми використовується зв’язування станів [1,3,4]. Ідея полягає в тому, щоб зв’язати стани, які акустично не відрізняються. Це дозволяє всі дані, які відповідають кожному індивідуальному станові, об’єднати і за допомогою цього дати більш робастні оцінки параметрів зв’язаного стану. Після зв’язування ряд станів використовують один і той самий розподіл.

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

Для випадку трифонів питання відносяться до фонетичного оточення (контексту) безпосередньо зліва і справа. Одне дерево будується для кожного стану кожної фонеми, щоб розбити на підмножини всі відповідні стани всіх відповідних трифонів.

Основні питання, зв’язані з вузлами дерева, які пропонується використовувати для розпізнавання української мови, наведені нижче (П позначає правий контекст, а Л – лівий контекст):
рис.44



рис.45

П – пауза, Л - пауза,

П – голосна, Л – голосна,

П – наголошена, Л – наголошена,

П – вокалізована, Л – вокалізована,

П – носова, Л – носова,

П – невокалізована, Л – невокалізована,

П – щілинна, Л – щілинна,

П – дзвінка вибухова, Л - дзвінка вибухова.

Крім того, можна використовувати питання, які відносяться до конкретних наборів контекстів. Питання в кожному вузлі вибирається так, щоб максимізувати правдоподібність навчальних даних, які даються відповідними зв’язаними станами.

Наведений малюнок ілюструє випадок зв’язування центральних станів усіх трифонів фонеми [о] з використанням фонетичного вирішуючого дерева. Малі кола у верхній частині малюнку позначають вхідний та вихідний стани трифонів, а великі кола – породжуючі стани трифонів.

У нижній частині малюнка зображено фонетичне вирішуюче дерево. Зафарбовані кола позначають кінцеві вузли дерева. Усі стани в тому самому кінцевому вузлі дерева зв’язуються. Так, центральний стан трифону а-о+ч потрапить у другий зліва кінцевий вузол дерева.

При розпізнаванні великого словника виникає проблема швидкого навчання. Повинні бути заготовлені еталони десятків тисяч слів. Щоб полегшити роботу, будемо тримати

  1. еталони звуків (як мовні сигнали) ;

  2. текстовий словник;

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

    • зразки звуків в різних словах одного і того ж диктора сильно відрізняються.

    • кожен звук залежить від попереднього і наступного.

В українській мові 38 звуків. Отже, може бути 383 різних варіантів (54872 варіанти).

Приходимо до розгляду трифонів. Трифони розбиваються на групи тих, які при вимові подібні.

Приклад :

Y – [0] – z =382 ≈ 1444

Розподіл звуків :

- голосні

- вокалізовані

- невокалізовані

- вибухові

Тоді кількість 383 трифонів зменшується до 2000 – 3000 зв’язаних трифонів . Перевага :

    • диктор чи декілька дикторів вільно читають тексти.

    • мовні сигнали вищої якості.

Існує спроба виконання квінфонів.







<< предыдущая страница