- 임의표본추출과 표본편향
- 임의표본추출 : 대상이 되는 모집단 내 선택 가능한 원소들을 무작위로 추출하는 과정
- 샘플기반의 추정, 모델링에서 데이터의 품질은 데이터 양보다 더 중요하다
- 편향 : 측정 과정 혹은 표본추출 과정에서 발생하는 계통적인 오차
- 임의표본추출
- 층화표본추출 : 모집단을 여러 층으로 나누고 각 층에서 무작위로 샘플을 추출
- 표본평균과 모평균 : 표본에 대한 정보는 관찰을 통해 얻어지고, 모집단에 대한 정보는 주로 작은 표본들로부터 추론한다
- 선택편향
- 선택편향 : 관측 데이터를 선택하는 방식 때문에 생기는 편향
- 성능을 검증하기 위해, 홀드아웃 세트를 활용한다
- 데이터 마이닝 모델에서 제시하는 예측을 검증하기 위해, 목푯값 섞기(순열검정)을 추천한다
- 평균회귀 : 어떤 변수를 연속적으로 측정했을 때 나타나는 현상
- 표본분포
- 표본통계량 : 더 큰 모집단에서 추출된 표본 데이터들로부터 얻은 측정 지표
- 표본분포 : 여러 표본들, 재표본으로부터 얻은 표본통계량의 도수분포
- 중심극한정리 : 표본 크기가 커질수록 표본분포가 정규분포를 따르는 경향
- 모집단이 정규분포가 아니더라도, 데이터가 정규성을 크게 이탈하지 않는다면, 여러 표본에서 추출한 평균은 종모양의 정규곡선을 따른다
- 추론을 위한 표본분포(신뢰구간, 가설검정) 계산에 t분포와 같은 정규근사 공식을 사용할 수 있다
- 표준오차 : 여러 표본들로부터 얻은 표본통계량의 변량 (표본측정 지표의 변동성을 측정)
- n제곱근 법칙 : 표준오차와 표본크기 사이의 관계 (표준오차를 2배로 줄이려면 표본 크기를 4배 증가시켜야 한다)
- 부트스트랩
- 통계량, 모수의 표본분포를 추정하는 가장 효과적인 방법은 표본에서 추가적으로 복원추출하여 각 표본에 대한 통계량과 모델을 다시 계산하는 것
- 부트스트랩 표본 : 관측 데이터 집합으로부터 얻은 복원추출 표본
- 샘플 값을 하나 뽑아서 기록하고 다시 제자리에 놓는다
- n번 반복한다
- 재표본추출된 값의 평균을 기록한다
- 1~3번 반복한다
- 결과를 활용해서 표준편차, 히스토그램을 구하고 신뢰구간을 찾는다
- 배깅 : 분류 및 회귀트리를 사용할 때, 여러 부트스트랩 샘플을 가지고 트리를 만들어 각 트리에서 나온 예측값을 평균 내는 것이 일반적으로 단일 트리를 사용하는 것보다 효과적이다
- 부트스트랩은 모집단에서 표본을 뽑을 때, 그 표본이 원래 표본과 얼마나 비슷한지 알려준다
- 부트스트랩은 표본통계량의 변동성을 평가하는 강력한 도구이다
재표본추출(리샘플링) : 관측 데이터로부터 반복해서 표본추출하는 과정
results = [] for nrepeat in range(1000): sample=resample(loans_income) results.append(sample.median()) results = pd.Series(results)
- 신뢰구간
- 신뢰수준 : 같은 모집단으로부터 같은 방식으로 얻은 관심 통계량을 포함할 것으로 예상되는 신뢰구간의 백분율
- 신뢰수준이 높을수록 신뢰구간은 더 넓어진다 ; 표본이 작을수록 구간이 넓어진다(불확실성이 커진다)
- 데이터에서 복원추출 방식으로 크기 n의 표본을 뽑는다
- 재표본추출한 표본에 대해 원하는 통계량을 기록한다
- 1~2 R번 반복한다
- x% 신뢰구간을 구하기 위해 R개의 재표본 결과 분포 양쪽 끝의 (100-x)/2% 만큼 잘라낸다
부트스트랩 신뢰구간 구하는 방법
분포
표본평균의 확률분포 | 표본분산의 확률분포 | 표본비율의 확률분포 |
z분포(표준정규분포) : 표본의 개수가 충분하거나, 모분산을 알고 있는 경우 | 카이제곱 분포 : 1개의 분산을 추론한 분포 ; 정규분포로부터 도출됨 | p햇 분포 : 모비율을 추정하기 위해 사용 ; 베르누이 시행의 이항분포를 활용해서 표본 비율의 분포를 구할 수 있다 |
t분포 : 표본의 개수가 30개를 넘지 못 할 때 사용, 모분산을 알지 못하는 경우 표본 개수 n이 충분히 크다면 표본표준편차를 모표준편차 대신 활용한다 | F분포 : 2개의 분산에 대한 추론 | ㅤ |
z분포와 t분포의 관계 : n이 무한대일 때, z분포와 t분포는 동일한 분포가 된다 | ㅤ | ㅤ |
- 정규분포
- 오차 : 데이터 포인트와 예측값(or 평균)사이의 차이
- 표준화하다 : 평균을 빼고 표준편차로 나눈다
- z-score : 개별 데이터포인트를 정규화한 결과
- 표준정규분포 : 평균이 0, 표준편차가 1인 정규분포
- x축의 단위가 평균의 표준편차
- z점수를 오름차순으로 정렬하고 각 값의 z점수를 y축에 표시
- 점들이 대략 대각선 위에 놓이면 표본분포가 정규분포에 가까운 것으로 간주된다
QQ그림 : 표본분포가 특정분포(정규분포)에 얼마나 가까운지를 보여주는 그림
fig, ax = plt.subplots(figsize=(4,4)) norm_sample = stats.norm.rvs(size=100) stats.probplot(norm_sample, plot=ax)
- 긴꼬리 분포
- 대부분의 데이터는 정규분포를 따르지 않는다
- 대칭 및 비대칭 분포 모두 긴 꼬리(적은 수의 극단값이 주로 존재하는)를 가질 수 있다
- 스튜던트 t분포
- 정규분포와 생김새가 비슷하나, 꼬리 부분이 약간 더 두껍고 길다
- 표본통계량의 분포를 설명하는데 광범위하게 사용된다
- x축에 표준화된 결과(z 점수), y축에 빈도를 나타내는 도표
- 이항분포
- 이진결과를 갖는 시행을 n번 진행해서 성공한 횟수에 대한 분포
- n이 크고 p가 0또는 1에 너무 가깝지 않다면, 정규분포로 근사할 수 있다
- 카이제곱분포
- 카이제곱통계량 : 검정 결과가 독립성에 대한 귀무 기댓값에서 벗어난 정도를 측정하는 통계량
- 카이제곱통계량은 관측 데이터가 특정 분포에 적합한 정도를 나타낸다 (적합도검정)
- F분포
- 그룹 평균간의 차이가 정규 무작위 변동에서 예상할 수 있는 것보다 얼마나 큰지에 관심이 있다
- 각 그룹내 변동성에 대한 그룹 평균간의 변동성의 비율을 의미
- 푸아송 분포
- 이전 집계 데이터를 통해 시간 단위 혹은 공간 단위에서의 평균적인 사건의 수를 추정
# 1분당 평균 2회 문의 전화 접수시, 100분을 시뮬레이션 하여 100분당 문의 전화 횟수 stats.poisson.rvs(2, size=100)
- 지수 분포
- 사건과 사건 간의 시간 분포를 모델링
- 베이불 분포
- 지수 분포를 확장하여 시간이 지남에 따라 사건의 발생률이 증가, 감소하는 경향성 반영한다
- (예, 증가하는 고장률)
Share article