- 1) Достигается первоначальная цель.
- 2) Кончаются правила, применимые для достижения цели в ходе вывода.
Условия
останова в случае прямого вывода:
- 1) Отсутствие применимых правил.
- 2) Конфликтный набор правил.
Понятие продукционных правил.
В основе человеческой деятельности
лежит мышление. Когда утром звонит
будильник, мозг человека дает команду
руке выключить его. Следует заметить,
что это не автоматическая реакция,
а решение конкретной задачи. При
этом конечный результат, на который
мы рассчитываем, на который направлены
наши мыслительные процессы, называется
целью. Как только цель (в данном
случае выключение будильника) достигнута,
перед человеческим мозгом сразу
встают новые цели, например, одеться,
позавтракать, выйти на остановку
и т.д. Осуществление всех этих целей
приводит к осуществлению главной
цели— не опоздать в институт. Для достижения
цели используется некоторая совокупность
фактов и способов их применения— правил.
На этих понятиях основан наиболее распространенный
метод представления знаний— правила
продукции или продукционные правила.
Этот метод был предложен Э. Постом (1943
г.). Продукционные правила объясняют логическую
связь между понятиями предметной области.
Системы с базами знаний, основанных на
этой модели, называются продукционными
системами. Эти системы бывают двух диаметрально
противоположных типов - с прямыми и обратными
выводами. Правило продукции представляет
собой подстановку следующего вида: Р1*А1,А2,.--,Ап->В
где А1,А2,...,Ап— конечная связка факторов,
В— действие, которое выполняется, если
А1 ,А2,... ,Ап— истинно. Иначе говоря, примером
правил продукции может являться выражение
следующего типа: ЕСЛИ <условие> ТО
<действие>. При этом факты и правила
могут быть разной сложности. Они связаны
между собой с помощью логических функций
И, ИЛИ, НЕ. Например: Факт! Тихие, темные
улицы опасны Факт2 Пожилые люди обычно
не совершают дерзких преступлений ФактЗ
Моя милиция меня бережет Правило! ЕСЛИ
на темной, тихой улице вы встретите пожилого
человека ТО можно не очень беспокоится
Это простое правило можно усложнить добавив
факты, объединенные в связку с помощью
логической функции И: Правило2 ЕСЛИ на
тихой темной улице вы видите милиционера
И вы не преступали закон ТО можно чувствовать
себя в полной безопасности Правила продукции
можно отнести к категорическим знаниям,
т.е. они всегда верны. Однако, в некоторых
предметных областях (например, медицинская
диагностика, системы управления и т.п.)
преобладают вероятностные знания. Эти
знания являются «мягкими» в том смысле,
что говорить об их применимости к любым
практическим ситуациям возможно только
до некоторой степени. В таких случаях
правила продукции дополняют вероятностной
оценкой: ЕСЛИ <условие> ТО <действие>
С УВЕРЕННОСТЬЮ <значение> Например:
__, Правило! ЕСЛИ на тихой темной улице
вы видите милиционера И вы не преступали
закон ТО можно чувствовать себя в полной
безопасности С УВЕРЕННОСТЬЮ 0,3 Факты
в правилах могут быть представлены в
двух видах: в виде списков или в виде изолированной
тройки: атрибут—» объект—> значение,
при этом с каждым фактом связан коэффициент
уверенности, изменяющийся в пределах
[0,1]. Представление знаний в виде правил
продукции обладает следующими преимуществами:
* независимостью правил, выражающих самостоятельные
фрагменты знаний; » легкостью и естественностью
модификации знаний (правила продукции
по структуре весьма похожи на рассуждения
естественного языка); * отделением управляющих
знаний (правил) от предметных знаний (фактов).
Это позволяет применять различные стратегии
управления. Как уже отмечалось выше, правила
продукции относятся к процедурным моделям
представления знаний. Даже самое простое
правило продукции есть элемент «процедурное™»,
т.к. предполагается, что это правило будет
использовано для выполнения некоторого
действия. Именно это отличает процедурное
представление знаний от декларативного,
поскольку декларативные знания не несут
никакой информации о том, как они будут
использованы. В системе продукций с обратными
выводами с помощью правил строится дерево
И/ИЛИ, связывающее в единое целое факты
и заключения;оценка этого дерева на основании
фактов, имеющихся в базе данных, и есть
логический вывод. «Логические выводы
бывают прямыми, обратными и двунаправленными.
При прямом выводе отправной точкой служат
предоставленные данные, процесс оценки
приостанавливается в узлах с отрицанием,
причем в качестве заключения (если не
все дерево пройдено) используется гипотеза,
соответствующая самому верхнему уровню
дерева(корню). Однако для такого вывода
характерно большое количество данных,
а также оценок дерева, не имеющих прямого
отношения к заключению, что излишне. Преимущество
обратных выводов в том, что оценивается
только те части дерева, которые имеют
отношение х заключению, однако если отрицание
или утверждение невозможны, то порожденное
дерево лишено смысла. В двунаправленных
выводах сначала оценивается небольшой
объем полученных данных и выбирается
гипотеза, а затем запрашиваются данные
необходимые для принытия решения о пригодности
данной гипотезы. На основе этих выводов
можно реализовать более гибкую и мощную
систему. Системы продукций с прямыми
выводами среди систем, основанных на
использовании знаний, имеют наиболее
древнюю историю, поэтому они являются
в некотором смысле основополагающими.
Эти системы включают три компонента:
базу правил, состоящую из наборов правил(правила
вывода), базу данных, содержащую множество
фактов, и интерпретатор для получения
логического вывода на основании этих
знаний. База правил и база данных образуют
базу знаний, а интерпретатор соответствует
механизму логического вывода. Вывод выполняется
в идее цикла «понимание -выполнение»,
причем в каждом цикле выполняемая часть
выбранного правила обновляет базу данных.
В результате содержимое базы данных преобразуется
от первоначального к целевому, т.е. целевая
система синтезируется в базе данных.
Иначе говоря, для системы продукций характерен
простой цикл выбора и выполнения(или
оценки) правил, однако из-за необходимости
периодического сопоставления с образом
в базе правил (отождествлением) с увеличением
числа последних(правил) существенно замедляется
скорость вывода. Следовательно, такие
системы не годятся для решения крупномасштабных
задач. Итак, упорядочим сильные, и слабые
стороны хорошо известных систем продукций.
Сильные стороны: 1. Простота создания
и понимания отдельных правил; 2. Простота
пополнения и модификации 3. Простота механизма
логического вывода. Слабые стороны: 1.
Неясность взаимных отношений правил
2. сложность оценки целостного образа
знаний 3. крайне низкая эффективность
обработки 4. отличие от человеческой структуры
знаний 5. отсутствие гибкости в логической
выводе. Таким образом если объектом является
небольшая задача, выявляются только сильные
стороны системы продукций.
Вопрос 3
Метод работы существующих
систем.
Большинство биометрических
систем безопасности функционируют следующим
образом: в базе данных системы хранится
цифровой отпечаток пальца, радужной оболочки
глаза или голоса. Человек, собирающийся
получить доступ к компьютерной сети,
с помощью микрофона, сканера отпечатков
пальцев или других устройств вводит информацию
о себе в систему. Поступившие данные сравниваются
с образцом, хранимым в базе данных.
При распознавании образца проводится
процесс, первым шагом которого является
первоначальное трансформирование вводимой
информации для сокращения обрабатываемого
объема так, чтобы ее можно было бы подвергнуть
анализу. Следующим этапом является спектральное
представление речи, получившееся путем
преобразования Фурье. Спектральное представление
достигнуто путем использования широко-частотного
анализа записи.
Хотя спектральное представление речи
очень полезно, необходимо помнить, что
изучаемый сигнал весьма разнообразен.
Разнообразие возникает по многим причинам,
включая:
— различия человеческих голосов;
— уровень речи говорящего;
— вариации в произношении;
— нормальное варьирование движения артикуляторов
(языка, губ, челюсти, нёба).
Затем определяются конечные выходные
параметры для варьирования голоса и производится
нормализация для составления шкалы параметров,
а также для определения ситуационного
уровня речи. Вышеописанные измененные
параметры используются затем для создания
шаблона. Шаблон включается в словарь,
который характеризует произнесение звуков
при передаче информации говорящим, использующим
эту систему. Далее в процессе распознавания
новых речевых образцов (уже подвергшихся
нормализации и получивших свои параметры),
эти образцы сравниваются с шаблонами,
уже имеющимися в базе, используя динамичное
искажение и похожие метрические измерения.
Возможность использования
нейросетей для построения системы распознавания
речи
Любой речевой сигнал можно представить
как вектор в каком-либо параметрическом
пространстве, затем этот вектор может
быть запомнен в нейросети. Одна из моделей
нейросети, обучающаяся без учителя –
это самоорганизующаяся карта признаков
Кохонена. В ней для множества входных
сигналов формируется нейронные ансамбли,
представляющие эти сигналы. Этот алгоритм
обладает способностью к статистическому
усреднению, т.е. решается проблема с вариативностью
речи. Как и многие другие нейросетевые
алгоритмы, он осуществляет параллельную
обработку информации, т.е. одновременно
работают все нейроны. Тем самым решается
проблема со скоростью распознавания
– обычно время работы нейросети составляет
несколько итераций.
Практическая работа
используемого алгоритма
Процесс сравнивания образцов состоит
из следующих стадий:
— фильтрация шумов;
— спектральное преобразование сигнала;
— постфильтрация спектра;
— лифтеринг;
— наложение окна Кайзера;
— сравнение.
Фильтрация шумов
Звук, образованный колебаниями всего
диапазона частот, подобный тому, спектр
которого показан на рисунке, называется
шумом.
Для того чтобы получить четкие спектральные
характеристики звука их нужно отчистить
от лишних шумов.
Входной дискретный звуковой сигнал обрабатывается
фильтрами, для того чтобы избавится от
помех возникающих при записи по формуле.
где Xi – набор дискретных значений звукового
сигнала.
После обработки в сигнале ищется начало
и конец записи, а так как шумы уже отфильтрованы,
то начало фрагмента будет характеризоваться
всплеском сигнала, если искать с Х0. Соответственно
если искать с Хn вниз, то всплеск будет
характеризовать конец фрагмента. Таким
образом получим начала и конца фрагмента
в массиве дискретных значений сигнала.
В нематематическом виде это означает,
что мы нашли слово сказанное пользователем
в микрофон, которое нужно усреднить с
другими характеристиками голоса.
Помимо высоты тона человек ощущает и
другую характеристику звука — громкость.
Физические величины, наиболее точно соответствующие
громкости, — это шоковое давление (для
звуков в воздухе) и амплитуда (для цифрового
или электронного представления звука).
Если говорить об оцифрованном сигнале,
то амплитуда — это значение выборки.
Анализируя миллионы дискретных значений
уровня одного и того же звука, можно сказать
о пиковой амплитуде, то есть об абсолютной
величине максимального из полученных
дискретных значений уровня звука. Чтобы
избежать искажения, вызванного искажением
ограничения сигнала при цифровой записи
звука (данное искажение возникает в том
случае, если величина пиковой амплитуды
выходит за границы, определяемые форматом
хранения данных), необходимо обратить
внимание на величину пиковой амплитуды.
При этом нужно сохранять отношение сигнал/шум
на максимально достижимом уровне.
Основной причиной разной громкости звуков
является различное давление, оказываемое
ими на уши. Можно сказать, что волны давления
обладают различными уровнями мощности.
Волны, несущие большую мощность, с большей
силой оказывают воздействие на механизм
ушей. Электрические сигналы, идущие по
проводам, также передают мощность. По
проводам звук обычно передается в виде
переменного напряжения, и мгновенная
мощность этого звука пропорциональна
квадрату напряжения. Чтобы определить
полную мощность за период времени, необходимо
просуммировать все значения моментальной
мощности за этот период.
На языке математики это описывается интегралом
, где
— это напряжение в заданный
момент времени.
Поскольку вы используете звук, представленный
дискретными значениями, вам не понадобится
брать интеграл. Достаточно просто сложить
квадраты отсчетов. Среднее значение квадратов
дискретных значений пропорционально
средней мощности.
Так как моментальная мощность зависит
от квадрата моментальной амплитуды, имеет
смысл аналогичным образом подобрать
похожее соотношение, связывающее среднюю
амплитуду и среднюю мощность. Способ,
которым это можно сделать, заключается
в определении средней амплитуды (СКЗ).
Вместо того, чтобы вычислять среднее
значение непосредственно амплитуды,
мы сначала возводим в квадрат полученные
значения, вычисляем среднее значение
получившегося множества, а затем извлекаем
из него корень. Метод СКЗ применяется
в том случае, когда необходимо вычислить
среднее для быстро меняющейся величины.
Алгебраически это выражается следующим
ооразом: пусть у нас N значений и х(i) это
амплитуда i-ого дискретного значения.
Тогда СКЗ амплитуды =
Мощность пропорциональна возведенной
в квадрат величине дискретного значения.
Это означает, что для перехода к реальной
мощности, эту величину необходимо умножить
на некоторый коэффициент. Для этого не
требуются точные данные электрической
мощности, так что, на самом деле, нас не
интересуют точные числа, скорее относительная
мощность.
Относительная мощность измеряется в
белах, а чаще в децибелах (дБ, децибел,
это одна десятая бела). Чтобы сравнить
два звука, берется отношение их мощности.
Десятичный логарифм этого отношения
и есть различие в белах; если множить
получившееся число на десять, то получится
значение в децибелах. Например, если мощность
одного сигнала превосходит мощность
другого в два раза, то первый сигнал будет
громче на 10lоg10(2) = 3,01 дБ.
Спектральное преобразование
сигнала
Поскольку любой звук раскладывается
на синусоидальные волны, мы можем построить
частотный спектр звука. Спектр частот
звуковой волны представляет собой график
зависимости амплитуды от частоты.
Фазовые изменения часто происходят по
причине временных задержек. Например,
каждый цикл сигнала в 1000 Гц занимает 1/1000
секунды. Если задержать сигнал на 1/2000
секунды (полупериод), то получится 180-градусный
сдвиг но фазе. Заметим, что этот эффект
опирается на зависимость между частотой
и временной задержкой. Если сигнал в 250
Гц задержать на те же самые 1/2000 секунды,
то будет реализован 45-градусный сдвиг
по фазе.
Если сложить вместе две синусоидальные
волны одинаковой частоты, то получится
новая синусоидальная волна той же частоты.
Это будет верно даже в том случае, если
два исходных сигнала имеют разные амплитуды
и фазы. Например, Asin(2 Pi ft) и Bcos(2 Pi ft) две
синусоиды с разными амплитудами и фазами,
но I c одинаковой частотой.
Для измерения амплитуды одной частоты
нужно умножить имеющийся сигнал на синусоиду
той же частоты и сложить полученные отсчеты.
Чтобы записать это в символьном виде,
предположим, что отсчеты имеют значения
s0, s1, …, st, …. Переменная t представляет
собой номер отсчета (который заменяет
значение времени). Измеряется амплитуду
частоты f в первом приближении, при вычислении
следующей суммы:
Значения t и f не соответствуют в точности
времени и частоте. Более того, f – целое
число, а реальная исследуемая частота
– это частота дискретизации, умноженная
на f/N. Подобным образом, t — это целочисленный
номер отсчета. Кроме того, суммирование
дает не непосредственное значение амплитуды,
а всего лишь число, пропорциональное
амплитуде.
Если повторить эти вычисления для различных
значений f, то можно измерить амплитуду
всех частот в сигнале. Для любого целого
f меньшего N легко определяется значение
Аf, представляющее амплитуду соответствующей
частоты как долю от общего сигнала. Эти
значения могут быть вычислены по той
же формуле:
Если мы знаем значения Af мы можем восстановить
отсчеты. Для восстановления сигнала необходимо
сложить все значения для разных частот.
Чтобы осуществлять точное обратное преобразование
Фурье, помимо амплитуды и частоты необходимо
измерять фазу каждой частоты.
Для этого нужны комплексные числа. Можно
изменить описанный ранее метод вычислений
так, что он будет давать двумерный результат.
Простое коми1 лексное число – это двумерное
значение, поэтому оно одновременно но
представляет и амплитуду, и фазу.
При таком подходе фазовая часть вычисляется
неявно. Вместо амплитуды и фазы измеряется
две амплитуды, соответствующие разным
фазам. Одна из этих фаз представляется
косинусом (соs()), другая синусом sin()).
Используя комплексные числа, можно проводить
измерения одновременно, умножая синусную
часть на -i.
Каждое значение Af теперь представляется
комплексным числом; действительная и
мнимая части задают амплитуду двух синусоидальных
волн с разным фазами.
Основная идея быстрого преобразования
Фурье заключается в том, что каждую вторую
выборку можно использовать для получения
половинного спектра. Формально это означает,
что формула дискретного преобразования
Фурье может быть представлена в виде
двух сумм. Первая содержит все четные
компоненты оригинала, вторая — все нечетные
Фильтрация спектра.
Получив спектральное представление сигнала
его требуется отчистить от шумов. Человеческий
голос обладает известными характеристиками,
и поэтому те области которые не могут
являются характеристиками голоса нужно
погасить. Для этого применим функцию,
которая получила название «окно Кайзера»
После фильтрации спектра наложим окно
Ханнинга
Сравнение с эталонными
образцами в базе
Основным параметром, используемым для
идентификации, является мера сходства
двух звуковых фрагментов. Для ее вычисления
необходимо сравнить спектрограммы этих
фрагментов. При этом сначала сравниваются
спектры, полученные в отдельном окне,
а затем вычисленные значения усредняются.
Для сравнения двух фрагментов использовался
следующий подход:
Предположим что X[1..N] и Y[1..N] массивы чисел,
одинакового размера N, содержащие значения
спектральной мощности первого и второго
фрагментов соответственно. Тогда мера
сходства между ними вычисляется по следующей
формуле:
где Mx и My математические ожидания для
массивов X[] и Y[] соответственно, вычисляющиеся
по следующей формуле:
Данный способ вычисления меры сходства
двух фрагментов представленных в виде
спектра является самым оптимальным для
задачи идентификации человека по его
голосу.
Нейросетевое сравнение
на основе простых персептронов
Несмотря на большое разнообразие вариантов
нейронных сетей, все они имеют общие черты.
Так, все они, так же, как и мозг человека,
состоят из большого числа связанных между
собой однотипных элементов – нейронов,
которые имитируют нейроны головного
мозга. На рисунке показана схема нейрона.
Из рисунка видно, что искусственный нейрон,
так же, как и живой, состоит из синапсов,
связывающих входы нейрона с ядром; ядра
нейрона, которое осуществляет обработку
входных сигналов и аксона, который связывает
нейрон с нейронами следующего слоя. Каждый
синапс имеет вес, который определяет,
насколько соответствующий вход нейрона
влияет на его состояние. Состояние нейрона
определяется по формуле
где n – число входов нейрона, xi – значение
i-го входа нейрона, wi – вес i-го синапса
Затем определяется значение аксона нейрона
по формуле: Y = f(S) где f – некоторая функция,
которая называется активационной. Наиболее
часто в качестве активационной функции
используется так называемый сигмоид,
который имеет следующий вид:
Основное достоинство этой функции в том,
что она дифференцируема на всей оси абсцисс
и имеет очень простую производную:
При уменьшении параметра α сигмоид становится
более пологим, вырождаясь в горизонтальную
линию на уровне 0,5 при α=0. При увеличении
a сигмоид все больше приближается к функции
единичного скачка.
Обучение сети
Для автоматического функционирования
системы был выбран метод обучения сети
без учителя. Обучение без учителя является
намного более правдоподобной моделью
обучения в биологической системе. Развитая
Кохоненом и многими другими, она не нуждается
в целевом векторе для выходов и, следовательно,
не требует сравнения с предопределенными
идеальными ответами. Обучающее множество
состоит лишь из входных векторов. Обучающий
алгоритм подстраивает веса сети так,
чтобы получались согласованные выходные
векторы, т. е. чтобы предъявление достаточно
близких входных векторов давало одинаковые
выходы.
Персептрон обучают, подавая множество
образов по одному на его вход и подстраивая
веса до тех пор, пока для всех образов
не будет достигнут требуемый выход. Допустим,
что входные образы нанесены на демонстрационные
карты. Каждая карта разбита на квадраты
и от каждого квадрата на персептрон подается
вход. Если в квадрате имеется линия, то
от него подается единица, в противном
случае ноль. Множество квадратов на карте
задает, таким образом, множество нулей
и единиц, которое и подается на входы
персептрона. Цель состоит в том, чтобы
научить персептрон включать индикатор
при подаче на него множества входов, задающих
нечетное число, и не включать в случае
четного.
Для обучения сети образ X подается на
вход и вычисляется выход У. Если У правилен,
то ничего не меняется. Однако если выход
неправилен, то веса, присоединенные к
входам, усиливающим ошибочный результат,
модифицируются, чтобы уменьшить ошибку.
Информативность различных частей спектра
неодинакова: в низкочастотной области
содержится больше информации, чем в высокочастотной.
Поэтому для предотвращения излишнего
расходования входов нейросети необходимо
уменьшить число элементов, получающих
информацию с высокочастотной области,
или, что тоже самое, сжать высокочастотную
область спектра в пространстве частот.
Наиболее распространенный метод — логарифмическое
сжатие
где f — частота в спектре Гц, m — частота в новом сжатом частотном
пространстве
Такое преобразование имеет смысл только
если число элементов на входе нейросети
NI меньше числа элементов спектра NS.
После нормирования и сжатия спектр накладывается
на вход нейросети. Вход нейросети — это
линейно упорядоченный массив элементов,
которым присваиваются уровни соответствующих
частот в спектре. Эти элементы не выполняют
никаких решающих функций, а только передают
сигналы дальше в нейросеть. Выбор числа
входов — сложная задача, потому что при
малом размере входного вектора возможна
потеря важной для распознавания информации,
а при большом существенно повышается
сложность вычислений ( при моделировании
на PC, в реальных нейросетях это неверно,
т.к. все элементы работают параллельно
).
При большой разрешающей способности
(числе) входов возможно выделение гармонической
структуры речи и как следствие определение
высоты голоса. При малой разрешающей
способности (числе) входов возможно только
определение формантной структуры.
Как показало дальнейшее исследование
этой проблемы, для распознавания уже
достаточно только информации о формантной
структуре. Фактически, человек одинаково
распознает нормальную голосовую речь
и шепот, хотя в последнем отсутствует
голосовой источник. Голосовой источник
дает дополнительную информацию в виде
интонации (высоты тона на протяжении
высказывания ), и эта информация очень
важна на высших уровнях обработки речи.
Но в первом приближении можно ограничиться
только получением формантной структуры,
и для этого с учетом сжатия неинформативной
части спектра достаточное число входов
выбрано в пределах 50~100.
Наложение спектра на каждый входной элемент
происходит путем усреднения данных из
некоторой окрестности, центром которой
является проекция положения этого элемента
в векторе входов на вектор спектра. Радиус
окрестности выбирается таким, чтобы окрестности
соседних элементов перекрывались. Этот
прием часто используется при растяжении
векторов, предотвращая выпадение данных.
Тестирование алгоритма
Тестирование производилось с 8 пользователями.
Каждый голос сначала сравнивался с эталонным,
то есть голосом разработчика, а потом
между собой, для того что бы выяснить
как поведет себя система на однотипных
голосах. При тестировании использовались
6 мужских голосов и 2 женских. Схожесть
голосов определяется в процентах, поэтому
требовалось выяснить максимально возможный
порог совпадения. Эталонный голос использовался
мужской, поэтому для тестирования использовалось
большое количество именно мужских голосов.
При тестирование произносилась одна
и та же кодовая фраза, которую я за много
прошедших лет уже и не помню…
Графики спектральных характеристик визуально
различаются достаточно сильно, но положение
пиков у них абсолютно одинаковое. Именно
поэтому на одинаковых фразах даже пользователь
с похожим голосом не сможет добиться
такой схожести. На его характеристике
положение этих пиков совпадать не будет.
Так же на спектрограммах видно что произносились
фразы по разному, первый образец был самых
отчетливый, второй был сказан с некоторым
отдалении от микрофона, третий произнесен
шепотом. Это должно было сильно усложнить
задачу. Но как видно из графиков их спектральные
характеристики оказались схожими.
Тестирование проводилось на очень слабой
звуковой карте интегрированной в материнскую
плату. Карточка с высоким уровнем шума
и игнорированием высоких и низких частот.
А также со слабым микрофоном, не обеспечивающим
необходимый уровень записи. С хорошей
звуковой подсистемой, можно добиться
значительно лучших результатов.
Вопрос 4
Распознавание речи – процесс
преобразования акустического сигнала,
преобразованного в электрический,
в последовательность слов. Распознанные
слова могут быть конечным результатом,
если целью системы является управление,
ввод данных или подготовка документа.
Они могут также быть основой для последующей
лингвистической обработки для достижения
понимания речи
Классификация
Системы распознавания речи
характеризуются множеством параметров,
основные из которых приведены в
таблице 1.1.
Таблица 1.1. Общие параметры
систем распознавания речи
Параметр |
Диапазон изменения |
Связность |
Отдельные
слова или непрерывная речь |
Стиль |
Речь
по написанному тексту или спонтанная |
Подстройка |
Зависимость
или независимость от говорящего |
Словарь |
От
малого(<20 слов) до большого(>20000) |
Языковая
модель |
С набором
состояний или зависимая от контекста |
Перплексность |
От
малой (< 10) до большой (> 100) |
SNR |
От
большого (>30dB) до малого (<10dB) |
Если система предназначена
для распознавания отдельных
слов, то говорящий должен делать между
ними паузы, если – для непрерывной
речи, то нет. Спонтанная речь обычно содержит
гораздо больше бессвязностей, чем
речь читающего письменный текст, следовательно,
ее труднее распознавать. Некоторые системы
требуют подстройки под говорящего, когда
пользователь перед применением системы
должен произнести какие-то слова или
фразы для подстройки системы, в то же
время другие системы этого не требуют.
Распознавание в целом является более
сложной задачей, когда объем словаря
большой и содержит много похоже звучащих
слов.
Простейшую модель языка
можно описать сетью с определенным
числом состояний. В ней множество
допустимых слов, следующих за каждым
словом, является определенным. Модели,
приближающиеся к естественному языку,
определяются с помощью контекстно-зависимых
грамматик.
Широко используемым показателем
сложности задачи, решаемой системой
распознавания, является перплексность
(perplexity, трудность, сложность, запутанность).
Перплексность определяется как число
возможных слов, следующих за данным словом
в данной языковой модели.
Распознающую систему
характеризует так же такой параметр
как максимально допустимое отношение
сигнал-шум (signal to noise ratio, SNR).
Распознавание речи – сложная
задача, в основном из-за большого числа
источников, влияющих на параметры
речевого сигнала:
- акустическое звучание фонем, наименьших речевых единиц, сильно зависит от окружающего их фонетического контекста (/t/ в словах two, true, butter), в словосочетаниях контекстная зависимость становится еще сильнее («освоить производство», «усвоить хорошие манеры»);
- акустические вариации сигнала из-за различия акустики помещений, характеристик и расположения микрофона;
- физическое и эмоциональное состояние говорящего;
- его возраст, пол, социальное положение, диалект.
Общая структура системы
распознавания речи представлена на
рисунке 1.1.
Рисунок 1.1 - Структура системы
распознавания речи.
Речевой сигнал делится на
участки, для каждого участка
рассчитывается набор параметров. Эти
параметры используются для поиска
самого подходящего слова – кандидата
в пределах имеющихся акустических,
лексических и языковых моделей.
Лексические модели в современных
системах включены в языковую модель
как принципы и способы создания
словаря на основе имеющейся текстовой
базы и поиска в нем. В наиболее
простых системах языковая модель вырождается
в лексическую.
1.2 Современный уровень
развития
Качество работы распознающей
системы обычно оценивается с
помощью такого показателя как норма
ошибки:
(1.1)
N – общее число слов в тестовом
наборе, S, I, D – соответственно число замещений,
вставок и удалений слов.
С девяностого года 20 века
в технологии распознавания речи достигнут
значительный успех. Норма ошибки снижалась
примерно в 2 раза за каждые 2 года. Были
в основном преодолены барьеры зависимости
распознающей системы от диктора, распознавания
непрерывной речи и использования словаря
большого объема. Этому способствовали
несколько факторов:
- использование Скрытых Марковских моделей (СММ);
- разработка стандартных правил составления речевых баз данных для обучения и тестирования (TIMIT, RM, ATIS, WSJ и др.), они позволяют разработчикам определять число акустических реплик, важных для подчеркивания фонетических особенностей, на основе статистических методик. Стандартизация правил обучения и тестирования позволяет так же сравнить производительность различных систем;
- существенное увеличение производительности вычислительных систем.
Типичная задача с низким
уровнем перплексности (РР = 11) - распознавание
цифр в стандартном телефонном канале.
Здесь достигнута норма ошибки 0,3% при
известной длине последовательности цифр.
Задачами среднего уровня
перплексности являются задачи управления
ресурсами, например система распознавания
спонтанной речи для информационной системы
воздушного движения (Air Travel Information Service,
ATIS) со словарем около 2000 слов и РР = 15 достигает
нормы ошибки не более 3%.
Высоким уровнем перплексности
(РР ≈ 200) и большим словарем (около 20000
слов) обладают системы, предназначенные
для диктовки текста. Достигнутая ими
норма ошибки составляет порядка 7%.
Основными направлениями
применения распознающих систем являются
голосовой набор телефонного
номера (например «звоню домой» вместо
набора номера), подготовка документов,
информационно-справочные системы, системы
обучения иностранному языку.
Определение помехоустойчивости
Помехоустойчивость (робастность) в
распознавании речи связана с
необходимостью обеспечения достаточной
точности при дестабилизирующих
факторах [10]:
- при низком качестве входного речевого сигнала,
- при существенных для акустических, артикуляторных и фонетических характеристик речи отличиях между условиями обучения и тестирования (работы).
Источниками этих факторов являются:
Современные системы распознавания
речи реализованы главным образом
как программные продукты, генерирующие
гипотезы о произносимых последовательностях
слов по входному сигналу. Использующиеся
в таких системах алгоритмы основаны
на статистических методах.
Вектор yt акустических параметров
рассчитывается по входному сигналу каждые
10-30 мс. Последовательности этих векторов
рассматриваются как наблюдаемые последовательности,
генерируемые фонетическими моделями.
Исходя из этого рассчитывается вероятность
p(ylT/W) наблюдения последовательности векторов
ylT при произнесении последовательности
(слова) W, другими словами – вероятность
генерирования последовательности ylT
моделью W. Задавшись последовательностью
ylT, можно в ходе поиска по правилу:
(4.1)
найти наиболее вероятную последовательность
слов
, сгенерировавшую ylT. Эта поисковая процедура
находит последовательность слов, имеющую
максимальную апостериорную вероятность.
Вероятность p(ylT/W) рассчитывается акустической
моделью, а p(W) – языковой моделью.
Для систем с большим словарем поиск
состоит из двух этапов. На первом, в
ходе расчета приблизительных вероятностей
в реальном масштабе времени по упрощенным
моделям, генерируется решетка из n
лучших последовательностей слов. На втором
этапе рассчитываются более точные вероятности
при ограниченном числе гипотез. Некоторые
системы генерируют вероятную последовательность
слов за один шаг.