Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

mahal

Mahalanobis distancia al componente de mezcla gaussiana

Descripción

ejemplo

d2 = mahal(gm,X) Devuelve la distancia Mahalanobis cuadrada de cada observación en cada componente de la mezcla Gaussiana.Xgm

Ejemplos

contraer todo

Genere aleatorias aleatorios que sigan una mezcla de dos distribuciones Gaussianas bivariadas utilizando la función.mvnrnd Ajuste un modelo de mezcla gaussiana (GMM) a los datos generados mediante la función y, a continuación, calcule las distancias de Mahalanobis entre los datos generados y los componentes de la mezcla del GMM ajustado.fitgmdist

Defina los parámetros de distribución (medias y covarianzas) de dos componentes de mezcla gaussiana bivariada.

rng('default') % For reproducibility mu1 = [1 2];          % Mean of the 1st component sigma1 = [2 0; 0 .5]; % Covariance of the 1st component mu2 = [-3 -5];        % Mean of the 2nd component sigma2 = [1 0; 0 1];  % Covariance of the 2nd component

Genere un número igual de variados aleatorios de cada componente y combine los dos conjuntos de variables aleatorias.

r1 = mvnrnd(mu1,sigma1,1000); r2 = mvnrnd(mu2,sigma2,1000); X = [r1; r2];

El conjunto de datos combinado contiene variados aleatorios después de una mezcla de dos distribuciones Gaussianas bivariadas.X

Ajuste un GMM de dos componentes a.X

gm = fitgmdist(X,2)
gm =   Gaussian mixture distribution with 2 components in 2 dimensions Component 1: Mixing proportion: 0.500000 Mean:   -2.9617   -4.9727  Component 2: Mixing proportion: 0.500000 Mean:    0.9539    2.0261 

se adapta a un GMM para usar dos componentes de mezcla.fitgmdistX Los medios de y son y, que están cerca y, respectivamente.Component1Component2[-2.9617,-4.9727][0.9539,2.0261]mu2mu1

Calcule la distancia de Mahalanobis de cada punto en cada componente de.Xgm

d2 = mahal(gm,X);

Trazar utilizando y utilizar el color del marcador para visualizar la distancia de Mahalanobis a.XscatterComponent1

scatter(X(:,1),X(:,2),10,d2(:,1),'.') % Scatter plot with points of size 10 c = colorbar; ylabel(c,'Mahalanobis Distance to Component 1')

Argumentos de entrada

contraer todo

Distribución de la mezcla gaussiana, también llamada modelo de mezcla gaussiana (GMM), especificada como un objeto.gmdistribution

Puede crear un objeto mediante o.gmdistributiongmdistributionfitgmdist Utilice la función para crear un objeto especificando los parámetros de distribución.gmdistributiongmdistribution Utilice la función para ajustar un modelo a los datos dados un número fijo de componentes.fitgmdistgmdistribution

Datos, especificados como una matriz-por-numérica, donde es el número de observaciones y es el número de variables en cada observación.nmnm

Si una fila de Contains, a continuación,XNaNs mahal excluye la fila del cálculo. El valor correspondiente es.d2NaN

Tipos de datos: single | double

Argumentos de salida

contraer todo

Cuadrado Mahalanobis distancia de cada observación en cada componente de la mezcla gaussiana, devuelta como una matriz numérica, donde es el número de observaciones en y es el número de componentes de la mezcla en.XgmnknXkgm

es la distancia cuadrada de la observación al componente de mezcla Gaussiana.d2(i,j)ij

Más acerca de

contraer todo

Mahalanobis Distance

La distancia de Mahalanobis es una medida entre un punto de muestra y una distribución.

La distancia de Mahalanobis de un vector a una distribución con media y covarianza esxμΣ

d=(xμ)1(xμ)'.

Esta distancia representa lo lejos que está de la media en número de desviaciones estándar.x

mahal Devuelve la distancia de Mahalanobis cuadrada d2 de una observación en un componente de mezcla en.Xgm

Introducido en R2007b