XOR 문제 풀기 강좌를 정리한다.
Neural Network (NN)
XOR 를 Linear한 선으로 구분을 지을 수 없었다. NN에서 어떻게 해결하는가? Y1, Y2 가 Y예측으로 수렴되어 계산하는 것을 풀어본다.
matrix를 곱하고, sigmoid function인 S(..)을 태워서 값이 0, 1중 어디에 근접하는지 살핀다.
나머지를 다 계산해 본다. 나머지까지 답이 맞으면 만들어 놓은 Network이 맞는 것이된다.
위의 3개 Network을 통해 XOR결과가 제대로 나왔다. 하나의 Neural Network을 만들었다.
Multinomiad Classification처럼 하나의 Vector로 만들 수 있다. W, B가 matrix화 된다.
위의 것을 수식으로 표현할 수 있다.
과제는 여기서 W1, b1을 어떻게 알 수 있을까? 이다. 다음 강좌에서 알아본다.
Deep NN for XOR (강좌)
여러개의 Layer를 만들어 INPUT, OUTPUT을 조절한다.
- 이전 layer의 OUTPUT은 다음 Layer의 INPUT이 된다. (소스)
Deep & wide (강좌)
처음 INPUT 이 2개이고, 마지막 OUTPUT 이 1개 이다.
- 최초 INPUT Layer
- 마지막 OUTPUT Layer
- 중간 HIDDEN Layer
HIDDEN Layer는 개발자 마음대로 넣으면 된다. 예로 9개의 Layer를 만들 경우는 다음과 같다.
- Deep Network을 만들고 이것을 학습시키면 Deep Learning이 된다.
참조
'Deep Learning > NN by Sung Kim' 카테고리의 다른 글
[Deep Learning] TensorBoard 사용 및 ReLU 개념 (0) | 2018.07.09 |
---|---|
[Deirvative] 미분 정리 (0) | 2018.07.06 |
[Tensorflow] Manipulation - matmul, reshape, zip, etc (0) | 2018.07.06 |
[Deep Learning] 역사 (0) | 2018.07.05 |
[Training & Testing] Data set 구분 (0) | 2018.07.05 |