본문 바로가기

전체 글101

RNN을 사용한 문장 생성 언어 모델을 사용한 문장 생성 RNN을 사용한 문장 생성의 순서 * 위 그림은 LSTM을 사용한 언어모델을 도식화 한 것이다. * 만약 위 모델을 사용하여 문장을 생성한다고 해보자. ' I '라는 단어를 입력하면 모델은 다음에 올 단어의 확률분포를 출력한다. * 이 때 우리는 다음에 올 단어를 선택하는 2가지 선택에 마주한다. 1) 결정적(deterministic) 방법 - 확률이 가장 높은 단어를 선택하는 방법 - 가장 확률이 높은 단어를 선택하기 때문에 동일한 input에 대해 항상 동일한 output을 출력한다. 2) 확률적(probabilistic) 방법 - 확률이 가장 높은 단어를 무조건 선택하는 것이 아닌, 확률분포대로 sampling하는 것 - 동일한 input에 대해 다른 output이 출.. 2022. 2. 18.
1.2 Row Reduction and Echelon form Exercise * 선형 대수학을 정리하는 도중 자꾸 맘에 걸리는게 연습문제를 충분히 풀어보지 못 하는 것이었다. 그래서 연습문제 풀이 포스팅을 지속적으로 올려보려고 한다. * 다만, 단순 계산에 대한 구현은 python으로 할 것이다. row reduction을 통해 echelon form을 생성하는 함수는 numpy에서 제공하지 않는다. 그대신 sympy에서 해당 함수를 제공하는 것을 확인하였다. 이번 포스팅은 sympy를 주로 활용할 것이다. * 모든 문제를 다 풀어보지는 않고 출제의도가 중복된다고 판단하는 문제는 과감히 건너 뛰겠다. * 혹시라도 포스팅을 보시는 분들께서 오류를 발견하면 댓글로 달아주시길 바랍니다. Exercise 1) * echelon form : d - leading entry가 속한 colu.. 2022. 2. 15.
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.