http://forum.vingrad.ru/forum/topic-7220/hl/%3F%3F%3F%3F%3F%3F%3F-%3F%3F%3F%3F/15.html#st_0_view_0 уважаемый podval поделился алгоритмом идентификации дикторов. После изучения у меня остался вопрос, а топик , к сожалению, уже закрыт. Итак, при разложении исходного сигнала в вейвлет-пакет мы получаем вектор-столбец, состоящий из коэффициетов, характеризующих распределение энергии в частотно-временной области. Т.е. коэффициенты 1-го, .., n-го уровней друг за другом. Формирование эталона происходит простым усреднением этих коэффициентов на множестве реализаций сигнала. Т.е. скажем я повторю 10 раз в микрофон одно и то же слово, получу 10 различных векторов разложения, затем простым усреднением получу эталон. Так же могу получить еще несколько эталонов для других дикторов, получив таким образом несколько классов. Вопрос: как применить расстояние Махаланобиса для задачи идентификации диктора, т.е. соотнесения анализируемой реализации с одним из существующиз классов? На входе имеем вектор-столбец разложения тестируемого сигнала в вейвлет пакет.
Цитата | ОК. Пишу сразу в матричном виде. Найдем сначала ковариационные матрицы (точнее, их оценки) для выборок А1 и А2. Соответствующие им векторы средних Х1 и Х2 мы уже имеем. 1. Центрирование: В1 = А1 - Х1 - из каждого столбца матрицы А1 надо вычесть вектор средних Х1. То же делаем для А2: В2 = А2 - Х2.
2. Определяем ковариационные матрицы
Cov1 = В1'*В1 - это значит умножить В1 транспонированную на В1 (по правилам умножения матриц!) Соответственно Cov2 = В2'*В2.
Лирическое отступление: строго говоря, чтобы получились действительно ковариационные матрицы, надо поделить Соv1/(n1 - 1) и Соv1/(n2 - 1) , где n1 и n2 - длины векторов Х1 и Х2. Но это сейчас не понадобится.
3. Вычисляем объединенную (пардон, выше сделал очепятку ) матрицу:
Cov12 = (Cov1 + Cov2)/(n1 + n2 - 2)
А для вычисления расстояния Махаланобиса Cov12 надо обратить.
|
Цитата | Расстояние Махаланобиса и классификация. Для каждой совокупности в выборке вы можете определить положение точки, представляющей средние для всех переменных в многомерном пространстве, определенном переменными рассматриваемой модели. Эти точки называются центроидами группы. Для каждого наблюдения вы можете затем вычислить его расстояние Махаланобиса от каждого центроида группы. Снова, вы признаете наблюдение принадлежащим к той группе, к которой он ближе, т.е. когда расстояние Махаланобиса до нее минимально.
|
Цитата | Расстояние Махаланобиса:
Dm = [(X1-X2)'*inv(S)*(X1-X2)],
где X1, X2 - векторы средних для матриц М1 и М2, S - объединенная ковариационная матрица, inv - операция обращения матриц, ' - операция транспонирования.
Объединенная ковариационная матрица считается так:
S = (Cov1 + Cov2)/(n1 + n2 - 2),
где Cov1 = M1'*M1, Cov2 = M2'*M2. n1, n2 - длины X1, X2.
|
Может ли кто-либо прокомментировать эти определения и формулы применительно к вышеописанной ситуации? спасибо
PS. поиск юзал
Черт, в названии ошибся, пардон, МахалАнобис |