Por que convertemos dados inclinados em uma distribuição normal


15

Eu estava passando por uma solução da competição de preços da habitação no Kaggle ( o núcleo da Human Analog sobre preços da habitação : técnicas avançadas de regressão ) e me deparei com esta parte:

# Transform the skewed numeric features by taking log(feature + 1).
# This will make the features more normal.
from scipy.stats import skew

skewed = train_df_munged[numeric_features].apply(lambda x: skew(x.dropna().astype(float)))
skewed = skewed[skewed > 0.75]
skewed = skewed.index

train_df_munged[skewed] = np.log1p(train_df_munged[skewed])
test_df_munged[skewed] = np.log1p(test_df_munged[skewed])

Não sei ao certo qual é a necessidade de converter uma distribuição inclinada em uma distribuição normal. Por favor, alguém pode explicar em detalhes:

  1. Por que isso está sendo feito aqui? ou Como isso é útil?
  2. Como isso é diferente da escala de recursos?
  3. Esta é uma etapa necessária para a engenharia de recursos? O que provavelmente acontecerá se eu pular esta etapa?

2
Portanto, os resíduos são gaussianos (e podem ser cancelados pela média), a variação é estável e pré - condiciona o otimizador para acelerar a convergência. en.wikipedia.org/wiki/Power_transform
Emre 07/07

Respostas:


12

Você pode querer interpretar seus coeficientes. Ou seja, para poder dizer coisas como "se eu aumentar minha variável em 1, então, em média, e tudo o mais for igual, Y deve aumentar em β 1 ".X1Yβ1

Para que seus coeficientes sejam interpretáveis, a regressão linear assume várias coisas.

Uma dessas coisas não é multicolinearidade. Ou seja, seu X variáveis não devem ser correlacionadas entre si.

Outra é a homocedasticidade . Os erros de seus commits modelo deve ter a mesma variância, ou seja, você deve assegurar a regressão linear não faz pequenos erros para baixos valores de e grandes erros para maiores valores de X . Em outras palavras, a diferença entre o que você prever Y e os verdadeiros valores Y deve ser constante. Você pode garantir que YXXY^YY siga uma distribuição gaussiana. (A prova é altamente matemática.)

Dependendo dos seus dados, você poderá torná-lo gaussiano. As transformações típicas estão tomando as raízes inversa, logarítmica ou quadrada. Muitos outros existem, é claro, tudo depende dos seus dados. Você precisa examinar seus dados e, em seguida, fazer um histograma ou executar um teste de normalidade , como o teste de Shapiro-Wilk.

Todas essas são técnicas para construir um estimador imparcial . Acho que não tem nada a ver com convergência, como já foi dito por outras pessoas (às vezes você também pode querer normalizar seus dados, mas esse é um tópico diferente).

Seguir as premissas de regressão linear é importante se você deseja interpretar os coeficientes ou se deseja usar testes estatísticos em seu modelo. Caso contrário, esqueça.

__y^-y__2ynormalize


3

Os dados distorcidos aqui estão sendo normalizados adicionando um (um adicionado para que os zeros sejam transformados em um como log de 0 não está definido) e fazendo log natural. Os dados podem ser quase normalizados usando as técnicas de transformação, como raiz quadrada ou recíproca ou logaritmo. Agora, por que é necessário. Na verdade, muitos dos algoritmos nos dados assumem que a ciência dos dados é normal e calculam várias estatísticas assumindo isso. Portanto, quanto mais os dados estiverem próximos do normal, mais eles se ajustarão à suposição.


3
Os algoritmos aqui são de aumento de gradiente e regressão de laço. Eu acho que essa resposta seria mais útil se pudesse mostrar como é (ou não) relevante para esses dois algoritmos especificamente.
oW_

Do meu ponto de vista, quando um modelo é treinado, seja por regressão linear ou por alguma Árvore de Decisão (robusta a outlier), os dados inclinados dificultam um modelo para encontrar um padrão adequado nos dados; é por isso que temos que fazer os dados inclinados para o normal ou gaussiano.
Goldi Rana

1

Como a ciência de dados é apenas estatística no final do dia, e uma das principais suposições da estatística é o Teorema do Limite Central . Portanto, esta etapa está sendo realizada porque alguma etapa subsequente usa técnicas de estatísticas que dependem dela.


1
Um teorema não é uma suposição. De fato, o Teorema do Limite Central garante que a média das variáveis ​​aleatórias independentes é aproximadamente normalmente distribuída, mesmo quando as variáveis ​​aleatórias individuais não são normalmente distribuídas.
Elias Strehle

1
Essa é uma cadeia de raciocínio extremamente falha. É como: "- Eu já vi pessoas descascarem maçãs antes de comê-las. Por quê? - Ah, isso é porque maçãs são frutas e uma das principais frutas é laranja e você sempre descasca uma laranja!".
ayorgo
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.