비모수 부트 스트랩 p- 값 대 신뢰 구간


11

문맥

이것은이 질문 과 다소 유사 하지만 정확한 복제본이라고 생각하지 않습니다.

부트 스트랩 가설 검정을 수행하는 방법에 대한 지침을 찾는 경우 일반적으로 신뢰 구간에 경험적 분포를 사용하는 것이 좋지만 귀무 가설 아래 분포에서 부트 스트랩을 올바르게 부트해야 p- 값. 예를 들어,이에 대한 허용 대답을 참조 질문을 . 인터넷의 일반적인 검색은 대부분 비슷한 답변을 얻는 것으로 보입니다.

경험적 분포에 기초하여 p- 값을 사용하지 않는 이유는 대부분 번역 불일치가 없기 때문입니다.

간단한 예를 들어 보겠습니다. 우리는 동전을 가지고 있으며 머리의 주파수가 0.5보다 큰지 확인하기 위해 일방적 인 테스트를 원합니다.

우리는 시행을 수행 하고 머리를 얻습니다 . 이 테스트의 실제 p- 값은 입니다.n=20k=14p=0.058

반면에 20 개 헤드 중 14 개를 부트 스트랩하면 및 이항 분포에서 효과적으로 샘플링합니다 . 0.2를 빼서이 분포를 이동하면 얻은 경험적 분포에 대해 관찰 된 값 0.7을 테스트 할 때 거의 유의미한 결과를 얻습니다.n=20p=1420=0.7

이 경우 불일치는 매우 작지만 테스트 한 성공률이 1에 가까워지면 더 커집니다.

질문

이제 제 질문의 진짜 요점을 보도록하겠습니다. 동일한 결함도 신뢰 구간을 유지합니다. 실제로 신뢰 구간에 명시된 신뢰 수준 가있는 경우 귀무 가설에서 모수를 포함하지 않는 신뢰 구간은 의 유의 수준에서 귀무 가설을 기각하는 것과 같습니다 .α1α

경험적 분포에 기초한 신뢰 구간이 널리 수용되고 p- 값이 아닌 이유는 무엇입니까?

더 깊은 이유가 있거나 사람들이 신뢰 구간만큼 보수적이지 않습니까?

답변에서 Peter Dalgaard는 나의 주장에 동의하는 것처럼 보입니다. 그는 말한다 :

이 추론에 대해 특별히 잘못된 것은 없으며 CI 계산보다 적어도 그리 나쁘지는 않습니다.

(많은) 곳은 어디입니까? 그것은 p- 값을 생성하는 것이 약간 더 나쁘다는 것을 암시하지만 요점을 정교하게 설명하지는 않습니다.

마지막 생각들

또한 Efron과 Tibshirani 의 Bootstrap 소개 에서는 신뢰 구간에 많은 공간을 할당하지만 적절한 귀무 가설 분포에서 생성되지 않는 한 p- 값은 아닙니다. 순열 테스트에 대한 장의 신뢰 구간 및 p- 값.

내가 연결 한 첫 번째 질문으로 다시 돌아 갑시다 . Michael Chernick의 답변에 동의하지만 경험적 부트 스트랩 분포를 기반으로 한 신뢰 구간과 p- 값은 일부 시나리오에서 똑같이 신뢰할 수 없다고 주장합니다. 구간이 정상이라고 말하지만 p- 값은 그렇지 않다는 많은 사람들을 찾는 이유를 설명하지 않습니다.


부트 스트랩 CI를 사용하여 가설을 수용 / 거부 할 수있는 방법과시기에 대해 명확하게 이해하고 싶습니다. 아마도 당신은 질문을 더 간결하고 호소력있게하기 위해 문구를 바꾸거나 재구성 할 수 있을까요? 감사 !
Xavier Bourret Sicotte

나는 대부분의 사람들이 다음 가정이 적용될 때 가설 검정을 위해 CI를 사용하는 것이 좋다는 것을 동의 할 것이라고 생각합니다. 이상하거나 중추적 인 것으로 입증되지 않았습니다. 비율 통계의 75 백분위 수 사이에 두 개의 샘플의 차이를 예 (두 금액의 비율) : 여기에 내가 일하고 실제 예입니다
자비에르 BOURRET Sicotte는

