6. Logistic Classification Cost 함수 소개
- cost function
: linear 와는 다르게 classification 의 cost 함수에서는 어느 지점에서 시작하느냐에 따라 도착지점이 달라지게 됨
: 이 부분부분의 최소점을 Local minimum,
최종적인 전체에서의 최소점을 Global minimum 이라고 함
: 학습이 local에서 멈춰버리면 나쁜 prediction 이 됨
-> 따라서 cost 함수를 바꾸어야 함
- binary classification 이므로, y=0/y=1 일 때의 경우를 나누어 cost 함수를 적용
: 실제로
에서
(지수함수) 의 곡선의 형태를 상쇄시켜주는 것이 로그함수, 따라서 실제 값 0 or 1에 따라 다른 로그 함수를 적용
1) y=1 인 경우,
: cost = g(z) = -log(H(x))
: z = H(x) =1 이면 (성공적으로 예측하면) cost=0
H(x)=0 이면 cost= ∞
2) y=0 일 때,
: cost = -log(1-H(x))
: H(x)=0 으로 성공적으로 예측하면, cost=0
H(x)=1 으로 잘못 예측하면, cost=∞
-> 예측을 틀리면, cost 가 굉장히 커져서 시스템에 벌을 줌
-> 다 좋은데 실제로 구현할 때 if case 를 만나면 복잡해지므로
if 조건을 없애 만든 수식
: y=1 , 두번째 항의 식이0이 되어 없어짐, c = -log(H(x))
: y=0,앞 항의 식이0이 되어 없어짐, c = -1 * log(1-H(x))
-> 하나의 줄이 되어 프로그래밍 할 때 편리해짐
- Cost minimize : gradient decent
: 함수의 기울기를 구하기 위해 미분,
어느 정도 차이로 내려갈지를 알파 (0.1) 로 둠
: tensorflow에 그대로 cost 를 적어주고,
실제로 미분 파트(W)는 라이브러리가 있기 때문에 그대로 사용해서 구현 가능
: Variavle(0.1) 라이브러리 - 알파(0.1)
출처 : 모두의 딥러닝 https://hunkim.github.io/ml/
'AI & Deep Learning > 이론' 카테고리의 다른 글
multinomial logistic regression - Softmax (0) | 2019.04.01 |
---|---|
Logistic Classification (Binary) (0) | 2019.04.01 |
Multi variable linear regression (0) | 2019.04.01 |
Linear Regression cost 함수 최소화 (0) | 2019.04.01 |
Linear Regression 의 개념 (0) | 2019.04.01 |