일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Linear Algebra
- SVD
- 벡터간 유사도
- one-hot vector
- word2vec
- 역행렬
- DataFrame
- sigmoid
- 데이터프레임
- 판다스
- 프로그래머를 위한 선형대수
- 신경망 학습
- 밑바닥부터 시작하는 딥러닝2 2장
- RNN
- 선형대수학
- NLP
- Transformer
- 연립일차방정식
- 딥러닝
- pandas
- 자연어처리
- 밑바닥부터 시작하는 딥러닝
- 동시발생 행렬
- word embedding
- PPMI
- Python
- machine translation
- 정칙행렬
- NMT
- ReLU
- Today
- Total
생각하는감자
RNN의 여러가지 형태 본문
RNN
가장 기본적인 구조
RNN의 여러 형태
1) one-to-one
input 길이(개수) = output 길이(개수) = 1
전통적인 구조로, Fully Connected Neural Network와 동일하다.
2) one-to-many
input 길이(개수) = 1, ouput 길이(개수) > 1
Image Captioning에 쓰이는 구조
→ input : image
→ output : 입력된 이미지를 설명하는 문장
Encoder level에서는 Z가 X(이미지)의 정보를 모두 가지고 있어야 하고,
Decoder level 에서는 Z에 있는 정보를 잘 해석해서 단어들의 sequence(=문장)으로 만들어야 한다.
3) many-to-one
input 길이(개수) > 1, output 길이(개수) = 1
Sentiment Classification에 쓰이는 구조
→ input으로 들어온 문장에 있는 감정의 class를 예측하여 output값으로 출력한다.
→ 입력된 문장의 모든 단어를 한 번씩 처리하고 기억한 다음 전체 문장이 가지는 의미는 무엇인지를 계산하여 하나의 class를 예측하는 것이 목표로 하는 task이다. 예를 들어, 감정을 very negative, negative, neutral, positive, very positive의 5가지의 class 중 하나로 예측할 수 있는 것은 문장의 전체적인 맥락을 이해했기 때문에 예측 가능한 것이다.
4) many-to-many
input의 길이(개수) ≠ ouput의 길이(개수)
→ 그 길이가 서로 같을 수도 있지만 같지 않을 수도 있다
Machne Translation에 쓰이는 구조
→ input으로 들어가는 언어를 source language라고 하고, 출력되는 언어를 target language라고 한다.
간단히 그 구조를 살펴보자면 아래와 같다.
해당 모델의 source language는 영어이고, target language는 한국어이다.
Encoder의 역할은 source language로 적힌 입력 문장의 정보를 요약하는 것이고, Decoder의 역할은 encoder에서 정보를 요약한 latent context vector을 target 언어 시퀀스로 적절하게 자연스러운 문장으로 생성하는 것이다. 언어를 바꾼다는 것은 단순히 단어를 바꾸는 것이 아니다. Source language와 target language의 언어적 차이가 존재하기 때문에 주어진 문장을 이해하고 target 언어의 문법과 단어, 문맥 등을 파악하고 적절히 번역해야 하기 때문에 매우 어려운 task이다.
5) many-to-many
input의 길이(개수) = output의 길이(개수)
Named-entity Recognition(NER)에 사용되는 구조
→ 정보추출의 sub task로도 이해할 수 있는데, 구조화되지 않은 text에서 그 객체가 어디에 있는지를 찾은 다음 그 객체를 사전에 정의된 class로 정의하는 task이다.
→ 예를 들어 장소나 기관 등의 class로 정의할 수 있을 것이다. 가령 "서울"은 장소 정보로 사용될 수도 있지만 "서울 시청"과 같은 단어에서는 기관을 의미한다.
'NLP' 카테고리의 다른 글
seq2seq with Attention (0) | 2023.01.12 |
---|---|
LSTM, GRU (0) | 2023.01.07 |
Word Embedding (3) - GloVe (0) | 2023.01.05 |
Word Embedding (2) - Word2Vec (0) | 2023.01.05 |
Word Embedding (1) - Bag of Words (0) | 2023.01.04 |