Возможность контроля своих действий с последующей коррекцией
Этот принцип говорит о необходимости обратной связи [Действие]-[Результат]-[Коррекция] в системе. Такие цепочки очень широко распространены в сложных биологических организмах и используются на всех уровнях – от контроля мышечных сокращений на самом низком уровне до управления сложными механизмами поведения.
Возможность накопления знаний об объектах рабочей области
Знание об объекте – это способность манипулировать его образом в памяти т.е. количество знаний об объекте определяется не только набором его свойств, но ещё и информацией о его взаимодействии с другими объектами, поведении при различных воздействиях, нахождении в разных состояниях, и т.д., т.е его поведении во внешнем окружении (например, знание о геометрическом объекте предполагает возможность предсказать вид его перспективной проекции при любом повороте и освещении).
Это свойство наделяет систему возможностью абстрагирования от реальных объектов, т.е. возможностью анализировать объект при его отсутствии, тем самым открывая новые возможности в обучении
Автономность системы
При интеграции комплекса действий, которые система способна совершать, с комплексом датчиков, позволяющих контролировать свои действия и внешнюю среду, наделенная вышеприведенными свойствами система будет способна взаимодействовать с внешним миром на довольно сложном уровне, т.е. адекватно реагировать на изменение внешнего окружения (естественно, если это будет заложено в систему на этапе обучения). Способность корректировать свое поведение в зависимости от внешних условий позволит частично или полностью устранить необходимость контроля извне, т.е. система станет автономной.
4. Система распознавания речи как самообучающаяся система
С целью изучения особенностей самообучающихся систем модели распознавания и синтеза речи были объединены в одну систему, что позволило наделить её некоторыми свойствами самообучающихся систем. Это объединение является одним из ключевых свойств создаваемой модели. Что послужило причиной этого объединения?
Во-первых, у системы присутствует возможность совершать действия (синтез) и анализировать их (распознавание), т.е. свойство (2). Во-вторых, присутствует свойство (1), так как при разработке в систему не закладывается никакая информация, и возможность распознавания и синтеза звуков речи – это результат обучения.
Преимуществом полученной модели является возможность автоматического обучения синтезу. Механизм этого обучения описывается далее.
Ещё одной очень важной особенностью является возможность перевода запоминаемых образов в новое параметрическое пространство с гораздо меньшей размерностью. Эта особенность на данный момент в разрабатываемой системе не реализована и на практике не проверена, но тем не менее я постараюсь кратко изложить её суть на примере распознавания речи.
Предположим, входной сигнал задается вектором первичных признаков в N-мерном пространстве. Для хранения такого сигнала необходимо N элементов. При этом на этапе разработки мы не знаем специфики сигнала или она настолько сложна, что учесть её затруднительно. Это приводит к тому, что представление сигнала, которое мы используем, избыточно. Далее предположим, что у нас есть возможность синтезировать такие же сигналы (т.е. синтезировать речь), но при этом синтезируемый сигнал является функцией вектора параметров в M-мерном пространстве, и M<<N (действительно, число параметров модели синтеза речи намного меньше числа первичных признаков модели распознавания речи). Но тогда мы можем запоминать входной сигнал не по его первичным признакам в N-мерном пространстве, а по параметрам модели синтеза в M-мерном пространстве. Возникает вопрос: а как переводить сигнал из одного параметрического пространства в другое? Есть все основания предполагать, что это преобразование можно осуществить при помощи довольно простой нейросети. Более того, по моему мнению, такой механизм запоминания работает в реальных биологических системах, в частности, у человека.
Далее описывается модель автоматического распознавания и синтеза речи. Описывается механизм ввода звука в нейросеть, модель синтеза речи, модель нейросети, проблемы, возникшие при построении модели.
5.1 Ввод звука
Ввод звука осуществляется в реальном времени через звуковую карту или через файлы формата Microsoft Wave в кодировке PCM (разрядность 16 бит, частота дискретизации 22050 Гц). Работа с файлами предпочтительней, так как позволяет многократно повторять процессы их обработки нейросетью, что особенно важно при обучении.
Для того, чтобы звук можно было подать на вход нейросети, необходимо осуществить над ним некоторые преобразования. Очевидно, что представление звука во временной форме неэффективно. Оно не отражает характерных особенностей звукового сигнала. Гораздо более информативно спектральное представление речи. Для получения спектра используется набор полосовых фильтров, настроенных на выделение различных частот, или дискретное преобразование Фурье. Затем полученный спектр подвергается различным преобразованиям, например, логарифмическому изменению масштаба (как в пространстве амплитуд, так и в пространстве частот). Это позволяет учесть некоторые особенности речевого сигнала – понижение информативности высокочастотных участков спектра, логарифмическую чувствительность человеческого уха, и т.д.
Как правило, полное описание речевого сигнал только его спектром невозможно. Наряду со спектральной информацией, необходима ещё и информация о динамике речи. Для её получения используются дельта-параметры, представляющие собой производные по времени от основных параметров.
Полученные таким образом параметры речевого сигнала считаются его первичными признаками и представляют сигнал на дальнейших уровнях его обработки.
Процесс ввода звуковой информации изображен на рис. 1:
Рис 1. Ввод звука
При обработке файла по нему перемещается окно ввода, размер которого равен размеру окна дискретного преобразования Фурье (ДПФ). Смещение окна относительно предыдущего положения можно регулировать. В каждом положении окна оно заполняется данными (система работает только со звуком, в котором каждый отсчет кодируется 16 битами). При вводе звука в реальном режиме времени он записывается блоками такого же размера.
После ввода данных в окно перед вычислением ДПФ на него накладывается окно сглаживания Хэмминга:
, (1)N – размер окна ДПФ
Наложение окна Хэмминга немного понижает контрастность спектра, но позволяет убрать боковые лепестки резких частот (рис 2), при этом особенно хорошо проявляется гармонический состав речи.
без окна сглаживания с окном сглаживания Хэмминга
Рис 2. Действие окна сглаживания Хэмминга (логарифмический масштаб)
После этого вычисляется дискретное преобразование Фурье по алгоритму быстрого преобразования Фурье ([ХХ]). В результате в реальных и мнимых коэффициентах получается амплитудный спектр и информация о фазе. Информация о фазе отбрасывается и вычисляется энергетический спектр:
(2)Так как обрабатываемые данные не содержат мнимой части, то по свойству ДПФ результат получается симметричным, т.е. E[i] = E[N-i]. Таким образом, размер информативной части спектра NS равен N/2.
Все вычисления в нейросети производятся над числами с плавающей точкой и большинство сигналов ограничены диапазоном [0.0,1.0], поэтому полученный спектр нормируется на 1.00. Для этого каждый компонент вектора делится на его длину:
Информативность различных частей спектра неодинакова: в низкочастотной области содержится больше информации, чем в высокочастотной. Поэтому для предотвращения излишнего расходования входов нейросети необходимо уменьшить число элементов, получающих информацию с высокочастотной области, или, что тоже самое, сжать высокочастотную область спектра в пространстве частот. Наиболее распространенный метод (благодаря его простоте) – логарифмическое сжатие (см. [3], “ Non-linear frequency scales”):
, (5)f – частота в спектре, Гц,
m – частота в новом сжатом частотном пространстве
5.2 Наложение первичных признаков на вход нейросети
После нормирования и сжатия спектр накладывается на вход нейросети. Входы нейросети не выполняют никаких решающих функция, а только передают сигналы дальше в нейросеть. Выбор числа входов – сложная задача, потому что при малом размере входного вектора возможна потеря важной для распознавания информации, а при большом существенно повышается сложность вычислений (только при моделировании на PC, в реальных нейросетях это неверно, т.к. все элементы работают параллельно).
При большой разрешающей способности (большом числе) входов возможно выделение гармонической структуры речи и как следствие определение высоты голоса. При малой разрешающей способности (малом числе) входов возможно только определение формантной структуры.