Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 깃
- iterator
- 서버설정
- 네트워크 설정
- 선형대수
- 코드로배우는스프링부트웹프로젝트
- 스프링 시큐리티
- network configuration
- /etc/network/interfaces
- 처음 만나는 AI 수학 with Python
- 친절한SQL튜닝
- 코드로배우는스프링웹프로젝트
- 자료구조와함께배우는알고리즘입문
- resttemplate
- GIT
- 데비안
- merge
- 자바편
- 자료구조와 함께 배우는 알고리즘 입문
- 티스토리 쿠키 삭제
- 이터레이터
- Kernighan의 C언어 프로그래밍
- 목록처리
- 구멍가게코딩단
- 병합
- 페이징
- 처음 만나는 AI수학 with Python
- 알파회계
- 리눅스
- 스프링부트핵심가이드
Archives
- Today
- Total
bright jazz music
기초수학 : 8. 난수 본문
난수
- 난수는 규칙성이 없는 미확정의 수치이다.
- 인공지능에서는 파라미터의 초기화 등에 난수가 활용된다.
정수 난수 생성
- 파이썬에서는NumPy의 random.randint()함수를 사용하여 정수인 난수를 생성한다.
- 함수에 정수 a를 인수로 입력하면 0부터 a-1 까지의 정수를 난수로 반환한다.
#정수인 난수 출력
import numpy as np
import matplotlib.pyplot as plt
r_int = np.random.randint(6) + 1 #0부터 5까지의 난수에 1을 더한다.
print("np.random.randint(6) + 1 = ", r_int) #1부터 6까지가 랜덤으로 표시됨
#3
#1~6사이에서 랜덤으로 출력됨
소수 난수 생성
- 소수인 난수는 Numpy의 random.rand() 함수를 사용한다.
- 0부터 1 사이의 임의의 소수가 출력된다.
import numpy as np
r_dec = np.random.rand() #0부터 1사이의 소수를 랜덤으로 반환한다.
print(r_dec)
#0.48802511193081655
#0~1사이에서 랜덤으로 출력됨
균일한 난수 생성
- random.rand() 함수는 0에서 1 사이의 소소를 균등한 확률로 반환한다.
- 이 함수에 정수 a를 인수로 건네면 a개의 난수가 균일 확률로 반환된다.
실습 1
아래 코드는 다수의 균일한 확률의 난수를 x좌표, y좌표로 삼는다.
이로써 난수가 균일 확률로 발생한다는 것을 확인한다.
import numpy as np
import matplotlib.pyplot as plt
n = 1000 #발생시킬 샘플 수
x = np.random.rand(n) #0~1 사이의 균일 확률로 발생한 난수
y = np.random.rand(n) #0~1 사이의 균일 확률로 발생한 난수
plt.scatter(x, y) #산포도를 plot
plt.grid()
plt.show()
편향된 난수 생성
- 난수가 결정될 확률은 균일하다고는 할 수 없다.
- NumPy의 random.randn() 함수는 정규분포를 따르는 확률로 난수를 반환한다. *rand뒤에 n이 붙는다.
- 정규분포에서는 중앙에서 확률이 높고 양 끝에서 확률이 낮아진다.
실습2
아래의 코드는 정규분포를 따르는 난수를 x 좌표, y 좌표로 한다.
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) #산포도를 plot
plt.grid()
plt.show()
실습 3
1에서 10까지의 정수가 랜덤으로 표시되게 할 것
import numpy as np
import matplotlib.pyplot as plt
r_int = np.random.randint(10) + 1
print(r_int) #1부터 10까지가 랜덤으로 표시
#4
'Math > 기초수학' 카테고리의 다른 글
기초수학: 10. LaTex 수식 표기법(주피터 노트북 사용 + 무설치) (0) | 2022.07.20 |
---|---|
기초수학 : 9. 절댓값 (0) | 2022.07.19 |
기초수학 : 7. 총곱 (0) | 2022.07.17 |
기초수학 : 6. 총합 (0) | 2022.07.17 |
기초수학 : 5. 삼각함수 (0) | 2022.07.16 |
Comments