일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- C++
- 프로그래머스
- SW Expert Academy
- Computer Science
- 파이썬
- SECS
- SECS/GEM
- 자바
- Spring JPA
- modern c++
- CS
- SECS-II
- Bitget
- regression
- programmers
- Spring
- 백준
- python
- Baekjoon
- 회원가입
- java
- Gem
- c
- 스포티파이
- spring boot
- 비트겟
- 회귀
- spotify
- SWEA
- Spotify Api
Archives
- Today
- Total
비버놀로지
[나이브 베이즈 분류] 확률로 pi 계산하기 본문
728x90
확률로 pi 계산하기
π, 즉 원주율은 수학에서 가장 중요한 숫자 중 하나입니다. 원주율은 원 둘레와 지름의 비율로 3.141592653.14159265… 입니다.
2차원 평면에 점을 무작위로 찍어서 원주율을 구해보겠습니다. 원리는 원의 넓이를 구하는 것입니다.
반지름이 1인 원이 있다고 가정해보겠습니다. 이 원은 높이, 너비가 2인 사각형에 들어갑니다. 이 때 원의 넓이는 다음과 같이 구할 수 있습니다.
즉, 반지름이 1인 원의 넓이는 π 입니다.
우리가 무작위로 찍은 점 중 몇 %가 원 안에 들어가 있을지를 알게 된다면, 그 원의 넓이를 추측해 낼 수 있습니다. 예로, 75%의 점이 원 안에 있다면 그 원의 넓이는 0.75×4=3.0이 됩니다. 원의 넓이가 π 라고 했으므로, π\ 는 3.0이라고 추측할 수 있습니다.
실습
- 스켈레톤 코드를 살펴보세요.
- N을 10배씩 증가시키며 실행 버튼을 눌러 파이 값이 어떻게 변경되는지 확인해보세요.
import matplotlib as mpl
mpl.use("Agg")
import matplotlib.pyplot as plt
import numpy as np
import elice_utils
def main():
plt.figure(figsize=(5,5))
X = []
Y = []
# N을 10배씩 증가할 때 파이 값이 어떻게 변경되는지 확인해보세요.
N = 1000
for i in range(N):
X.append(np.random.rand() * 2 - 1)
Y.append(np.random.rand() * 2 - 1)
X = np.array(X)
Y = np.array(Y)
distance_from_zero = np.sqrt(X * X + Y * Y)
is_inside_circle = distance_from_zero <= 1
print("Estimated pi = %f" % (np.average(is_inside_circle) * 4))
plt.scatter(X, Y, c=is_inside_circle)
plt.savefig('circle.png')
elice_utils.send_image('circle.png')
if __name__ == "__main__":
main()
728x90
'인공지능 머신러닝' 카테고리의 다른 글
[나이브 베이즈 분류] 나이브 베이즈 분류기 (0) | 2022.11.03 |
---|---|
[나이브 베이즈 분류] 유방암 검사 키트 (0) | 2022.11.03 |
[회귀분석] 영어 단어 코퍼스 분석하기 (0) | 2022.11.03 |
[회귀분석] 다항식 회귀 분석 (0) | 2022.11.03 |
[회귀분석] 다중 회귀 분석 (0) | 2022.11.03 |
Comments