確率を要素ごとに偏らせた乱数を生成したいです
言葉でうまく説明できないですが
やりたいことに当てはまる関数
np.random.choice という物を見つけましたが...
どうも指定した確率がおかしいです
_storage=[_/100 for _ in range(100)] _storage[10]=10 print(_storage) batch_size=32 idx = np.random.choice(np.arange(len(_storage)), size=batch_size, replace=False) idx=np.sort(idx) print(idx)
rangeで後に行けば確率が上がるようになってます
_storage[10]=10で11番目の
要素はほとんどの確立で指定されるようにしてます
なのに結果はなぜか
[ 1 2 6 7 15 19 20 22 28 34 36 38 45 47 53 55 57 65 66 70 74 76 77 79 81 83 84 85 87 90 91 97] や [ 0 1 4 6 9 11 12 14 20 21 24 28 29 35 41 43 45 46 50 51 54 56 58 59 66 75 76 81 85 87 88 93]
ここには載ってませんが なんとなく確率をあげた10は出やすくなってた
なぜ確率が0に近い一けた台が必ず選ばれるのでしょうか?
あまり上手く確率が偏ってない気がするのですが 使い方を間違えてるのでしょうか?(softmax的な関数で正規化しなきゃダメとか?)
これよりいい関数やアルゴリズムを知ってる方教えてください
もし使い方を間違えてるなら正しい使い方教えてください
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。