numpy.random.seed(0) は何をしますか? 質問する

numpy.random.seed(0) は何をしますか? 質問する

何がnp.random.seedする?

np.random.seed(0)

ベストアンサー1

np.random.seed(0)乱数を予測可能にする

>>> numpy.random.seed(0) ; numpy.random.rand(4)
array([ 0.55,  0.72,  0.6 ,  0.54])
>>> numpy.random.seed(0) ; numpy.random.rand(4)
array([ 0.55,  0.72,  0.6 ,  0.54])

シードが(毎回)リセットされると、同じ数字のセットが毎回表示されます。

ランダム シードがリセットされない場合、呼び出しごとに異なる数字が表示されます。

>>> numpy.random.rand(4)
array([ 0.42,  0.65,  0.44,  0.89])
>>> numpy.random.rand(4)
array([ 0.96,  0.38,  0.79,  0.53])

(疑似) 乱数は、ある数値 (シード) から始めて、それを大きな数値で乗算し、オフセットを追加し、その合計の剰余をとることによって機能します。結果の数値は、次の「ランダム」数値を生成するためのシードとして使用されます。シードを (毎回) 設定すると、毎回同じことが行われ、同じ数値が生成されます。

一見ランダムな数値が必要な場合は、シードを設定しないでください。ただし、デバッグするランダムな数値を使用するコードがある場合は、コードを実行するたびに同じ処理が行われるように、実行前にシードを設定すると非常に役立ちます。

各実行で最もランダムな数値を取得するには、 を呼び出しますnumpy.random.seed()これnumpy はシードを またはその Windows 類似物から取得した乱数に設定します/dev/urandom。どちらも利用できない場合は、クロックを使用します。

シードを使用して疑似乱数を生成する方法の詳細については、以下を参照してください。ウィキペディア

おすすめ記事