我正在測試一個算法,它有隨機輸入:作爲參考,輸入是一個浮點數序列,它與一些0和1一起壓縮(有相對較少的1秒)。在測試的每次運行中生成一個相同的概率分佈
最後,1的概率和位置都是隨機的。然而,這證明難以調試。
的概率根據狄利克雷分佈目前分佈:
import numpy.random as ran
N=1024
num_ones = 10
probs = ran.dirichlet([1]*N)
probs = num_ones*probs
probs = probs
probs = sorted(probs, reverse=True)
我意識到這可能很幼稚,但我誠實地有不知道的隨機數是如何生成的。我每次運行測試時如何使這些概率相同?
種子隨機數發生器?像'numpy.random.seed(42)'? – thegrinner
你可能想檢查鏈接問題中的第二個答案,他建議使用'RandomState'而不是'.seed()'並在註釋中解釋。 – thegrinner