재표본 추출

통계학에서 **재표본 추출** 또는 **리샘플링**(resampling)은 하나의 관측된 표본을 기반으로 새로운 표본을 생성하는 것이다.
재표본 추출 방법은 다음과 같다:
# 순열 검정 (재무작위화 검정이라고도 함)은 반사실적 표본을 생성한다.
# 부트스트랩
# 교차타당도
# 잭나이프

## 순열 검정
순열 검정은 귀무 가설을 가정하고 원본 데이터를 재표본 추출하는 것에 의존한다. 재표본 추출된 데이터를 기반으로 귀무 가설 하에서 원본 데이터가 발생할 가능성이 얼마나 되는지 결론을 내릴 수 있다.

## 부트스트랩
섬네일|250px|플러그인 원리의 가장 좋은 예시인 부트스트랩 방법
부트스트랩은 원본 표본에서 복원추출을 통해 추정량의 표본 분포를 추정하는 통계적 방법으로, 주로 평균값, 중앙값, 비례, 승산비, 피어슨 상관 계수 또는 회귀 분석 계수와 같은 모집단 모수의 표준 오차 및 신뢰 구간에 대한 강력한 추정치를 도출하는 목적으로 사용된다. 이는 모집단 분포의 함수 추정치를 표본 기반의 경험적 누적 분포 함수에서 동일한 함수를 평가하여 추정하는 방법이므로 **플러그인 원리**라고 불려왔다.

예를 들어, 모집단 평균값을 추정할 때, 이 방법은 표본 평균을 사용한다. 모집단 중앙값을 추정하기 위해 표본 중앙값을 사용하고, 모집단 회귀선을 추정하기 위해 표본 회귀선을 사용한다.

가설 검정을 구성하는 데도 사용될 수 있다. 매개변수 가정이 의심스럽거나 매개변수 추론이 불가능하거나 표준 오차 계산을 위해 매우 복잡한 공식이 필요한 경우, 매개변수 가정에 기반한 추론의 강력한 대안으로 자주 사용된다. 부트스트랩 기법은 파티클 필터의 업데이트-선택 전환, 유전 알고리즘 유형 알고리즘 및 계산물리학에서 사용되는 관련 재표본/재구성 몬테카를로 방법에도 사용된다. 이 맥락에서 부트스트랩은 순차적으로 가중치가 부여된 경험적 확률 측정값을 경험적 측정값으로 대체하는 데 사용된다. 부트스트랩은 낮은 가중치를 가진 표본을 높은 가중치를 가진 표본의 복사본으로 대체할 수 있도록 한다.

## 교차타당도
교차타당도는 예측 모델을 검증하는 통계적 방법이다. 데이터의 부분 집합은 검증 집합으로 사용하기 위해 보류되며, 모델은 나머지 데이터(훈련 집합)에 적합되어 검증 집합을 예측하는 데 사용된다. 검증 집합 전체의 예측 품질을 평균하면 전체 예측 정확도 측정값이 산출된다. 교차타당도는 의사결정 트리를 구축할 때 반복적으로 사용된다.

교차타당도의 한 형태는 한 번에 하나의 관측값을 제외하는 것이다. 이는 잭나이프와 유사하다. 또 다른 형태인 K-겹 교차타당도는 데이터를 K개의 부분 집합으로 나누고, 각 부분 집합이 차례로 검증 집합으로 사용된다.

이는 "자기 영향"을 피한다. 비교를 위해, 선형 회귀와 같은 회귀 분석 방법에서는 각 y 값이 회귀선을 자신에게 끌어당겨 해당 값의 예측이 실제보다 더 정확하게 보이게 한다. 선형 회귀에 적용된 교차타당도는 해당 관측값을 사용하지 않고 각 관측값에 대한 y 값을 예측한다.

이는 회귀에서 사용할 예측 변수의 수를 결정하는 데 자주 사용된다. 교차타당도가 없으면 예측 변수를 추가하면 항상 잔차 제곱합이 감소하거나(또는 변경되지 않거나) 감소한다. 대조적으로, 교차타당도된 평균 제곱 오차는 유효한 예측 변수가 추가되면 감소하는 경향이 있지만, 가치 없는 예측 변수가 추가되면 증가하는 경향이 있다.

### 몬테카를로 교차타당도
하위 표본 추출은 추정량의 표본 분포를 근사하는 대안적인 방법이다. 부트스트랩과의 두 가지 주요 차이점은 다음과 같다:
# 재표본 크기가 표본 크기보다 작다.
# 비복원 추출 방식으로 재표본 추출이 이루어진다.

