비대칭 분포의 평균에 대해 신뢰할 수있는 비모수 적 신뢰 구간이 있습니까?


30

로그 정규 분포와 같이 매우 치우친 분포는 정확한 부트 스트랩 신뢰 구간을 생성하지 않습니다. 다음은 R에서 어떤 부트 스트랩 방법을 사용하든 왼쪽 및 오른쪽 꼬리 영역이 이상적인 0.025와 거리가 멀다는 것을 보여주는 예입니다.

require(boot)
n    <- 25
B    <- 1000
nsim <- 1000
set.seed(1)
which <- c('basic', 'perc', 'norm', 'bca', 'stud')
mul <- 0; sdl <- 1.65   # on log scale
dist <- c('normal', 'lognormal')[2]
switch(dist, normal    = {g <- function(x) x; mu <- mul},
             lognormal = {g <- exp; mu <- exp(mul + sdl * sdl / 2)})
count <- matrix(0, nrow=length(which), ncol=2,
                dimnames=list(which, c('lower', 'upper')))
stat <- function(x, j) {
## See http://www.psychology.mcmaster.ca/bennett/boot09/percentileT.pdf
  x <- x[j]
  m <- mean(x)
  s <- sd(x)
  n <- length(x)
  sem <- s / sqrt(n)
  m.var <- sem ^ 2
  c(m, m.var)
}
for(i in 1 : nsim) {
  if(i %% 100 == 0) cat(i, '')
  x <- g(rnorm(n, mul, sdl))
  b  <- boot(x, stat, R=B)
  ci <- boot.ci(b, type=which)
  for(w in which) {
    nam <- switch(w, perc='percent', norm='normal', basic='basic',
                  stud='student', bca='bca')
    z <- rev(rev(ci[[nam]])[1:2])
    count[w, 'lower'] <- count[w, 'lower'] + (z[1] > mu)
    count[w, 'upper'] <- count[w, 'upper'] + (z[2] < mu)
  }
}
cat('\n')
count / nsim

결과는 다음과 같습니다.

      lower upper
basic 0.000 0.329
perc  0.003 0.257
norm  0.000 0.287
bca   0.015 0.185
stud  0.005 0.129

를 들어 단일 부트 스트랩 여전히 적절하게 정확한 범위를 제공하지 않습니다n=400

      lower upper
basic 0.001 0.114
perc  0.005 0.093
norm  0.002 0.102
bca   0.017 0.067
stud  0.011 0.058

또한 경험적 우도는 로그 정규 분포에서 샘플링 할 때 정확한 신뢰 구간을 제공하지 못합니다.

미리 배포판을 아는 것에 의존하지 않는 범용 접근법이 있습니까? 누구든지 데이터를 Tukey 일반화 분포 에 피팅하여 평균에 대한 신뢰 구간을 얻으려고 했습니까 (이 분포는 매우 유연합니다)? CDF에 Kolmogorov-Smirnov 신뢰 구간을 사용하는 것은 어떻습니까? CDF의 상한과 하한의 평균을 계산하는 것이 엄청나게 보수적인가? 방법이 광범위하게 적용 가능하다면 일부 보수주의에 정착 할 것입니다.λ

목표를 다시 설명하기 위해 모집단 평균에 대한 신뢰 구간을 얻는 데 일반적으로 적용 가능한 접근법을 찾고 있습니다.

  1. 원시 데이터 분포가 비대칭 인 경우 간격은 비대칭입니다.
  2. 간격은 꼬리 모두 에서 올바른 범위를 갖습니다 (예 : 두 가지 모두 에서 0.025 오류 확률)
  3. 이 절차에서는 분석가가 기본 분포 또는 분포를 대칭으로 만드는 데 필요한 변환에 대해 아무것도 지정하지 않아도됩니다.

중심 한계 정리는 여기서 관련이 없습니다. 표본 크기가 작고 신뢰 구간이 양쪽 꼬리 모두에서 정확하도록 비대칭이어야합니다. 파라 메트릭tμ=0,σ=1.65n=20000

이것에 대해 계속 생각하면서 논의하고자하는 문제를 개념화하는 두 가지 방법이 있습니다.

  1. n=201.28×t
  2. 단일 부트 스트랩이 극도로 치우친 분포의 표본에 대해 정확하게 정확한 신뢰 한계를 제공하지는 않지만 이중 부트 스트랩은 두 꼬리의 신뢰 범위를 크게 향상시킬 수 있습니다. Nankervis 는 몇 가지 좋은 결과를 가지고 있으며 우수한 계산 알고리즘을 제공합니다. 그러나 찾을 수있는 소프트웨어는 이것을 구현하지 않습니다.

위의 1을 나타내는 R 코드 :

