Explicação de baixo para cima da distância de Mahalanobis?


127

Estou estudando reconhecimento de padrões e estatística e quase todos os livros que abro sobre o assunto me deparo com o conceito de distância de Mahalanobis . Os livros dão explicações intuitivas, mas ainda não são boas o suficiente para eu realmente entender o que está acontecendo. Se alguém me perguntasse "Qual é a distância de Mahalanobis?" Só pude responder: "É uma coisa legal, que mede algum tipo de distância" :)

As definições geralmente também contêm vetores próprios e valores próprios, que eu tenho um pouco de dificuldade em conectar à distância de Mahalanobis. Entendo a definição de autovetores e autovalores, mas como eles estão relacionados à distância de Mahalanobis? Isso tem algo a ver com a alteração da base na Álgebra Linear, etc.?

Também li estas perguntas anteriores sobre o assunto:

Eu também li essa explicação .

As respostas são boas e fotos bom, mas eu ainda não realmente obtê-lo ... Eu tenho uma idéia, mas ele ainda está no escuro. Alguém pode dar uma explicação de "Como você explicaria isso à sua avó" para que eu pudesse finalmente encerrar isso e nunca mais me perguntar qual é a distância de Mahalanobis? :) De onde vem, o quê, por quê?

ATUALIZAR:

Aqui está algo que ajuda a entender a fórmula de Mahalanobis:

https://math.stackexchange.com/questions/428064/distance-of-a-test-point-from-the-center-of-an-ellipsoid

Respostas:


188

Aqui está um gráfico de dispersão de alguns dados multivariados (em duas dimensões):

insira a descrição da imagem aqui

O que podemos fazer disso quando os eixos são deixados de fora?

insira a descrição da imagem aqui

Introduzir coordenadas sugeridas pelos próprios dados.

A origem estará no centróide dos pontos (o ponto de suas médias). O primeiro eixo de coordenadas (azul na próxima figura) se estenderá ao longo da "espinha" dos pontos, que (por definição) é qualquer direção na qual a variação é maior. O segundo eixo de coordenadas (vermelho na figura) se estenderá perpendicularmente ao primeiro. (Em mais de duas dimensões, ele será escolhido na direção perpendicular em que a variação for a maior possível e assim por diante.)

insira a descrição da imagem aqui

Nós precisamos de uma balança . O desvio padrão ao longo de cada eixo será bom para estabelecer as unidades ao longo dos eixos. Lembre-se da regra 68-95-99.7: cerca de dois terços (68%) dos pontos devem estar dentro de uma unidade da origem (ao longo do eixo); cerca de 95% deve estar dentro de duas unidades. Isso facilita a observação das unidades corretas. Para referência, esta figura inclui o círculo de unidades nessas unidades:

insira a descrição da imagem aqui

Isso realmente não parece um círculo, parece? Isso ocorre porque esta imagem está distorcida (como evidenciado pelos diferentes espaçamentos entre os números nos dois eixos). Vamos redesenhá-lo com os eixos em suas orientações adequadas - da esquerda para a direita e de baixo para cima - e com uma proporção de unidade para que uma unidade horizontal realmente seja igual a uma unidade verticalmente:

insira a descrição da imagem aqui

Você mede a distância de Mahalanobis nesta imagem e não na original.

O que aconteceu aqui? Deixamos que os dados nos digam como construir um sistema de coordenadas para fazer medições no gráfico de dispersão. É só isso. Embora tenhamos feito algumas escolhas ao longo do caminho (sempre poderíamos reverter um ou ambos os eixos; e em raras situações as direções ao longo dos "espinhos" - as principais direções - não são únicas), elas não alteram as distâncias na trama final.


Comentários técnicos

