УДК 004.934
Иванов И.И. ©
Аспирант, кафедра организация и технология защиты информации ФГАОУ ВПО «Северо-Кавказский федеральный университет»
АНАЛИЗ МЕТОДА МЕЛ-ЧАСТОТНЫХ КЕПСТРАЛЬНЫХ КОЭФФИЦИЕНТОВ ПРИМЕНИТЕЛЬНО К ПРОЦЕДУРЕ ГОЛОСОВОЙ АУТЕНТИФИКАЦИИ
Аннотация
С математической точки зрения речевой сигнал можно описать функцией непрерывного времени t, либо представить, как последовательностью чисел х(п), статистические свойства речевого сигнала изменяются во времени, что свидетельствует о его нестационарности. Для дальнейшего использования в процедуре аутентификации необходимо определить значимые характеристики речевого сигнала, наиболее распространенными являются: амплитудные характеристики, отвечающие за громкость речи; временные характеристики, зависимые от темпа произнесения; частотные характеристики; энергетические характеристики; фазовые характеристики. В рамках данной статьи рассмотрены основные значимые характеристики речевого сигнала; методы применяемые для распознавания речи, точность идентификации в которых не зависит от диктора; предложена альтернатива существующим методам - использование мел-частотных кепстральных коэффициентах.
Ключевые слова: мел-частотные кепстральные коэффициенты, скрытые Марковские модели, «машина опорных векторов», пороговая функция обнаружения голосовой
активности, голосовая идентификация личности.
Summary
The speech signal can be described by a function of continuous time t, or present as a sequence of numbers x(n). Statistical properties of the speech signal changes over time, which indicates its unsteadiness. For further use in the authentication procedure is necessary to determine the significant characteristics of the speech signal, the most common are: amplitude characteristics that are responsible for the volume of speech; timing, depending on the pace of pronouncing; frequency characteristics; power characteristics; phase characteristics. In this article shows the main important characteristics of the speech signal; the methods used for speech recognition, identification accuracy that is independent of the speaker; it offered an alternative to existing methods - the use of chalk-frequency cepstral coefficients.
Keywords: MFCC, mel-frequiency cepstral coefficients, hidden Markov model, НММ, support vector machine, SVM, VAD-function, voice activation detection, speaker recognition, frequency distribution.
В настоящее время описаны и используются множество различных математических моделей обработки сигналов, многие из которых с успехом применяются для речевых сигналов. Для представления речевого сигнала и получения его амплитудного спектра в частотной области (и вытекающих из него характеристик) чаще других применяется преобразование Фурье:
s(w) = J s(t)e~iwdt
(1)
© Иванов И.И., 2015 г.
s(t) = — f s(a)eotda
О rr j
где функция s(t) характеристика s(t)
В дискретном виде [5]:
2p _
непрерывна и
(2)
интегрируема, s(o) - спектральная
N-1
S(n)=Zs(k)e
2P
-i—nk N
1
k=0
N-1
(3)
s(n) = 77 Z S(k)e
N k=0
2p .
г--nk
N
(4)
Для представления речевого сигнала в параметрическом виде используют кратковременный спектр, который можно рассматривать как текущий спектр с реальным временем [6, 11, 12]
s(a,t) = f s(t)h(t -t)e~iotdt = a(a,t) - ib(a,t)
(5)
где h(t) - временное окно, используемое для анализа сигнала s(t) в текущий момент времени t через круговую частоту о .
На практике, однако, чаще используют анализ амплитудного \S(o, t)| или фазового F(a,t) спектра вместо анализа кратковременного спектра s(a,t) :
\S(o,t)\ =
f s(t)h(t -t) cos cord t +f s(t )h( t -t) sin and t
f t Л
f s(t)h(t -t) sin atdt
(6)
F( a,t) = arctg
t
f s(t)h(t -t) cos atdt
(7)
Несмотря на все преимущества спектрального анализа на основе Фурье-представлений, данный метод имеет некоторые недостатки:
- имеются ограничения на отражения фазовой структуры сигнала;
- затрудняется нахождение формант при некорректном выборе окна;
- искажение при передаче по каналу связи [13].
Использование методов линейного предсказания (ЛП) при анализе сигнала способствует более быстрому выполнению расчетов. Если представить речевой сигнал как линейную комбинацию конечных предшествующих отсчетов:
s(t) = f a(x)s(t - x)dx + Gd(t)
(8)
или в дискретной форме
s(n) = Z aks( n - k) + Gd( n)
k=-¥ , (9)
где Gd(t) - источник возбуждения с коэффициентом усиления G. Тогда линейный предсказатель и погрешность предсказания имеют вид соответственно:
s
(n) = Zaks(n - k)
k=-¥
(10)
2
2
e(n) = s(n) - sjn) = s(n) - Xaks(n - k)
k=-¥ (11)
Однако использование моделей на основе методов линейного предсказания не лишено недостатков [2]:
- возникает затруднение при выборе порядка модели;
- результаты, полученные от линейного предсказания, не всегда удовлетворяют условию устойчивости;
- низкая надежность при использовании в системах с несколькими дикторами;
- модель не отражает влияние фазовых характеристик речи.
Для вычисления фазовых параметров удобно использовать преобразование Гильберта [7, 8 ,9]. Если A(t) - огибающая амплитуда, а j(t) - полная фаза, тогда речевой
сигнал имеет вид:
s(t) = A(t)cosj(t) (12)
Если s(t) представить в виде действительной части комплексного сигнала z(t), то получим [2]:
z(t) = s(t) + isc(t) (13)
где sc(t) - функция, сопряженная с s(t)
Согласно преобразованию Гильберта, прямая и сопряженная функции связаны соотношениями:
1 ¥ s(x)
sc(t) =--I -----dx
p -¥ x -1
s(t) = 1 f sdxldx
p -¥ x -1
Подставляя (12) и (14) в (13) получаем:
(14)
(15)
z(t) = A(t) cos j(t) - — I
7Г J
• A(t) cos j(t)
x-t
dx )
(16)
При использовании преобразования Гильберта не составляет труда найти амплитудные и фазовые спектры имея s(t) восстановить z(t) и sc(t). Однако, как правило, в
математическом плане выражение j(t) = arctg
sc(t)
s(t)
не является определенным в широком
диапазоне времени и частоты, это затрудняет применение прямого подхода к вычислениям начальной фазы речевого сигнала [2].
На практике для построения систем распознавания речи предпочтение дается методам, точность идентификации которых не зависит от диктора:
- скрытые Марковские модели (Hidden Markov model - НММ);
- методы распознавания диктора, основанный на «машине опорных векторов» (Support Vector Machine- SVM).
Негласным стандартом в области речевых технологий является использование скрытых Марковских моделей, которые определяются как двойной случайный процесс. Лежащий в основе случайный процесс представляет собой однородную Марковскую цепь с конечным числом состояний. Последовательность состояний не наблюдается и поэтому называется скрытой. Эта цепочка состояний влияет на другой случайный процесс, который и производит последовательность наблюдений. Преимущества метода:
- HMM обладают простой математический структурой;
- структура HMM позволяет моделировать сложную цепочки наблюдений;
- параметры модели могут быть автоматически выбраны таким образом, чтобы описать имеющийся набор данных для обучения.
Для практического применения важны следующие задачи, решаемые с помощью
HMM:
заданной последовательности символов
Q qi ’Ч 2’'"’qT
сгенерированной
заданной
моделью
1 = {А’Б’П).
- при каких параметрах модели
1 = {А’БП}
вероятность
P(O\ 1)
является
максимальной.
На сегодня можно выделить следующие подходы к составлению HMM [1, 2, 3, 4]:
- составление моделей фонем - минимальных языковых единиц
- моделирование фонем тремя состояниями (начальное, среднее, конечное);
- моделирование разных типов фонем (монофоны и трифоны) на основании эффекта коартикуляции.
- для распознавания отдельно стоящих слов составляются HMM для каждого слова;
- для распознавания слитной речи составляют одну HMM, склеивая через промежуточные состояния.
Существенным недостатком подхода с использованием HMM является возможность использовать его с приемлемым качеством распознавания только в строго фиксированных условиях, что характеризуется неустойчивостью под воздействие помех среды и канала связи.
Методы, основанные на SVM, широко используется в естественно-языковых приложениях при обработке речевых сигналов. Например, задачи распознавания языка искаженного текста и идентификация диктора. Идея SVM основана на следующих предпосылках: предположим, что существуют два класса объектов в некотором и-мерном пространстве, которые можно разделить гиперплоскостью так, что с одной стороны от гиперплоскости должны находиться вектора одного класса, с другой - второго. Очевидно, что такая гиперплоскость может быть не единственной. Построим две такие параллельные гиперплоскости. Для лучшего разделения классов требуется, чтобы расстояние между плоскостями было как можно больше. Обычно для нахождения параллельных разделяющих гиперплоскостей с максимальным расстоянием в методе опорных векторов минимизируется квадратичная функция с линейными ограничениями. Решение такой задачи выражается через координаты обучающих векторов, лежащих на краю разделяющей полосы - так называемых опорных векторов. В случае, когда классы линейно неразделимы в исходном пространстве, строится отображение (необязательно линейное) в пространство большей размерности, образы классов в котором линейно разделимы. Это пространство называется пространством вторичных признаков.
Алгоритм SVM обладает следующими преимуществами:
- в силу решения задачи минимизации выпуклой функции алгоритм гарантирует получение единственного решения. Это является серьёзным преимущество перед нейронными сетями, в которых решением может быть локальный минимум или ответ может быть неопределенным.
- в связи с тем, что алгоритм робастен к зашумленности исходного сигнала, он хорошо приспособлен для распознания речи.
- алгоритм позволяет работать с данными очень больших размерностей, что важно при распознавании речи, где размерность вектора признаков может достигать многих сотен или тысяч.
Альтернативой существующим методам может служить применение методов, основанных на мел-частотных кепстральных коэффициентах (MFCC - mel-frequiency cepstral coefficients). Преимущества данного метода обусловлены независимостью, полученного
вектора от длины исходного образца, его относительно малый размер и учет в нем разброса индивидуальных характеристик голосового тракта идентифицируемого субъекта [10].
Применительно к системам голосовой аутентификации и синтеза речи обрабатываемым образцом является запись речевого сигнала с частотой дискретизации 16 кГц (допустимы и большие значения, однако они требуют больших вычислительных ресурсов) и разрядностью 16 бит.
Важной стадией голосовой аутентификации является предварительная подготовка речевого сигнала до выделения характерных признаков. Рассмотрим основные используемые процедуры на основе записанного речевого фрагмента, содержащего слово «привет», произнесенного мужчиной (рисунок 1):
- после ввода сигнала в систему предварительной обработки производится устранение возникающих в речевой системе при произнесении звуков естественных искажений. Следует отметить, что слуховая система наиболее чувствительно к звуку с частотой выше 1 кГц, поэтому на данном этапе усиливается та часть спектра, которая содержит наиболее важные характеристики речи (форматы высоких порядков). Для данной корреляции используют фильтр высоких частот с передаточной функцией:
ВЧ
1 - z -1 1 - az ~1
v
(17)
где коэффициент а ® 1, на практике для а используют значение a =
127 ;
128 ’
- необходимость в нормализации по амплитуде обусловлена большой вариативностью громкости речевого образца, которая зависит от ряда факторов (качества записывающего устройства, громкости голоса диктора и его удаленности от микрофона и т.д.). Нормализованный сигнал имеет вид:
S'[n] =---D----г S[n]
maXS[m ]
m ' ' , (18)
где коэффициент Л определяет ширину полосы пропускания. Ширина полосы пропускания должна быть симметрична относительно оси горизонтальной оси координат.
Применительно к опытным системам, где используется одно записывающее устройство и, как правило, один диктор нормализация играет незначительную роль, однако при работе реальной системы аутентификации снижение разброса по громкости для различных произнесений/дикторов крайне необходимо;
1 ---------1--------1---------1--------1---------1--------1--------- 1200
Рис. 1 - Речевой файл со словом «привет», произнесенный диктором мужчиной (а) и его
гистограмма (б)
- кадрирование. Стоит отметить, что непрерывный речевой сигнал не удовлетворяет ни условию существования, ни условию определенности на бесконечном интервале времени, значит необходимо «разбить» речевой сигнал на сегменты/фреймы некоторой длины,
спектры которых остаются относительно неизменными в течение выбранного периода времени (обычно 5-100 мс). «Разбиение» исходного образца на кадры заданной длительности осуществляется с половинным перекрытием (для борьбы с искажениями, вызванными расположенными рядом кадрами) либо без перекрытия (для экономии вычислительных ресурсов). Выходной сигнал в пределах полученного кадра можно считать стационарным. С точки зрения динамики речи, самые быстрые изменения могут происходить всего за несколько миллисекунд, в то время, как некоторые гласные звуки остаются относительно стабильными в течение 100-200 мс. Обычно используют фрагменты длиной 5-20 мс;
- для повышения точности распознавания необходимо производить удаление из образца не информативных фрагментов (пауз). Удаление происходит путем определения порогового уровня «энергии сигнала» с последующей фильтрацией кадров, мощность которых не превышает заданный уровень, обычно используется кратковременная энергия
Е
сигнал S (рисунок 2 - а), кратковременная мощность сигнала S, и частота переходов через
ноль
ES = Y}x(m)w(n - m)]
PS = 7 Y}x(m)w(n - m)]
L m=-¥
(19)
(20)
где N - количество отсчетов кадра, n - номер кадра, w(n) - функция окна,
m=—
2
мощность PS эквивалентна энергии сигнала ES, отнесенной к длине блока L.
Порог для определения отношения «сигнал/пауза» выбирается исходя из максимальной амплитуды шума хш в паузах - Епороговое = x^N. Кроме того, кратковременную
энергию сигнала можно использовать и для определения отношения
«вокализированный/невокализированный», поскольку энергия вокализированного сигнала существенно выше.
При анализе сигналов в дискретном времени часто исследуют количество переходов сигнала через ноль ZS (рисунок 2 - б). Частота переходов сигнала через ноль может служить простейшей характеристикой спектральных свойств сигнала. хотя сама обработка производится во временной области. Это наиболее справедливо для узкополосных сигналов. Речевой сигнал является широкополосным и функция среднего числа переходов через ноль может быть грубой оценкой спектральных свойств, особенно на фоне шума.
Кратковременная функция среднего числа переходов через ноль или нулевых пересечений основана на сравнении знаков соседних отсчетов и определяется:
Z = 7 у \ssn(S(m)) -sgn(S(m -7))\ S L±^¥ 2
w(n - m )
(21)
где S (x) - знаковая функция, S n(x) = l, если x > 0 и S (x) = -1, если x < 0
Функция среднего числа переходов через ноль для невокализованных участков существенно выше, чем для вокализованных.
Рис. 2 - Кратковременная энергия речевого образца (а) и функция переходов через ноль (б)
На практике чаще используют комплексный показатель:
7
7k — гу
7 (22) либо пороговая функция VAD (Voice Activation Detection), которая учитывает все характеристики:
\l,Ws(m) > tw [О, Ws(m) < tw
WS(m) — (1 - 7S( m))PS (m)SC
tw —m +adw a — Q.2S~°'8
VAD — -
(23)
(24)
(25)
(26)
где SC - масштабирующие коэффициенты (подбираются экспериментально), tw -пороговое значение функции VAD, jUw - среднее значение шумовых отсчетов, 8w -
отклонение от среднего значения
Экспериментальные значения VAD-функции, полученные на записанном речевом образце способность данного метода отличать речь от шумов различной природы (таблица 1):
Таблица l
Результаты тестирования ЙАО-функции на тестовом речевом образце «привет»
Число фрагментов Доля от общего числа, %
Обработано всего 864 100
Вокализированная речь 117 13.54
Невокализированная речь 747 86.46
Определенные вокализированные участки 117 49.57
Определенные невокализированные участки 623 99.20
Доля ошибок 124 14,35
В результате предварительной получаем информативный выходной сигнал, разбитый на интервалы и пригодный для получения множества спектральных векторов.
К оцифрованному и кадрированному сигналу применяется весовая функция, чтобы уменьшить искажения, вызванные конечностью выборки, в Фурье-анализе. В качестве
весовой функции можно использовать окно Хэмминга (27) или окно Ханнинга (28), если N -длина кадра, выраженная в отчетах, n - порядковый номер элемента в кадре, то:
^ 2pn Л
0)ham(n) = 0,53836 — 0,46164cos
N — 1) п = 0,...,N—1
(Ohan(n) = 0,50
г
r
1 — cos
V
2pn N — 1
n = 0,...,N — 1
(27)
(28)
(29)
Представление (29) разбивается на диапазоны с помощью «гребенки» треугольных фильтров. Дальнейший перевод значений частоты звука /(Гц) в значения высоты звука m (мел) осуществляется с помощью:
Используя весовую функцию запишем дискретное преобразование Фурье в виде:
N—1 _
S(k) = ^ s(n )w( n )e
.2л .
—i---nk
N
k=0
f
m(/) = 2595lg
Для обратного преобразования:
/
f
1 + ■
V 700,
= 1127ln
/
1 + -
V 700
(30)
m
,1127
F (m) = 700(e1127 — 1) (31)
Предположим, что K - заранее заданное количество мел-кепстральных
коэффициентов, Hmk - весовые коэффициенты треугольных фильтров, mbegin,mcent,mend -
начало, середина, конец треугольного окна, тогда дальнейшим шагом является вычисление энергии для каждого окна:
0,m(n) < mbegin
m(n) — mbegin
H
m,k
m„
m
-,mbegin £ m(n) < mc
. •j
begin
mend — m(n)
m
end
m
,mcent £ m(n) < m,
end
0,m(n) > m
end
N
S(m) = ln\ ^ |Sk|2 И,,,
Kk=0
m = 0,..., K - 1
Используя (33) применяем дискретное косинусное преобразование:
K—1
c(n) = ^ S(m)
cos
1Л ip
m + — I — 2 ) K
\
i = 1.......K
(32)
(33)
(34)
В качестве итоговых значений коэффициентов берутся несколько первых значений, однако, коэффициент с0 представляет собой энергию сигнала, соответственно, не несет информации о говорящем. Количество коэффициентов выбираются, как правило, в диапазоне K е [ 12;30] .В результате описанных преобразований огромное количество отсчетов речевого сигнала заменяется на небольшой набор значений K . Проведенный эксперимент с тестовыми речевыми образцами в среде Matlab, показал, что использование кепстральных коэффициентов может обеспечивать точность распознавания до 98%, что позволяет говорить о возможности использования данного метода для аутентификации пользователей в системах контроля и управления доступом (СКУД).
Неоспоримым достоинством метода MFCC является простота реализации при достаточном качестве распознавания, которое не уступает в сравнении с другими популярными алгоритмами.
Литература
1. Becchetti С, Ricoili L.P. Speech Recognition. Theory and C++ Implementation: John Wiley and Sons, Ltd, 1999,428 p.
2. Huang X., Acero A. Spoken language processing: a guide to Algorithms and System Development: Prentice Hall, 2001, 1008 p.
3. Rabiner L., Juang B. - H. Fundamentals of speech recognition: Prentice-Hall, Inc., 1993, 507 p.
4. Rabiner L. Proceedings of the Institute of electrical engineering and radio electronics: vol. 2 - M.: Mir, 1989, 86-120 p.
5. Афанасьев А.А. Аутентификация. Теория и практика обеспечения безопасного доступа к информационным ресурсам: Учебное пособие для вузов - М.: Горячая линия - Телеком, 2009. -Гл. 11.
6. Высоцкий Г. А. Сомин. Н. В Алгоритм выделения основного тона спектральными методами для ЭВМ среднего класса // Дискретная обработка речевых сигналов. - 1978. - ВЦ АН СССР.
7. Гоноровский И. С, Демин М.П. Радиотехнические цепи и сигналы: - М.: Радио и связь, 1994, 480с.
8. Дворянкин С. В. Взаимосвязь цифры и графики, звука и изображения // Открытые системы 3/2000. С. 34-40.
9. Дворянкин С. В., Кханг. В. В. Голосовые признаки индивидуальной информативности в речевых системах управления доступом // Тезисы докладов научно-технической конференции профессорско-преподавательского состава. -М.: МТУСИ, 2001. С. 11-12.
10. Заковряшин А.С., П.В. Малинин, А. А. Лепендин Применение распределений мел-частотных кепстральных коэффициентов для голосовой идентификации личности // Управление, вычислительная техника и информатика 5/2007. С. 156-160.
11. Нуссбаумер Г. Быстрое преобразование Фурье и алгоритмы вычисления сверток: - М.: Радио и связь, 1985. - 248с.
12. Питерсон Дж. Теория Петри и моделирование систем: - М.: Мир, 1984, 264 с.
13. Харкевич А. А. Спектры и анализ. - М.: Государственное издательство технико-теоретической литературы, 1953, 213с.