ディリクレ分布を使用して、合計が 1 になる乱数の配列を生成しています。ただし、実際には、これらの数値を合計して任意の定数にする必要があると思います。
import numpy as np
d = np.random.dirichlet(np.ones(10), size=1)
合計が 10 になるようにこれを変更する良い方法について混乱しています。おそらく:
10*d
それを行うには良い方法ではありません。
ディリクレ分布を使用して、合計が 1 になる乱数の配列を生成しています。ただし、実際には、これらの数値を合計して任意の定数にする必要があると思います。
import numpy as np
d = np.random.dirichlet(np.ones(10), size=1)
合計が 10 になるようにこれを変更する良い方法について混乱しています。おそらく:
10*d
それを行うには良い方法ではありません。
N*d
乱数を合計して に変更する正当な方法だと思いますN=10
。ディリクレ乱数は、合計が 1 になるように正規化されたガンマ発生器からのサンプルです( Wikipediaも参照してください)。合計を 1 ではなく にしたいのでN
、各ディリクレ乱数に を掛けるだけで十分N
です。