난수 생성
Statistics and Machine Learning Toolbox™는 다양한 분포에서 난수 생성을 지원합니다. 각 난수 생성기(RNG)는 모수적 분포군을 나타냅니다. RNG는 지정된 분포에서 난수를 생성하여 지정된 차원의 배열로 반환합니다.
특정 분포를 지원하지 않는 난수 생성 함수는 다음과 같습니다.
Statistics and Machine Learning Toolbox의 RNG는 rand
함수와 randn
함수를 통해 생성되는 MATLAB®의 디폴트 난수 스트림에 따라 달라집니다. 각 RNG는 Common Pseudorandom Number Generation Methods 항목에 논의된 기법 중 하나를 사용하여 주어진 분포에서 난수를 생성합니다.
디폴트 난수 스트림과 그 상태를 제어하여 Statistics and Machine Learning Toolbox의 RNG에서 난수 값을 생성하는 방식을 제어할 수 있습니다. 예를 들어, RNG에서 동일한 시퀀스의 값을 재현하려면 디폴트 스트림 상태를 저장 및 복원하거나 디폴트 스트림을 재설정하면 됩니다. 디폴트 난수 스트림을 관리하는 방법에 대한 자세한 내용은 RandStream을 사용하여 전역 스트림 관리하기 항목을 참조하십시오.
MATLAB은 시작할 때마다 디폴트 난수 스트림을 동일한 상태로 초기화합니다. 따라서, Statistics and Machine Learning Toolbox의 RNG는 MATLAB 시작 시 사용자가 스트림 상태를 수정하지 않으면 매 세션마다 동일한 시퀀스의 값을 생성합니다. 스트림 상태를 수정하는 한 가지 간단한 방법은 다음과 같은 명령을 startup.m
에 추가하는 것입니다.
rng shuffle
이 명령은 세션마다 디폴트 난수 스트림을 다른 상태로 초기화합니다.
다음 표에는 지원되는 분포와 각각의 난수 생성 함수가 나와 있습니다.