goormNLP [Neural Network]
Auspice by Goorm, Manage by DAVIAN @ KAIST
Lecture: Neural Network
2022-02-10
다음주에 배울 DeepLearning에 앞서, ML 마지막 수업에서는 Neural Network에 대한 공부를 진행하였다.
초기에는 ML이 DL보다 더 성능이 좋았지만 빅데이터 시대가 오면서 점점 DL의 능력이 입증되고 있는 추세이다.
GPU도 발전함에 따라 DL의 성능 및 학습은 날로 발전하고 있다.
DL의 분야는 Game AI, Face Detection & Recognition, Object Detection & Recognition, Image Captioning, Machine Translation 등이 있다.
이러한 DL에 들어가기 전에 DL의 베이스인 Neural Network에 대해 리뷰하고자 한다.
Single & Multi Layer Perceptron
Single Layer Perceptron은 이전 Practice에서 layer가 1개인 진행한 모델(Logistic Regression)과 유사하다.
위의 사진처럼 레이어가 한개인 퍼셉트론을 의미하며 AND, OR gate과 같은 리니어한 경우에 사용이 가능하다.
하지만 Single Layer Perceptron으로는 XOR gate 같은 리니어하지않은 경우에는 사용이 불가능하다.
그러므로 아래 사진과 같이 two single layer(AND, OR) perceptron을 이용하면 리니어하지않기 때문에 XOR gate 문제를 해결할 수 있다.
Neural Network Architecture
과거에 딥러닝을 접했을때 모듈 별로 어떻게 구분하는지? 고민이 많았기에 위 PPT를 첨부한다.
Forward Propagation
- Forward Propagation은 신경망의 입력층부터 출력층까지 순차적으로 변수들을 계산하고 저장하는 것을 말한다.
Backpropagation using Chain Rule
-
Backpropagation은 출력층부터 반대 방향으로 순차적으로 편미분을 수행해가면서 변수들을 계산하는 것을 말한다.
-
역 방향으로 cost function에 대한 편미분을 구하고 얻은 편미분 값을 이용해 w와 b 값들을 얻을 수 있고 다시 Forward Propagation을 진행하는 것을 반복하면서 오차를 낮출 수 있다.
Chain Rule
- x라는 변수가 바로 f로 가는게 아니라, x라는 변수가 q = x + y 라는 함수를 거치고, 그 함수가 f = q*z 로 이어진다. 즉, x 가 변하면 -> q 가 변하고 -> f 가 변하는 것이다. 따라서 f를 미분할 때도, x가 변함에 따라 q가 변하는 것과 그렇게 바뀐 q가 변함에 따라 f가 변함을 같이 고려해 주어야 하므로 다음과 같은 식이 나온다. 이게 바로 Chain rule(연쇄법칙)이다.
댓글남기기