부스트캠프 ai tech 3주차에 배운 내용을 정리하는 글입니다.
Long Short Term Memory(LSTM)
![](https://velog.velcdn.com/images/jswon/post/72dc1b75-b4d7-4431-96e6-bb52ada0f93d/image.png)
기본 RNN
![](https://velog.velcdn.com/images/jswon/post/f1d93f62-3194-4406-8691-f98af059ef32/image.png)
LSTM
LSTM 내부
![](https://velog.velcdn.com/images/jswon/post/8a82a043-6c69-4d64-a155-cfb79cb5247f/image.png)
previous cell state: 네트워크 밖으로 나가지 않고 0부터 t까지의 정보를 summarize해줌(컨베이어 벨트)
gate: 컨베이어 벨트에 올리고, 빼고, 조작함
![](https://velog.velcdn.com/images/jswon/post/5485c41a-5b9d-4887-8d3d-103a58c3c2fe/image.png)
![](https://velog.velcdn.com/images/jswon/post/056f4494-d4f1-471b-9598-d145780935e2/image.png)
- previous cell state, previous hidden state, input 이렇게 3개가 뉴럴 네트워크로 들어옴
- 이전 cell state를 얼마나 지울지 정함(forget gate)
- previous hidden state와 input을 통해 어떤 값을 올릴지 Ct~(C tilde, candidate)를 정함(input gate)
- update된 cell state와 Ct~를 조합해서 새로운 cell state를 만듦(update cell)
- 새로운 cell state의 정보를 얼마나 밖으로 빼낼지 정해서 최종적인 출력값이 나옴(output gate)
Gated Recurrent Unit
![](https://velog.velcdn.com/images/jswon/post/023001f1-4695-423e-9156-75ad06195410/image.png)
- gate가 두 개임(reset gate, update gate)
- cell state가 없고 hidden state만 있음 → output gate가 필요 없어짐