Основи на разпознаването на речта в система за диктовка - спектър на науката
Основи на разпознаването на речта в система за диктовка
Системата за разпознаване на реч IBM Speech Server Series (ISSS) преобразува говорения текст в писмен текст в реално време и с изключително висока точност на разпознаване и го показва на екрана (фиг. 1). Той е разработен през последните няколко години в продуктовите лаборатории на IBM в Бока Ратон (Флорида) и Виена, както и в научните центрове в Рим, Париж, Севиля, Хърсли (Великобритания) и Хайделберг. Изследователска група, ръководена от Фредерик Йелинек, Робърт Мърсър и Лалит Бал в изследователската лаборатория на Томас Дж. Уотсън на IBM в Йорктаун Хайтс (Ню Йорк), бе създала основните предпоставки за това развитие чрез основни изследвания.

Понастоящем използването на ISSS изисква така нареченото дискретно говорене, т.е.диктуване с паузи между думите (макар и почти толкова кратки, колкото желаете). Това ограничение беше запазено с цел точност на разпознаването; не е необходимо поради системни причини.
Разпознаването на речев сигнал започва с предварителна обработка: В съответствие с обработката на звука в човешкото ухо, системата първо използва преобразуване на Фурие, за да изчисли колко интензивно присъстват определени фиксирани честоти в звуковия сигнал в съответния момент от времето - по-точно: в рамките на малко по-дълъг предходен интервал от време. Тази информация се взима на всяка стотна от секундата и се предава на следващия етап на обработка като така наречения вектор на характеристиките. Оказа се полезно да се обобщят стойностите на съседните моменти във времето и да се извлече информацията, която е важна за разграничаването, чрез статистически метод, така нареченият дискриминант анализ. Така получените по този начин усъвършенствани характеристики на векторите вече съдържат основната информация в съкратена форма.
Ако артикулираме определен звук - например a - векторите на характеристиките, открити през това време, ще бъдат по-подобни един на друг, отколкото вектор на характеристика за друг звук. Ако някой си ги представи - както е обичайно при векторите - като точки във високоизмерно пространство, тогава характеристичните вектори или точки, принадлежащи на определен звук, образуват облак в това пространство. Тяхното точно положение и форма са различни за всеки говорител; тя се определя във фаза на обучение за системата, специфична за оратор.
От съображения за изчислителна икономика облаците са приблизително описани с помощта на изчислително особено прости стандартни форми. Човек сякаш предполага, че облаците са сферични или елипсовидни и че основните им оси лежат успоредно на осите на координатната система (нормални разпределения с диагонална ковариационна матрица). Облак, който се отклонява значително от стандартната форма, може да бъде приближен от няколко стандартни облака.
Предварителната обработка превръща речевото изказване във времева последователност от вектори на характеристиките; В абстрактното пространство една точка скача от облак на облак, като че ли. По принцип програма за разпознаване на реч би трябвало само да идентифицира правилния облак във всеки случай въз основа на векторите на характеристиките. Последователността от облаци, намерена по този начин, би довела директно до фонетична транскрипция на речевия сигнал.
На практика обаче ситуацията е далеч по-сложна. Обикновено след тренировка има много повече облаци в пространството на векторите на характеристиките, отколкото звуците. Така че няма ясно разпределение на звуците (фонемите) към облаците в нашето пространство за функции. По-скоро всяка фонема използва точки от няколко облака; техният ред е само грубо определен, но не и точната хронологична последователност. Така че повечето говорители правят отклонение до облака за e в края на единично произнесено w; по време на w, u-облакът може да се използва за кратко между тях и т.н. В крайна сметка облаците не са на фокус и се припокриват един с друг.
Марковски вериги
Проблемът обаче не е нерешим, както показва собствената ни способност да разбираме езика. За да се формализира математически човешкото предварително знание и по този начин да стане достъпно за компютъра, на езиково изказване (например дума) се възлага т. Нар. Процес на Марков. На първо място, това е индикацията за вероятностите, с които едно състояние (вектор на характеристиките) от определен набор от разрешени състояния е последвано от друго. Това обикновено се представя от така наречената верига на Марков (фиг. 2). Едно изпълнение на процес на Марков се състои в това, че като се започне от първоначално състояние, следващото състояние се определя случайно в съответствие с вероятностите за преход, валидни за първоначалното състояние, от това последващо състояние и т.н.
Марковските вериги са стандартен статистически инструмент за моделиране на времеви процеси. Новото в приложението за разпознаване на реч е, че състоянията не са вектори на характеристики, а облаци - по-точно: вероятностни разпределения на вектори на характеристики. Тъй като вектор на характеристика може да принадлежи на няколко облака, не е лесно да се направи заключение за свързаната последователност от състояния (облаци) от наблюдавана последователност от вектори на характеристики (вижте карето на страница 92); това остава - първоначално - скрито, поради което терминът скрити модели на Марков е разпространен. Това, което изглежда ненужно усложнение, е толкова успешно, защото скритите модели на Марков с вграденото им размазване могат много добре да възпроизведат естествената неточност на артикулацията.
За фазата на обучение ораторът трябва да прочете текст от около три четвърти час. От многобройните реализации на всеки говорим звук системата изчислява приблизително стойности за вероятностите за задържане и преход на асоцииран процес на Марков. В същото време се изчисляват параметрите на облачността. В известен смисъл знанието за това как този високоговорител е склонен да произнася звук се съхранява в тези числа.
За по-голямата част от думите, които не са се появили в учебния текст, но въпреки това трябва да бъдат разпознати, свързаният с Марков процес трябва да бъде изграден от наличните данни. С помощта на система, основана на знания, която Клаус Вотке и други компютърни лингвисти от IBM в Хайделберг написаха, последователността от фонеми, съставляващи говоримата форма, може да бъде получена от писмената форма на дума; верига на Марков принадлежи на всяка фонема, от чието обединение се получава веригата на Марков за цялата дума.
Ако сега системата трябва да разпознава правилния звук в контекста на изказване по време на работа, тя трябва да реши коя от голям брой възможни вериги на Марков има най-голяма вероятност да генерира настоящото наблюдение (последователност от векторни характеристики). Тук се използва метод, който американският инженер по комуникации Андрю Дж. Витерби предлага през 1967 г. в съвсем различен контекст (вж. Карето на страница 92). Само с тези принципи и тяхното прилагане в много ефективни алгоритми беше възможно точно да се разграничат фонемите на човешкия език в компютъра.
Тъй като системата работи с вериги на Марков не само за отделни фонеми, но и за последователности на фонемите - особено думи -, въпросът не е просто коя от няколко възможни фонеми е била произнесена най-вероятно, но коя, като се вземе предвид думите фрагменти вече чути е най-вероятно.
В този смисъл начинът му на работа прилича на възприятието на хората: Ние не се регистрираме безпристрастно, но се опитваме да вместим това, което сме възприели, в частично предварително предубедени хипотези. Тази реконструкция (за която е измислена крилатата фраза „анализ чрез синтез“) ни позволява да коригираме непълноти и колебания във формата на обектите.
Тази процедура може да бъде допълнително обобщена при разпознаване на машинна реч чрез комбиниране на фонетични модели на думи в по-големи структури от данни, от които най-вероятната от голям брой хипотези на думи може да бъде определена чрез класиране на Витерби.
Изискани езикови модели
Редовната връзка между произношението и правописа - предпоставка за създаване на фонетичен модел на дума - е много по-сложна в немския и английския, отколкото в испанския, например. Поради това описаното до момента представяне на модела е усъвършенствано, което допринася за значително подобрение в точността на разпознаване. Програмата ISSS продължава в две стъпки.
Описаният дотук принцип беше да се разделят думите на фонеми и след това да се формулира верига на Марков за всяка фонема. Няма ли смисъл изобщо да се пропуска фонемата като ниво на описание за разпознаване на речта? Не би ли било достатъчно просто да се проследи верига на Марков през облаците на пространството на характеристиките за фонетичното представяне на дума? Това би имало предимството, че човек би могъл много точно да схване тънкостите на произношението, като замъгляване и съкращения.
Докато една верига на Марков за фонема обикновено има 7 състояния (облаци) и 13 прехода, може да се формулират доста дълги, въпреки това много просто структурирани вериги на Марков, които се отнасят само до вектори на характеристики и тяхната последователност: Има преход за всеки възел към самия възел, към следващия възел и към следващия, но един, в случай че векторът на характеристиките, съответстващ на следващия възел, липсва във веригата от данни. Моделът на думата, получен по този начин, се основава само на пряко наблюдаваните акустични явления и поради това е получил името фенонова основна форма, което може да се преведе като "фенонна основна форма".
В тази форма обаче думата модел все още е непрактична. Тъй като всяка дума е моделирана директно от вектори на характеристики, вече не е възможно да се извеждат хипотези за нейната акустична реализация от писмената форма на думата. Така че за всяка дума трябва да се обучи отделен фенонен модел. Това е неикономично и не е подходящо за практика.
Тук идва втората решителна стъпка, която отличава системата за разпознаване на реч ISSS. Очевидно е, че фенонен модел има смисъл, ако се отнася до възможно най-малките фонетични единици. Човек би трябвало да намери начин да изведе възможно най-точно тези най-малки фонетични единици от писмената форма на дума. Подходът към това са фонетичните дървета за решения.
Идеята е да се заменят традиционните, доста груби правила за произношение с правила, които са получени емпирично от обширни данни. Произношението на писмено писмо - по-точно: поредица от букви, представляващи фонема, като sch - зависи от контекста; s се произнася озвучено в Amsel и озвучено в Emsland. Тук може да се запише и контекстно-зависимо смесване.
Сега програмата структурира набора от акустични реализации на фонемите (или която и да е фонема), като разделя общия набор на две подмножества, които са възможно най-хомогенни (еднакви по себе си) в зависимост от контекста. (За да се определи дали две последователности от вектори на характеристики са сходни, може дори да се игнорира тяхната последователност за много кратки участъци от речевия сигнал - както показва опитът; достатъчно е да се сравнят техните честоти, което е много по-малко сложно.) Критериите за това разделение трябва никой не се преструва; те се изчисляват автоматично от програмата. Взети са под внимание контекстите на до пет фонеми преди и след тази, която ще бъде описана.
Всяко подмножество от своя страна е разделено на две подмножества, които са възможно най-хомогенни и т.н. Прилага се статистическият критерий за максимална печалба на информация. Разделянето продължава, докато няма повече информация, която си струва да се спомене.
Като цяло се получава йерархична (дървовидна) структура, в краищата на която (т.нар. Листа) се събират редица контексти с почти еднакво произношение за фонемата. Такова статистически извлечено произношение на фонема се нарича в английския жаргон leafeme, което може да се преведе като звук от листа. Озвученият s, например, може да е листен звук или звук, който се появява за кратко, когато a и u се смесят.
В края на тази процедура всяка дума може да бъде моделирана като последователност от венчелистчета. И сега има смисъл да се описват листните звуци с помощта на фенонен модел, т.е. само като се вземат предвид векторите на характеристиките. Това е запазило екомонията на фонетичния модел на думата, но е постигнало значителен напредък в прецизирането на детайлите на произношението и контекстните варианти на фонемите. Резултатът е изключително задоволително качество на разпознавателя на реч в реално време.
Езикови модели
С помощта на описаните дотук методи разпознавателят на речта получава по-точно число, което показва колко вероятно е настоящият речев сигнал, ако се приеме определена дума или поредица от думи. Нека наречем това вероятност на синтеза. И обратно, ние всъщност искаме да знаем коя последователност от думи е най-вероятна, ако човек приеме речевия сигнал, както е даден.
За този обратен извод от една условна вероятност към другата трябва да се използва Байесова теорема от статистиката, която се връща към английския математик Томас Байес (1702 до 1761) (сравнете глави 1 и 5 от моята книга „Несигурни знания“, Хайделберг 1993). Той казва, че за даден речев сигнал вероятността за последователност от думи е пропорционална на произведението на синтеза и основната вероятност за последователността на думите. Ако например вероятността за синтез на думата "Кант" е по-голяма от тази за "ръка", но системата за разпознаване на речта се използва в медицинската област, където ръцете се споменават много по-често от философите, тогава въпреки това трябва да заключи "ръка".
Но как намирате - извън всички акустични съображения - основната вероятност за дума или фраза? Всички използвани в момента системи не използват базирани на знанието, ориентирани към разбиране на текста подходи, а статистически езикови модели. Те записват връзки на думи въз основа на наблюдавани последователности от думи.
В нашия разпознавател на реч ние използваме честотни наблюдения върху последователности от три думи (триграми) в големи колекции от текстове, като тези, предоставени от клиенти. Самото броене тук не е достатъчно, става ясно, когато се има предвид, че са възможни повече от милиард триграма с 20 000 думи. Дори обширни текстови корпуси рядко достигат този размер. Следователно трябва да се оценят честотите на ненаблюдавани триграми и също така да се коригират наблюдаваните честоти, като се правят оценки. За целта използваме процеси, които първоначално идват от биостатистиката.
Правим някои изследвания в областта на езиковите модели. Затова се опитваме да усъвършенстваме честотните модели за триграми, като включим частта от речта. Това прави знанието, например, че последователността член - съществително е много по-често от обратното, достъпно за системата.
На немски език има многобройни сложни съединения (като „ставна артроза“) в текстове, които натоварват ненужно речника, тъй като техните компоненти („стави“ и „артрози“) обикновено вече са записани в речника като отделни думи. В момента разработваме нов подход за оценка на честотите на съставните компоненти.
От друга страна, изглежда полезно да се допълни разглеждането на контекст с фиксирана дължина, както в случая на триграмите, чрез наблюдение на думи, които са по-далеч. В частност на немски, много често се срещат широкообхватни зависимости („Той не пристигна късно вечерта“). Тук изглежда обещаващо да се открият подходящи контексти с подобни на правила статистически структури и да се формулират езикови модели върху тях.
Така че все още има многобройни и свързани с практиката изследователски задачи. Независимо от това, вече си струва да се помисли за използване на разпознаване на реч на работното място.