표준 편차에서 절대 값을 취하는 대신 차이를 제곱하는 이유는 무엇입니까?
자유도 (인구 측정에서 x의 수)의 제곱근에 비례하는 유클리드 거리가 분산의 가장 좋은 척도이기 때문에 x와 평균의 차이를 제곱합니다.
거리 계산
점 0에서 점 5까지의 거리는 얼마입니까?
- 5−0=5 ,
- |0−5|=5 이고
- 52−−√=5
좋아, 그것은 하나의 차원이기 때문에 사소한 것입니다.
점 0, 0에서 점 3, 4까지의 점 거리는 어떻습니까?
도시 블록과 같이 한 번에 1 차원으로 만 갈 수 있다면 숫자를 더하면됩니다. (맨해튼 거리라고도 함).
그러나 한 번에 2 차원으로가는 것은 어떻습니까? 그런 다음 (우리 모두 고등학교에서 배운 피타고라스 정리에 의해) 우리는 각 차원에서 거리를 제곱하고 제곱을 합한 다음 제곱근을 취하여 원점에서 점까지의 거리를 찾습니다.
32+42−−−−−−√=25−−√=5
0, 0, 0에서 1, 2, 2까지의 거리는 어떻습니까?
이건 그냥
12+22+22−−−−−−−−−−√=9–√=3
처음 두 x의 거리가 최종 x와의 총 거리를 계산하기위한 구간을 형성하기 때문입니다.
x21+x22−−−−−−√2+x23−−−−−−−−−−−−−√=x21+x22+x23−−−−−−−−−−√
우리는 각 차원의 거리를 제곱하는 규칙을 계속 확장 할 수 있습니다. 이것은 초 차원 공간에서 직교 측정을 위해 다음과 같이 유클리드 거리라고 일반화합니다.
distance=∑i=1nx2i−−−−−√
직교 제곱의 합은 제곱 거리입니다.
distance2=∑i=1nx2i
측정을 다른 측정과 직교 (또는 직각)하는 것은 무엇입니까? 조건은 두 측정 사이에 관계가 없다는 것입니다. 우리는 이러한 측정 값이 독립적이고 개별적으로 분포 되어 있는지 ( iid ) 찾을 것입니다.
변화
이제 모집단 분산에 대한 공식을 기억하십시오 (표준 편차를 얻을 수 있음).
σ2=∑i=1n(xi−μ)2n
평균을 빼서 데이터를 0으로 이미 중앙에 둔 경우 다음과 같은 결과가 나타납니다.
σ2=∑i=1n(xi)2n
따라서 분산은 단지 제곱 거리를 자유도 (변수가 자유롭게 변할 수있는 차원의 수)로 나눈 것입니다. 이는 측정 당 의 평균 기여도 입니다. "평균 제곱 분산"도 적절한 용어입니다.distance2
표준 편차
그런 다음 표준 편차가 있습니다. 이는 표준 편차입니다.
σ=∑i=1n(xi−μ)2n−−−−−−−−−−−⎷
거리 도 자유도의 제곱근으로 나눈 것과 같습니다 .
σ=∑i=1n(xi)2−−−−−−−√n−−√
평균 절대 편차
MAD (Mean Absolute Deviation)는 맨해튼 거리 또는 평균과의 차이의 절대 값의 합을 사용하는 분산 측정입니다.
MAD=∑i=1n|xi−μ|n
다시 데이터가 중심에 있다고 가정하면 (평균 차감) 맨해튼 거리를 측정 수로 나눈 값입니다.
MAD=∑i=1n|xi|n
토론
- 평균 절대 편차는 정규 분포 데이터 세트의 표준 편차 크기의 약 0.8 배 ( 실제로2/π−−−√ )입니다.
- 분포에 관계없이 평균 절대 편차는 표준 편차보다 작거나 같습니다. MAD는 표준 편차와 관련하여 극단적 인 값으로 데이터 세트의 분산을 강조합니다.
- 평균 절대 편차는 특이 치에 대해 더 강력합니다. 즉, 특이 치가 표준 편차에 대한 통계만큼 큰 영향을 미치지 않습니다.
- 기하학적으로 말하자면, 측정 값이 서로 직교하지 않는 경우 (iid)-예를 들어 양의 상관 관계가있는 경우 평균 절대 편차는 표준 편차보다 더 나은 기술 통계량이되며 유클리드 거리에 의존합니다 (일반적으로 미세한 것으로 간주되지만) ).
이 표는 위의 정보를보다 간결하게 반영합니다.
sizesize,∼Noutliersnot i.i.d.MAD≤σ.8×σrobustrobustσ≥MAD1.25×MADinfluencedok
코멘트:
"평균 절대 편차는 정규 분포 데이터 세트의 표준 편차 크기의 약 0.8 배"에 대한 참조가 있습니까? 내가 실행중인 시뮬레이션은 이것이 잘못되었음을 보여줍니다.
표준 정규 분포에서 백만 개의 샘플에 대한 10 가지 시뮬레이션이 있습니다.
>>> from numpy.random import standard_normal
>>> from numpy import mean, absolute
>>> for _ in range(10):
... array = standard_normal(1_000_000)
... print(numpy.std(array), mean(absolute(array - mean(array))))
...
0.9999303226807994 0.7980634269273035
1.001126461808081 0.7985832977798981
0.9994247275533893 0.7980171649802613
0.9994142105335478 0.7972367136320848
1.0001188211817726 0.798021564315937
1.000442654481297 0.7981845236910842
1.0001537518728232 0.7975554993742403
1.0002838369191982 0.798143108250063
0.9999060114455384 0.797895284109523
1.0004871065680165 0.798726062813422
결론
유클리드 거리를 이용할 수 있기 때문에 분산 척도를 계산할 때 제곱 차이를 선호합니다. 상대적으로 극단적 인 값이 있으면 유클리드 거리는 통계의 거리를 차지하는 반면 맨해튼 거리는 각 측정에 동일한 가중치를 부여합니다.