7.1 Алгоритм ELVIRS для окремо вимовлених слів
Архітектура
Архітектура системи розпізнавання ELVIRS (Extra Large Vocabulary Speech recognition based on the Information Retrieval) показана на мал. 4. Такі блоки з базової системи як обчислення ознак і акустичних моделей використовуються перед першим проходом алгоритму.
Також на другому проході використовується звичайне порівняння образів в умовах обмеженого словника
Зміни торкаються введення першого проходу алгоритму, де фонетичний стенограф використовується для отримання послідовності фонем. Потім процедура вибірки інформації створює обмежений словник (підсловник) для другого проходу алгоритму.
Фонетичний стенограф
Алгоритм фонетичного стенографа[2] створює фонетичну послідовність для мовного сигналу незалежно від словника. Для цього будується деякий автомат породження фонем, який може синтезувати всі можливі моделі мовних сигналів для послідовності фонем. Потім використовується пофонемне розпізнавання для невідомого мовного сигналу.
Використовуються ті ж контекстно-незалежні моделі фонем, що і в базовій системі розпізнавання.
Процедура отримання підсловника з бази даних
Заздалегідь в процесі навчання із словника транскрипцій створюється індекс від трійок фонем до транскрипцій. Ключем індексу є трійка фонем. Таким чином, таблиця індексу складається з M3 входжень, де M є число фонем в системі. Кожне входження в таблицю містить список транскрипцій, в які входить трійка фонем ключа входження.
Процес отримання підсловника ілюструється. Вихід фонетичного стенографа ділиться на трійки фонем із зрушенням на одну фонему. Трійка фонем стає запитом до бази даних. Зараз використовується простий запит, коли він в точності співпадає з трійкою фонем. В майбутньому пропонується використовувати відстань Levensteine для врахування вставок, видалень та замін в послідовності фонем. Таким чином, послідовність фонем продукує потік запитів до бази даних.
Відповідь на один запит складається із списку транскрипцій, в які дана трійка фонем входить. Цей список копіюється в підсловник для другого проходу алгоритму. Наступний запит з потоку додає нову порцію транскрипцій, при цьому підраховується кількість повторень для того, щоб можна було обчислити ранг слова в підсловнику.
Всі транскрипції в одержаному підсловнику упорядковуються згідно рангу слова (лічильнику повторень). Перші N транскрипцій заносяться в остаточний підсловник для другого проходу алгоритму. Таким чином, підсловник для розпізнавання містить транскрипції з найвищими рангами і число транскрипцій не перевищує фіксованого числа N.
Алгоритм ELVIRS
Алгоритм ELVIRS складається з двох частин. Підготовчий етап:
• Підготувати словник для розпізнавання.
• Вибрати множину фонем і створити транскрипції слів із словника за допомогою правил.
• Створити індекс бази даних від трійок фонем до транскрипцій.
• Навчити акустичні моделі по накопичених мовних сигналах.
Етап розпізнавання:
• Застосувати фонетичний стенограф до вхідного сигналу для отримання послідовності фонем.
• Поділити послідовність фонем на трійки фонем із зрушенням в одну фонему.
• Створити запити до БД з трійок фонем
• Одержати списки транскрипцій за допомогою запитів до індексу бази даних.
• Упорядкувати транскрипції до їх рангу.
• Вибрати перші N транскрипцій з найвищими рангами як підсловник для розпізнавання.
• Розпізнати вхідний мовний сигнал в умовах обмеженого підсловника.[5]
Інформаційна оцінка імовірності правильного формування підсловника
Відповідь розпізнавання фонетичного стенографа може розглядатися як правильна послідовність фонем, пропущена через канал з шумом. Позначимо у відповіді фонетичного стенографа правильну фонему як 1, а зіпсовану шумом як 0. Нехай імовірність появи 1 в двійковому наборі дорівнює u. Імовірність P знайти в двійковому наборі довжини n підряд k одиниць і більше можна обчислити за допомогою наступного рекурентного виразу:
(12)В таблиці показана імовірність P знайти в двійкових наборах підряд три і більше 1 при деяких довжинах n та імовірності u. Середня довжина транскрипцій дорівнює приблизно 8 і імовірність правильного знаходження фонеми у відомих реалізацій приблизно дорівнює 85%. При таких значеннях імовірність знайти правильне слово в підсловнику дорівнює 0.953.
Таблиця 3: Імовірність знайти підряд три і більше 1 в двійковому наборі довжини n
0.75 | 0.8 | 0.85 | 0.9 | |
6 | 0.738 | 0.819 | 0.890 | 0.948 |
7 | 0.799 | 0.869 | 0.926 | 0.967 |
8 | 0.849 | 0.908 | 0.953 | 0.982 |
9 | 0.887 | 0.937 | 0.971 | 0.991 |
10 | 0.915 | 0.956 | 0.981 | 0.995 |
7.2 Алгоритм ELVIRCOS для розпізнавання злитого мовлення
Архітектура
Після отримання списків транскрипцій використовується додаткова процедура формування графа слів для злитого мовлення, яка створює мережу слів для другого проходу алгоритму.
Формування графа слів
Процес створення графа слів показаний на мал. 5. Мережа слів починається з вершини S і закінчується у вершині F. Кожна трійка фонем з відповіді фонетичного стенографа породжує проміжну вершину з номером синхронним до часу появи цієї трійки фонем. З іншого боку кожна трійка фонем стає запитом до індексу бази даних, який повертає список транскрипцій. Транскрипції вставляються між проміжними вершинами так, щоб трійки фонем опинилися в одній колонці по вертикалі.
У випадку, коли відбувається перетин транскрипцій одного слова, породженими різними трійками фонем, тоді ранги цих транскрипцій збільшуються на одиницю. Для кожного моменту часу можна підрахувати число транскрипцій тих, що входять у цей проміжок часу.
Для зменшення складності графа слів використовується обмеження N для кількості слів в кожен момент часу. При цьому віддаляються слова з малими рангами.
Оскільки граф слів формується зліва направо можна проводити його формування у реальному часі із затримкою, яка дорівнює максимальній довжині транскрипції.
Відповідь фонетичного стенографа
# с г в а + с н , ъ й е #
мал. 5. Формування графа слів для злитого мовлення
Алгоритм ELVIRCOS
Алгоритм ELVIRCOS складається з двох частин. Підготовчий етап такої ж, як і в алгоритмі ELVIRS. Етап розпізнавання:
• Застосувати фонетичний стенограф до вхідного сигналу для отримання послідовності фонем.
• Поділити послідовність фонем на трійки фонем із зрушенням в одну фонему.
• Створити запити до БД з трійок фонем
• Одержати списки транскрипцій за допомогою запитів до індексу бази даних.
• Створити граф слів для злитого мовлення.
• Упорядкувати транскрипції до їх рангу.
• Вибрати перші N транскрипцій з найвищими рангами як підсловник для розпізнавання.
• Розпізнати вхідний мовний сигнал для графа злитої мови в умовах обмеженого підсловника.[5]
8. Експериментальні результати
Для того, щоб ввести перший прохід алгоритму ELVIRCOS в базову систему розпізнавання мови були зроблені необхідні зміни в інструментарії і проведені декілька експериментів.
Для окремо вимовлених слів досліджувався вплив обмеження N на середній час і надійність розпізнавання мовлення для словників різного об'єму, що наведені в таблиці 4. Результати показують корисність обмеження N для словників великих об'ємів, що дозволяє додатково скоротити час розпізнавання при незначному погіршенні надійності.
В цілому одержано значне скорочення часу розпізнавання в сотні разів при відносно невеликому (близько 5%) погіршенні надійності в порівнянні з базовою системою розпізнавання. Погіршення надійності має хороший збіг з оцінкою імовірності правильного формування підсловника.
Таблиця 4: Результати алгоритму ELVIRS
Об'єм словника, тисОбмеження N на розмір підсловника | 15 | 95 | 1987 | |||
Надійн. % | Час, сек. | Надійн. % | Час, сек. | Надійн. % | Час, сек. | |
50 | 92.2 | 1.4 | 81.0 | 1.4 | 69.2 | 1.6 |
200 | 94.6 | 1.6 | 87.6 | 2.1 | 76.0 | 1.9 |
500 | 95.5 | 1.9 | 90.1 | 2.5 | 80.0 | 3.3 |
1000 | 96.0 | 2.1 | 90.7 | 3.1 | 82.7 | 4.4 |
2000 | 96.0 | 4.4 | 92.0 | 4.5 | 84.8 | 6.8 |
5000 | 96.0 | 4.6 | 92.9 | 8.3 | 86.4 | 12.0 |
Для злитого мовлення були проведені попередні експерименти, в яких розглядався випадок, коли обмеження N співпадало з розміром словника. У таблиці 5 наведені показники надійності для різних розмірів словника.
Таблиця 5: Результати алгоритму ELVIRCOS
Об'єм словника, тис | 15 | 95 | 1987 |
Надійність, % | 85.3 | 84.9 | 83 |
Час, сек | 2.3 | 9.4 | 160 |
Зменшення середнього часу розпізнавання не настільки значне, як у випадку окремо вимовлених слів, оскільки деякі послідовності фонем від фонетичного стенографа породжують графи слів дуже великої розмірності. Сподіваємося, що введення обмеження N істотно зменшить час розпізнавання.[5]
Слід підкреслити важливість підходів вибірки інформації з баз даних для процесу розпізнавання мови. Показано, що додаткове джерело інформації, одержане з аналізу послідовності фонем від фонетичного стенографа, дозволило значно скоротити простір пошуку в алгоритмі розпізнавання мови. Це дозволило створити системи розпізнавання мови, що охоплюють практично всі слова мови.
Список використаної літератури
1. http://www.genetics.wustl.edu/eddy
2. http://www.lib.ua-ru.net/diss/cont/9307.html
3. http://www.nbuv.gov.ua/e-journals/VNTU/2007-1/ukr/07gtvmco.pdf
4. http://www.ru.wikibooks.org/wiki/
5. http://www.teormin.ifmo.ru/education/machine-learning/notes-06-hmm.pdf
6. http://www.uk.wikipedia.org