Por que transformar os dados em log antes de executar a análise de componentes principais?


16

Estou seguindo um tutorial aqui: http://www.r-bloggers.com/computing-and-visualizing-pca-in-r/ para obter uma melhor compreensão do PCA.

O tutorial usa o conjunto de dados Iris e aplica uma transformação de log antes do PCA:

Observe que no código a seguir aplicamos uma transformação log para as variáveis contínuas, como sugerido por [1] e conjunto centere scaleigual a TRUEna chamada para prcomppadronizar as variáveis antes da aplicação de PCA.

Alguém poderia me explicar em inglês simples porque você primeiro usa a função de log nas quatro primeiras colunas do conjunto de dados Iris. Eu entendo que isso tem algo a ver com tornar os dados relativos, mas estou confuso qual é exatamente a função do log, centro e escala.

A referência [1] acima é para Venables e Ripley, estatísticas modernas aplicadas com S-PLUS , Seção 11.1 que diz brevemente:

Os dados são medições físicas, portanto, uma boa estratégia inicial é trabalhar em escala de log. Isso foi feito o tempo todo.


Respostas:


19

O conjunto de dados da íris é um bom exemplo para aprender o PCA. Dito isto, as quatro primeiras colunas que descrevem o comprimento e a largura de sépalas e pétalas não são um exemplo de dados fortemente distorcidos. Portanto, a transformação de log dos dados não altera muito os resultados, pois a rotação resultante dos componentes principais é bastante inalterada pela transformação de log.

Em outras situações, a transformação de log é uma boa escolha.

Executamos o PCA para obter uma visão geral da estrutura geral de um conjunto de dados. Centralizamos, dimensionamos e, às vezes, transformamos em log para filtrar alguns efeitos triviais, que poderiam dominar nosso PCA. O algoritmo de um PCA, por sua vez, encontrará a rotação de cada PC para minimizar os resíduos quadrados, ou seja, a soma das distâncias perpendiculares ao quadrado de qualquer amostra para os PCs. Valores grandes tendem a ter alta alavancagem.

Imagine injetar duas novas amostras nos dados da íris. Uma flor com comprimento de pétala de 430 cm e outra com comprimento de pétala de 0,0043 cm. Ambas as flores são muito anormais, sendo 100 vezes maiores e 1000 vezes menores, respectivamente, que os exemplos médios. A influência da primeira flor é enorme, de modo que os primeiros PCs descrevem principalmente as diferenças entre a flor grande e qualquer outra flor. O agrupamento de espécies não é possível devido a esse erro. Se os dados forem transformados em log, o valor absoluto agora descreverá a variação relativa. Agora a flor pequena é a mais anormal. No entanto, é possível conter todas as amostras em uma imagem e fornecer um agrupamento justo das espécies. Confira este exemplo:

data(iris) #get data
#add two new observations from two new species to iris data
levels(iris[,5]) = c(levels(iris[,5]),"setosa_gigantica","virginica_brevis")
iris[151,] = list(6,3,  430  ,1.5,"setosa_gigantica") # a big flower
iris[152,] = list(6,3,.0043,1.5  ,"virginica_brevis") # a small flower

#Plotting scores of PC1 and PC" without log transformation
plot(prcomp(iris[,-5],cen=T,sca=T)$x[,1:2],col=iris$Spec)

insira a descrição da imagem aqui

#Plotting scores of PC1 and PC2 with log transformation
plot(prcomp(log(iris[,-5]),cen=T,sca=T)$x[,1:2],col=iris$Spec)

insira a descrição da imagem aqui


2
Nice demo e parcelas.
Shadowtalker #

3

Bem, a outra resposta dá um exemplo, quando a transformação de log é usada para reduzir a influência de valores extremos ou outliers.
Outro argumento geral ocorre quando você tenta analisar dados que são compostos multiplicativamente em vez de aditivamente - o modelo PCA e FA por suas matemáticas composições aditivas. Multiplicativoas composições ocorrem no caso mais simples em dados físicos, como a superfície e o volume de corpos (funcionalmente), dependentes (por exemplo) dos três parâmetros comprimento, largura e profundidade. Pode-se reproduzir as composições de um exemplo histórico do PCA inicial, acho que é chamado de "problema da bola de Thurstone (ou 'cubos')" ou algo semelhante. Uma vez eu brinquei com os dados desse exemplo e descobri que os dados transformados em log forneceram um modelo muito mais agradável e claro para a composição do volume medido e dos dados de superfície com as três medidas unidimensionais.

Além de exemplos simples, se considerarmos nas interações dos dados de pesquisa social , geralmente os pensamos, assim como medições compostas multiplicativamente de itens mais elementares. Portanto, se examinarmos especificamente as interações, uma transformação de log pode ser uma ferramenta útil e especial para obter um modelo matemático para a descomposição.


Você poderia listar algumas referências que podem explicar melhor as composições "multipicativas"? Muito obrigado!
Amatya 29/07

1
@Amatya - Não encontrei o "problema da caixa de pedras preciosas", mas uma caixa de discussão em alemão (cubo) sobre cubos, contendo largura, comprimento, altura como itens básicos e superfícies e volume e itens adicionais combinados multiplicativamente. Talvez as fórmulas incluídas para definições sejam suficientes. Veja sgipt.org/wisms/fa/Quader/q00.htm
Gottfried Helms

1
Ah, e eu esqueci - uma velha discussão minha sobre isso go.helms-net.de/stat/fa/SGIPT_Quader.htm #
Gottfried Helms

@GottfriedHelms Ainda não estou realmente entendendo porque, se estamos padronizando as variáveis, também precisamos transformá-las em log. Entendo o princípio geral de reduzir a influência indesejada de valores extremos extremos, mas se já os estamos padronizando (centralizando, dimensionando), parece que o log que está sendo transformado, além disso, está distorcendo os dados.
Yu Chen

@YuChen - qualquer transformação de log converte composição multiplicativa em composição aditiva , e composição aditiva é o pressuposto básico (além da linearidade etc.) de todos os tipos de componentes e análise fatorial. Portanto, se seus dados tiverem composição multiplicativa, uma transformação de log deve ser uma opção que vale a pena considerar.
Gottfried Helms
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.