가설을 알아봤으니 ,다음으로 Cost를 알아보자!
가설이 sigmoid function을 이용하여 0~1사이의 값이 나오도록 하였기 때문에, 매끈한 모양이 아닌, 울퉁불퉁한 모양이 나타나게 된다.
출처: https://sebastianraschka.com/faq/docs/logisticregr-neuralnet.html
이렇게 된다면, 어디를 시작점으로 잡느냐에 따라서 최소점이 달라질 수 있다.
우리는 전체에서의 Global minimum을 찾고자 하는 것인데, local minimum에서 멈춰버릴 수도 있다. 이렇게 되면, 예측이 나빠지기 때문에, 우리는 더이상
Gradient를 사용할수가 없다 ㅠㅠ
이제 새로운 Cost function이 필요해!!!!!
2가지 경우로 나누어 결정한다.
(log를 사용하는 이유는 지수를 사용해서다)
출처: 구글검색
*우리는 Cost값이 크다 = 틀렸다! 라는 사실을 기억해야 한다!!!!!
1) 실제 y= 1일때,
- H(x)의 예측값이 1로 맞았을때!
-log(x)그래프 참조에서 cost를 계산해보면, 0이 된다
- H(x)의 예측값이 0로 틀렸을때!
-log(1-x)그래프 참조헤서 보면 값이 무진장 커지게 된다.
2) y=0 일때,
- H(x)의 예측값이 1로 틀렸을때,
값이 커진다!
- H(x) 예측값이 0로 맞았을때,
0에 가까워진다.
아주 좋은 cost값이 적용된것을 볼 수 있다.
*프로그래밍할때는, 다음과 같은 식을 사용하면 편리하다고 한다!
보통 weight값을 구할때는.. GradientDescetnOptimizer 함수들을 사용하면된다.....ㅋㅋ아이고 편해라!!
'Study > 모두를 위한 딥러닝 시즌1' 카테고리의 다른 글
Lec 07-1 - 학습 rate, Overfitting, 그리고 일반화 (Regularization) (0) | 2018.05.15 |
---|---|
Lec 06 - Softmax Regression: 기본 개념 소개 및 cost 함수 (0) | 2018.05.14 |
Lec 05 - Logistic Classification의 가설 함수 정의 (0) | 2018.05.02 |
Lec 04 - multi-variable linear regression (0) | 2018.04.25 |
Lec 03 - Linear Regression의 cost 최소화 알고리즘의 원리 설명 (0) | 2018.04.23 |
댓글