기본 콘텐츠로 건너뛰기

[ML] 결정트리(Decision Tree) 모델

[data analysis] 독립사건(independent event)

독립사건(independent event)

관련내용

교집합이 공집합인 사건들은 독립사건(independent event) 또는 상호 배타적 결과들(disjoint or mutually exclusive outcomes)이 됩니다. 예를 들어 하나의 주사위를 시행하는 경우 주사위 눈의 갯수 1과 2가 동시에 일어날 수 없으므로 독립 사건이 됩니다. 한편 1과 홀수가 나올 확률은 1이 이미 홀수이므로 동시에 발생할 수 있습니다. 그러므로 이 사건은 상호 배타적 결과들이 아닙니다.

독립사건은 다른 사건들 사이에 영향을 줄 수 없기 때문에 여러 독립 사건들의 합은 각 사건의 합으로 결정할 수 있습니다. 예를 들어 1개의 주사위 시행에서 1 또는 2가 나올 사건의 확률은 독립이므로 각각의 확률의 합이 됩니다(식 1).

\begin{align}P(X=1\;\text{or}\;2)&=P(X=1)+P(X+2)\\&=\frac{1}{6}+\frac{1}{6}\\&=\frac{1}{3} \end{align}(식 1)

위와 달리 어떤 사건이 동시에 일어날 수 있는 사건이 존재하는 경우 즉, 사건 A, B가 독립사건이 아닌 경우는 두 사건에서 공통으로 일어나는 경우는 제외되어야 합니다. 예를 들어 주사위 시행에서 1 또는 홀수가 나올수 있는 확률에서 홀수 사건 중에 1이 이미 포함되어 있습니다. 그러므로 식 2와 같이 1이 나올 확률을 제외하여야 합니다.

\begin{align}P(X=1)=\frac{1}{6}&\quad P(X=\text{홀수})=\frac{1}{2}\\P(X=1\;\text{or}\;X=\text{홀수})&=\frac{1}{6}+\frac{1}{2}-\frac{1}{6}\\&=\frac{1}{2} \end{align}(식 2)
case=range(1, 7)
n=0
for i in case:
    if (i==1) or (i %2 ==1):
        n +=1
n
3
prob=n/len(case); prob 
0.5
[합사건(Union)]
  • 두 독립사건 E1, E2이라면 이 둘이 발생할 확률은 식 3과 같이 단순히 두 확률의 합으로 계산됩니다.
    • P(E1 or E2)  =   P(E1 ∪ E2)(식 3)
        =   P(E1) + P(E2)
  • 식 3의 확장으로 2개 이상의 독립사건들에 대한 모든 확률은 식 4와 같이 계산됩니다.
    • P(E1 ∪ E2 ∪ … ∪ En)(식 4)
        =   P(E1) + P(E2) + … + P(En)
  • 독립이 아닌 두 사건 A1, A2의 합은 식 5과 같이 계산됩니다.
    • P(A1 ∪ A2) = P(A1) + P(A2) − P(A1 ∩ A2)(식 5)
  • 식 5의 확장으로 두개 이상의 비독립 사건들의 합사건은 식 6과 같이 사건들 사이에 공통적인 부분들을 고려해야 됩니다.
    • P(A1 ∪ A2 ∪ … ∪ An)(식 6)
        = P(A1) + P(A2) + … + P(An)
        − P(A1 ∩ A2) − P(A2 ∩ A3) − … − P(An-1∩ An)
        + P(A1 ∩ A2 … An)

확률과 통계학에서 or은 합집합, and는 교집합을 의미합니다.

예 1)

1 ~ 9의 숫자가 적힌 9개의 공이 담긴 백에서 한 개의 공을 추출할 경우 꺼낸 공의 숫자가 2의 배수이거나 6의 배수일 확률을 결정합니다.

\begin{align}P(\text{2의 배수})=\frac{4}{9}&\quad P(\text{6의 배수})=\frac{1}{9} \\ P(\text{2의 배수} \;\cap\; \text{6의 배수}))&=\frac{1}{9}\\ P(\text{2의 배수} \;\cup\; \text{6의 배수}))&=\frac{4}{9}+\frac{1}{9}-\frac{1}{9}=\frac{4}{9}\end{align}

case=range(1, 10)
n=0
for i in case:
    if (i %2 == 0) or (i % 6 ==0):
        n +=1
n
4
prob=n/len(case)
round(prob, 3)
0.444

$\frac{4}{9}$는 무한 소수입니다. 이를 소수점 3자리에서 반올림한 것이 위의 결과입니다.이 결과는 분수로 표시하기 위해 sympy 패키지의 Rational() 함수를 사용할 수 있습니다.

  • sympy.Rational(a, b)
    • 분수를 반환(a/b)
prob=Rational(n, len(case)); prob

$\frac{4}{9}$

예 2)

학생 220명을 대상으로 두 종류(A, B)의 백신을 접종 현황을 조사합니다. 조사결과는 다음과 같습니다.

$$P(A)=\frac{2}{5}\quad P(B)=\frac{1}{3}\quad P(A\;\cap\;B)=\frac{1}{6}$$

