빈도로 보는 확률
Coddy Machine Learning 여정의 머신러닝을 위한 통계 섹션에 포함된 레슨. 64개 중 13번째.
스팸 필터에는 "스팸 90%"라고 표시되고, 씨앗 봉투에는 "발아율 80%"라고 표시됩니다. 확률은 장기적으로 나타나는 비율로, 0(절대 발생하지 않음)부터 1(항상 발생함)까지입니다. 씨앗 50개가 있습니다:
rng.random(n)은 0부터 1 사이의 소수를 생성하며, 그중 80%는 0.8보다 작습니다. 따라서 비교 한 번으로 씨앗 1000개를 심을 수 있습니다:
rng = np.random.default_rng(3)
sprouted = rng.random(1000) < 0.8
print(sprouted.sum())
print(sprouted.mean())다음을 출력합니다:
814
0.814불리언의 평균은 True의 비율입니다. 0.814로, 0.8에 가깝습니다. 이 장이 끝날 때쯤이면 이 방법으로 주사위 노점 전체의 가격을 매깁니다.
챌린지
중급공격수가 일정 확률로 페널티킥을 성공시킵니다. 프로그램은 확률(0부터 1까지)을 읽은 다음 킥 횟수를 읽습니다. 시작 코드에서 rng를 만듭니다.
- 킥을 시뮬레이션합니다.
rng.random의 값이 확률보다 작으면 골입니다. - 골 수와 추정 확률을 소수점 3자리까지 반올림하여 출력합니다.
0.5의 확률로 10번 킥을 할 때, 0.5에서 크게 벗어나는 짧은 실행 결과:
Goals: 3 of 10
Estimated chance: 0.3직접 해보기
import numpy as np
chance = float(input())
kicks = int(input())
# 아래 줄을 변경하지 마세요
rng = np.random.default_rng(21)
# 아래에 코드를 작성하세요
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
머신러닝을 위한 통계의 모든 레슨
직접 연습해 보세요: 온라인 Python 컴파일러