ディリクレ分布 乱数ジェネレーター(確率ベクトル)&グラフ

合計が1になる確率ベクトル(各成分≥0)を生成し、成分分布や三角プロットで可視化します。

すべてブラウザ内で完結し、アップロードは不要です。共有URLには設定のみが入り、生成データは含めません。

Secure は CSPRNG。Seeded は再現用(秘密用途ではありません)。

他の言語 日本語 | English | Español | Français

ディリクレ分布とは?

ディリクレ分布は、確率ベクトル (x1,…,xK)(各成分が0以上で合計が1)の分布です。この空間は単体(simplex)と呼ばれます。

ユースケース例:カテゴリ確率の事前分布(ベイズ)、トピック割合、混合比(mixture weights)、確率っぽいテストデータの作成。個人情報の入力は不要です。

プリセット

用途が伝わるプリセットを選んでください(即時に再生成されます。適用後に微調整もできます)。

ヒント:Kが大きい場合は、共有URLではなく profile JSON で保存/復元すると安全・簡単です。

ジェネレーター

パラメータ化を選び、乱数を生成して、平均・周辺分布・診断を確認できます。

全成分が α_i = α。角に寄る/中心に寄るのイメージを掴むのに向きます。

表示する成分(周辺分布)

周辺分布のヒストは最大5成分まで表示します。(Kが大きい場合はチェック欄を省略し、番号入力を使います)

成分ごとの統計

成分 理論平均 サンプル平均 理論分散 サンプル分散

サンプルプレビュー(先頭20行)

profile JSON(設定の保存/復元)

共有URLは設定のみです。Kが大きい場合は、profile JSON で保存/復元するとURLが長くならず便利です。

注意:共有するprofileに機密ラベル(顧客名など)を入れないでください。

このツールの使い方

合計が 1 になる確率ベクトルや配分比率を作りたいときに使います。

使い方(3ステップ)

  1. まずは K=3 など小さい次元と分かりやすい preset から始めます。
  2. 生成後に理論平均、各成分の周辺分布、行プレビューをまとめて確認します。
  3. 1つの α か集中度だけを動かし、平均の変化と集中の変化を分けて見ます。

結果の読み方

各行は確率ベクトルです。平均は各成分の期待シェア、集中度はその平均の周りにどれだけ集まるかを表します。合計が常に 1 なので、1成分が増えると他成分の余地は小さくなります。

境界条件で確認したい点

よくある質問

なぜ成分どうしが負に相関するのですか?
全成分の合計が 1 に固定されているため、1つが増えると少なくともどれかが減りやすくなるからです。
なぜ角に張り付くようなサンプルが出るのですか?
どれかの α が 1 未満、または全体の集中度が小さいと、単体の境界付近に密度が寄るためです。
丸めると合計 1 でなくなるのはなぜですか?
内部のサンプルは合計 1 ですが、表示や出力で丸めると見かけ上ずれることがあります。
Beta 分布とはどう違いますか?
Dirichlet 分布は複数成分の確率ベクトル用で、Beta 分布はその 2 成分版を 1 成分で見たものです。
最初に何をすればよいですか?
まず低次元の基準ケースを作り、その後は 1 つの α か集中度だけを動かしてください。