20211008
순환신경망
RNN
Recurrent neural network
보통의 신경망 알고리즘으로는 데이터의 맥락을 학습시킬 수 없습니다.
그래서 이런 단점을 해결하고자 Recurrent neural network알고리즘이 개발되였다.
순환한다는 의미는 신경망의 뉴런에서 나온 정보가 다시 재사용되도록 순환되기 때문입니다
어떤 시간 t의 뉴런에는 그 이전 시간 t-1 에 생성된 뉴런의 상태가 주입되어 새로운 상태가 만들어지고 , 그 데이터는 다시 이후 시간 (t+1) 에 입력되는 구조입니다.
순환 신경망에서는 종종 이런 뉴런을 메모리 셀 memory cell 혹은 셀 cell이라고 부릅니다.
셀에서 만들어지는 상태 데이터는 보통 은닉상태 hidden state라고 부릅니다.
기본적인 순환 신경망은 단기기억 short-term memory을 저장할 수 있다고 표현합니다.
멀리 떨어진 데이터 간의 연관 정보는 파악하기 어렵습니다.
220106
순환 신경망은 몇 단계 전으로 거슬러 올라가 데이터를 반영할 수 있는 신경망입니다.
시계열 데이터 등의 맥락을 고려해 학습할 수 있으므로 음성 같은 파형 데이터 나 자연어 등의 학습에 이용합니다.
순환 신경망은 합성곱 신경망과 달리 가중치에 대응하는 선형 원소가 두 종류(가중치 W와 변환 경로 H)존재합니다.
중간 계층이 반환 경로 H를 통해 반복적으로 걸려 있는 것이 순환 신경망의 특징입니다.
순환 신경망의 학습은 확률적 경사 항강법을 이용하며 실시간 순환 학습 Real-Time Recurrent Learning RTRL이나 시간 기반 오차역전파 BackPrppagation Through Time BPTT로 가중치를 업데이트합니다.
시간 기반 오차역전파는 단계 수를 거슬러 올라가며 업데이트 할 수 있습니다.
그러나 너무 먼 단계를 거슬러 올라가면 기울기 소실 문제가 발생해 학습이 어려워집니다.
출처 :
텐서플로 첫걸음
처음 배우는 인공지능
'개념 정리' 카테고리의 다른 글
혼잡도_20211011 (0) | 2021.10.20 |
---|---|
LSTM_20211007 (0) | 2021.10.20 |
Adam_20211005 (0) | 2021.10.13 |
오버피팅_20211004 (0) | 2021.10.13 |
드롭아웃_20211003 (0) | 2021.10.13 |