

[참고]소프트 맥스

np.max() 하는 이유는 소프트맥스는 지수함수를 사용하는데 너무 큰 숫자가 들어올때 오버플로우 현상이 나타날 수 있기 때문에 사용신경망은 선형모델과 활성함수(activation function)를 합성한 함수이다
- 선형모델에 나온 출력값을 소프트맥스를 취해 분류문제를 해결
- 활성함수는 보통은 비선형함수로서 선형모델에서 나온 출력물 각각의 원소에 적용
- 소프트맥스는 출력물 전체에 적용한다면, 다른 주소에 있는 출력값을 고려하지 않고 해당하는 주소의 값을 고려(벡터값이 아닌 실수값)
- 활성함수는 잠재벡터(z)의 각 노드에 개별적으로 적용하여 새로운 잠재벡터(H)를 만든다
- 신경망에서 활성함수가 필요한 이유는 비선형 근사를 하기 위해서이다.
활성함수

다층 퍼셉트론은 신경망이 여러층 합성된 함수이다.
- 1...L까지 순차적인 신경망 계산은 순전파(forward propagation)
왜 층을 여러개를 쌓나요?

딥러닝은 역전파(backpropagation) 알고리즘을 이용하여 각 층에 사용된 패러미터를 학습합니다.
각 층 패러미터의 그레디언트 벡터는 윗층부터 역순으로 계산하게 됩니다
역전파 알고리즘은 합성함수 미분법인 연쇄법칙 기반 자동미분을 사용합니다
미분 예시
메모리를 순전파보다 더 많이 사용함
