[프로그래머스] 데브코스 데이터엔지니어링 TIL Day 73

주재민·2024년 1월 31일
0
post-thumbnail

📖 학습주제

머신러닝, Scikit-learn, 실전 머신러닝 문제 실습 (3)


확률기초

확률과 확률변수 (Random Variable)

  • 표본집합 SS : 실험의 결과로 발생하는 모든 사건의 집합
  • 확률 PP : 집합 SS의 부분집합(사건)을 실수값에 대응시키는 함수
  • 확률변수 XX : 표본집합 SS의 원소 ee를 실수값 X(e)=xX(e)=x에 대응시키는 함수
    - 확률변수가 가질 수 있는 어떤 실수값의 집합 AA에 대해,
    B={eeS  and  X(e)  A}B=\{e|e \in S\; and\;X(e) \in\;A\}로 주어졌을 때, AABB는 동일한 사건이라 하고 P[XA]=P(B)P[X \in A] = P(B)라고 표기한다.

연속확률변수 (Continuous Random Variable)

  • 누적분포함수(cumulative distribution function, CDF) : F(x)=P[X(,x)]F(x) = P[X \in (-\infin, x)]
  • 누적분포함수 F(x)F(x)를 가진 확률변수 XX에 대해, 다음을 만속하는 함수 f(x)f(x)가 존재한다면 를 연속확률변수라고 부르고 f(x)f(x)XX의 확률밀도함수(probability distribution function, pdf)라고 한다.
    F(x)=xf(t) dtF(x) = \int_{-\infty}^x f(t)\ \mathrm{d}t
  • 혼란이 없다면 f(x)f(x) 대신 p(x)p(x)를 확률변수로 쓰기도 한다.
  • p(x)0,  p(x) dx=1p(x)\geq0,\; \int_{-\infty}^\infty p(x)\ \mathrm{d}x = 1
  • f(x)=ddxF(x)=F(x)f(x) = {d\over dx}F(x)=F'(x)

확률변수의 성질

  • 덧셈법칙(sum rule) : p(X)=Yp(X,Y)p(X)=\displaystyle\sum_Yp(X,Y)
  • 곱셈법칙(product rule) : p(X,Y)=p(XY)p(Y)=p(YX)p(X)p(X,Y) = p(X|Y)p(Y) = p(Y|X)p(X)
  • 베이즈 정리(Bayes Theorem)
    p(YX)=p(XY)p(Y)Yp(XY)p(Y)p(Y|X) = {p(X|Y)p(Y)\over \displaystyle\sum_Yp(X|Y)p(Y)}
사후확률(posterior)=우도(likelihood)×사전확률(prior)정규화  상수(normalization):X  경계확률(marginal)사후확률(posterior) = {우도(likelihood) \times 사전확률(prior)\over 정규화\;상수(normalization) : X의\;경계확률(marginal)}

확률변수의 함수 (Functions of Random Variables)

확률변수 XX의 함수 Y=f(X)Y= f(X)도 확률변수가 된다.

확률변수 XX의 함수 Y=g(X)Y= g(X)와 역함수 X=w(Y)X= w(Y)에 대해, 다음이 성립한다.

py(y)=px(x)dxdyp_y(y)=p_x(x)\left| {dx\over dy} \right|

kk차원의 확률벡터 x=(x1,x2,,xk)\textbf{x}=(x_1,x_2,\cdots,x_k)에 대해, kk개의 x\textbf{x}에 관한 함수 yi=gi(x)y_i = g_i(x)는 새로운 확률 변수 y=(y1,y2,,yk)\textbf{y}=(y_1,y_2,\cdots,y_k)를 정의한다. (i=1,2,,k)(i=1,2,\cdots,k)

y=g(x)\textbf{y}=g(\textbf{x})가 일대일 대응(onetooneone-to-one)인 경우, y\textbf{y}의 결합확률밀도함수는

