본문 바로가기

Deep Learning71

어텐션(Attention) 어텐션의 구조 seq2seq의 문제점 * seq2seq의 encoder는 고정 길이 벡터를(hidden state vector) decoder에 넘겨주게 된다. 이 때 hidden state vector로는 문장의 길이와 상관 없이 특정 길이의 벡터만 사용해야 된다. 이는 문장 정보를 vector에 충분히 담지 못하게 되는 문제를 야기한다. Encoder 개선 * 마지막 time step의 hidden state vector만 decoder에 넘겨주는 것이 아니라 매 time step의 hidden state vector를 모두 decoder에게 넘겨주면 된다. 이 때 각 time step에서 출력된 vector들은 하나의 행렬로서 decoder에게 전달된다. 이를 통해 고정길이 벡터라는 제한을 넘어설 .. 2022. 2. 18.
RNN을 사용한 문장 생성 언어 모델을 사용한 문장 생성 RNN을 사용한 문장 생성의 순서 * 위 그림은 LSTM을 사용한 언어모델을 도식화 한 것이다. * 만약 위 모델을 사용하여 문장을 생성한다고 해보자. ' I '라는 단어를 입력하면 모델은 다음에 올 단어의 확률분포를 출력한다. * 이 때 우리는 다음에 올 단어를 선택하는 2가지 선택에 마주한다. 1) 결정적(deterministic) 방법 - 확률이 가장 높은 단어를 선택하는 방법 - 가장 확률이 높은 단어를 선택하기 때문에 동일한 input에 대해 항상 동일한 output을 출력한다. 2) 확률적(probabilistic) 방법 - 확률이 가장 높은 단어를 무조건 선택하는 것이 아닌, 확률분포대로 sampling하는 것 - 동일한 input에 대해 다른 output이 출.. 2022. 2. 18.
GloVe : Global Vectors for Word Representation Introduction * 기존의 word vector를 학습하는 모델은 두 가지이다. 1) LSA 2) skip-gram * LSA는 통계학적 정보를 최대로 이용하지만, 단어 유추 task에서는 성능이 좋지 않음. * skip-gram은 단어 유추에서는 성능이 좋지만, 통계학적 정보를 활용하지 못한다. The GloVe Model * word occurence 통계에서 어떻게 의미가 생성되는지, 결과 벡터가 어떻게 단어의 뜻을 표현하는지는 알 수 없었다. 이를 해결하기 위해 GloVe가 만들어졌다. Notation * word-word co-occurrence matrix를 X라고 하자. * matrix $X \in \mathbb R^{V \times V}$ 이다. vocabulary의 크기만큼의 si.. 2022. 2. 12.
Indexing by Latent Semantic Analysis(LSA) Introduction * 검색 기법의 근본적 문제 : 유저들은 conceptual content에 기초해 검색 but concept를 표현하는 단어가 많고 단어의 다의성 때문에 쿼리가 제대로 작동하지 않음 ex) conceptual content = naver일 때 naver를 검색하기 위해 'it회사', '초록창', '검색엔진' 등 을 사용할 수 있음. 여기서 '초록창'은 naver를 지칭하는 은어이지만, 실제로 초록색 창문을 의미 할 수도 있음. * 문제의 해결법 : data에 latent sematic structure가 잠재되어 있다고 가정하고 해당 structure를 찾아 indexing과 검색에 이용. latent semantic structure를 찾기 위해서 SVD(Singular Val.. 2022. 2. 11.