(Não para a vovó, que provavelmente começou a perder o interesse assim que os números reapareceram nas parcelas, mas para abordar as questões restantes colocadas.)

  • Os vetores unitários ao longo dos novos eixos são os autovetores (da matriz de covariância ou de sua inversa).

  • Observamos que, sem distorcer a elipse para formar um círculo, divide a distância ao longo de cada vetor próprio pelo desvio padrão: a raiz quadrada da covariância. Deixando representar a função de covariância, a nova distância (Mahalanobis) entre dois pontos e é a distância de a dividida pela raiz quadrada de . As operações algébricas correspondentes, pensando agora em em termos de sua representação como matriz e e em termos de suas representações como vetores, são escritas . Isso funcionaCxyxyC(xy,xy)Cxy(xy)C1(xy)independentemente de qual base é usada para representar vetores e matrizes. Em particular, esta é a fórmula correta para a distância de Mahalanobis nas coordenadas originais.

  • As quantidades pelas quais os eixos são expandidos na última etapa são os (raízes quadradas dos) autovalores da matriz de covariância inversa. Equivalentemente, os eixos são encolhidos pelos (raízes dos) autovalores da matriz de covariância. Assim, quanto mais dispersão, mais o encolhimento necessário para converter essa elipse em um círculo.

  • Embora esse procedimento sempre funcione com qualquer conjunto de dados, ele parece ótimo (a nuvem clássica em forma de futebol) para dados que são aproximadamente multivariados Normal. Em outros casos, o ponto das médias pode não ser uma boa representação do centro dos dados ou os "espinhos" (tendências gerais nos dados) não serão identificados com precisão usando a variação como uma medida de dispersão.

  • A mudança da origem das coordenadas, rotação e expansão dos eixos formam coletivamente uma transformação afim. Além desse turno inicial, é uma mudança de base do original (usando vetores unitários apontando nas direções das coordenadas positivas) para o novo (usando uma opção de vetores próprios unitários).

  • Há uma forte conexão com a Análise de Componentes Principais (PCA) . Isso, por si só, ajuda bastante a explicar as perguntas "de onde vem" e "por que" - se você ainda não estava convencido pela elegância e utilidade de permitir que os dados determinem as coordenadas usadas para descrevê-las e medir suas diferenças.

  • Para distribuições normais multivariadas (onde podemos realizar a mesma construção usando propriedades da densidade de probabilidade em vez das propriedades análogas da nuvem de pontos), a distância de Mahalanobis (para a nova origem) aparece no lugar do " " na expressão que caracteriza a densidade de probabilidade da distribuição normal padrão. Assim, nas novas coordenadas, uma distribuição normal multivariada parece padrão Normalxexp(12x2)quando projetada em qualquer linha através da origem. Em particular, é o padrão Normal em cada uma das novas coordenadas. Desse ponto de vista, o único sentido substancial no qual as distribuições normais multivariadas diferem entre si é em termos de quantas dimensões elas usam. (Observe que esse número de dimensões pode ser e, às vezes, é menor que o número nominal de dimensões.)


3
Se alguém estiver curioso, uma transformação afim é "é uma transformação que preserva linhas retas ... e proporções de distâncias entre pontos em uma linha reta". (@whuber, eu não sei se você pode querer adicionar algo como isso no ponto de marcadores.)
gung

@gung Minha menção às transformações afins é seguida imediatamente por uma caracterização delas: uma tradução seguida por uma mudança de base. Eu escolhi esse idioma porque é o mesmo usado na pergunta. (Temos que tomar "mudança de base" um tanto liberalmente para abranger transformações lineares não-invertíveis: isso é uma questão importante para PCA, o que efetivamente cai alguns dos elementos da base.)
whuber

13
@ Whuber, sua explicação é provavelmente a melhor que eu já vi. Normalmente, quando isso é explicado, é abordado de maneira muito abstrata quando mencionam elipsóides e esferas, e eles não mostram o que significam. Parabéns a você por demonstrar como a transformação do eixo transforma a distribuição de dados em uma "esfera" para que a distância possa ser "vista" como múltiplos do sd dos dados da média dos dados, como é prontamente o caso de uma dimensão dados. Esta visualização, na minha opinião, é fundamental e, infelizmente, é deixada de fora da maioria das discussões sobre o tópico. Bom trabalho --- suas explicações

Existe um PCA robusto? Uma variação que nos permite jogar fora os pontos de dados extremos quando observamos o tamanho da matriz de covariância?
EngrStudent

@En certo: qualquer estimativa robusta da matriz de covariância levaria a um PCA robusto. Existem outros métodos diretos, conforme indicado por referências a eles em respostas a perguntas sobre PCA robusto .
whuber

37

Minha avó cozinha. O seu também pode. Cozinhar é uma maneira deliciosa de ensinar estatística.

Os biscoitos de abóbora Habanero são incríveis! Pense em como a canela e o gengibre podem ser maravilhosos nas guloseimas de Natal e depois perceba como estão quentes por conta própria.

Os ingredientes são:

  • pimentas habanero (10, semeadas e picadas finamente)
  • açúcar (1,5 xícaras)
  • manteiga (1 xícara)
  • extrato de baunilha (1 colher de chá)
  • ovos (2 médios)
  • farinha (2,75 xícaras)
  • bicarbonato de sódio (1 colher de chá)
  • sal (1 colher de chá)

Imagine seus eixos de coordenadas para o seu domínio sendo os volumes de ingredientes. Açúcar. Farinha. Sal. Bicarbonato de sódio. Variações ao longo dessas direções, sendo todas as demais iguais, não têm quase o impacto na qualidade do sabor como variação na contagem de pimentas habanero. Uma mudança de 10% na farinha ou na manteiga vai torná-lo menos ótimo, mas não matador. Adicionar apenas uma pequena quantidade a mais de habanero vai derrubá-lo de um penhasco saboroso, de sobremesa viciante a competição de dor baseada em testosterona.

