- Axis
- sinchon icpc
- 패스트캠퍼스 #포트폴리오 #직장인자기계발 #환급챌린지 #포트폴리오챌린지 #패스트캠퍼스후기 #초격차패키지 #오공완
- SUAPC
- cs-theory
- probability theory
- maths
- dims
- math
- CP
- Counting
- Computer science
- argmax
- Dim
- pytorch
- #패스트캠퍼스 #패캠챌린지 #수강료0원챌린지 #패캠챌린지 #직장인인강 #직장인자기계발 #패캠인강후기 #패스트캠퍼스후기 #환급챌린지 #본인이선택한강의명
- probability
- laplace
- randn
- Discrete
Piico의 일상
Day 30: 9-4, 9-5, 9-6 Seq2seq의 개념 및 문제점 본문
오늘 공부한 내용은 Ch.9-4 ~ 6입니다:
- 9-4 Seq2seq 개념
- 9-5 Seq2seq의 문제점 및 해결방안들
- 마무리
1. 9-4. Seq2seq의 개념 및 문제점
어제 배운 "many to many"문제를 해결할 때 쓰는 RNN의 종류인 seq2seq에 대해 더 알아봐요.
"Many to many"중에 특히 언어(번역)를 다룰 때에는 seq2seq을 쓴다고 배웠는데요, 이 seq2seq은 RNN의 고질적인 문제를 밝힙니다. 일단 마지막 단어에 비중을 많이 둔다는 문제가 있습니다. 마지막 단어에 비중을 많이 둔다는 것은 거꾸로 보면 앞에 있는 단어들을 별로 안 본다는 뜻이기도 해서 치명적인 약점입니다. 이 또한 vanishing gradient problem과 비슷한 문제를 일으키는데 구조적인 문제라 activation으로 쉽게 해결할 수 있는 부분이 아닙니다. 이 마지막 단어의 weights and biases를 가지고 있는 node를 context vector라고 부르는데요, 이 context vector는 한국어(encoder)에서 영어(decoder)로 번역할 때 그 중간지점에 있는 node입니다.
seq2seq은 한국어에서 영어로 바꾸는 파트 (encoder) + 영어에서 앞 단어가 나왔을 때 뒤에 무엇이 나와야 하는지 알려주는 decoder로 분류됩니다. 이 encoder의 끝부분인 context vector에서 문제가 일어나고 있습니다.
하단에 노트를 보면 알지만 gradient를 보면 항상 마지막 node만 gradient이 높고 나머지는 gradient가 낮습니다. 그 뜻인 "나는 사과를 좋아합니다"라는 문장에서 "좋아합니다"라는 부분만 보고 나머지 "나는"하고 "사과를"을 거의 안 보겠다는 뜻입니다. 뒷단어에 bias가 있으니 문법하고 맞지 않습니다.
2. 9-5. Seq2seq의 해결방안들
연구자들은 처음에 문제를 발견하고 나서는 이 RNN을 고치려 했습니다. LSTM + GRU도 써보고, RNN + attention, bidirectional RNN도 했지만 transformer라는 구조를 발견하면서 RNN세계는 고질적인 문제들을 한방에 해결했죠.
RNN -> RNN + attention -> Transformer
여기서 attention은 단어와 단어사이의 과계를 확보하는 과정입니다. 문장을 갖고 와서 단어마다의 관계를 미리 파악하면 사실은 vanishing gradient효과를 없앨 수 있어 그런 방법이 잘 작동하는 것이었습니다. 거기다 transformer는 끝에 비중을 높이는 부분을 없애고 attention위주로 봤기 때문에 더욱 좋은 효과를 넵니다.
'딥러닝 (Deep Learning)' 카테고리의 다른 글
PyTorch confusables 대잔치 ep.2 [pytorch squeeze/unsqueeze] (0) | 2024.06.22 |
---|---|
PyTorch confusables 대잔치 ep.1 [pytorch dim] (0) | 2024.05.09 |
Day 29: Ch. 9-4 RNN유형과 seq2seq (0) | 2023.03.20 |
Day 28: 9-1, 9-2 RNN, RNN backpropagation 그리고 구조적 한계 (0) | 2023.03.19 |
Day 27: 8-8 Beautiful Insights for CNN (CNN 마무리) (0) | 2023.03.19 |