이 글에서는 가능도함수, 엔트로피, 쿨백-라이블러 발산에 대해 정리하고자 한다.
가능도함수
- 이제부터는 확률분포 X에 대한 확률 밀도함수 또는 확률질량함수를 다음과 같이 대표하여 쓰기로 한다.
- 베르누이 확률분포라면, θ=μ
- 이항분포라면, ( 베르누이 여러번 ) θ=(N,μ)
- 정규분포 라면, θ=(μ,σ2)
- 확률밀도함수에서 모수를 변수로 보는 경우에 이 함수를 가능도 함수(likelihood function)라고 한다.
확률밀도함수로 보면 우항, 가능도함수로 보면 좌항
L(θ;x)=p(x;θ)
예제
- 정규분포의 확률밀도함수는 단변수 함수다.
- 모수가 상수라는 것을 강조하기 위해 아래첨자를 붙였다.
- 가능도함수는 다변수 함수가 된다.
p(x;μ0,σ02)L(μ,σ2;x0)=2πσ021exp(−2σ02(x−μ0)2)=2πσ21exp(−2σ2(x0−μ)2)
최대가능도 추정법
- 최대가능도 추정법 ( Maximum Likelihood Estimation, MLE )은 주어진 표본에 대해 가능도를 가장 크게 하는 모수 θ 를 찾는 방법이다.
- 이 방법으로 찾은 모수는 기호로 θ^MLE 와 같이 표시한다.
θ^MLE=argθmaxL(θ;x)
복수의 표본 데이터가 있는 경우의 가능도함수
- 일반적으로 추정을 위해 확보하고 있는 확률변수 표본의 수가 하나가 아니라 복수 개 {x1,x2,⋯xN}이므로 가능도함수도 복수 표본값에 대한 결합확률밀도 pX1,X2,⋯XN(x1,x2,⋯xN;θ)가 된다.
- 표본 데이터 x1,x2,⋯xN는 같은 확률분포에서 나온 독립적인 값들이므로 결합확률밀도함수는 다음처럼 곱으로 표현된다.
L(θ;x1,x2,⋯xN)=p(x1,x2,⋯xN;θ)=i=1∏Np(xi;θ)
로그가능도함수 (Log-Likelihood)
로그 변환한 로그가능도함수 LL=logL를 많이 사용하는 이유
- 로그 변환에 의해서 최대값의 위치가 변하지 않는다.
- 함수의 곱이 덧셈이 되어 계산이 단순해진다.
θ^ML=argθ^ML=argθmaxL(θ;{xi})↓θmaxlogL(θ;{xi})
엔트로피의 정의
- 확률 분포가 가지는 정보의 확신도 또는 정보량의 수치
- 엔트로피는 확률분포함수를 입력으로 받아 숫자를 출력하는 범함수(functional)로 정의한다.
- 표기는 H[] 로 한다.
- 확률변수 Y가 카테고리분포와 같은 이산확률변수이면 다음처럼 정의한다.
H[Y]=−k=1∑Kp(yk)logp(yk)
- 확률변수 Y가 정규분포와 같은 연속확률변수이면 다음처럼 정의한다.
H[Y]=−∫−∞∞p(y)logp(y)dy
교차엔트로피
- 두 확률분포 p,q의 교차엔트로피(cross entropy)
- 표기는 H[p,q]
H[p,q]=−k=1∑Kp(yk)logq(yk)
H[p,q]=−∫yp(y)logq(y)dy
logloss=−N1i=1∑N(yilogμi+(1−yi)log(1−μi))
쿨백-라이블러 발산
쿨백-라이블러 발산 ( Kullback-Leibler divergence )은 두 확률분표 p(y),q(y)의 분포모양이 얼마나 다른지를 숫자로 계산한 값이다. KL(p∣∣q)로 표기한다. 또는 DKL(p∣∣q)
KL(p∣∣q)=H[p,q]−H[p]=i=1∑Kp(yi)log(q(yi)p(yi))
KL(p∣∣q)=H[p,q]−H[p]=∫p(y)log(q(y)p(y))dy
쿨백-라이블러 발산은 교차엔트로피에서 기준확률분포인 p분포의 엔트로피 값을 뺀 값으로
상대엔트로피 ( relative entropy )라고도 한다.
DKL의 non-negative proof
a>0이면,loga≤a−1임.DKL(p∣∣q)=x∑p(x)logq(x)p(x)=−x∑p(x)logp(x)q(x)≥−x∑p(x)(p(x)q(x)−1)=x∑p(x)−x∑q(x)=1−1=0
Jensen-Shannon Divergence
- DKL(p∣∣q)=DKL(q∣∣p)이기 때문에 distance의 개념으로 사용할 수 없다.
- 이를 보완하기 위해 symmetric하게 만들어준 것이 Jensen-Shannon Divergence 이다.
DJS(p∣∣q)=21DKL(p∣∣M)+21DKL(q∣∣M)whereM=21(p+q)
Reference
데이터 사이언스 스쿨