Mahalanobis não é tão distante nos "volumes de ingredientes" quanto está longe do "melhor sabor". Os ingredientes realmente "potentes", muito sensíveis à variação, são os que você deve controlar com mais cuidado.

Se você pensa em alguma distribuição gaussiana versus a distribuição normal padrão , qual é a diferença? Centro e escala com base na tendência central (média) e tendência de variação (desvio padrão). Uma é a transformação de coordenadas da outra. Mahalanobis é essa transformação. Ele mostra como é o mundo se sua distribuição de interesse for relançada como um padrão normal em vez de um gaussiano.


4
Distribuições gaussianas são distribuições normais, então que distinção você está tentando fazer no seu último parágrafo?
whuber

11
@Whuber - padrão. Eu quis dizer padrão. Pensei que eu disse isso. Deve verificar o histórico de edições. As frases seguintes repetem o pensamento principal.
EngrStudent

2
O que então você quer dizer com " a distribuição de Gauss"?
whuber

11
Melhor? Pode ser uma distribuição gaussiana com qualquer média e variância - mas a transformação é mapeada para o normal padrão subtraindo a média e a escala pelo desvio padrão.
EngrStudent

4
Sim, agora está mais claro. Estou confuso por que você usa dois termos (gaussiano e normal) para se referir à mesma coisa, mas tudo bem agora que você explicou. Também estou um pouco confuso com a sua última afirmação, que parece dizer que toda distribuição multivariada pode ser transformada em um Normal padrão (que de acordo com a definição que você vincula é univariada ): Eu acho que você quer dizer que pode ser feito para parecer padrão Normal em cada componente. Independentemente disso, a analogia com a qual você começa é boa.
whuber

10

Como ponto de partida, eu veria a distância de Mahalanobis como uma deformação adequada da distância euclidiana usual entre os vetores e em . O pedaço extra de informações aqui é que e são realmente aleatórias vetores, ou seja, 2 diferentes realizações de um vetor de variáveis aleatórias, encontrando-se no fundo da nossa discussão. A pergunta que os Mahalanobis tentam abordar é a seguinte:d(x,y)=x,yxyRnxyX

"como posso medir a" dissimilaridade "entre e , sabendo que eles estão realizando a mesma variável aleatória multivariada?" xy

Claramente, a dissimilaridade de qualquer realização com ela mesma deve ser igual a 0; além disso, a dissimilaridade deve ser uma função simétrica das realizações e refletir a existência de um processo aleatório em segundo plano. Este último aspecto é levado em consideração pela introdução da matriz de covariância da variável aleatória multivariada.xC

Reunindo as idéias acima, chegamos naturalmente a

D(x,y)=(xy)C1(xy)

Se os componentes da variável aleatória multivariada não estiverem correlacionados, com, por exemplo, ("normalizamos" os para obter ), então a distância de Mahalanobis é a distância euclidiana entre e . Na presença de correlações não triviais, a matriz de correlação (estimada) "deforma" a distância euclidiana. X = ( X 1 , , X n ) C i j = δ i j X i V a r ( X i ) = 1 D ( x , y ) x y C ( x , y )XiX=(X1,,Xn)Cij=δijXiVar(Xi)=1D(x,y) xyC(x,y)


9

Vamos considerar o caso das duas variáveis. Vendo esta imagem de normal bivariada (obrigado @whuber), você não pode simplesmente afirmar que AB é maior que AC. Existe uma covariância positiva; as duas variáveis ​​estão relacionadas uma à outra.

Você pode aplicar medições euclidianas simples (linhas retas como AB e AC) somente se as variáveis ​​forem

  1. independente
  2. tem variações iguais a 1.

Essencialmente, a medida de distância de Mahalanobis faz o seguinte: transforma as variáveis ​​em variáveis ​​não correlacionadas com variações iguais a 1 e depois calcula a distância euclidiana simples.


11
você está sugerindo que toda vez que vejo uma correlação em um gráfico, como mostrado em sua resposta aqui, devo pensar apenas no cálculo de Mahalanobis em vez da distância euclidiana? O que me diria quando usar qual?
sandyp

7

Vou tentar explicá-lo da maneira mais simples possível:

A distância de Mahalanobis mede a distância de um ponto x de uma distribuição de dados. A distribuição dos dados é caracterizada por uma média e a matriz de covariância, sendo assim hipotetizada como uma gaussiana multivariada.

É usado no reconhecimento de padrões como medida de similaridade entre o padrão (distribuição de dados do exemplo de treinamento de uma classe) e o exemplo de teste. A matriz de covariância fornece a forma de como os dados são distribuídos no espaço de recursos.

