Леонович А.А.
Введення
З моменту появи перших ЕОМ одним з найбільш важливих питань розвитку комп'ютерної техніки був процес взаємодії людини з машиною. Довгий час це було доступно тільки вузьким фахівцям - технологи «спілкувалися» з машиною через посередника-програміста. Така ситуація проіснувала аж до появи діалогового інтерфейсу, коли користувач зміг особисто вводити з клавіатури адресовану машині команду і отримати осмислений відповідь. Подальше поява графічного інтерфейсу, в якому відпала необхідність у знанні людиною будь-яких команд, привела до повсюдного поширення персональних комп'ютерів.
Однак людина завжди прагнув до більш універсального і природного способу взаємодії з ЕОМ. Ще в епоху перфокарт в науково-фантастичних романах людина з комп'ютером розмовляв, як з рівним собі. Тоді ж були зроблені перші кроки з реалізації мовного інтерфейсу [1] . У 1971 р. була почата розробка найбільшого проекту, коли-небудь робилися на той час в області розпізнавання мови, після того, як Advanced Research Project Agency (ARPA) міністерства оборони США прийняло 5-річний проект по створенню машин, які дозволяють «розуміти »вимовлені злито пропозиції та обсяг словника яких становив 1000 слів. В кінці 1976 р. було представлено кілька систем, однією з яких була HARPY. Ця система правильно розуміла 95% вимовних п'ятьма операторами пропозицій, використовуючи словник обсягом 1011 слів і строго обмежену граматику пропозицій.
Сучасні системи розпізнавання мови
В даний час мовне розпізнавання знаходить все нові і нові області застосування, починаючи від додатків, що здійснюють перетворення мовної інформації в текст і закінчуючи бортовими пристроями управління автомобілем. Все різноманіття існуючих систем розпізнавання мови можна умовно розділити на такі групи:
1. Програмні ядра для апаратних реалізацій систем розпізнавання мови;
2. Набори бібліотек, утиліт для розробки додатків, що використовують мовне розпізнавання;
3. Незалежні користувальницькі додатки, здійснюють мовленнєвий управління та / або перетворення мови в текст;
4. Спеціалізовані програми, що використовують розпізнавання мови;
5. Пристрої, що виконують розпізнавання на апаратному рівні;
6. Теоретичні дослідження і розробки.
Розглянемо кожну з цих груп докладніше.
1. Програмні ядра для апаратних реалізацій
В основі будь мовної технології лежить так званий «engine» або ядро ??програми - набір даних і правил, за якими здійснюється обробка даних. Залежно від призначення цього ядра розрізняють TTS і ASR engine. TTS (Text-to-Speech) engine надає можливість синтезу мови по тексту, а ASR (Automatic Speech Recognition) engine - для розпізнавання мови.
Існує кілька великих виробників, що займаються створенням ASR ядер і серед них такі компанії, як SPIRIT, Advanced Recognition Technologies, IBM.
Компанія SPIRIT займається створенням програмних засобів для цифрової телефонії, стиснення мови, ідентифікації мовця, для технологій VoIP і GPS [2] . ASR engine від SPIRIT розроблений для розпізнавання мовних команд і застосовується в різних додатках, таких як голосове управління пристроями, голосовий набір в hands-free пристроях, введення персональних ідентифікаційних кодів (PIN) в системах безпеки. Д...