[解決済み] numpy.random.seed(0)は何をするのですか?
2022-03-23 02:06:56
質問
とは何ですか?
np.random.seed
Scikit-Learnのチュートリアルにある以下のコードで何をするのでしょうか?私はNumPyのランダムステートジェネレータのものにあまり詳しくないので、素人目にもわかるような説明をいただけるとありがたいです。
np.random.seed(0)
indices = np.random.permutation(len(iris_X))
解決方法は?
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()
.
これは
から取得した乱数を種として設定します。
/dev/urandom
またはその Windows アナログを使用し、どちらも利用できない場合は時計を使用します。
シードを使って擬似乱数を生成することについての詳しい情報は ウィキペディア .
関連
-
パッケージングツールPyinstallerの使用と落とし穴の回避
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonのリストメソッドであるappendとextendの違いは何ですか?
-
[解決済み] __init__.py は何のためにあるのですか?
-
[解決済み] パラメータに**(ダブルスター/アスタリスク)、*(スター/アスタリスク)がありますが、これはどういう意味ですか?
-
[解決済み] 億の相対的輸入
-
[解決済み】if __name__ == "__main__": は何をするのでしょうか?
-
[解決済み】__str__と__repr__の違いは何ですか?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Pythonの@decoratorsについてまとめてみました。
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み] [Solved] sklearn error ValueError: 入力に NaN、infinity または dtype('float64') に対して大きすぎる値が含まれている。
-
[解決済み】numpy: true_divide で無効な値に遭遇
-
[解決済み】csv.Error:イテレータはバイトではなく文字列を返すべき
-
[解決済み】Python elifの構文が無効です【終了しました
-
[解決済み] 'int'オブジェクトに'__getitem__'属性がない。
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み】「OverflowError: Python int too large to convert to C long" on windows but not mac