## Exact CI for median from DescTools package SignTest.default
## See also ttp://www.stat.umn.edu/geyer/old03/5102/notes/rank.pdf,
## http://de.scribd.com/doc/75941305/Confidence-Interval-for-Median-Based-on-Sign-Test
cimed <- function(x, alpha=0.05, na.rm=FALSE) {
  if(na.rm) x <- x[! is.na(x)]
  n <- length(x)
  k <- qbinom(p=alpha / 2, size=n, prob=0.5, lower.tail=TRUE)
  ## Actual CL: 1 - 2 * pbinom(k - 1, size=n, prob=0.5) >= 1 - alpha
  sort(x)[c(k, n - k + 1)]
}

n <- 20
m <- 20000
cil <- cilt <- 0
z <- qt(0.975, n - 1)

for(i in 1 : m) {
  x <- rnorm(n)
  cil  <- cil + diff(cimed(x))
  cilt <- cilt + 2 * z * sqrt(var(x) / n)
}
cil  <- cil / m
cilt <- cilt / m

c(cil, cilt, cilt / cil, cil / cilt)

1
이것은 계산 집약적이지만 경험적인 cdf를 취하면 무작위로 브라운 브리지를 생성하기 시작했습니다. 각 브라운 브리지는 ecdf와 일부 가상 cdf 사이의 델타를 나타냅니다. 가상 cdf를 사용하여 평균을 계산하고 KS 검정에서 규정 한 계수로 가중치를 매 깁니다. 이 과정을 잠시 반복하면 가중 데이터 집합이 있으며 신뢰 구간을 계산할 수 있습니다.
Nir Friedman

가상 CDF가 없습니다. 그리고 KS의 0.95 신뢰 영역을 사용하고 그 평균을 계산하면 어떻게 될까요? 즉, 이것이 엄청나게 보수적입니다.
Frank Harrell

가상 cdf는 무작위로 생성 된 브라운 브리지를 경험적 cdf에 추가하여 도입됩니다. 또한, 나는 신뢰 영역에서 평균을 취하는 것을 제안하지 않습니다. 나는 많은 가설 분포를 생성하고 적절하게 가중치를 부여한 다음 신뢰 구간을 확보하여 많은 수단을 얻는 것이 좋습니다. 기본적으로 부트 스트랩에 대한 다른 접근 방식이지만 결과는 다를 수 있습니다.
Nir Friedman

얼마나 효율적으로 프로그래밍 할 수 있고 신뢰 구간 적용 범위가 얼마나 정확한지 보는 것이 흥미로울 것입니다. 제안 해 주셔서 감사합니다. 베이지안 부트 스트랩이 그것을 모방하는지 궁금합니다. 다른 맥락에서 베이지안 부트 스트랩을 시도했지만 신뢰 구간 적용 범위가 향상되지 않았습니다.
Frank Harrell

답변:


11

적어도 기본 분포에 어떤 종류의 제약이 도입되지 않은 그러한 비모수 적 방법에 대해서는 다소 비관적입니다.

αααα

따라서 적절한 점근 적 범위를 찾고 있다면 CLT를 통해 달성 할 수 있습니다. 그러나 귀하의 질문은 귀하가 유한 범위에 관심이 있음을 암시합니다. 내 예에서 알 수 있듯이 항상 유한 길이의 CI를 망칠 병리학 적 사례가 있습니다.

이제 분포에 제약 조건을 추가하여 좋은 유한 범위를 달성하는 비모수 적 CI를 가질 수 있습니다. 예를 들어, 로그 오목 제약 조건은 비모수 제약 조건입니다. 그러나 log-normal이 로그 오목하지 않기 때문에 문제에 적합하지 않은 것 같습니다.

α


2
훌륭한 생각. 나는 바이 모달 분포와 다른 복잡성을 충분히 볼 수 있기 때문에 이러한 종류의 제약을 요구하는 것을 주저합니다.
Frank Harrell

1
@FrankHarrell : 비모수 적 로그-오목 성분이있는 혼합 모델을 사용한 작업이있었습니다. 그러나 현재로서는 성분 수를 미리 알 수없는 경우 전체 평균에 대한 신뢰를 얻는 좋은 방법이 있다고 생각할 수 없습니다.
Cliff AB

2

모든 샘플의 기본 가정 중 하나는 대표성입니다. 분포의 꼬리가 길수록 표본이 분포를 나타낼 수 없기 때문에 작은 표본이 CI를 안정적으로 해결할 수있는 방법에 충분히 대표적이지 않을 것입니다.

예를 들어, 표본 크기가 250 인 지수 분포에서 간단한 perc CI를 실행하면 결과가 꽤 좋습니다. 여전히 이상적인 것은 아니지만 샘플 25의 샘플보다 훨씬 낫습니다.

Cliff AB는 일반적인 해결책은 없지만 극단 분포를 가정 할 필요는 없다는 데 동의합니다. 작은 샘플로 광범위하게 작동하는 것은 없습니다. 그리고 어떤 경우에는 샘플이 매우 커야 할 수도 있습니다 (그러나 잘못되는 것이 좋을 것입니다).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.