py(y1,y2,,yk)=px(x1,x2,,xk)J,p_y(y_1,y_2,\cdots,y_k)=p_x(x_1,x_2,\cdots,x_k) \left| {\textbf{J}} \right|, where  J=x1y1x1y2xky1x2y1x2y2x2ykxky1xky2xkykwhere\;{\textbf{J}} = \begin{vmatrix}{\partial{x_1} \over \partial{y_1}}&{\partial{x_1} \over \partial{y_2}}& \cdots & {\partial{x_k} \over \partial{y_1}}\\{\partial{x_2} \over \partial{y_1}}&{\partial{x_2} \over \partial{y_2}}& \cdots &{\partial{x_2} \over \partial{y_k}}\\ \vdots& \vdots & \ddots & \vdots \\{\partial{x_k} \over \partial{y_1}}&{\partial{x_k} \over \partial{y_2}}& \cdots & {\partial{x_k} \over \partial{y_k}} \end{vmatrix}

Inverse CDF Technique

확률변수 XX가 확률분포함수 FX(x)F_X(x)를 가진다고 하자.

연속확률분포함수 UUNIF(0,1)U\sim UNIF(0,1)로 정의되는 다음과 같은 확률변수 YY를 가정하자.

Y=FX1(U)Y=F_X^{-1}(U)

두 확률변수 X,YX,Y는 동일한 분포를 따르게 된다.

기댓값 (Expectations)

확률분포p(x)p(x) 하에서 함수 f(x)f(x)의 평균을 기댓값이라고 하고 EE로 표기한다.

  • 이산확률분포에서의 기댓값 : E[f]=xp(x)f(x)E[f]=\displaystyle\sum_xp(x)f(x)
  • 연속확률분포에서의 기댓값 : E[f]=p(x)f(x) dxE[f]=\int_{}^{} p(x)f(x)\ \mathrm{d}x
  • 확률분포로부터 NN개의 샘플을 추출해 기댓값을 근사해 구할 수 있다.
    E[f]1Ni=1Nf(xi)E[f]\approx{1 \over N}\displaystyle\sum_{i=1}^Nf(x_i)
  • 다변량함수의 기댓값

    Ex[f(x,y)]=xf(x,y)p(x)E_x[f(x,y)]=\displaystyle\sum_xf(x,y)p(x)

    Ex,y[f(x,y)]=yxf(x,y)p(x,y)E_{x,y}[f(x,y)]=\displaystyle\sum_y\sum_xf(x,y)p(x,y)
  • 조건부 기댓값

    Ex[f(xy)]=xf(x)p(xy)E_x[f(x|y)]=\displaystyle\sum_xf(x)p(x|y)

분산 (Variance), 공분산 (Covariance)

f(x)f(x)의 값들이 기댓값으로부터 흩어져있는 정도를 분산이라고 하고 VarVar로 표기한다. (공분산 : CovCov)

  • Var[x]=E[(xE[x])2]=E[x2]E[x]2Var[x]=E[(x-E[x])^2]=E[x^2]-E[x]^2
  • Cov[x,y]=Ex,y[{xE[x]}{yE[y]}]=Ex,y[xy]E[x]E[y]Cov[x,y]=E_{x,y}[\lbrace x-E[x] \rbrace\lbrace y-E[y] \rbrace] \\ \quad \quad \quad \quad \,=E_{x,y}[xy]-E[x]E[y]
  • 공분산은 두 확률변수의 선형관계를 나타낸다.
    - 양수이면 양의 선형관계
    - 음수이면 음의 선형관계

확률을 해석하는 두가지 관점

  • 빈도주의(Frequentist) : 반복가능한 사건의 빈도수에 기반
  • 베이지안(Bayesian) : 불확실성을 정량적으로 표현

베이지안의 장점

사전확률을 모델에 포함시킬 수 있음

