RNN (= Recurrent Neural Network)
◎ 가장 기본적인 Sequence 모델
◎ many-to-one / many-to-many 등 다양하게 응용 가능
수식
◎ 현재 timestamp $t$ 에서의 은닉층 메모리 cell 입력
→ $x_{t}\ and\ h_{t-1}$
→ $x_{t}$ : 현재 timestamp $t$ 에서의 input vector
→ $h_{t-1}$ : 이전 timestamp $t-1$ 에서의 hidden vector
◎ 은닉층(= hidden layer) 계산 수식
→ $h_{t} = tanh(W_{x} x_{t} + W_{h}h_{t−1} + b)$
◎ 출력층(= output layer) 계산 수식
→ $y_{t} = f(W_{y}h_{t} + b)$
→ $f$ 는 비선형 활성화함수
→ 주어진 Task에 맞는 $f$ 선택 (ex. 이진분류 : sigmoid)
Deep RNN (= 깊은 순환 신경망)
◎ 아래와 같이 은닉층을 깊게 쌓는 것도 가능하다.
Bidirectional RNN (= 양방향 순환 신경망)
◎ 위와 같이 timestamp를 양방향으로 학습하는 것도 가능하다.
→ 강점 : 미래 시점의 정보를 예측에 활용할 수 있다.
ex) "운동을 열심히 하는 것은 [ ]을 늘리는데 효과적이다." 라는 문장에서 가운데 빈 칸에 들어갈 단어를 예측할 때,
"운동을 열심히 하는 것은" 뿐만 아니라, "을 늘리는데 효과적이다." 라는 정보도 예측에 활용할 수 있다.
◎ References
'Data Science' 카테고리의 다른 글
통계 기초 개념 (01) (0) | 2024.03.17 |
---|---|
CRM 마케팅 이해하기 (인프런) (0) | 2024.01.20 |
FastText (1) | 2023.10.08 |
GloVe (0) | 2023.10.07 |
Word2Vec (0) | 2023.10.06 |