Loading [MathJax]/jax/output/CommonHTML/jax.js
본문 바로가기
각종공부/머신러닝

머신러닝 공부 3편 - 로지스틱 회귀분석에서의 비용함수, 경사하강법 | Machine Learning(Coursera, Andrew Ng)

by 달슬 2020. 6. 14.
반응형

○ 분류(Classification)

y{0,1} ··· 0 : negative class, 1 : positive class

기존 선형회귀분석 hΘ(x)=Θ0+Θ1x으로 분류를 할 경우, hΘ(x)는 0 or 1이 되어야 하는데, x 값에 따라 hΘ(x)의 값이 0보다 작아지기도 하고, 1보다 커지기도 하는 문제가 발생한다

따라서 0hΘ(x)1을 만족시키기 위해 시그모이드 함수(Sigmoid Function)을 이용하여 변환을 시켜준다.

 

g(z)=11+ez
z=ΘTx=Θ0+Θ1x+Θ2x2++Θnxn
  에서

  hΘ(x)=g(ΘTx)=11+eΘTx
  이고,

  hΘ(x)=P(y=1x;Θ)=1P(y=0x;Θ)
    P(y=1x;Θ)+P(y=0x;Θ)=1
  이다.

○ 로지스틱 회귀분석(Logistic Regression)

hΘ(x)=g(ΘTx)  where  g(z)=11+ez
에서

hΘ(x)0.5이면 y=1
hΘ(x)<0.5이면 y=0
으로 추정한다.
이 때,
z0이면 g(z)0.5이므로, ΘTx0이면 y=1로 추정한다.
z<0이면 g(z)<0.5이므로, ΘTx<0이면 y=0으로 추정한다.
□ 예시

○ 로지스틱 회귀분석에서의 비용함수(Cost Function)

J(Θ)=1mmi=1Cost(hΘ(x(i),y(i)))
에서

Cost(hΘ(x(i),y(i))={y=1log(hΘ(x))y=0log(1hΘ(x))
이다.
( ∵이렇게 해야 J(Θ)가 Convex Function이 된다.)

이를 합쳐서 표기하면,

Cost(hΘ(x),y)=ylog(hΘ(x))(1y)log(1hΘ(x))
이고,

J(Θ)=1mmi=1[y(i)log(hΘ(x(i)))+(1y(i))log(1hΘ(x(i)))]
이다.

○ 경사하강법(Gradient Descent)

☞ $J(\Theta )$를 최소화 하기 위해

 Repeat{Θj:=ΘjαΘjJ(Θj)}

      whereJ(Θ)=1mmi=1[y(i)log(hΘ(x(i)))+(1y(i))log(1hΘ(x(i)))]

를 사용한다.

 

계산은 프로그래밍 툴 사용!

반응형

댓글