A figura indica três classes diferentes e a linha vermelha indica a mesma distância de Mahalanobis para cada classe.  Todos os pontos na linha vermelha têm a mesma distância da média da classe, pois é utilizada a matriz de covariância.

A figura indica três classes diferentes e a linha vermelha indica a mesma distância de Mahalanobis para cada classe. Todos os pontos na linha vermelha têm a mesma distância da média da classe, pois é utilizada a matriz de covariância.

A principal característica é o uso da covariância como fator de normalização.


6

Gostaria de acrescentar um pouco de informação técnica à excelente resposta de Whuber. Essa informação pode não interessar à avó, mas talvez o neto a ache útil. A seguir, é apresentada uma explicação de baixo para cima da álgebra linear relevante.

d(x,y)=(xy)TΣ1(xy)ΣΣΣΣ=QTDQΣ1=QD12D12QTd(x,y)=[(xy)TQ]D12D12[QT(xy)]=zTzQ(xy)D12D12D1zTz


5

Talvez eu esteja um pouco atrasado para responder a essa pergunta. Este artigo aqui é um bom começo para entender a distância de Mahalanobis. Eles fornecem um exemplo completo com valores numéricos. O que eu mais gosto é a representação geométrica do problema.


4

Apenas para acrescentar às excelentes explicações acima, a distância de Mahalanobis surge naturalmente na regressão linear (multivariada). Essa é uma consequência simples de algumas das conexões entre a distância de Mahalanobis e a distribuição gaussiana discutida nas outras respostas, mas acho que vale a pena explicar de qualquer maneira.

(x1,y1),,(xN,yN)xiRnyiRmβ0Rmβ1Rm×nyi=β0+β1xi+ϵiϵ1,,ϵNm0Cxiyixiβ0+β1xiC

yixiβ=(β0,β1)

logp(yixi;β)=m2log(2πdetC)+12(yi(β0+β1xi))C1(yi(β0+βxi)).
C
argminβ[logp(yixi;β)]=argminβDC(β0+β1xi,yi),
DC(y^,y)=(yy^)C1(yy^)
y^,yRm

Por independência, a probabilidade de de fornecida é dado pela soma Portanto, que o fator não afeta o argmin.logp(yx;β)y=(y1,,yN)x=(x1,,xN)

logp(yx;β)=i=1Nlogp(yixi;β)
argminβ[logp(yx;β)]=argminβ1Ni=1NDC(β0+β1xi,yi),
1/N

Em resumo, os coeficientes que minimizam a probabilidade logarítmica negativa (ou seja, maximizam a probabilidade) dos dados observados também minimizam o risco empírico dos dados com função de perda dada pela distância de Mahalanobis.β0,β1


11
Bem, não exatamente. Esse termo correspondente a muda bastante as coisas. E você parece ter focado na outra dimensão: a distância de Mahalanobis na verdade desempenha um papel muito mais importante no espaço dimensional abrangido pelas colunas, porque isso está relacionado à alavancagem. Os leitores provavelmente ficarão confusos com isso, devido à reversão dos papéis de e em sua notação: é o vetor de parâmetro e a matriz de design! logdetCnxβxβ
whuber

Minha intenção era aqui denotar um único exemplo de treinamento rotulado (portanto, nenhuma matriz de design aqui); a razão pela qual é um vetor é que estou fazendo regressão multivariada (caso contrário, o termo ruído seria uma gaussiana de variável única, não haveria matriz de covariância e o exemplo pode parecer trivial). Talvez minha notação não seja padrão, pois minha formação não é estatística. Em relação à presença do termo , o que eu quis dizer é que . y ϵ log det C a r g m i n β [ - log p ( y x ; β ) ] = a r g m i n β (x,y)yϵlogdetCargminβ[logp(yx;β)]=argminβ(yβx)C1(yβx)
Ben CW

É importante explicar a que seus símbolos se referem, em vez de exigir que os leitores adivinhem. É bem possível que sua explicação seja boa, mas sem essa explicação (que você começou com esse último comentário), suspeito que a maioria dos leitores terá problemas para entender seu significado.
whuber

2
Eu entendo o seu ponto. Editei a resposta original para incorporar algumas das idéias nesses comentários.
Ben CW

2

A distância de Mahalanobis é uma distância euclidiana (distância natural) que leva em consideração a covariância dos dados. Dá um peso maior ao componente barulhento e, portanto, é muito útil para verificar a similaridade entre dois conjuntos de dados.

Como você pode ver no seu exemplo aqui, quando as variáveis ​​são correlacionadas, a distribuição é deslocada em uma direção. Você pode remover esses efeitos. Se você levar em consideração a correlação à sua distância, poderá remover o efeito de mudança.


2
Acredito que a distância de Mahalanobis reduz efetivamente as direções de covariância maior, em vez de fornecer pesos "maiores" lá.
whuber
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.