exponenta event banner

следующий

Задняя вероятность гауссова компонента смеси

Описание

пример

P = posterior(gm,X) возвращает заднюю вероятность каждого гауссова компонента смеси в gm учитывая каждое наблюдение в X.

[P,nlogL] = posterior(gm,X) также возвращает отрицательную логику модели гауссовой смеси gm учитывая данные X.

Примеры

свернуть все

Генерируйте случайные вариации, которые следуют за смесью двух двумерных гауссовых распределений, используя mvnrnd функция. Поместите модель смеси Гаусса (GMM) в сгенерированные данные с помощью fitgmdist функция, а затем вычислить апостериорные вероятности компонентов смеси.

Определите параметры распределения (средние и ковариации) двух двухмерных гауссовых компонентов смеси.

mu1 = [2 2];          % Mean of the 1st component
sigma1 = [2 0; 0 1];  % Covariance of the 1st component
mu2 = [-2 -1];        % Mean of the 2nd component
sigma2 = [1 0; 0 1];  % Covariance of the 2nd component

Создайте равное количество случайных вариаций из каждого компонента и объедините два набора случайных вариаций.

rng('default') % For reproducibility
r1 = mvnrnd(mu1,sigma1,1000);
r2 = mvnrnd(mu2,sigma2,1000);
X = [r1; r2];

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

Вписать двухкомпонентный GMM в X.

gm = fitgmdist(X,2)
gm = 

Gaussian mixture distribution with 2 components in 2 dimensions
Component 1:
Mixing proportion: 0.500765
Mean:   -1.9675   -0.9654

Component 2:
Mixing proportion: 0.499235
Mean:    1.9657    2.0342

График X с помощью scatter. Визуализация подогнанной модели gm с помощью pdf и fcontour.

figure
scatter(X(:,1),X(:,2),10,'.') % Scatter plot with points of size 10
hold on
gmPDF = @(x,y) arrayfun(@(x0,y0) pdf(gm,[x0 y0]),x,y);
fcontour(gmPDF,[-6 8 -4 6])
c1 = colorbar;
ylabel(c1,'Probability Density Function')

Figure contains an axes. The axes contains 2 objects of type scatter, functioncontour.

Вычислите апостериорные вероятности компонентов.

P = posterior(gm,X);

P(i,j) - задняя вероятность jth Гауссова компонента смеси дано наблюдение i.

Постройте график задних вероятностей Component 1 с помощью scatter функция. Используйте цвета круга для визуализации задних значений вероятности.

figure
scatter(X(:,1),X(:,2),10,P(:,1))
c2 = colorbar;
ylabel(c2,'Posterior Probability of Component 1')

Figure contains an axes. The axes contains an object of type scatter.

Постройте график задних вероятностей Component 2.

figure
scatter(X(:,1),X(:,2),10,P(:,2))
c3 = colorbar;
ylabel(c3,'Posterior Probability of Component 2')

Figure contains an axes. The axes contains an object of type scatter.

Входные аргументы

свернуть все

Распределение гауссовой смеси, также называемое моделью гауссовой смеси (GMM), указанное как gmdistribution объект.

Можно создать gmdistribution объект с использованием gmdistribution или fitgmdist. Используйте gmdistribution для создания функции gmdistribution путем указания параметров распределения. Используйте fitgmdist функция для соответствия gmdistribution модель для данных с фиксированным числом компонентов.

Данные, определенные как n-by-m числовая матрица, где n - количество наблюдений, а m - количество переменных в каждом наблюдении.

Если строка X содержит NaNs, то posterior исключает строку из расчета. Соответствующее значение в P является NaN.

Типы данных: single | double

Выходные аргументы

свернуть все

Задняя вероятность каждого гауссова компонента смеси в gm учитывая каждое наблюдение в X, возвращаемый в виде n-by-k числового вектора, где n - число наблюдений в X k - количество компонентов смеси в gm.

P(i,j) - задняя вероятность jth Гауссова компонента смеси дано наблюдение i, Вероятность ( компонентj | наблюдение i).

Отрицательное логарифмическое значение модели гауссовой смеси gm учитывая данные X, возвращается в виде числового значения.

Представлен в R2007b