작성자: UNIST 산업공학과 김건우
Contents
Unit 01. word2vec (review)
Unit 02. Optimization, Negative Sampling
Unit 03. Word prediction methods
Unit 04. GloVe
Unit 05. How to evaluate word vectors?
Unit 06. Word senses and word sense ambiguity
CBOW ⇒ input: context vector / output: target vector
skip-gram ⇒ input: target vector / output: context vector
- word2vec problem: high cost
- Denominator ('normalizing factor' which computes over the entire vocab') is too computationally expensive (skip-gram)
objective function (maximize)
change it to negative log -> objective function (minimize)
Problem
- Increase in size with vocab
- Very high dimensional
- Subsequent classification models have sparsity issue
Solution
- Dimensionality Reduction on co-occurrence matrix
- Scaling counts in the cell
Min(X,t) with t ≈100
Ramped Window
Glove uses both count based method and direct method
- Extrinsic evaluation
- Evaluation on a real task
- Take a long time to compute accuracy
- Unclear if the subsystem is the problem or its interaction or ther
- Intrinsic evaluation
- Evalutaion on a specific subtask
- Fast to compute
- Helps to understand that system
Named entity recognition: finding a person, organization or location
Word Analogies task - syntactic / semantic
correlation evaluation
Most words have lots of meanings
Example: Pike
Improving Word Representation Via Global Context And Multiple Word Prototypes (Huang et al. 2012)
1) Fix window size, then gather occurrence data
2) Calculate context words weighted average word on each context word
3) Cluster context representation by using k-means clustering
4) Connect each word on allocated cluster and re-labelling then, train word representation on its cluster
Linear Algebraic Structure of Word Senses, with Applications to Polysemy
Create new word vector by linear combination with weight based on weighed frequency and existing word vector.
Reference
http://sujayskumar.blogspot.com/2017/02/word-embedding-techniques.html?m=1
http://solarisailab.com/archives/959
https://www.baeldung.com/cs/nlps-word2vec-negative-sampling
https://wikidocs.net/22660
https://velog.io/@tobigs-text1415/Lecture-2-Word-Vectors-and-Word-Senses
https://web.stanford.edu/class/archive/cs/cs224n/cs224n.1194/slides/cs224n-2019-lecture02-wordvecs2.pdf
https://www.youtube.com/watch?v=8wG0sJm1EaU&list=PLetSlH8YjIfVdobI2IkAQnNTb1Bt5Ji9U&index=2
투빅스 16기 주지훈
투빅스 15기 김현지
Negative Sampling
Word Prediction Methods
GloVe
Word vector 평가 방법
좋은 자료와 발표 감사합니다! 특히 GloVe의 목적함수를 하나하나 나누어 자세히 수식적으로 유도해주셔서 해당 모델을 이해하는데 큰 도움이 되었습니다~
투빅스 16기 이승주
좋은 강의 감사합니다!
기존에 알고 있던 word2vec과 SGD방법에 이어서 word2vec의 문제점을 보완하기 위한 negative sampling에 관해 알게되었습니다. Negative sampling은 같은 맥락에 있을때 유사도를 최대로 하며, 다른 맥락에 있을때는 유사도는 최소로 합니다.
단어를 prediction하는 방법으로는 count based와 direct으로 나뉩니다. Count based는 단어의 유사성만 파악하여 단어간의 관계성을 알지 못합니다. Direct의 경우 단어간의 패턴을 찾아 해결할 수 있습니다.
Glove model은 conut based의 LSA(Latent Semantic Analysis)와 예측 기반의 Word2Vec의 단점을 지적하며 이를 보완한다는 목적으로 나왔고, 이에 대한 성능 수식들을 살펴보왔습니다. 다소 복잡한 목적함수를 이해하기 힘들었는데 그 부분을 잘 풀어서 설명해 주셔서 감사합니다
투빅스 14기 박지은
이번 강의에서는 저번에 배운 word2vec과 stochstic gradient descent를 복습하고, 새로운 최적화 기법으로 negative sampling에 대하여 배웠습니다. Negative sampling 기법은 word2vec의 denominator 연산량이 많다는 단점을 보완하기 위하여 같은 맥락에 있는 단어들의 유사도를 최대화하고, 다른 맥락에서 y가 발생할 때의 유사도를 최소화하는 방법입니다. 단어 임베딩을 찾기 위한 방법으로 크게 matrix factorization을 활용하는 count-based 방법론과, window에 기반하여 학습하는 direct 방법론이 있습니다. 이들은 각각 전체 맥락 단위로 유사도를 파악하는 것과, 작은 단위에서 단어 임베딩을 학습하는 것에 유효하며, 서로 반대는 취약하다는 단점이 있는데 이를 보완하기 위해 GloVe가 제안되었습니다. GloVe는 count-based와 direct 방법론을 co-occurence matrix와 단어 간 유사도를 모두 고려하는 모델로, 목적함수는 두 단어벡터의 내적이 말뭉치 전체에서의 동시 등장확률 로그값이 되도록 정의됩니다. GloVe 목적함수의 경우 처음에는 복잡하게 느껴졌는데 하나하나 이유와 과정을 설명해주셔서 이해하는 데에 도움이 되었습니다. 감사합니다!