상자-뮬러 변환을 사용한 정규 분포에서 샘플링
이 사이트는 쿠키를 사용합니다. 계속함으로써,당신은 그들의 사용에 동의합니다. 쿠키를 제어하는 방법을 포함하여 자세히 알아보십시오.
정규 분포는 많은 일반적인 통계 분석의 주력이며,이 분포에서 샘플을 추출 할 수있는 것은 많은 통계/기계 학습 알고리즘의 핵심입니다. 역 변환 샘플링,지구라트 알고리즘 및 비율 방법(거부 샘플링 기술)을 포함하여 정규 분포에서 샘플링하기 위해 개발 된 여러 가지 방법이 있습니다. 이 게시물에서 우리는 상자-뮬러 변환이라는 우아한 방법에 초점을 맞출 것이다.
직교 좌표와 극좌표의 빠른 검토.
박스 뮬러 변환 사용에 대해 이야기하기 전에 데카르트 좌표와 극좌표 사이의 관계에 대한 이해를 새롭게합시다. 만약 엑스 과 와이 직교 평면에서 두 점이면 반경과 각도
를 사용하여 극좌표로 나타낼 수 있습니다.:
아래 그림과 같이” width=”69″ height=”18″ class=”alignleft”>에서와
데카르트 좌표와 극좌표 사이의 관계의 예
상자-뮬러 변환으로 정규 분포 샘플 그리기
자,이제 우리는 데카르트 좌표가 극좌표로 표현되는 방법을 논의 했으므로 이 관계를 사용하여 확률 변수를 생성하는 방법으로 이동해 보겠습니다. 박스 뮬러 샘플링은 두 개의 독립적 인 표준 정규 랜덤 데카르트 변수및
극좌표. 공동 분포(원형 대칭)은:1087>
(위와 같이)우리는 공동 정규 분포의 데카르트 표현과 그 극성 표현 사이의 연결을 만들 수 있습니다:1087>
두 밀도 함수의 곱은 반지름 제곱에 대한 지수 분포입니다:
그리고 각도에 대한 균일 한 분포:
단위 원에 포인트를 생성 할 때 위에서 언급 한 것과 같습니다. 지금,우리는 지수 분포와 균일 한 분포 사이에 다른 연결을 만들 경우,즉 그:1087>
그런 다음 다음을 수행하십시오.(0,1))}
이것은 우리에게 두 개의 독립적 인 균일 분포,즉에 대한 것과
에 대한 것을 샘플링하고 위의 관계를 통해 데카르트 좌표로 변환하여 공동 가우스 분포에서 점을 생성하는 방법을 제공합니다. 다음과 같이 상세하게,절차는 간다:
- 무승부,
- 이 경우,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,반지름과 각도를 직교 좌표로 변환하고,)
어떤 결과가 두 개의 독립적 인 정규 확률 변수 인과
입니다. 상자 뮬러 알고리즘의 매트랩 구현은 다음과 같습니다:
% NORMAL SAMPLES USING BOX-MUELLER METHOD% DRAW SAMPLES FROM PROPOSAL DISTRIBUTIONu = rand(2,100000);r = sqrt(-2*log(u(1,:)));theta = 2*pi*u(2,:);x = r.*cos(theta);y = r.*sin(theta);% DISPLAY BOX-MULLER SAMPLESfigure% X SAMPLESsubplot(121);hist(x,100);colormap hot;axis squaretitle(sprintf('Box-Muller Samples Y\n Mean = %1.2f\n Variance = %1.2f\n Kurtosis = %1.2f',mean(x),var(x),3-kurtosis(x)))xlim()% Y SAMPLESsubplot(122);hist(y,100);colormap hot;axis squaretitle(sprintf('Box-Muller Samples X\n Mean = %1.2f\n Variance = %1.2f\n Kurtosis = %1.2f',mean(y),var(y),3-kurtosis(y)))xlim()

정규 분포를 위한 박스 뮬러 샘플
마무리
매트랩 코드의 출력은 위에 나와 있습니다. 생성 된 샘플의 첫 번째,두 번째 및 네 번째 중심 모멘트(평균,분산 및 첨도)는 표준 법선과 일치합니다. 상자-뮬러 변환은 간격에 어떻게 균일 한 변수의 또 다른 예입니다(0,1)더 복잡한 분포에서 샘플링하기 위해 변환 할 수 있습니다.
Write a Reply or Comment