Большинство современных систем распознавания речи человека основаны на методах, которые разбивают запись голоса на фонемы и анализируют их амплитудно-частотные характеристики с целью поиска фонем отдельных букв на основе классификации их по определенным наборам частотных характеристик. Такие методы рассматривают каждую фонему, как единую неделимую единицу звукового сигнала с квазистационарными частотными характеристиками. При таком подходе не учитываются характеристики фонемы, динамически изменяющиеся во времени.

image

Но такие подходы к анализу речи можно применять не только для ее распознавания, но и для обучения аналитического описания фонем, построения математической модели по полученным данным и синтез звука, практический аналогичный оригиналу.

Анализ составных частей человеческой речи


Всем со школы еще известно, что слово состоит из одного или нескольких слогов, которые в свою очередь состоят из одной или нескольких фонем. А фонема – это такая минимальная единица языка (самое главное, что она смыслоразличительная), она не имеет какого-либо лексического или грамматического значения, но служит для того, чтобы мы могли понимать элементарные единицы языка – слова.

Вот так выглядит амплитудно-временная характеристика фонемы буквы «О».



Для удобства я отметил здесь три разных временных промежутка:

  • а – процесс экскурсии (каждая фонема начинается именно с этого процесса)
  • б – процесс выдержки (то самое «место» фонемы, которое требует описания)
  • в – процесс рекскурсии (грубо говоря – закончили говорить, закончился и звук :) )

Я проводил анализ отрезка времени, в течение которого фонема (ее амплитудно-временная характеристика) остается в квазистационарном состоянии. Здесь же можно предположить, что именно в этот момент времени неизменны (почти) составляющие спектра звука.
Для дальнейшего анализа и описания, нужно декомпозировать звук выдержки в спектральные составляющие.



Но фонема, как атом, казалось бы нельзя разделить на составляющие то, что кажется неделимым. Но это не так: каждый пик на приведенном выше графике соответствует одной гармонической составляющей фонемы – форманте. Таким образом, каждую фонему можно описать, если описать ее простейшие составляющие. А с последним проблем возникнуть не должно ни у кого. Если вы внимательно посмотрите на график, то сможете легко определить, что форманта описывается одновременно двумя параметрами: частотой и относительной амплитудой. Соответственно чисто математически эти два параметра формируют вектор, а набор таких векторов, соответствующих имеющимся значимым формантам, соответствует матрице параметров.

Тогда фонема (квазистационарный процесс) может характеризоваться следующим набором параметров:



Тут же приведены параметры и для некоторых других гласных букв. Буква A – амплитуда, соответственно v – частота. Справедливо будет заметить, что самыми «сложными» буквами являются «Э» и «И» – спектр их фонем шире, а значимые частоты находятся в двух различных промежутках.

Синтез фонем


Для реализации возможности оценки качества описанного метода, была предложена модель реконструкции фонем речи человека по полученным параметрическим матрицам: $f(t) = \sum\limits_{i=1}^{N}{A_i sin(2\pi v_i t) }$. Здесь под знаком суммы указана формальная запись форманты. Соответственно, используя даные из таблицы выше, можно составит модель звука, например буквы «У» и синтезировать его.



Набор параметров значений матриц зависит от свойств фонемы. Так, для реалистичной реконструкции звукозаписи гласной буквы «У» применена матрица, состоящая из восемнадцати числовых параметров, описывающих девять значимых формант. Для построения более точной модели, необходимо учитывать все значимые форманты фонемы. Другим условием точности сравнения оригинального и синтезированного сигнала является равная продолжительность звучания сигналов.

Заключение и выводы


Вы поняли, что фонема – не такая уж неделимая единица при анализе речи человека. Так же я вам показал простой способ аналитического описания формант фонем речи человека. В последнем разделе разобрали, что по полученным параметрам возможно построить математическую модель фонемы, а полученную модель в свою очередь возможно использовать для синтеза фонемы. Надеюсь данный материал вам понравился. В следующей статье разберем, чем же сложна эмоциональная окраска голоса и как для нее можно было бы построить математические модели эмпирически.

