(1권은 이미지 분류/CV 분야 위주로 구성 되어 있습니다)
(코드적 구현은 따로 작성할 예정 입니다)
(책 내용 그대로 옮기기 보단 저자가 공부하면서 중요한 부분 요약 위주로 작성 했습니다)
다음 chapter
4. 신경망 학습
5. 오차역전파법
last chapter
7. 합성공 신경망(CNN : Convolution Neural Network)
8. 딥러닝
뉴런 or 노드 : 각각 위 그림의 원
가중치 : 입력신호 x 데이터가 출력 노드로 보내질 때, 각각의 고유한 곱해지는 매개변수 W(weight), 각 뉴런의 영향력을 제어합니다
임계값(세타) : 입력신호의 총합이 한계(임계값)을 넘어야 1을 출력
(임계값을 넘어가서 출력되는 것을 '뉴런이 활성화' 라고 표현한다)
편향(bias) : 임계값을 좌변으로 옮겨서 0으로 만들고 추후 활성화를 조절해 주는 변수(-세타 = b로 치환), 뉴런(노드)의 활성화의 정도를 제어합니다
(그림에서 w1,w2는 가중치, b는 편향 각 매개변수는 출력에 영향력과 활성화 정도를 조절)
(0,1로 입력 신호와 출력 신호의 대응표인 '진리표'로 표현한다)
여기까지로 w,세타(임계점) 사람이 직접 세팅 해보는 것 연습
선형 : 직선으로 표현할 수 있는 영역
비선형 : XOR 같이 곡선으로 표현할 수 있는 영역
3개의 단순 논리 회로로 XOR (배타적 논리합) 구현
XOR 을 구현하고 시각화하면 직선만으로 표현이 안되기 때문에 다층 퍼셉트론(신경망)을 배워보자!
XOR의 진리표
XOR의 퍼셉트론
1층 S1은 NAND 게이트, S2은 OR 게이트 노드들을 통해 출력된 2개의 값이 2층 AND 게이트를 통하여 XOR 게이트를 구성한다
(단층 퍼셉트론에서는 선형 활성화 함수인 계단 함수를 사용했으나 비선형성 도입으로 출력의 표현력을 높게 하기 위해 사용하는 비선형 활성화 함수들의 종류를 설명할 예정 입니다)
0) 계단 함수
1) 시그모이드 함수(Sigmoid fucntion)
2) Relu 함수 (항등함수: 입력값을 출력값으로 그대로 출력하는 함수)
1) 다차원 배열
2) 행렬의 내적(행렬의 곱)
3) 신경망의 내적 (신경망에서 데이터와 가중치들의 수를 다차원 배열로 표현 했을 때의 곱)
1) 각 층의 신호 전달 시각화
1층
2층
3층
1) 회귀에서 항등함수는 입력값 그대로 출력 합니다
2) 분류 문제에서 Softmax 함수 활용
2-1) Softmax 함수 구현 시 주의점
지수 함수를 사용하는데, 지수 함수는 x축이 커질 수록 y값이 급격하게 증가하기 때문에 오버플로 문제가 발생하여 출력값이 불안정하게 되는 문제가 있습니다.
오버플로 문제를 해결하기 위해 원소들 중 최대값을 각 원소에서 빼준다
(아래 지수 함수 특성 상 상수를 연산처리 해도 괜찬다는 증명식)
2-2) 소프트맥스 함수의 특징