๐ก ์ฃผ์ : Word vectors and Word Senses
๐ ํต์ฌ
- Task : ๋จ์ด ์๋ฒ ๋ฉ - Word2vec (2๊ฐ) , Glove (3๊ฐ)
๐ ๋ชฉ์ฐจ ์ ๋ฆฌ
1. ์ต์ ํ
- Gradient Descent
- Stochastic Gradient Descent
- ํ์ต ๋ฐ์ดํฐ ์ค์์ ๋๋คํ๊ฒ ์ํ์ ํ๊ฐ์ฉ ๋ฝ์ gradient ๋ฅผ ๊ณ์ฐํ ํ ์ ๋ฐ์ดํธ ํ๋ ๋ฐฉ์
- ๊ณ์ฐ๋์ด ์ ์ & ํ์ต์ด ๋น ๋ฆ & local min ์ ๋น ์ง์ง ์๊ณ ํ์ต๋ ์ ์์
- word vector ๊ฐ sparse ํด์ง → ๋ถํ์ํ ๊ณ์ฐ ๋ฐ์
2. Word2vec ์ ๊ณ์ฐ ํจ์จ์ฑ ๋์ด๊ธฐ (SGD ์ธ)
- Negative Sampling
- ๋ฑ์ฅ ๋ฐฐ๊ฒฝ : softmax ๋ฅผ ์ถ๋ ฅ์ธต์์ ๊ณ์ฐํ ๋, ์ ์ฒด ๋จ์ด๋ฅผ ๋์์ผ๋ก ๋ฒกํฐ ๋ด์ ๊ณผ exp ๊ณ์ฐ์ ์ทจํด์ฃผ์ด์ผ ํจ → ์ฐ์ฐ๋ ์ฆ๊ฐ
- ํด๊ฒฐ ์์ด๋์ด : parameter ๋ฅผ ๊ฐฑ์ ์ํฌ negative sample ์ ๋ฝ๋ ๊ฒ (์ฆ, ์ผ๋ถ ๋จ์ด๋ง์ ๊ฐ์ง๊ณ ๊ณ์ฐ) โ ๋ง์ง๋ง ๋จ๊ณ๋ฅผ ์ด์ง๋ถ๋ฅ binary logistic regression ๋ฌธ์ ๋ก ๋ณํ ( ์ฃผ๋ณ ๋จ์ด๋ค์ ๊ธ์ - positive , ๋๋ค์ผ๋ก ์ํ๋ง ๋ ๋จ์ด๋ค์ ๋ถ์ - negative ๋ก ๋ ์ด๋ธ๋ง )
-
- ๐ Negative sample : ์ฌ์ฉ์๊ฐ ์ง์ ํ ์๋์ฐ ์ฌ์ด์ฆ ๋ด์ ๋ฑ์ฅํ์ง ์๋ ๋จ์ด
- Subsampling
- is, the, a ์ ๊ฐ์ด ์์ฃผ ๋ฑ์ฅํ๋ ๋จ์ด๋ ์ ๊ฒ ๋ฑ์ฅํ๋ ๋จ์ด๋ค๋ณด๋ค ์ ๋ณด์ ๊ฐ์น๊ฐ ๋จ์ด์ง๋ฏ๋ก, ๋ง๋ญ์น์ ์์ฃผ ๋ฑ์ฅํ๋ ๋จ์ด๋ ํ์ต๋์ ํ๋ฅ ์ ์ผ๋ก ๊ฐ์์ํค๋ ๊ธฐ๋ฒ
- f(wi) : (ํด๋น ๋จ์ด ๋น๋/๋จ์ด ์ ์ฒด ์)
- Hirerachical softmax
3. Word prediction Methods
- Count based vs Direct Prediction
4. Glove : global vectors for word representation
โญ Direct Prediction๊ณผ count based ๋ฐฉ์์ ํฉ์น ์๋ ๋ฒกํฐํ ๋ฐฉ์
โญ co-occurence Matrix
๐จ ์ ์ฌํ ์ฐ์/์๋ฏธ๋ฅผ ๋ณด์ ํ ๋จ์ด๋ค๋ผ๋ฆฌ๋ ๋น์ทํ ๋ฒกํฐ ๊ตฌ์ฑ์ ๋ณด์ ํ๊ฒ ๋๋ค. ๋น์ทํ ๋จ์ด๋ค์ ๋น์ทํ ํ๊ฒฝ/๋ฌธ๋งฅ์์ ์ฌ์ฉ๋๋ฏ๋ก ๋น์ทํ ๋จ์ด๋ค๊ณผ ์ธ์ ํ๊ฒ ๋๋ค.
๐จ ๊ทธ๋ฌ๋ sparse ํ๋ ฌ์ ํ์ฑํ๊ฒ ๋๋ + ๋จ์ด์ ์๊ฐ ์ฆ๊ฐํ ์๋ก ํ๋ ฌ ์ฐจ์์ด ์ปค์ง๋ ๋จ์ ์ด ์กด์ฌ → SVD ์ฐจ์์ถ์
๐จ ๋์ ๋์๋ฑ์ฅ count ๋ฅผ ๊ฐ์ง๋ ํ๋ ฌ ๊ฐ์ ์ค์ฌ์ผ๋ก ์ฐจ์์ ์ถ์ํ๋ค.
โญ co-occurence probabilities
- P( k | i ) : ๋์๋ฑ์ฅ ํ๋ ฌ๋ก๋ถํฐ ํน์ ๋จ์ด i ์ ์ ์ฒด ๋ฑ์ฅ ํ์๋ฅผ ์นด์ดํธํ๊ณ , ํน์ ๋จ์ด i ๊ฐ ๋ฑ์ฅํ์ ๋ ์ด๋ค ๋จ์ด k ๊ฐ ๋ฑ์ฅํ ํ์๋ฅผ ์นด์ดํธํ์ฌ ๊ณ์ฐํ ์กฐ๊ฑด๋ถ ํ๋ฅ
โญ objective function
- ์๋ฒ ๋ฉ๋ ๋ ๋จ์ด๋ฒกํฐ ์ค์ฌ๋จ์ด์ ์ฃผ๋ณ๋จ์ด ๋ฒกํฐ์ ๋ด์ ์ด corpus ์ ์ฒด์์์ ๋์์ ๋ฑ์ฅํ๋ ํ๋ฅ ์ ๋ก๊ทธ๊ฐ์ด ๋๋๋ก ์๋ฒ ๋ฉ ๋ฒกํฐ๋ฅผ ๋ง๋ ๋ค.
โพ Wi : ์ค์ฌ๋จ์ด i ์ ์๋ฒ ๋ฉ ๋ฒกํฐ
โพ Wj : ์ฃผ๋ณ ๋จ์ด k ์ ์๋ฒ ๋ฉ ๋ฒกํฐ
โพ P(i|j) : ์ค์ฌ๋จ์ด i ๊ฐ ๋ฑ์ฅํ์ ๋ ์๋์ฐ ๋ด ์ฃผ๋ณ ๋จ์ด j ๊ฐ ๋ฑ์ฅํ ํ๋ฅ
- ๋ชจ๋ธ ๋ฑ์ฅ motivation
- ๋ชฉ์ ํจ์ ์ ๋
- ๋ค๋ฅธ ๋ชจ๋ธ๊ณผ์ ๊ด๊ณ
- ๊ณ์ฐ ๋ณต์ก๋
โญ ์ฅ๋จ์
- ๋์๋ฑ์ฅ ํ๋ฅ ์ ๊ฐ๋ ์ ๋์ → Global statistical information ์ ํจ์จ์ ์ธ ์ฌ์ฉ์ด ๊ฐ๋ฅ , ๊ทธ๋ฌ๋ ๋ฉ๋ชจ๋ฆฌ cost ๋ ๋์
- ๋น ๋ฅธ ํ์ต์๋, Big, Small corpus ์ ๋ํด์ ์ฑ๋ฅ์ด ์ข์
- Polysemous word (๋ค์์ด) ๋ฌธ์ ํด๊ฒฐ X
โญ Hyperparameter
from glove import Corpus, Glove
corpus = Corpus()
# ํ๋ จ ๋ฐ์ดํฐ๋ก๋ถํฐ Glove ์์ ์ฌ์ฉํ ๋์ ๋ฑ์ฅ ํ๋ ฌ ์์ฑ
corpus.fit(result, window = 5)
glove = Glove(no_components = 30, learning_rate=0.05, alpha = 0.75, max_count=100, max_loss = 10.0, random_state = None)
Parameter | ๋ด์ฉ |
no_components | word vector ์ ์ฐจ์ ํฌ๊ธฐ ์ค์ |
learning_rate | ํ์ต์๋ ์ค์ (SGD estimation ์ ์ฌ์ฉ) |
Alpha, max_count | weight ๋ถ์ฌํ ๋ ์ฌ์ฉ |
random_state | ์ต์ ํ์ ์ด๊ธฐํ ๋ ์ฌ์ฉ๋๋ ์ํ |
โญ ์๊ฐํ
5. word vectors ํ๊ฐ๋ฐฉ์
- Extrinsic vs Intrinsic
โญ intrinsic : ์ฌ๋ฐ๋ฅด๊ฒ task ๋ฅผ ํด๊ฒฐํ๋์ง ํ์ธํ๋ ๋ฐฉ๋ฒ. word vector analogy
โญ Extrinsic : ์ค์ ์์คํ ์์ ์ฌ์ฉํด์ ์ฑ๋ฅ์ ํ์ธํ๋ ๋ฐฉ๋ฒ. Named Entity Recognition (NER)
→ ๋ ํ๊ฐ๋ฐฉ์ ๋ชจ๋ Glove ๋ชจ๋ธ์์ ๊ฝค ์ข์ ์ฑ๋ฅ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์
6. Word senses and Word sense ambiguity
- ๋์ผํ ๋จ์ด์ ์๋ก ๋ค๋ฅธ ์๋ฏธ๋ฅผ ํํํ๋ ๋ฐฉ๋ฒ
- Multiple sensors for a word (clustering - re labeling)
- Weighted average
๐ ์ค์ต์ฝ๋
- basic : https://wikidocs.net/22885
- LSTM, Glove ๋ฅผ ํ์ฉํ ๊ฐ์ ๋ถ์ _ IMDB ์ํ ๋ฐ์ดํฐ : https://ichi.pro/ko/lstm-mich-glove-imbeding-eul-sayonghan-gamjeong-bunseog-168372289928846
๐ kaggle ์ฝ๋์์ glove ๋ฅผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ์ง ์๊ณ ์๋์ ํํ๋ก ๊ฐ์ ธ์ค๋ ๋ฐฉ์ ์ดํดํด๋ณด๊ธฐ : https://lsjsj92.tistory.com/455
glove_dir = '../input/glove-global-vectors-for-word-representation/'
embedding_index = {}
f = open(os.path.join(glove_dir,'glove.6B.50d.txt'))
for line in f:
values = line.split()
word = values[0]
coefs = np.asarray(values[1:],dtype='float32')
embedding_index[word] = coefs
f.close()
print('found word vecs: ',len(embedding_index))
'1๏ธโฃ AIโขDS > ๐ NLP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[cs224n] 6๊ฐ ๋ด์ฉ ์ ๋ฆฌ (0) | 2022.03.24 |
---|---|
[cs224n] 5๊ฐ ๋ด์ฉ ์ ๋ฆฌ (0) | 2022.03.22 |
[cs224n] 4๊ฐ ๋ด์ฉ ์ ๋ฆฌ (0) | 2022.03.18 |
NLP deep learning (0) | 2022.03.15 |
[cs224n] 3๊ฐ ๋ด์ฉ ์ ๋ฆฌ (0) | 2022.03.14 |
๋๊ธ