Распределение gm для классификации в Matlab - PullRequest
3 голосов
/ 31 марта 2012

Давайте предположим, что у меня есть две модели gmdistibution, которые я получил, используя

modeldata1=gmdistribution.fit(data1,1);
modeldata2=gmdistribution.fit(data2,1);

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

Исходя из моего понимания этих функций, вывод nlogn с использованием команд posterior, cluster или pdf не будет хорошей мерой, поскольку я сравниваю «данные» с двумя разными дистрибутивами.

Какую меру или вывод я должен использовать, чтобы найти, что такое p(data|modeldata1) and p(data|modeldata2)?

Большое спасибо,

1 Ответ

2 голосов
/ 31 марта 2012

Если я вас правильно понимаю, вы хотите назначить новое, неизвестное, назначение данных либо для класса 1, либо для класса 2 с дескрипторами для каждого класса (в данном случае среднего вектора и ковариационной матрицы), найденного gmdistribution.fit.

Видя это новое назначение данных, давайте назовем его x, вы должны спросить себя, что такое p (modeldata1 | x) и p (modeldata2 | x), и какой из них является самым высоким, которому вы должны присвоить x.

Так как вы их нашли?Вы просто применяете правило Байеса и выбираете, какое из них является наибольшим:

p(modeldata1 | x) = p(x|modeldata1)p(modeldata1)/p(x)
p(modeldata1 | x) = p(x|modeldata2)p(modeldata2)/p(x)

Здесь вам не нужно вычислять p (x), поскольку оно одинаково в каждом уравнении.

Так, теперь вы оцениваете приоры p (modeldata1) и p (modeldata2) по количеству тренировочных очков из каждого класса (или используете некоторую заданную информацию), а затем вычисляете

p(x|modeldata1)=1/((2pi)^d/2 * sqrt(det(Sigma1)))*exp(0.5*(x-mu1)/Sigma1*(x-mu1))

, где d - размерностьиз ваших данных, Sigma - это матрица корвариации, а mu - средний вектор.Это то, что вы попросили p (data | modeldata1).(Просто не забывайте также использовать p (modeldata1) и p (modeldata2) при выполнении классификации).

Я знаю, что это было немного неясно, но, надеюсь, это поможет вам сделать шаг в правильном направлении.

РЕДАКТИРОВАТЬ: Лично я нахожу визуализацию, подобную приведенной ниже (взято из Распознавания образов Теодоридисом и Кутрумбасом).Здесь у вас есть две гауссовых смеси с некоторыми априорами и разными ковариационными матрицами.В синей области вы можете выбрать один класс, а в серой - другой.enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...