하위 표본 추출의 장점은 부트스트랩에 비해 훨씬 약한 조건에서도 유효하다는 점이다. 특히 충분 조건은 추정량의 수렴 속도가 알려져 있고 극한 분포가 연속적이라는 것이다.
또한 재표본(또는 하위 표본) 크기는 표본 크기와 함께 무한대로 수렴해야 하지만 더 작은 속도로 수렴해야 하므로 그 비율은 0으로 수렴한다. 하위 표본 추출은 원래 독립적이고 동일하게 분포된(iid) 데이터의 경우에만 제안되었지만, 이 방법론은 시계열 데이터도 포함하도록 확장되었다. 이 경우 개별 데이터 포인트 대신 연속된 데이터 블록을 재표본 추출한다. 하위 표본 추출이 유효한 추론을 제공하는 반면 부트스트랩은 그렇지 않은 적용상의 흥미로운 경우가 많다. 예를 들어, 이러한 경우에는 추정량의 수렴 속도가 표본 크기의 제곱근이 아니거나 극한 분포가 비정규인 경우가 포함된다. 하위 표본 추출과 부트스트랩이 모두 일관성이 있을 때 부트스트랩이 일반적으로 더 정확하다. RANSAC은 하위 표본 추출을 사용하는 인기 있는 알고리즘이다.

### 잭나이프 교차타당도
잭나이프(잭나이프 교차타당도)는 통계량의 편향 및 표준 오차(분산)를 추정하기 위해 사용되는 통계적 추론 방법으로, 관측값의 무작위 표본을 사용하여 계산된다. 역사적으로 이 방법은 부트스트랩의 발명보다 앞서 모리스 케누이가 1949년에 이 방법을 발명하고 존 투키가 1958년에 확장했다. 이 방법은 프라산타 찬드라 마할라노비스가 1946년에 표본의 절반을 무작위로 선택하여 관심 통계량의 반복 추정치를 제안하면서 예고되었다. 그는 이 방법을 '상호 침투 표본(interpenetrating samples)'이라고 명명했다.

케누이는 표본 추정치의 편향을 줄일 목적으로 이 방법을 발명했다. 투키는 복제본을 동일하게 독립적으로 분포된 것으로 간주할 수 있다면 표본 모수의 분산 추정치를 만들 수 있고, 이는 n-1 자유도를 가진 t 변수(n은 표본 크기)로 근사적으로 분포될 것이라고 가정하여 이 방법을 확장했다.

잭나이프 분산 추정량의 기본 아이디어는 표본 집합에서 한 번에 하나 이상의 관측값을 제외하고 통계량 추정치를 체계적으로 다시 계산하는 것이다. 이 새로운 통계량 복제본 집합으로부터 편향 추정치와 통계량의 분산 추정치를 계산할 수 있다. 잭나이프는 무작위(하위 표본 추출) Leave-One-Out 교차타당도와 동일하며, 목표만 다르다.

많은 통계적 모수에 대해 잭나이프 분산 추정치는 거의 확실하게 참값으로 점근적으로 수렴하는 경향이 있다. 기술적인 용어로 잭나이프 추정치는 일치성이 있다고 말한다. 잭나이프는 표본 평균값, 표본 분산, 중심 및 비중심 t-통계량(비정규 모집단 가능), 표본 변동 계수, 최대 우도 추정량, 최소 제곱 추정량, 피어슨 상관 계수 및 회귀 계수에 대해 일치성을 갖는다.

표본 중앙값에는 일치하지 않는다. 단일 모드 변수의 경우 잭나이프 분산 대 표본 분산의 비율은 두 자유도를 가진 카이 제곱 분포의 제곱의 절반으로 분포되는 경향이 있다.

분산을 추정하기 위해 잭나이프를 사용하는 대신 분산의 로그에 적용할 수도 있다. 이 변환은 특히 분산 자체의 분포가 비정규일 때 더 나은 추정치를 얻을 수 있다.

잭나이프는 원래 부트스트랩과 마찬가지로 데이터의 독립성에 의존한다. 데이터의 의존성을 허용하기 위한 잭나이프 확장이 제안되었다. 그러한 확장 중 하나는 푸아송 표본 추출과 함께 사용되는 그룹 삭제 방법이다.

#### 부트스트랩과 잭나이프 비교
두 방법, 부트스트랩과 잭나이프는 모수적 가정에서가 아니라 하위 표본들 사이의 통계량 변동성으로부터 통계량의 변동성을 추정한다. 보다 일반적인 잭나이프인 m개 관측값을 삭제하는 잭나이프의 경우, 부트스트랩은 그것의 무작위 근사치로 볼 수 있다. 둘 다 유사한 수치 결과를 산출하며, 이는 각 방법이 서로의 근사치로 볼 수 있는 이유이다. 수학적 통찰력에 큰 이론적 차이가 있지만, 통계 사용자에게 주요 실질적인 차이점은 부트스트랩은 동일한 데이터에 반복적으로 적용될 때 다른 결과를 제공하는 반면, 잭나이프는 매번 정확히 동일한 결과를 제공한다는 것이다. 이 때문에 잭나이프는 추정치가 발행 전에 여러 번 검증되어야 할 때 (예: 공식 통계 기관) 인기가 있다. 반면에 이러한 검증 기능이 중요하지 않고 숫자가 아니라 분포에 대한 아이디어만 있으면 되는 경우 (예: 물리학, 경제학, 생물학 분야 연구) 부트스트랩이 선호된다.

