DeepLearning_Lec05 - 8BitsCoding/RobotMentor GitHub Wiki
Logistic Algorithm에 대해서 알아보자.
(Binary) Classification
기존의 Linear Regression는 숫자를 찾는 것이라면 Classification는 둘 중 하나를 선택하게 도와준다.
해(1)? 말어(0)? 의 선택기준이 되어 준다.
- Spam Detection : Spam or Ham
- Facebook feed : show or hide
- Credit Card Farudulent Transaction detection : legitimate/fraud
기존 Linear Regression의 문제점
잘못된 데이터 값이 들어오면 Linear 식 자체가 잘못되게 된다.
Linear Regression이 편하고 좋긴한데 0~1사이의 값이라든지 작은 값의 경우 오차가 발생하게 된다.
해결책은? -> sigmoid function
cost function and gradient decent 구하기
기존의 cost function은 다음과 같았다.
우리가 사용하는 가설이 조금 바뀌었기에 cost function도 변화가 필요하다
sigmoid function이 리니어하지 않기에 구불구불한 cost function이 나타나게 된다.
어디가 최저점인지 찾기가 힘들어진다.! -> cost 함수의 수정이 필요!
다음과 같이 수정해보자.
식이 왜 저렇게 되나? hypothesis에 exponential이 들어가기에 그 exponential을 없애기 위해서 log가 필요하다. log함수 자체의 모양도 우리가 원하는 모양이다.
정리
마지막 식은 코딩의 수월함을 위해서 식의 y조건을 없앰.