웹사이트 검색

Python의 부트스트랩 샘플링


이것은 Python의 부트스트랩 샘플링에 대한 자습서입니다. 이 자습서에서는 부트스트래핑이 무엇인지 배우고 이를 구현하는 방법을 살펴봅니다.

시작하자.

부트스트랩 샘플링이란 무엇입니까?

부트스트랩 샘플링의 정의는 다음과 같습니다.

통계에서 부트스트랩 샘플링은 모집단 매개변수를 추정하기 위해 데이터 소스에서 대체하여 반복적으로 샘플 데이터를 추출하는 것과 관련된 방법입니다.

이것은 기본적으로 부트스트랩 샘플링이 모집단의 모든 데이터 포인트를 명시적으로 고려하지 않고 전체 모집단에 대한 평균과 같은 매개변수를 추정할 수 있는 기술임을 의미합니다.

전체 모집단을 보는 대신 모집단에서 가져온 동일한 크기의 여러 하위 집합을 봅니다.

예를 들어 모집단 크기가 1000인 경우 평균을 찾으려면 1000개 항목을 모두 고려하는 대신 각각 크기가 4인 샘플 50개를 가져와 각 샘플의 평균을 계산할 수 있습니다. 이렇게 하면 무작위로 선택된 평균 200개의 항목(50X4)을 선택하게 됩니다.

유사한 전략이 시장 조사자들에 의해 거대한 인구에 대한 연구를 수행하는 데 사용됩니다.

Python에서 부트스트랩 샘플링을 구현하는 방법은 무엇입니까?

이제 파이썬에서 부트스트랩 샘플링을 구현하는 방법을 살펴보겠습니다.

미리 결정된 평균으로 임의의 데이터를 생성합니다. 이를 위해 Python에서 NumPy 모듈을 사용할 것입니다.

필요한 모듈을 가져오는 것으로 시작하겠습니다.

1. 필요한 모듈을 가져옵니다.

필요한 모듈은 다음과 같습니다.

  • 넘파이
  • 무작위

이러한 모듈을 가져오려면 다음을 사용하십시오.

import numpy as np
import random

다음 단계에서는 임의의 데이터를 생성해야 합니다. Numpy 모듈을 사용하여 해봅시다.

2. 무작위 데이터 생성

평균이 300이고 항목이 1000개인 정규 분포를 생성해 보겠습니다.

이에 대한 코드는 다음과 같습니다.

x = np.random.normal(loc= 300.0, size=1000)

다음을 사용하여 이 데이터의 평균을 계산할 수 있습니다.

print (np.mean(x))

출력 :

300.01293472373254

이것은 모집단의 실제 평균입니다.

3. 부트스트랩 샘플링을 사용하여 평균 추정

평균을 추정하기 위해 각각 크기가 4인 50개의 샘플을 생성해 보겠습니다.

이를 위한 코드는 다음과 같습니다.

sample_mean = []

for i in range(50):
  y = random.sample(x.tolist(), 4)
  avg = np.mean(y)
  sample_mean.append(avg)

sample_mean 목록에는 모든 50개 샘플의 평균이 포함됩니다. 모집단의 평균을 추정하려면 sample_mean의 평균을 계산해야 합니다.

다음을 사용하여 그렇게 할 수 있습니다.

print(np.mean(sample_mean))

출력 :

300.07261467146867

이제 이 섹션의 코드를 다시 실행하면 다른 출력을 얻게 됩니다. 코드를 실행할 때마다 새 샘플을 생성하기 때문입니다. 그러나 매번 출력은 실제 평균(300)에 근접합니다.

이 섹션의 코드를 다시 실행하면 다음 출력이 표시됩니다.

299.99137705245636

다시 실행하면 다음을 얻습니다.

300.13411004148315

Python에서 부트스트랩 샘플링을 구현하기 위한 완전한 코드

이 튜토리얼의 전체 코드는 다음과 같습니다.

import numpy as np
import random

x = np.random.normal(loc= 300.0, size=1000)
print(np.mean(x))

sample_mean = []
for i in range(50):
  y = random.sample(x.tolist(), 4)
  avg = np.mean(y)
  sample_mean.append(avg)

print(np.mean(sample_mean))

결론

이 튜토리얼은 Python의 부트스트랩 샘플링에 관한 것입니다. 더 작은 표본을 만들어 모집단의 평균을 추정하는 방법을 배웠습니다. 이는 과적합을 방지하기 위해 기계 학습 세계에서 매우 유용합니다. 저희와 함께 즐거운 학습이 되셨기를 바랍니다!