본문 바로가기
인공지능/모두를 위한 딥러닝 시즌 2

XOR 문제 딥러닝으로 풀기

by SH_L 2023. 8. 13.
반응형

[Neural Net]

 

 

XOR 문제를 3개의 network로 풀어보자.

 

1. 두 개의 입력 값 X1, X2에 대하여 weight, bias 값과 함께 WX+b 연산을 진행한다.

2. 위 과정을 두 개의 유닛에서 진행하여 출력 값 Y1, Y2를 얻는다.

3. 출력 값 Y1, Y2sigmoid 함수를 적용하여 최종 값 Y1, Y2를 얻는다.

4. 두 개의 입력 값 Y1, Y2에 대하여 weight, bias 값과 함께 WX+b 연산을 진행한다.

5. 출력 값 Y’sigmoid 함수를 적용하여 최종 값 Y’를 얻는다.

6. 최종 값 Y’의 값이 XOR 연산 결과 값과 일치하는지 확인한다.

 

 

 

[Forward propagation]

 

 

위 계산 과정을 다음과 같이 두 개의 유닛으로 구성된 하나의 Neural Network로 나타낼 수 있다.

 

 

 

[Neural Network (NN)]

 

 

Multinomial classification을 이용하여 Neural Network를 더 간단히 나타낼 수 있다.

 

 

 

[How can we learn W1, W2, B1, b2 from training data?]

 

training data로부터 weight, bias 값을 어떻게 학습할 수 있는가? Neural Network에서는 Back propagation 알고리즘을 활용하여 입력 값에 따라 출력 값이 어떻게 변화하는지 알아낸다.

 

 

 

[Back propagation (chain rule)]

 

 

f=wx+b라는 식에서 wxg로 치환하여 f=g+b라는 식을 만든다. 이를 Neural Network로 다음과 같이 나타낼 수 있다.

 

 

1. forward로 학습 데이터에서 w, x, b의 값을 얻어와 그래프에 값을 입력한다.

2. backwardw, x, b f에게 미치는 영향을 각각 미분 값으로 나타낸다. chain rule을 이용해 최종 입력 값에서 최종 출력 값까지의 미분 값을 구할 수 있다.

반응형

'인공지능 > 모두를 위한 딥러닝 시즌 2' 카테고리의 다른 글

Weight Initialization  (0) 2023.08.20
Relu  (0) 2023.08.13
딥러닝의 기본 개념  (0) 2023.08.13
application and tips  (0) 2023.08.06
Softmax Classifier  (0) 2023.08.06