Комментарии (23)


  1. Daddy_Cool
    26.10.2018 12:06

    Маловато будет!
    Очень интересно — хотелось бы подробнее и больше.


    1. ihouser
      29.10.2018 10:51

      Нравится мне статьи, где в конце объясняют, что я увидел и что я понял.


  1. Welran
    26.10.2018 12:39

    Интересно как такой разбор по фонемам справится с последним феноменом янни/лорел. У них даже звуки все разные и их количество, что не мешает одним людям слышать одно, а другим другое.


  1. Refridgerator
    26.10.2018 13:18
    +2

    Опрос совершенно излишен. Функцию «Понравился ли вам материал?» выполняет суммарная оценка статьи, для подробностей есть комментарии.


  1. Refridgerator
    26.10.2018 13:22
    +1

    В оригинальном сигнале (голосе) фонемы вовсе не обязательно должны иметь строго определённую частоту, и она слегка модулируется, что видно по спектру. В этом плане было бы полезным рассмотреть не только Фурье-, но и (непрерывное) вейвлет-преобразование.


    1. leshabirukov
      26.10.2018 15:45

      Для чего вейвлеты, чтобы раскрыть временную структуру сигнала? Но она вроде как элементарна у фонемы. Ну и абсолютную частоту иногда отслеживать надо, например, чтобы сравнить с другими фонемами и найти тоновое ударение.


      1. Refridgerator
        26.10.2018 17:07
        +1

        Не временную, а частотно-временную. Вейвлет-преобразование как раз и придумали для того, чтобы обойти частотно-временную неопределённость при преобразовании Фурье. И если воспроизвести указанные форманты, то результат будет очень сильно отличаться от человеческого голоса — из чего следует, что реальное звучание гласных несколько сложнее суммы 15 частот.


        1. toruk0109 Автор
          27.10.2018 16:14

          Вейвлет раскроет структуру фонемы во времени и то, как происходит модуляция ее. На это влияет эмоциональная окраска и тембр голоса. Здесь же описан самый простой способ математического моделирования. Здесь не представлены, но данная модель себя оправдывает


        1. toruk0109 Автор
          27.10.2018 16:16

          И вейвлет представляет распределение амплитуды и частоты во времени, так что это не просто частотно-временное распределение.


  1. DimPal
    26.10.2018 13:37
    +2

    Ну и как к гласной фонеме подклеить согласную, что бы получить хотя бы слог?


  1. AnutaU
    26.10.2018 14:18
    +1

    Минутка терминологического занудства

    Фонема — это абстрактная единица языка, которая в речи реализуется в звуках (фонах), причём одна и та же фонема может реализовываться в разных звуках в зависимости от позиции. Приведённые физические характеристики относятся именно к звукам, не к фонемам.


  1. kovserg
    27.10.2018 00:18
    +1

    Вообще я думаю следовало бы упомянуть что наша речь состоит из гласных звуков и согласных. Гласные звуки создаются голосовыми связками (и разными резонаторами нос рот и т.п.) а согласные есть импульсные ( S(t)*exp(-a*t) ) и всякие шипящие и свистящие шумы ( noise(t) ).
    Голосовые связки генерируют сигнал похожий на анлийскую букву N (рис 5.7 б)
    image
    И потом он модифицируется полостями рта, носа и языком. При этом период сигнала меняется не значительно, но модифицируется гармониками. Это период определяет тембр голоса (муж/жен детский). А гармоники собственно конкретную гласную. Наш мозг способен уверенно выявить такой сигнал если он повторяется 7раз подряд. Возможно следует привязаться к этому факту. И уже после выделения этого опорного сигнала изменять шкалу времени и кластеризовать именно искажения этого задающего сигнала. Это снизит зависимость от говорящего. А простое разложение по частотам это путь в никуда.


  1. DimPal
    27.10.2018 14:19

    А сонорные звуки вроде «М» или «Н» это какого вида шумы? Импульсные или свистяще-шипящие?


    1. kovserg
      27.10.2018 15:02

      Комбинированные. Имеется ввиду что следует сначала перейти в систему координат в которой будет проще работать.


  1. DimPal
    27.10.2018 16:17

    В далекой молодости мы с другом сделали не совсем удачный эксперимент — надиктовали в микрофон все буквы алфавита и попытались из «кусочков» составить слова. Даже после «шлифовки напильником» получалась полная ерунда. Слогами соединять получилось лучше, но тоже не фонтан (интонация и плавность произнесения были ужасны). Возможно стоило более тонко интерполировать звуки соединяя их между собой, но на вскидку задача синтеза голоса оказалась не такая уж простая. В общем, в результате бросили мы эту затею…


    1. kovserg
      27.10.2018 18:55

      даже расстановка ударений не простая задача


    1. toruk0109 Автор
      27.10.2018 22:26

      Тем интереснее решать такую задачу. И любая заоача решается путем решения более мелких и простых, из которых состоит основная.


  1. Bhudh
    28.10.2018 05:13
    -2

    Выражения «фонемы человеческого голоса» и «фонемы отдельных букв» (!!!) не имеют смысла.
    Вы — носитель окающего говора, что у Вас буква о всего одну фонему обозначает или что?
    Мне казалось, что различие буквы и звука вдалбывают ещё в школе. А потом в институте будущим специалистам соответствующих наук уже объясняют, что то, что в школе называлось звуком, по-научному зовётся фонемой. Которая к тому же имеет кучу аллофонов в различных позициях.
    К слову, по Московской фонологической школе фонемы /ы/ в русском языке вообще нет.


  1. toruk0109 Автор
    28.10.2018 08:50

    Каким образом данный монолог касается непосредственно математической модели?


    1. Bhudh
      28.10.2018 12:15

      Если Вы промахнулись по кнопке «Ответить» и вопрос ко мне, прямым образом.
      Какой именно аллофон каждой фонемы описывает модель?
      В слове молоко, например, какая "фонема «О»" представлена в таблице и будет сгенерирована? И вообще, фонемы обычно пишутся в нотации МФА и не в кавычках, а в квадратных ([o]) или косых (/o/) скобках.


      1. toruk0109 Автор
        29.10.2018 05:41

        Если бы рассматривалось какое-то конкретное слово, то об этом в статье было указано. Этого в статье не было, тогда какие могут быть вопросы?


        1. Bhudh
          29.10.2018 14:12

          Вы хотите сказать, что генерируете абстрактную гиперфонему O, которая звучит непонятно где и непонятно в каком контексте?


      1. toruk0109 Автор
        29.10.2018 05:42

        Тем более неточность нотации не такая уж большая