NumPy의 numpy.random.seed() 함수

Muhammad Maisam Abbas 2021년7월4일
NumPy의 numpy.random.seed() 함수

이 튜토리얼은 NumPy의numpy.random.seed()함수를 설명합니다.

numpy.random.seed()함수

numpy.random.seed()함수는 Python에서 의사 난수 생성기 알고리즘의 시드를 설정하는 데 사용됩니다. 의사 난수 생성기 알고리즘은 시드에 대해 미리 정의 된 일부 작업을 수행하고 출력에 의사 난수를 생성합니다. 시드는 알고리즘의 시작점 역할을합니다. 의사 난수는 무작위로 나타나는 숫자이지만 실제로는 그렇지 않습니다. 사실, 컴퓨터는 결정적이며 주어진 지침을 지속적으로 따르기 때문에 컴퓨터는 진정한 난수를 생성 할 수 없습니다. 이것의 배후에있는 아이디어는 우리는 모든 기계에서 동일한 시드에 대해 항상 동일한 난수 세트를 얻을 수 있다는 것입니다.

import numpy as np

np.random.seed(1)
array = np.random.rand(5)
np.random.seed(1)
array2 = np.random.rand(5)
print(array)
print(array2)

출력:

[4.17022005e-01 7.20324493e-01 1.14374817e-04 3.02332573e-01
 1.46755891e-01]
[4.17022005e-01 7.20324493e-01 1.14374817e-04 3.02332573e-01
 1.46755891e-01]

위의 코드에서 NumPy 랜덤 시드를 0으로 설정하고 해당 시드를 기반으로 5 개의 의사 난수 시퀀스를 생성했습니다. 그런 다음 시드를 0으로 재설정하고 해당 시드를 기반으로 5 개의 의사 난수 시퀀스를 다시 생성했습니다. 두 번 모두 동일한 값 시퀀스를 얻습니다. 두 번 모두 동일한 시드에 동일한 작업을 적용하여 난수를 생성합니다. 이 사전 결정적 난수 생성 유형은 다른 컴퓨터에서 동일한 일련의 난수를 생성하려는 경우 유용합니다.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn