Азербайджан |
Классификация на основе сравнения с эталоном
8.3. Задача сравнения речевых команд
В обработке речи можно выделить следующие основные направления:
- Распознавание отдельных слов (IWR – Isolated Word Recognition),
- Распознавание слитной речи (CSR – Continuous Speech Recognition).
- CDR – Speaker Dependent Recognition,
- SIR – Speaker Independent Recognition.
Ядром IWR-систем является совокупность эталонов и мера. Отрезок
сигнала (см. рис.) разбивается на сегменты, т.е. сигнал квантуется
(с перекрытием). С каждым сегментом связывается вектор коэффициентов
Фурье.
Обработка звука происходит в два этапа.
Первый этап. Строим цепочку ,
– разговорные сегменты. Далее
строим преобразование Фурье с разбиением на
отрезков. Обозначим
через
,
– отчеты для
-ого сегмента,
. Тогда
![X_i(m)=\frac{1}{\sqrt{512}}\sum_{n=0}^{511}x_i(n)\cdot\exp\left(-j\frac{2\pi}{512}\right),\; m=0,\ldots,511.](/sites/default/files/tex_cache/9ee36d548606f5e4a172b695f123f48e.png)
Рассмотрим первые (пусть
),
коэффициентов Фурье в качестве вектора признаков:
![\def\I{\mathop{I}}
r(i)=
\left[
\begin{gathered}
X_i(0) \\
X_i(1) \\
\vdots \\
X_i(l-1)
\end{gathered}
\right],
\;l=1,\ldots,\I\limits^{.}](/sites/default/files/tex_cache/6eb3f4ff5737a5e583ada624365c326d.png)
Второй этап. Определяем ограничения в графе соответствия сегментов эталонной и тестируемой команд.
Глобальные ограничения – ограничения поля для оптимального
маршрута, например, (рис. слева).
Локальные ограничения – монотонность на сети маршрутов (рис. справа).
Ограничения конечной точки.
Стоимость – Евклидово расстояние между
:
![d(i_k,j_k|i_{k-1},j_{k-1})=\|r(i_k)-t(j_k)\|=d(i_k,j_k).](/sites/default/files/tex_cache/ff9dd8fdd6dd79707f19d3324b5caa28.png)
Таким образом, и эта задача также сводится к поиску кратчайшего пути на графе.
8.4. Динамическое программирование
Задача поиска кратчайшего пути на графе может быть решена
методом динамического программирования. Пусть – начальный узел
(отправной город),
– конечный узел (город – пункт назначения). Тогда
задача состоит в поиске оптимального маршрута через промежуточные узлы
(города):
![(i_0,j_0)\xrightarrow{opt}(i_f,j_f)](/sites/default/files/tex_cache/59b372a28bba3c2b0cfefd7841d13d95.png)
Пусть – промежуточный узел. Тогда по принципу оптимальности
Беллмана имеем
![(i_0,j_0)\xrightarrow{opt}(i_f,j_f)=
\left((i_0,j_0)\xrightarrow{opt}(i,j)\right)\oplus
\left((i,j)\xrightarrow{opt}(i_f,j_f)\right),](/sites/default/files/tex_cache/e16be16e7c465691f226db5c09ffedb7.png)
![D_{\min}(i_k,j_k)=\min_{(i_{k-1},j_{k-1})}
\left[
D_{\min}(i_{k-1},j_{k-1})+d(i_k,j_k|i_{k-1},j_{k-1})
\right]](/sites/default/files/tex_cache/318b1c6acb4f17c4c27b9e736217a585.png)