부트스트랩을 사용할지 잭나이프를 사용할지는 설문 조사의 통계적 고려 사항보다는 운영적인 측면에 더 많이 의존할 수 있다. 원래 편향 감소를 위해 사용된 잭나이프는 보다 전문적인 방법이며 점 추정량의 분산만 추정한다. 이는 기본적인 통계적 추론(예: 가설 검정, 신뢰 구간)에 충분할 수 있다. 반면에 부트스트랩은 먼저 (점 추정량의) 전체 분포를 추정하고 그로부터 분산을 계산한다. 강력하고 쉽지만, 이는 계산적으로 매우 집약적일 수 있다.

"부트스트랩은 분산 및 분포 추정 문제 모두에 적용될 수 있다. 그러나 부트스트랩 분산 추정량은 경험적 결과 측면에서 잭나이프 또는 균형 반복 복제 (BRR) 분산 추정량만큼 좋지 않다. 또한 부트스트랩 분산 추정량은 일반적으로 잭나이프 또는 BRR보다 더 많은 계산을 필요로 한다. 따라서 부트스트랩은 주로 분포 추정에 권장된다."

잭나이프, 특히 1개 관측값 삭제 잭나이프에는 특별한 고려 사항이 있다. 이는 매끄럽고 미분 가능한 통계량(예: 총합, 평균, 비율, 승산비, 회귀 계수 등; 중앙값 또는 분위수에는 해당되지 않음)에만 사용해야 한다. 이는 실질적인 단점이 될 수 있다. 이 단점은 일반적으로 잭나이프보다 부트스트랩을 선호하는 주장이 된다. m개 삭제 잭나이프 또는 2개만 남기고 모두 삭제하는 호지스-레만 추정량과 같은 1개 삭제보다 더 일반적인 잭나이프는 일치 분산 추정을 위한 매끄러움 요구 사항을 완화하여 중앙값 및 분위수에 대한 이 문제를 극복한다.

일반적으로 잭나이프는 부트스트랩보다 복잡한 표본 추출 방식에 적용하기 더 쉽다. 복잡한 표본 추출 방식에는 층화, 다단계(군집화), 다양한 표본 추출 가중치(무응답 조정, 보정, 후층화) 및 불균등 확률 표본 추출 설계가 포함될 수 있다. 부트스트랩과 잭나이프의 이론적 측면은 Shao와 Tu (1995)에서 찾을 수 있으며, 기본적인 소개는 Wolter (2007)에 설명되어 있다. 모델 예측 편향의 부트스트랩 추정치는 선형 판별 함수 또는 다중 회귀와 같은 선형 모델에서 잭나이프 추정치보다 더 정확하다.

## 같이 보기
* 배깅
* 신뢰 분포
* 유전 알고리즘
* 몬테카를로 방법
* 비모수 통계학
* 파티클 필터
* 유사 복제
* 비균일 무작위 변량 생성
* 무작위 순열
* 재현 (통계학)
* 대리 데이터 테스트

## 각주

## 참고문헌
* Good, P. (2006) Resampling Methods. 3rd Ed. Birkhauser.
* Wolter, K.M. (2007). Introduction to Variance Estimation. 2nd Edition. Springer, Inc.
* Pierre Del Moral (2004). Feynman-Kac formulae. Genealogical and Interacting particle systems with applications, Springer, Series Probability and Applications. 
* Pierre Del Moral (2013). Del Moral, Pierre (2013). Mean field simulation for Monte Carlo integration. Chapman & Hall/CRC Press, Monographs on Statistics and Applied Probability. 
* Jiang W, Simon R. A comparison of bootstrap methods and an adjusted bootstrap approach for estimating the prediction error in microarray classification. Stat Med. 2007 Dec 20;26(29):5320-34. doi: 10.1002/sim.2968. PMID: 17624926. https://brb.nci.nih.gov/techreport/prederr_rev_0407.pdf

## 외부 링크

### 소프트웨어
* Angelo Canty and Brian Ripley (2010). '''boot''': Bootstrap R (S-Plus) Functions. R package version 1.2-43. A. C. Davison과 D. V. Hinkley의 책 Bootstrap Methods and Their Applications (1997, CUP)에서 가져온 부트스트랩 함수와 데이터셋.
* Statistics101: Resampling, Bootstrap, Monte Carlo Simulation program
* R package 'samplingVarEst': Sampling Variance Estimation. 일부 점 추정량의 표본 분산 추정을 위한 함수를 구현한다.
* TREC 결과 평가를 위한 쌍체 무작위화/순열 검정 
* 정보 검색 실험에서 결과 평가를 위한 무작위화/순열 검정 (다중 비교 조정 여부 포함).
* 유전체학 응용을 포함한 Bioconductor 재표본 기반 다중 가설 검정.
* permtest: 마이크로어레이 데이터 세트 내에서 두 그룹 간의 변동성 및 거리를 비교하는 R 패키지.
* Bootstrap Resampling: R에서 부트스트랩 재표본 추출을 이용한 가설 검정의 상호작용적 시연.
* Permutation Test: R에서 순열 검정을 이용한 가설 검정의 상호작용적 시연. 

분류:몬테카를로 방법
분류:비모수 통계학
분류:통계적 추론