위 결과를 근거로 A 또는 B를 접종한 인원을 결정합시다.

식 5를 적용하여 계산합니다(식 7).

$$P(A ∪ B) = P(A) + P(B) - P(A ∩ B) = \frac{2}{5} + \frac{1}{3} - \frac{1}{6} = \frac{17}{30}$$(식 7)
Pa, Pb=2/5, 1/3
Pab=1/6
Pa_b=Pa+Pb-Pab
round(Pa_b, 3)
0.567
round(17/30, 3)
0.567

댓글

이 블로그의 인기 게시물

[Linear Algebra] 유사변환(Similarity transformation)

유사변환(Similarity transformation) n×n 차원의 정방 행렬 A, B 그리고 가역 행렬 P 사이에 식 1의 관계가 성립하면 행렬 A와 B는 유사행렬(similarity matrix)이 되며 행렬 A를 가역행렬 P와 B로 분해하는 것을 유사 변환(similarity transformation) 이라고 합니다. $$\tag{1} A = PBP^{-1} \Leftrightarrow P^{-1}AP = B $$ 식 2는 식 1의 양변에 B의 고유값을 고려한 것입니다. \begin{align}\tag{식 2} B - \lambda I &= P^{-1}AP – \lambda P^{-1}P\\ &= P^{-1}(AP – \lambda P)\\ &= P^{-1}(A - \lambda I)P \end{align} 식 2의 행렬식은 식 3과 같이 정리됩니다. \begin{align} &\begin{aligned}\textsf{det}(B - \lambda I ) & = \textsf{det}(P^{-1}(AP – \lambda P))\\ &= \textsf{det}(P^{-1}) \textsf{det}((A – \lambda I)) \textsf{det}(P)\\ &= \textsf{det}(P^{-1}) \textsf{det}(P) \textsf{det}((A – \lambda I))\\ &= \textsf{det}(A – \lambda I)\end{aligned}\\ &\begin{aligned}\because \; \textsf{det}(P^{-1}) \textsf{det}(P) &= \textsf{det}(P^{-1}P)\\ &= \textsf{det}(I)\end{aligned}\end{align} 유사행렬의 특성 유사행렬인 두 정방행렬 A와 B는 'A ~ B' 와 같

[matplotlib] 히스토그램(Histogram)

히스토그램(Histogram) 히스토그램은 확률분포의 그래픽적인 표현이며 막대그래프의 종류입니다. 이 그래프가 확률분포와 관계가 있으므로 통계적 요소를 나타내기 위해 많이 사용됩니다. plt.hist(X, bins=10)함수를 사용합니다. x=np.random.randn(1000) plt.hist(x, 10) plt.show() 위 그래프의 y축은 각 구간에 해당하는 갯수이다. 빈도수 대신 확률밀도를 나타내기 위해서는 위 함수의 매개변수 normed=True로 조정하여 나타낼 수 있다. 또한 매개변수 bins의 인수를 숫자로 전달할 수 있지만 리스트 객체로 지정할 수 있다. 막대그래프의 경우와 마찬가지로 각 막대의 폭은 매개변수 width에 의해 조정된다. y=np.linspace(min(x)-1, max(x)+1, 10) y array([-4.48810153, -3.54351935, -2.59893717, -1.65435499, -0.70977282, 0.23480936, 1.17939154, 2.12397372, 3.0685559 , 4.01313807]) plt.hist(x, y, normed=True) plt.show()

R 미분과 적분

내용 expression 미분 2차 미분 mosaic를 사용한 미분 적분 미분과 적분 R에서의 미분과 적분 함수는 expression()함수에 의해 생성된 표현식을 대상으로 합니다. expression expression(문자, 또는 식) 이 표현식의 평가는 eval() 함수에 의해 실행됩니다. > ex1<-expression(1+0:9) > ex1 expression(1 + 0:9) > eval(ex1) [1] 1 2 3 4 5 6 7 8 9 10 > ex2<-expression(u, 2, u+0:9) > ex2 expression(u, 2, u + 0:9) > ex2[1] expression(u) > ex2[2] expression(2) > ex2[3] expression(u + 0:9) > u<-0.9 > eval(ex2[3]) [1] 0.9 1.9 2.9 3.9 4.9 5.9 6.9 7.9 8.9 9.9 미분 D(표현식, 미분 변수) 함수로 미분을 실행합니다. 이 함수의 표현식은 expression() 함수로 생성된 객체이며 미분 변수는 다음 식의 분모의 변수를 의미합니다. $$\frac{d}{d \text{변수}}\text{표현식}$$ 이 함수는 어떤 함수의 미분의 결과를 표현식으로 반환합니다. > D(expression(2*x^3), "x") 2 * (3 * x^2) > eq<-expression(log(x)) > eq expression(log(x)) > D(eq, "x") 1/x > eq2<-expression(a/(1+b*exp(-d*x))); eq2 expression(a/(1 + b * exp(-d * x))) > D(eq2, "x") a * (b * (exp(-d * x) * d))/(1 + b