한계에 의해 제한되는 평균이 0 인 2D 표준 편차를 계산하는 방법


10

내 문제는 다음과 같습니다. 바닥에서 몇 미터 떨어진 특정 지점에서 한 번에 40 개의 공을 떨어 뜨립니다. 공은 구르고 휴식을 취합니다. 컴퓨터 비전을 사용하여 XY 평면의 질량 중심을 계산합니다. 질량 중심에서 각 공까지의 거리에만 관심이 있으며 간단한 지오메트리를 사용하여 계산됩니다. 이제 중심에서 일방적 인 표준 편차를 알고 싶습니다. 따라서 특정 개수의 볼이 하나의 std 반경 내에 있고 더 많은 볼이 2 * std 반경 내에 있다는 것을 알 수 있습니다. 단측 표준 편차는 어떻게 계산합니까? 일반적인 접근법은 볼의 절반이 0의 "부정적 측면"에 있다고 명시합니다. 물론이 실험에서는 의미가 없습니다. 공이 표준 분포를 준수하는지 확인해야합니까? 도움을 주셔서 감사합니다.

답변:


13

중심 주위의 2D 분산 량을 특성화하려면 (근) 평균 제곱 거리를 원합니다.

σ^=RMS=1ni((xix¯)2+(yiy¯)2).

이 공식에서 은 점 좌표이며 중심 (평균 점)은(xi,yi),i=1,2,,n(x¯,y¯).


질문은 거리 의 분포 를 요구합니다 . 공이 중심을 중심으로 등방성 이변 량 정규 분포 (표준적이고 물리적으로 합리적인 가정)를 갖는 경우, 제곱 거리는 자유도가 2 인 카이 제곱 분포 (각 좌표에 대해 하나씩)에 비례합니다. 이것은 이기 때문에 독립 표준 표준 변수의 제곱의 합으로 카이 제곱 분포를 정의한 결과입니다. 는 예상 x_i- 갖는 독립 정규 변량의 선형 조합입니다. 의 공통 분산 작성

xix¯=n1nxiji1nxj
E[xix¯]=n1nE[xi]ji1nE[xj]=0.
xi뿐만 , 이방성의 가정은 가 와 동일한 분포를 가지며 그것들과 독립적이므로 의 분포에 대해 동일한 결과가 유지됩니다 . 이것은 비례의 상수를 설정합니다 . 거리의 제곱은 의해 스케일링 된 2 자유도를 가진 카이 제곱 분포를 갖습니다 .σ2
E[(xix¯)2]=Var(xix¯)=(n1n)2Var(xi)+ji(1n)2Var(xj)=n1nσ2.
yjxi(yjy¯)2n1nσ2

이 방정식의 가장 심각한 테스트는 이므로 분수 는 과 가장 다릅니다 . 및 대한 실험을 시뮬레이션하고 스케일 된 카이 제곱 분포 (빨간색)로 제곱 거리의 히스토그램을 오버 플로팅하여이 이론을 확인할 수 있습니다.n=2n1n1n=2n=40

그림

각 행에는 동일한 데이터가 표시됩니다. 왼쪽에서 x 축은 로그입니다. 오른쪽에는 실제 제곱 거리가 표시됩니다. 이러한 시뮬레이션에 대한 의 실제 값은 로 설정되었습니다 .σ1

이 결과는 100,000 반복 및 50,000 반복에 대한 것입니다 . 히스토그램과 카이 제곱 밀도 간의 일치는 뛰어납니다.n=2n=40


하지만 알 수없는, 그것은 다양한 방법으로 추정 할 수있다. 예를 들어, 평균 제곱 거리가 있어야 배의 평균 이다 . 가진 예를 들어, 추정 등 배의 평균 제곱 거리. 따라서 추정치 것 배 RMS 거리. 분포 값을 사용하여 다음과 같이 말할 수 있습니다.σ2n1nσ2χ222n=40σ24039/2σ40/78χ22

  • 분포 의 39 % 가 보다 작기 때문에 거리의 약 39 %가 보다 작습니다 .39/40σ^χ221

  • 거리의 약 78 % 미만이어야한다 배 , (A)의 78 % 때문에 분포 미만 .339/40σ^χ223

그리고 여러 배수에 대해 또는 대신 사용하십시오 . 확인으로, 이전에 플롯 된 에 대한 시뮬레이션에서, 배 보다 작은 제곱 거리의 실제 비율 은13n=401,2,,10n1nσ^2

0.3932 0.6320 0.7767 0.8647 0.9178 0.9504 0.9700 0.9818 0.9890 0.9933

이론적 인 비율은

0.3935 0.6321 0.7769 0.8647 0.9179 0.9502 0.9698 0.9817 0.9889 0.9933

계약은 훌륭합니다.


R시뮬레이션을 수행하고 분석하는 코드 는 다음과 같습니다 .

