• Neural Machine Translation by Jointly Learning to Align and Translate

    WHY? 기존의 encoder-decoder model들은 인코더의 맨 마지막 벡터의 모든 input정보가 담겨야 해서 긴 문장을 번역하는데 한계가 있었다. WHAT? 맨 마지막 벡터 대신 input벡터들의 hidden layer와 decoder의 이전 hidden layer와의 곱을 점수로 매겨 그 점수로 input벡터들의 hidden layer들을 가중합한 context 벡터를 활용하여 decoder의 다음 hidden layer를 구한다. So 번역을 할 때...


  • Dynamic Topic Model

    WHY? LDA를 통하여 토픽 모델링을 할 때 시간적으로 토픽과 그에 대한 단어 분포가 변화하는 정보를 반영하지 못한다. WHAT? 기존의 LDA의 모델에서 파라미터(토픽과 토픽의 비율 - )를 평균으로 정규분포를 통하여 표본 추출했다고 가정함으로서 시계열적인 latent variable을 가지고 있다고 가정하고 근사 추정을 한다. So LDA보다 시계열적인 정보를 잘 반영한다.


  • GloVe: Global Vectors for Word Representation

    WHY? 기존의 Skipgram과 CBOW는 일정 window 내의 정보만 반영할 뿐 global한 frequency정보는 반영하지 못한다. WHAT? 두 임베딩의 곱을 동시발생 빈도만큼 가중하여 두 단어의 동시발생 빈도에 가까워 지도록 학습하는 GloVe를 제안하였다. So Skipgram과 CBOW보다 여러면에서 좋은 성과를 내었다.


  • node2vec

    WHY? 네트워크의 노드들을 Skipgram과 같이 distributed representation을 통하여 나타내려고 했다. 최근의 이러한 시도들은 노드의 이웃들을 경직되게 정의하여 다양한 네트워크 모양의 패턴을 파악하는데 실패하였다. WHAT? node를 벡터화하는데 node의 이웃을 유연하게 정의한 node2vec을 고안하였다. Random walk 방법을 통하여 노드의 이웃을 샘플링하는데 다시 돌아올 확률(1/p), 이 전 노드와 이어진 노드로 이동할 확률(1), 그리고...


  • Distributed Representations of Words and Phrases and their Compositionality

    WHY? 최근 제시된 Skipgram의 성능을 향상시킬만한 여러 기법을 시행하였다. WHAT? Subsampling of the frequent words: 너무 자주 등장하는 단어들은 임베딩에 거의 영향을 주지 않음으로 일정 Threshold이상의 단어들은 제외한다. Negative Sampling: 단어 벡터가 클 경우 Cross-entropy의 계산량이 많으므로 Hierarchical softmax보다 좋은 Negative sampleing을 사용한다. Noise distribution 를 통하여 k개의 Negative sample을...