귀무 가설 하에서 표본을 추출하는 방법이 명확하다는 단순한 대답이 아니므로 분명히 더 나은 대안 방법이 있습니까? 부트 스트랩 아래의 샘플링은 일반적으로 경험적 분포 하에서 발생하므로 실제 데이터 생성 메커니즘이므로 null 아래에서 샘플링하는 것 대신 명확하게 사용해서는 안됩니다. 부트 스트랩 된 CI는 실제 데이터 생성 메커니즘에서 샘플링 분포를 반전 시켜서 찾을 수 있습니다. 이 CI가 제대로 작동하지 않는 것은 사실이지만 Dalgaard가 말한 것처럼이를 수정하는 방법이 반드시 명확한 것은 아닙니다.
jsk

경험적 분포는 실제 데이터 생성 메커니즘의 근사치 일 뿐이라는 점을 분명히해야합니다. 진실을 나타내지 않는 범위는 알려지지 않은 방향으로 부트 스트랩 된 CI에 부정적인 영향을 미쳐 95 % 미만의 적용 범위로 이어집니다.
jsk

1
테스트가 평균의 차이 일 때 null 아래 샘플링은 분명하지만 많은 경우 null을 재현하는 방법이 분명하지 않습니다. 예를 들어 null은 두 비율의 75 번째 백분위 수가 동일하다는 것입니다. 각 샘플에서 비율의 분자와 분모를 이동하여 그 값을 얻습니까? 또한 비율의 구성 요소를 이동하여 실제로 null을 재현하는지 어떻게 확인할 수 있습니까?
Xavier Bourret Sicotte 2014 년

답변:


3

로 @MichaelChernick가에 코멘트에 대한 응답으로 말했다 링크 된 질문에 대한 그의 대답 :

신뢰 구간과 가설 검정간에 일반적으로 1-1 대응 관계가 있습니다. 예를 들어 모형 모수에 대한 95 % 신뢰 구간은 해당 모수 값에 대한 해당 5 % 수준 가설 검정에 대한 비 거부 영역을 나타냅니다. 모집단 분포의 형태에 대한 요구 사항은 없습니다. 일반적으로 신뢰 구간에 적용되는 경우 부트 스트랩 신뢰 구간에 적용됩니다.

따라서이 답변은 두 가지 관련 문제를 해결합니다. (1) 부트 스트랩 결과의 표현이 질문에서 제안한 것처럼 p- 값 대신 신뢰 구간 (CI)을 지정하는 이유가 더 자주 보이는 이유는 무엇입니까? (2) p- 값 이 둘 다인 경우 부트 스트랩에 의해 결정된 CI는 신뢰할 수없는 것으로 의심되므로 대체 접근법이 필요하다.

첫 번째 문제에 대한이 질문의 주장을 구체적으로 뒷받침하는 데이터를 모르겠습니다. 아마도 실제로 많은 부트 스트랩에서 도출 된 포인트 추정치가 테스트 결정 경계와는 거리가 멀거나 (또는 ​​적어도 것 같습니다) 해당 귀무 가설 의 p- 값에 거의 관심이 없으며 포인트 추정치 자체와 변동 가능성의 규모에 대한 합리적인 측정.

두 번째 문제와 관련하여 많은 실제 응용 프로그램에는 "테스트 통계의 대칭 분포, 중추 테스트 통계, CLT 적용, 방해 매개 변수가 없거나 거의 없음"(위의 @XavierBourretSicotte의 의견에서와 같이)이 포함되어 있으며 어려움이 거의 없습니다. 문제는 이러한 조건에서 잠재적 편차를 감지하는 방법과 발생시이를 처리하는 방법이됩니다.

이상적인 행동과의 이러한 편차는 수십 년 동안 인식되어 왔으며, 이를 해결하기 위해 초기에 개발 된 여러 부트 스트랩 CI 접근 방식 이 있습니다. Studentized 부트 스트랩은 중요한 통계를 제공하는 데 도움이 되며 BCa 방법은 부트 스트랩에서보다 안정적인 CI를 얻는 측면에서 바이어스와 왜곡을 모두 처리합니다. 부트 스트랩 CI를 결정하기 전에 데이터의 분산 안정화 변환 을 수행 한 다음 원래 규모로 역변환하는 것도 도움이 될 수 있습니다.