f <- function(n, n.iter, x.min=0, x.max=Inf, plot=TRUE) {
  #
  # Generate `n.iter` experiments in which `n` locations are generated using
  # standard normal variates for their coordinates.
  #
  xy <- array(rnorm(n*2*n.iter), c(n.iter,2,n))
  #
  # Compute the squared distances to the centers for each experiment.
  #
  xy.center <- apply(xy, c(1,2), mean)
  xy.distances2 <- apply(xy-array(xy.center, c(n.iter,2,n)), c(1,3), 
                         function(z) sum(z^2))
  #
  # Optionally plot histograms.
  #
  if(plot) {
    xy.plot <- xy.distances2[xy.distances2 >= x.min & xy.distances2 <= x.max]

    hist(log(xy.plot), prob=TRUE, breaks=30,
         main=paste("Histogram of log squared distance, n=", n),
         xlab="Log squared distance")
    curve(dchisq(n/(n-1) * exp(x), df=2) * exp(x) * n/(n-1), 
          from=log(min(xy.plot)), to=log(max(xy.plot)), 
          n=513, add=TRUE, col="Red", lwd=2)

    hist(xy.plot, prob=TRUE, breaks=30,
         main=paste("Histogram of squared distance, n=", n),
         xlab="Squared distance")
    curve(n/(n-1) * dchisq(n/(n-1) * x, df=2), 
          from=min(xy.plot), to=max(xy.plot), 
          n=513, add=TRUE, col="Red", lwd=2)  
  }
  return(xy.distances2)
}
#
# Plot the histograms and compare to scaled chi-squared distributions.
#
par(mfrow=c(2,2))
set.seed(17)
xy.distances2 <- f(2, 10^5, exp(-6), 6)
xy.distances2 <- f(n <- 40, n.iter <- 50000, exp(-6), 12)
#
# Compare the last simulation to cumulative chi-squared distributions.
#
sigma.hat <- sqrt((n / (2*(n-1)) * mean(xy.distances2)))
print(cumsum(tabulate(cut(xy.distances2, 
                    (0:10) * (n-1)/n * sigma.hat^2))) / (n*n.iter), digits=4)
print(pchisq(1:10, df=2), digits=4)

2
매우 포괄적 인 답변에 감사드립니다. RMS 공식이 볼 수로 나눠지지 않고 표준 편차를 어떻게 설명 할 수 있는지 이해할 수 없습니다. http://en.wikipedia.org/wiki/Root-mean-square_deviation_(bioinformatics)와 비교 하면 합계를 N으로 나눈 값입니다. 합계를 N 또는 N-1로 나눈 경우 (40 개의 공은 공의 인구에서 선택?)
K_scheduler

계산을 다시 한 후에 sqrt (SDx ^ 2 + SDy ^ 2)가 내가 따르는 것 같습니다. 이렇게하면 확률이 65 % 인 모든 공을 포함하는 원의 반지름이 표시됩니다.
K_scheduler

이는 RMS와 동등한 공식이지만이 답변에 설명 된대로 65 % 값이 올바르지 않습니다.
whuber

2
@ nali 그 모든 요점은 분명히 내 대답에 있습니다.
whuber

4
@nali 귀하의 게시물은 무례 함과 adhominem 공격 의 타당성을 넘어 섭니다 . 나는이 사이트의 중재자로서 무지하거나 어리석은 것으로 여겨지는 것에 대해 걱정하지 않지만, 담론을 민사로 유지하는 것에 대해 염려해야하므로 게시하는 부인을 용납 할 수 없습니다. 따라서 귀하의 최신 의견을 삭제했습니다. 다른 사람에 대한 무례한 의견이 표시 될 경우 추가 통지없이 삭제하고 본인 (또는 다른 중재자)은이 사이트에서의 상호 작용을 제한하기 위해 즉각적인 조치를 취합니다.
whuber

4

약간 혼란스러운 점이 있다고 생각합니다. 거리가 음수 일 수는 없지만 표준 편차 계산에는 영향을 미치지 않습니다. 거리 분포가 정확히 정상일 수는 없지만 여전히 가까울 수 있습니다. 그러나 정상과 거리가 멀더라도 표준 편차가 여전히 있습니다.

또한 "단면"표준 편차가 없습니다. 가설 검정 (단면 또는 양면)을 생각할 수 있습니다. 제목에서 평균은 0이라고 말하지만 평균 거리는 0이 아닙니다 (공이 스택에 40 공이 높지 않은 한!). 방에서 가장 가까운 벽까지의 거리보다 중심에서 멀어 질 수 없습니다. 그러나 일부 공이 벽에 튀어 나오지 않으면 아무런 영향을 미치지 않습니다.

따라서 40 거리가되면 표준 방법을 사용하여 표준 편차 (평균, 중앙값, 사 분위수 범위 등)를 계산합니다. 또한 거리의 플롯을 작성하여 (예를 들어 Quantile 노멀 플롯, 박스 플롯) 거리가 대략 정규 분포되어 있는지 확인할 수 있습니다 (관심있는 경우).


