7.6 게이트 순환 신경망(GRU)
GRU란?
- 게이트 매커니즘이 적용된 RNN 프레임워크의 한 종류
- LSTM보다 간단한 구조
7.6.1 GRU 구조
GRU 구조
= LSTM에서 사용하는 망각 게이트와 입력 게이트를 하나로 합침 + 업데이트 게이트
특징
· 하나의 게이트 컨트롤러가 망각 게이트와 입력 게이트를 모두 제어함
- 게이트 컨트롤러가 1을 출력 → 망각 게이트 open, 입력 게이트 close
- 게이트 컨트롤러가 0을 출력 → 망각 게이트 close, 입력 게이트 open
⇒ 이전 기억이 저장될 때마다, 단계별 입력은 삭제됨
//망각 게이트 open = 직전 기억을 메모리에 저장
//입력 게이트 open = 현재 메모리에 새로운 정보를 반영함
· 출력 게이트가 없음
→ 전체 상태 벡터가 매 단계마다 출력됨 & 새로운 게이트 컨트롤러(이전 상태의 어느 부분이 출력될지 제어함)가 별도로 존재함
A. 망각 게이트
목적 : 과거 정보를 적당히 초기화 시키기
방법 : 시그모이드 함수를 출력으로 이용해, (0,1) 값을 이전 은닉층에 곱함
= 이전 시점의 은닉층 값에 '현시점의 정보에 대한 가중치'를 곱한 것
B. 업데이트 게이트
과거와 현재 정보의 최신화 비율을 결정하는 역할
시그모이드로 출력된 결과(zt) : 현시점의 정보량을 결정
1에서 zt를 뺀 값(1-zt) : 직전 시점의 은닉층 정보와 곱함
C. 후보군
현시점의 정보에 대한 후보군을 계산함
계산 방법 : 과거 은닉층의 정보를 그대로 이용X, 망각 게이트의 결과를 이용
D. 은닉층 계산
계산 방법 : '업데이트 게이트 결과'와 '후보군 결과'를 결합 → 현시점의 은닉층을 계산
시그모이드 함수의 결과 : 현시점에서 결과에 대한 정보량을 결정
1-시그모이드 함수의 결과 : 과거의 정보량을 결정
📍GRU 전체 내부 구조
7.6.2 GRU 셀 구현
'Etc > Deep Learning' 카테고리의 다른 글
7장 시계열 분석(3) - LSTM (0) | 2021.08.25 |
---|---|
7장 시계열 분석(2) - RNN 구조(계층, 셀) + RNN 셀 구현 (0) | 2021.08.21 |
7장 시계열 분석(1) - 시계열 데이터 분류, 시계열 분석 모델, 순환 신경망(RNN), RNN계층과 셀 (0) | 2021.08.21 |
6장 합성곱 신경망Ⅱ(5) - 이미지 분할을 위한 신경망(U-Net부터 내용추가하기) (0) | 2021.08.17 |
6장 합성곱 신경망(4) - 객체 인식을 위한 신경망(R-CNN, 공간 피라미드 풀링, Fast R-CNN, Faster R-CNN) (0) | 2021.08.12 |