정규분포 (Gaussian Distribution)

  • 단일변수 xx를 위한 가우시안 분포
    N(xμ,σ2)=1(2πσ2)1/2exp{12σ2(xμ)2}\mathcal{N}(x|\mu,\sigma^2)={1 \over (2\pi\sigma^2)^{1/2}}exp\lbrace {-{1 \over 2\sigma^2}(x-\mu)^2} \rbrace
    확률분포이므로 이는 곧
    N(xμ,σ2)dx=1\displaystyle\int_{-\infin}^{\infin}\mathcal{N}(x|\mu,\sigma^2)\mathcal{d}x=1

proof)

I=exp(12σ2x2)dxI2=exp(12σ2(x2+y2))dxdy=02π0exp(12σ2r2)rdrdθ=02π{σ2exp(12σ2)r20}dθ=02πσ2dθ=2πσ2I=2πσ21=II=1(2πσ2)1/2exp(12σ2x2)I=\displaystyle\int_{-\infin}^{\infin}exp( {-{1 \over 2\sigma^2}x^2)\mathcal{d}x}\\{}\\ I^2=\displaystyle\int_{-\infin}^{\infin}\displaystyle\int_{-\infin}^{\infin}exp( {-{1 \over 2\sigma^2}(x^2+y^2))}\mathcal{d}x\mathcal{d}y\\{}\\\quad\,=\displaystyle\int_{0}^{2\pi}\displaystyle\int_{0}^{\infin}exp( {-{1 \over 2\sigma^2}r^2)r\mathcal{d}r\mathcal{d}\theta}\\{}\\\quad\,=\displaystyle\int_{0}^{2\pi}\lbrace -\sigma^2{exp(-{1 \over 2\sigma^2})r^2}\vert_0^{\infin} \rbrace \mathcal{d}\theta\\{}\\\quad\,=\displaystyle\int_{0}^{2\pi}-\sigma^2\mathcal{d}\theta\\{}\\\quad\,=2\pi\sigma^2\\{}\\I=\sqrt{2\pi\sigma^2}\\{}\\1={I\over I}=\displaystyle\int_{-\infin}^{\infin}{1 \over (2\pi\sigma^2)^{1/2}}exp{(-{1 \over 2\sigma^2}x^2)}

  • E[x]=μE[x]=\mu
  • Var[x]=σ2Var[x]=\sigma^2
  • 최대우도해 (Maximum Likelihood Solution)
    X=(x1,x2.,xN)TX=(x_1,x_2. \cdots,x_N)^T가 독립적으로 같은 가우시안 분포로부터 추출된 NN개의 샘플이라고 할 때,
    μML=1Ni=1Nxi\mu_{ML}={1 \over N}\displaystyle\sum_{i=1}^Nx_i
    σML2=1Ni=1N(xiμML)2\sigma_{ML}^2={1 \over N}\displaystyle\sum_{i=1}^N(x_i-\mu_{ML})^2

확률분포

이항변수 (Binary Variables)

x{0,1}x \in \lbrace 0,1 \rbrace

  • E[x]=μE[x]=\mu
  • Var[x]=μ(1μ)Var[x]=\mu(1-\mu)
  • 최대우도추정치 (Maximum Likelihood Estimate)
    μML=mN  (m:observations  of  1)\mu_{ML}={m \over N}\;(m:observations\;of\;1)
    NN이 작은 경우 MLE는 과적합된 결과를 낳을 수 있음

이항분포 (Binary Distribution)

D={x1,x2,,xN}\mathcal{D}=\lbrace x_1,x_2, \cdots, x_N \rbrace일 때, 이항변수 xxmm번 관측될 확률

Bin(mN,p)=(Nm)pm(1p)nmBin(m|N,p)=\begin{pmatrix}N\\m\\ \end{pmatrix}p^m(1-p)^{n-m}
  • E[x]=npE[x]=np
  • Var[x]=np(1p)Var[x]=np(1-p)

N=1N=1일 때 : 베르누이 분포

베타분포 (Beta Distribution)

Beta(μα,β)=Γ(α+β)Γ(α)+Γ(β)μα1(1μ)β1Beta(\mu|\alpha,\beta)={\Gamma(\alpha+\beta) \over\Gamma(\alpha)+\Gamma(\beta)}\mu^{\alpha-1}(1-\mu)^{\beta-1}