피터 감사합니다, 나는 자신을 올바르게 표현하지 못했습니다. 명확히 해보자. 위에서 장면을 상상해보십시오. 평균 거리를 계산하면 질량 중심 주위의 원으로 표시됩니다 (평균 거리 = 반경). 이제 이것으로부터 +/- std 편차는 더 작은 원과 더 큰 원을 생성합니다. 질량 중심까지의 평균 거리의 표준 편차를 알고 싶지 않고 질량 중심으로부터 바깥쪽으로 표준 편차를 알고 싶습니다. 다시 말해서, 질량 중심으로부터 반경 내에서 위치 된 볼의 68.2 % (1 표준 편차)이다.
K_scheduler

오 그래. 그런 다음 통계 문제가 아니라 수학 문제라고 생각합니다. 68.2 %가 떨어지는 곳을 찾는 것이 알려져 있습니다 ... 나는 대답을 잊었지만 와 관련이 있습니다 . π
Peter Flom

당신은 첫 번째 대답에 옳을 수도 있습니다. 내가 찾은 것으로부터 방사형 표준 편차를 사용하면 트릭을 수행해야합니다. RSD = sqrt (SDx ^ 2 + SDy ^ 2)
K_scheduler

1

이것이 요청 된 지 오래되었지만 질문에 대한 답은 이것이 Rayleigh 분포라는 2D 분포라는 것입니다. 여기서 레일리 셰이프 팩터는 X 및 Y 좌표의 표준 편차와 동일하다고 가정합니다. 실제로, 형상 계수의 값은 표준 편차 X와 Y의 합산 평균에서 계산됩니다.

시작하여 및

XN(μx,σx2)
YN(μy,σy2)

이변 량 정규 분포를 사용합니다.

f(x,y)=12πσxσy1ρ2exp(12(1ρ2)[(xμx)2σx2+(yμy)2σy22ρ(xμx)(yμy)σxσy])

포인트 하고 이라고 가정하십시오 .

(μx,μy)
ρ=0

또한 라고 가정 하여 둘 다 바꾸십시오.

σx2=σy2
σ2

2 차원 분포는 Rayleigh 분포 라고하는 점 주위의 반지름 으로 표시됩니다 .

(μx,μy)

PDF(r;σ)=rσ2exp(r22σ2)
여기서 및
σ=σx=σy
ri=(xiμx)2+(yiμy)2

CDF(r;σ)=1exp(r22σ2)

물론 이것은 지속적인 배포를위한 것입니다. 단지 40 개의 공의 샘플에 대해서는 정확한 해결책이 없습니다. 샘플 40 개로 Monte Carlo Analysis를 수행해야합니다. Taylor, MS & Grubbs, Frank E. (1975). "극단 확산에 대한 대략적인 확률 분포" 는 Chi 분포에 대한 추정치와 이에 대한 로그 정규 분포가 표본의 분포에 적합하다는 것을 발견했습니다.


편집-Wuber의 의심에도 불구하고 그가 계산 한 이론적 비율은 다음과 같습니다.

0.3935 0.6321 0.7769 0.8647 0.9179 0.9502 0.9698 0.9817 0.9889 0.9933

CDF 함수에서 r (시그마)에 대한 누적 시그마 값의 범위는 다음과 같습니다.

0-1, 0-2, 0-3, ..., 0-10

아르:

0.3935, 0.6321, 0.7769, 0.8647, 0.9179, 0.9502, 0.9698, 0.9817, 0.9889, 0.9933


배포판의 이름을 지정해 주셔서 감사합니다. 그러나 (1) 분포의 모수와 데이터에서 파생 된 모수의 추정치 를 구별하지 않음 , (2) 공의 분포에 대해 필요한 (강력한) 가정을 명시하지 않고, (3) 모호하여 오해의 소지가있는 독자. 실제로, "이것"의 참조가 무엇인지 확실하지 않습니다 : 그것이 공의 위치의 분포일까요? (아니요) 질량 중심의 분포? (예, 그러나 공의 표준 편차와 다른 스케일 매개 변수가 있습니다.) 답을 명확하게 하시겠습니까?
whuber

격차를 채워 ....
5

설명해 주셔서 감사합니다, 맥스 답의 정확성을 간단히 확인하기 위해 대신 하나의 공을 고려하십시오 . 귀하의 답변은이 공과 모든 공의 질량 중심 사이의 거리 분포가 레일리 분포라고 주장하는 것 같습니다. 불행히도이 경우 거리는 항상 0입니다. (질문은 구체적으로 "단순한 지오메트리를 사용하여 계산 된 질량 중심에서 각 공까지의 거리"라고 설명합니다.) 이것은 공을 포함하여 모든 경우에 답이 틀릴 수 있음을 시사합니다 . 4040
whuber

분포는 질량 중심에 관한 것입니다.
MaxW

CDF는 물론 하나의 공을 위해 설정됩니다. CDF로부터 볼의 39 %는 반경 σ의 원 안에, 86 %는 2σ 안에, 99 %는 3σ 안에 들어갑니다.
MaxW

-1

이 정규 분포가 반지름 또는 "중심으로부터의 거리"임을 인식하면 양수 및 음수 값의 정규 분포가 의미가 있습니다. 다른 변수 각도는 무작위이며 0-pi에서 균일하게 분포됩니다.


음수가 될 수없는 반지름에는 반드시 정규 분포가 없습니다 !
whuber
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.