1. 신경망이란?
신경망: Input X 로부터 Hidden units를 지나 출력값 Y를 도출하는 과정.
데이터가 많을수록 X에서 Y로 가는 함수를 알아내기 용이하다.
Deep Learning 덕분에 비정형데이터(Audio, Image, Text etc..)의 처리가 더욱 용이해졌다.
Deep Learning의 성장 동력: 신경망이 커지거나 데이터가 커지면 성능이 매우 좋아진다. 또한 알고리즘의 개선(Sigmoid >> Relu) 역시 큰 동력이 된다.
2. 신경망과 로지스틱 회귀
2.1 이진분류
로지스틱회귀란? 이진분류를 위한 알고리즘
해당 챕터에서는 표기법을 정의하였다. n_x = 전체 차원의 특성벡터
2.2 로지스틱 회귀
0 또는 1로 판단하는 이진분류 지도학습에 사용된다.
ŷ는 Weight(W)와 b(Bias), 그리고 X(input)으로 도출되며 ŷ 의 결과는 0~1 사이의 확률값으로 나타나야한다.
하지만 항상 0~1사이의 확률값으로 나타나기 힘들기에 sigmoid function을 적용한다.
결론적으로 y가 예측을 잘 할 수 있도록 W,b를 학습시켜야 하며 이를 위해 비용함수를 정의한다.
2.3 로지스틱 회귀의 비용함수
손실 함수(Loss Function): 하나의 입력에 대한 오차(y와 ŷ) 를 계산하는 함수
비용 함수(Cost Function): 모든 입력에 대한 오차를 계산하는 함수로 전체 손실함수의 평균이다.
2.4 경사하강법
경사하강법: Parameter W,b 찾아내는 법으로 함수의 기울기를 따라 최적의 값으로 한 스텝식 업데이트 한다.
2.5 계산 그래프(Computation Graph)
J(a,b,c) = 3(a + bc)의 계산 그래프 만드는 과정
2.6 계산 그래프로 미분하기
입력변수 a >> v >> J의 프로세스이며 이때 a 기준으로 J = J(u(a))라는 합성함수가 도출된다.
dJ/da(a가 변할 때 J의 변화량)을 구하기 위해 연쇄법칙 사용 가능하다.
표기법:
d Final Output / d var = d var
2.7 로지스틱 회귀의 경사하강법
- 1개 샘플의 경사하강법
부록: 로지스틱 회귀의 벡터화
해당 내용은 네이버 부스트코스 Andrew NG의 딥러닝 1단계: 신경망과 딥러닝 을 바탕으로 작성된 글입니다.