2

ディリクレ分布を使用して、合計が 1 になる乱数の配列を生成しています。ただし、実際には、これらの数値を合計して任意の定数にする必要があると思います。

import numpy as np
d = np.random.dirichlet(np.ones(10), size=1)

合計が 10 になるようにこれを変更する良い方法について混乱しています。おそらく:

10*d

それを行うには良い方法ではありません。

4

1 に答える 1

2

N*d乱数を合計して に変更する正当な方法だと思いますN=10ディリクレ乱数は、合計が 1 になるように正規化されたガンマ発生器からのサンプルです( Wikipediaも参照してください)。合計を 1 ではなく にしたいのでN、各ディリクレ乱数に を掛けるだけで十分Nです。

于 2013-10-10T16:20:03.977 に答える