Python/AI 수학 with Python

[Python] Numpy 난수 표현

ORE+ 2023. 3. 26. 16:45

인공지능에서 난수는 파라미터의 초기화 등에 자주 사용된다.

 

random.randint() 함수

인수로 a를 넣으면, 0부터 a-1 사이의 정수가 반환된다.

[In]

import numpy as np
r_int = np.random.randint(6) + 1 # 1부터 6사이의 난수를 반환
print(r_int)

[Out]

5

 

random.rand() 함수

인수로 a를 넣으면, 0부터 1 사이의 소수인 a개의 난수가 균등한 확률로 반환된다.

[In]

%matplotlib inline

import numpy as np
import matplotlib.pyplot as plt

n = 1000 # 샘플 수
x = np.random.rand(n) # 0 ~ 1 사이의 균일한 난수 1000개 반환
y = np.random.rand(n) # 0 ~ 1 사이의 균일한 난수 1000개 반환

plt.scatter(x, y)
plt.grid()
plt.axis('square')
plt.show()

[Out]

 

random.randn() 함수

인수로 a를 넣으면, 0부터 1 사이의 소수인 a개의 난수가 정규분포를 따르는 확률로 반환된다.

[In]

%matplotlib inline

import numpy as np
import matplotlib.pyplot as plt

n = 1000 # 샘플 수
x = np.random.randn(n) # 정규분포를 따르는 난수 반환
y = np.random.randn(n) # 정규분포를 따르는 난수 반환

plt.scatter(x,y)
plt.grid()
plt.axis('square')
plt.show()

[Out]