Симулируйте данные из смешанной гауссовской модели

В этом примере показано, как симулировать данные из смешанной гауссовской модели (GMM) с помощью полностью заданного gmdistribution возразите и random функция.

Создайте известный, двухкомпонентный объект GMM.

mu = [1 2;-3 -5];
sigma = cat(3,[2 0;0 .5],[1 0;0 1]);
p = ones(1,2)/2;
gm = gmdistribution(mu,sigma,p);

Постройте контур PDF GMM.

gmPDF = @(x,y) arrayfun(@(x0,y0) pdf(gm,[x0 y0]),x,y);
fcontour(gmPDF,[-10 10]);
title('Contour lines of pdf');

Figure contains an axes object. The axes object with title Contour lines of pdf contains an object of type functioncontour.

Сгенерируйте 1 000 случайных варьируемых величин от GMM.

rng('default') % For reproducibility
X = random(gm,1000);

Постройте варьируемые величины с контурами PDF.

hold on
scatter(X(:,1),X(:,2),10,'.') % Scatter plot with points of size 10
title('Contour lines of pdf and Simulated Data')

Figure contains an axes object. The axes object with title Contour lines of pdf and Simulated Data contains 2 objects of type functioncontour, scatter.

Смотрите также

| | |

Похожие темы