乱数発生
Statistics and Machine Learning Toolbox™ では、さまざまな分布からの乱数の発生がサポートされています。各乱数発生器 (RNG) は分布のパラメーター族を表します。乱数発生器は、指定した分布からの乱数を、指定した大きさの配列に返します。
特定の分布をサポートしない他の乱数発生関数には以下のようなものがあります。
Statistics and Machine Learning Toolbox ソフトウェアの乱数発生器は、関数の rand
と randn
を介した MATLAB® の既定の設定の乱数ストリームにより異なります。各乱数発生器は、一般的な疑似乱数発生法で説明した手法のいずれかを使用して、与えられた分布から乱数を生成します。
既定の設定の乱数ストリームとその状態を制御することにより、Statistics and Machine Learning Toolbox ソフトウェアの乱数発生器がランダムな値を生成する方法を制御することができます。たとえば、既定の設定のストリームの状態を保存/復元して、乱数発生器からの同じ連続の値を再生することも、既定の設定のストリームをリセットすることもできます。既定の設定の乱数ストリームを管理する方法の詳細は、RandStream を使用したグローバル ストリームの管理を参照してください。
MATLAB は、起動されるたびに、既定乱数ストリームを同じ状態に初期化します。そのため、Statistics and Machine Learning Toolbox ソフトウェアの乱数発生器は、起動時にその状態を変更しない限り、MATLAB のセッションごとに同じ連続の値を生成します。それを行う簡単な方法の 1 つは、以下のようなコマンドを startup.m
に追加することです。
rng shuffle
これはセッションごとに既定の設定の乱数ストリームを異なる状態に初期化します。
次の表は、サポートされる分布とそのそれぞれの乱数発生関数のリストです。