공정한 동전에서 20 번의 토스 중 14 개 헤드에서 샘플링하는 것에 대한이 질문의 예는 BCa 방법의 CI를 사용하여 잘 처리됩니다. R에서 :

> dat14 <- c(rep(1,14),rep(0,6))
> datbf <- function(data,index){d <- data[index]; sum(d)}
> set.seed(1)
> dat14boot <- boot(dat14,datbf,R=999)
> boot.ci(dat14boot)
BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS
Based on 999 bootstrap replicates

CALL : 
boot.ci(boot.out = dat14boot)

Intervals : 
Level      Normal              Basic         
95%     (9.82, 18.22 )   (10.00, 18.00 )  

Level     Percentile            BCa          
95%       (10, 18 )         ( 8, 17 )  
Calculations and Intervals on Original Scale

다른 CI 추정치는 20 토스 당 10 헤드의 모집단 값에 매우 가깝거나 그에 가깝다는 지적 된 문제를 제기합니다. BCa CI는 왜도에서 이항 샘플링으로 도입 된 왜도를 설명하므로 모집단 값 10을 포함합니다.

그러나 이러한 솔루션을 활용하려면 이상적인 동작과의 편차를 찾아야합니다. 많은 통계적 관행에서와 같이 알고리즘에 연결하는 대신 실제로 데이터를 보는 것이 중요 할 수 있습니다. 예를 들어, 바이어스 부트 스트랩 결과의 CI에 대한질문은 위 코드에 표시된 처음 3 개의 CI에 대한 결과를 보여 주지만 BCa CI는 제외했습니다. BCa CI를 포함하기 위해 해당 질문에 표시된 분석을 재현하려고하면 결과가 나타납니다.

> boot.ci(boot(xi,H.boot,R=1000))
Error in bca.ci(boot.out, conf, index[1L], L = L, t = t.o, t0 = t0.o,  : 
estimated adjustment 'w' is infinite

여기서 'w'는 바이어스 보정과 관련이 있습니다. 검사중인 통계는 최대 값이 고정되어 있으며 부트 스트랩 된 플러그인 추정값도 본질적으로 바이어스되었습니다. 이와 같은 결과를 얻는 것은 부트 스트랩 CI의 기본 가정이 위반되고 있음을 나타냅니다.

중추적 인 양을 분석하면 이러한 문제를 피할 수 있습니다. 경험적 분포가 엄밀히 중요한 중추적 통계를 가질 수는 없지만, 합리적으로 가까이 오는 것이 중요한 목표입니다. 이 답변 의 마지막 몇 단락은 통계 (일부 데이터 변환 후)가 중추에 가까운 지 여부와 계산 비용이 많이 들지만 잠재적으로 결정적인 이중 부트 스트랩을 통해 부트 스트랩을 통해 추정하는 피벗 플롯과 같은 추가 지원에 대한 링크를 제공합니다.


감사합니다 edm! CI와 가설 검정간에 1-1 회귀가있는 경우 부트 스트랩 검정에 일반적으로 널을 재현하기 위해 데이터 세트를 이동시키는 이유는 무엇입니까? 그렇게함으로써 우리는 예를 들어 차이 분포의 CI를 계산함으로써 얻는 것과 다른 결과를 얻지 못합니까?
Xavier Bourret Sicotte 2018 년

@XavierBourretSicotte "부트 스트랩 테스트는 일반적으로 널을 재현하기 위해 데이터 세트를 이동시키는 것"이라고 옳지 않다고 생각합니다. 각 부트 스트랩 샘플은 기본 샘플을 사용하여 기본 샘플링 / 실험을 복제하려는 시도로 기본 모집단을 나타냅니다. 그러나 문제의 통계가 중요하지 않은 경우 부트 스트랩 된 샘플에서 개발 된 CI는 기본 모집단에서 개발 된 CI를 나타내지 않습니다. 따라서 BCa 또는 다른 접근법 을 사용하여 통계 가 널 (null) 아래에 있었던 것에 대한 통계 분포 를 수정해야합니다 .
EdM 2016 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.