이 때,

Γ(z)=0tz1etdt\Gamma(z)=\int_0^\infin t^{z-1}e^{-t} \mathcal{d}t

(Γ(n)=(n1)!\Gamma(n)=(n-1)! 이 성립한다.)

  • E[x]=α(α+β)E[x]={\alpha \over (\alpha+\beta)}

  • Var[x]=αβ(α+β)2(α+β+1)Var[x]={\alpha\beta \over (\alpha+\beta)^2(\alpha+\beta+1)}

  • xx의 사후확률

    p(μm,l,α,β)=Γ(m+α+l+β)Γ(m+α)Γ(l+β)μm+α1(1μ)l+β1p(\mu|m,l,\alpha,\beta)={\Gamma(m+\alpha+l+\beta) \over \Gamma(m+\alpha)\Gamma(l+\beta)}\mu^{m+\alpha-1}(1-\mu)^{l+\beta-1}

다항변수 (Multinomial Variables)

KK개의 상태를 가질 수 있는 확률변수를 하나의 원소만 1이고 나머지는 0인 KK차원의 벡터 x\textbf{x}로 나타낼 수 있다. p(xk=1μ)=μkp(x_k=1|\bm{\mu})=\mu_k라고 하면, 베르누이 분포를 다음과 같이 일반화 할 수 있다.

p(xμ)=k=1Kμkxk,(kμk=1)p(\textbf{x}|\bm{\mu})=\displaystyle\prod_{k=1}^K \mu_k^{x_k},\quad(\displaystyle\sum_k \mu_k=1)

다항분포 (Multinomial Distribution)

  • 디리클레 분포(Dirichlet distribution) : 다항분포에 대한 켤레사전분포
    Dir(μα)=Γ(α0)Γ(α1)Γ(α2)...Γ(αK)k=1Kμkαk1Dir(\bm{\mu}|\alpha)={\Gamma(\alpha_0) \over \Gamma(\alpha_1)\Gamma(\alpha_2)...\Gamma(\alpha_K)}\displaystyle\prod_{k=1}^K\mu_k^{\alpha_k-1}
  • μ\mu의 사후확률
    p(μD,α)=Dir(μα+m)=Γ(α0+N)Γ(α1+m1)Γ(α2+m2)...Γ(αK+mK)k=1Kμkαk+mk1m=(m1,m2,,mK)Tp(\bm{\mu}|D,\alpha)=Dir(\bm{\mu}|\alpha+m)={\Gamma(\alpha_0+N) \over \Gamma(\alpha_1+m_1)\Gamma(\alpha_2+m_2)...\Gamma(\alpha_K+m_K)}\displaystyle\prod_{k=1}^K\mu_k^{\alpha_k+m_k-1}\\{}\\\textbf{m}=(m_1,m_2,\cdots,m_K)^T

가우시안 분포 (Gaussian Distribution)

  • 단일변수 xx
    N(xμ,σ2)=1(2πσ2)1/2exp{12σ2(xμ)2}\mathcal{N}(x|\mu,\sigma^2)={1 \over (2\pi\sigma^2)^{1/2}}exp\lbrace {-{1 \over 2\sigma^2}(x-\mu)^2} \rbrace
  • D차원 벡터 x\textbf{x}
    N(xμ,Σ)=1(2π)D/21Σ1/2exp{12(xμ)TΣ1(xμ)}\mathcal{N}(\textbf{x}|\bm{\mu},\Sigma)={1 \over (2\pi)^{D/2}}{1 \over |\Sigma|^{1/2}}exp\lbrace {-{1 \over 2}(\textbf{x}-\bm{\mu})^T\Sigma^{-1}(\textbf{x}-\bm{\mu})} \rbrace

μ\bm{\mu} : DD차원 벡터의 평균 벡터
Σ\Sigma : D×DD \times D 크기를 가지는 공분산 행렬

0개의 댓글