np.random.seed(0)
làm cho các số ngẫu nhiên có thể dự đoán được
>>> 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])
Với thiết lập lại hạt giống (mọi lúc), cùng một bộ số sẽ xuất hiện mỗi lần.
Nếu hạt giống ngẫu nhiên không được đặt lại, các số khác nhau sẽ xuất hiện với mỗi lần gọi:
>>> 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])
(pseudo-) số ngẫu nhiên hoạt động bằng cách bắt đầu bằng một số (hạt giống), nhân nó với một số lớn, thêm một phần bù, sau đó lấy modulo của tổng đó. Số kết quả sau đó được sử dụng làm hạt giống để tạo ra số "ngẫu nhiên" tiếp theo. Khi bạn đặt hạt giống (mọi lúc), nó sẽ làm điều tương tự mọi lúc, cho bạn cùng một số.
Nếu bạn muốn số dường như ngẫu nhiên, không đặt hạt giống. Tuy nhiên, nếu bạn có mã sử dụng các số ngẫu nhiên mà bạn muốn gỡ lỗi, tuy nhiên, có thể rất hữu ích để đặt hạt giống trước mỗi lần chạy để mã thực hiện điều tương tự mỗi khi bạn chạy nó.
Để có được các số ngẫu nhiên nhất cho mỗi lần chạy, hãy gọi numpy.random.seed()
. Điều này sẽ khiến numpy đặt hạt giống thành một số ngẫu nhiên thu được từ /dev/urandom
hoặc tương tự Windows của nó hoặc, nếu không có sẵn số đó, nó sẽ sử dụng đồng hồ.
Để biết thêm thông tin về việc sử dụng hạt giống để tạo số giả ngẫu nhiên, xem wikipedia .