cleanUrl: "/paper/word2vec"
๋
ผ๋ฌธ : Efficient Estimation Of Word Representations In Vector Space (Word2Vec)
์ ์ : Tomas Mikolov, Kai Chen, Greg Corrado, Jeffrey Dean
๋
ผ๋ฌธ ์ ์ ๋ฐฐ๊ฒฝIntroduction๊ธฐ์กด์ ๋ชจ๋ธ๋ค1. N-gram Language Model2. NNLM3. RNNLMModel ArchitecturesDistributed representationComputational ComplexityContinuous Bag Of Words Continuous Skip-gram Model๋ค์ ๊ธ ์ฝ๊ธฐ
๋ ผ๋ฌธ ์ ์ ๋ฐฐ๊ฒฝ
๋ณธ ๋
ผ๋ฌธ์ ์์ฐ์ด์ฒ๋ฆฌ ๋ถ์ผ์์ Word2Vec ์ด๋ผ๋ ๊ธฐ๋ฒ์ผ๋ก ์๋ ค์ง ๋ชจ๋ธ์ ์ ์ํ ์ ๋ช
ํ ๋
ผ๋ฌธ์
๋๋ค. ๊ธฐ๋ฒ์ ์ด๋ฆ์์ ์ ์ถํ ์ ์๋ฏ์ด, ๊ฐ ๋จ์ด์ ์๋ฏธ๋ฅผ ๋ฒกํฐ์ ๋์ํ์ฌ ์ ์ฅํ ์ ์๊ณ ๊ฐ ๋ฒกํฐ ์ฌ์ด์ ๋ง์
๊ณผ ๋บ์
์ผ๋ก ์๋ฏธ์ ๋ํ ์ฐ์ฐ์ฒ๋ฆฌ๋ฅผ ํตํด ์ํ๋ ์๋ฏธ์ ๋จ์ด๋ฅผ ์ฐพ์ ์ ์๋ค๋ ์ ์ด ํฅ๋ฏธ๋ก์ ์ต๋๋ค. ์ด ๋ฐฉ์์ ๊ธฐ์กด์ neural network ๋ชจ๋ธ๋ค๋ก ์ฒ๋ฆฌํ๊ธฐ ์ด๋ ค์ ๋ โ๋จ์ด์ ์๋ฏธโ๋ฅผ ๊ธฐ๊ณ์๊ฒ ํ์ต์ํค๊ณ , ๊ธฐ๊ณ๊ฐ ์๋ฏธ๋ฅผ ์ดํดํ ์ ์๊ฒ ๋ง๋ ๋ค๋ ์ ์์ ํฐ ์์๊ฐ ์๋ค๊ณ ๋ณด์์ต๋๋ค. ์ด์, Word2Vec ๊ธฐ๋ฒ๊ณผ ๊ธฐ๊ณ์ ํ๋ จ์ ์ํด ์ ์๋ ๋ ๊ฐ์ง ๋ชจ๋ธ์ธ CBOW, Skip-gram์ ๋ํด ์์๋ณด๊ณ ์ ๋ณธ ๋
ผ๋ฌธ์ ์ ํํ์์ต๋๋ค.
Introduction
2013๋
์ด์ ์ NLP system๊ณผ ๊ธฐ์ ๋ค์์๋ ํ์ต๋ ๋จ์ด๋ค ๊ฐ์ ์ฐ๊ด์ฑ ์์ด ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๋ก ์กด์ฌํ์์ต๋๋ค. ์ด๋ฐ ๋จ์ํ ๋ชจ๋ธ๋ค์ ๋๋์ ๋ฐ์ดํฐ๋ฅผ ํ์ตํ์ฌ ์ ์๋ฏธํ ์ฑ๋ฅ ํฅ์์ ๋ง๋ค์ด๋ผ ์ ์์ผ๋, ์ค์ ํ์ต์ ์ํ ๋ฐ์ดํฐ์ ์์ด ์ ํ๋์ด์์ด ๊ธฐ์ ์ ์ธ ๋ฐ์ ์ ํ๊ธฐ๋ ์ด๋ ค์ ์ต๋๋ค. ๊ทธ๋ฌ๋ ๋จธ์ ๋ฌ๋ ๊ธฐ์ ์ ๋ฐ์ ์ ํตํด ๋ ๋ณต์กํ ๋ชจ๋ธ๋ค์ ์ ํ๋๋ฅผ ์ฌ๋ฆด ์ ์๊ฒ ๋์์ต๋๋ค.
ย
๋ณธ ๋
ผ๋ฌธ์ ๋ชฉํ๋ ์์ง์ ๋จ์ด ๋ฒกํฐ๋ฅผ ํฐ data set ๋๋ vocabulary๋ก๋ถํฐ ํ์ตํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ๋ ๊ฒ์
๋๋ค. ๋จ์ด๋ฅผ ๋ฒกํฐ๋ก ํํํ๋ ๋ฐฉ์์ ํตํด ์ ์ฌํ ์๋ฏธ์ ๋จ์ด๊ฐ ๊ทผ์ฒ์ ์์นํ ๋ฟ ์๋๋ผ, multiple degrees of similarity(syntactic, semantic, phonetic ๋ฑ์ ๋ถ์ผ์ feature๋ฅผ ๊ณต์ )๋ฅผ ๊ฐ์ง ์ ์๋๋ก ๋ง๋ค์ด์ค๋๋ค.
vector(โ์์ธโ) - vector(โ์๋โ) + vector(โ์ผ๋ณธโ)
์ ๊ฒฐ๊ณผ๋ก ์ป์ ๋ฒกํฐ์ ๊ฐ์ฅ ๊ฐ๊น์ด ๋จ์ด ๋ฒกํฐ๊ฐ โ๋์ฟโ๋ฅผ ๊ฐ๋ฆฌํค๋ ๋ฐฉ์์ผ๋ก, ๋จ์ด ๋ฒกํฐ์ ์ฐ์ฐ์ด ๋จ์ด ์๋ฏธ์ ์ฐ์ฐ์ผ๋ก ๊ฐ๋ฅํ๋๋ก ์๋ก์ด ๋ชจ๋ธ ์ํคํ
์ณ๋ฅผ ๊ตฌ์ฑํ์ฌ syntactic, semantic ์์ญ์์ ๋์ ์ ํ๋๋ฅผ ๊ฐ์ง ์ ์๋๋ก ํ์์ต๋๋ค. ย
๊ธฐ์กด์ ๋ชจ๋ธ๋ค
1. N-gram Language Model
์ผ๋ จ์ ๋จ์ด๊ฐ ์ฃผ์ด์ก์ ๋, ํด๋น ๋จ์ด๋ค ๋ค์ ๋์ฌ ๋จ์ด๋ฅผ ํต๊ณ์ ์ผ๋ก ์ถ์ธกํ์ฌ ์ถ๋ ฅํ๋ ๋ชจ๋ธ์
๋๋ค. ์์ ๋จ์ด ์ค ์ต๊ทผ N๊ฐ์ ๋จ์ด๋ง์ ์ฌ์ฉํ๋ฉฐ, ์ฌ์ฉํ๋ ๋จ์ด์ ๊ฐ์์ ๋ฐ๋ผ unigram, bigram, trigram, 4-gram ๋ฑ์ผ๋ก ์ด๋ฆ์ด ๋ถ์ต๋๋ค. ํ์ต ์ฝํผ์ค๋ฅผ ํตํด ๋จ์ด๋ค ๋ค์ ๊ฐ ๋จ์ด๊ฐ ๋์ฌ ํ๋ฅ ์ ๊ณ์ฐํ์ฌ ํ์ตํ๊ณ , ์ฃผ์ด์ง N๊ฐ์ ๋จ์ด์ ๋ํ์ฌ ์กฐ๊ฑด๋ถ ํ๋ฅ ๋ก ๋ค์ ๋ฑ์ฅํ ๊ฐ๋ฅ์ฑ์ด ๊ฐ์ฅ ๋์ ๋จ์ด๋ฅผ ๊ณ์ฐํ์ฌ ๊ฒฐ๊ณผ๋ก ์ถ๋ ฅํ๋ ๋ชจ๋ธ์
๋๋ค.
์ฅ์
- ๋จ์ด์ ํ๋ จ๊ณผ ์ถ๋ก ๊ณผ์ ์ด ๊ฐ๋จํ๊ณ ํฐ ์์คํ ์ ์ฝ๊ฒ ์ ์ฉ์ด ๊ฐ๋ฅํ๋ค.
๋จ์
- ๊ณผ๊ฑฐ์ ์ฌ๋ก๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ํ๊ธฐ์ ์๋ก์ด ๋จ์ด ์กฐํฉ์ ๋ํด ์ดํดํ์ง ๋ชปํ๋ค. (ํฌ์๋ฌธ์ - sparsity problem)
- ๋จ์ด๊ฐ์ ์ ์ฌ๋๋ฅผ ์์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ ๊ทผ์ฒ์ ๋จ์ด๋ง ์ฐธ๊ณ ํ์ฌ ๋ฌธ์ฅ์ ์์ฑํ๋ฏ๋ก ์ ์ฒด์ ์ธ ๋ฌธ์ฅ์ ๊ตฌ์กฐ์ ๋งฅ๋ฝ์ ํ์ ํ๊ธฐ ํ๋ค๋ค.
2. NNLM
Neural Network Language Model ๋๋ Feedforward Neural Language model์ ์๋ ์๋ฒ ๋ฉ์ ํตํด ๋จ์ด ๊ฐ์ ์ ์ฌ๋๋ฅผ ๊ธฐ๊ณ์๊ฒ ํ์ต์์ผ, ํ๋ จ์ ์๋ ๋จ์ด์ ์์์ ๋ํด ๋ณด๋ค ์ ํํ ์์ธก์ด ๊ฐ๋ฅํ๋๋ก ํ ๊ฐ์ ๋ ๋ชจ๋ธ์
๋๋ค. N-gram ์ฒ๋ผ N๊ฐ์ ๋จ์ด๋ฅผ ์ด์ฉํด ๋จ์ด๋ฅผ ์์ธกํฉ๋๋ค. ์ฃผ์ด์ง ๋จ์ด์ ๋ํด ๋งคํ๋ ์๋ฒ ๋ฉ ๋ฒกํฐ์ ๋ํด ์ฐ๊ฒฐ ์ฐ์ฐํ์ฌ hidden layer๋ก ์ ๋ฌํ๋ฉด hidden layer์์ ๊ฐ์ค์น๋ฅผ ๊ณฑํด ์ถ๋ ฅ์ธต์ผ๋ก ๋ณด๋ด๊ณ , ์ถ๋ ฅ์ธต์์ ๋๋ค๋ฅธ ๊ฐ์ค์น์ ๊ณฑํด์ง ๋ค ๊ฐ์ฅ ๊ฒฐ๊ณผ์น๊ฐ ํฐ ๊ฐ์ ํด๋นํ๋ ๋จ์ด๋ฅผ ์ถ๋ ฅํ๋ ๋ชจ๋ธ์
๋๋ค. ํ์ต ์ฝํผ์ค์ ์ ๋ต๊ณผ ์ป์ด๋ธ ๊ฒฐ๊ณผ ๊ฐ์ ์ฐจ์ด์ ๋ํด ์ญ์ ํ๊ฐ ์ด๋ฃจ์ด์ง๋ฉฐ ์ง๋์จ ๊ฐ์ค์น ํ๋ ฌ๋ค๊ณผ ์๋ฒ ๋ฉ ๋ฒกํฐ์ ๊ฐ์ด ์กฐ์ ๋๋ฉฐ ํ์ตํฉ๋๋ค.
์ฅ์
- NNLM์ ๊ณผ๊ฑฐ์ ๋ฑ์ฅํ์ง ์์ ๋จ์ด์ ์กฐํฉ์๋ ์ถฉ๋ถํ ๋์ํ ์ ์๋ค. (ํฌ์๋ฌธ์ -sparsity problem-์ ํด๊ฒฐ)
๋จ์
- ๋ฌธ์ฅ ์์ ์๋ตํ ์ฑ, ๊ทผ์ฒ์ N๊ฐ์ ๋จ์ด๋ง ๊ณ ๋ คํ ์ ์๋ค.
- N-gram์ ๋นํด ํจ์ฌ ๋ ๋ง์ ์ฐ์ฐ์ ํ์๋ก ํ๋ฉฐ ์ด ๋๋ฌธ์ ์ฑ๋ฅ์ด ๋๋ฆฌ๋ค.
3. RNNLM
Recurrent Neural Network Lauguage Machine์ projection layer๋ฅผ ์ ๊ฑฐํ NNLM์์ hidden layer์ ์ถ๋ ฅ์ด ๋ค์ ์
๋ ฅ์ผ๋ก ๋ค์ด์ค๋ ํ์์ผ๋ก ๋ชจ๋ธ์ ๊ตฌ์ฑ๋ฉ๋๋ค. Reccurent ๋ถ๋ถ์ด ์ผ์ข
์ ๋จ๊ธฐ์ ์ฅ๊ณต๊ฐ์ผ๋ก ์๋ํ๋ฉด์ ์ด์ ๋จ์ด๋ค์ ์ฒดํฌํ๋ ์ญํ ์ ์ํํ๊ธฐ ๋๋ฌธ์, NNLM์ฒ๋ผ window size(N๊ฐ์ ๋จ์ด)๋ฅผ ์ ํด์ฃผ์ง ์์๋ ์ด์ ์ ๋จ์ด๋ค์ ํ์ฉํ์ฌ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ ์ ์์ต๋๋ค.
์ฅ์
- RNNLM์ NNLM๋ณด๋ค ์ฐ์ฐ๋์ด ์ ๊ธฐ ๋๋ฌธ์, ๊ณ์ฐ ์๋๊ฐ ๋น๊ต์ ๋น ๋ฅด๋ค.
๋จ์
- ๋ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ํ์ตํ๊ธฐ์๋ ์ฌ์ ํ ๋๋ฆฐ ์๋๋ฅผ ๋ณด์ธ๋ค.
ย
๋ฒกํฐ๋ฅผ ์ด์ฉํ ๋ชจ๋ธ ์ํคํ
์ฒ๋ ๊ณผ๊ฑฐ์๋ ์ฌ๋ฌ๋ฒ ๋ฑ์ฅํ์ง๋ง, ์ฒ๋ฆฌ ์ฑ๋ฅ ๊ฐ์ ๊ณผ ๋๋ฆฐ ํ์ต ์๋์ ๊ฐ์ ์ ์ํด ๋ ๋์ ๊ธฐ์ ๊ณผ ์ํคํ
์ฒ๋ฅผ ํ์๋ก ํ์๊ณ , ์ด์ ๋ํ ํด๊ฒฐ์ฑ
์ผ๋ก ์ ์ํ ๊ฒ์ด ๋ณธ ๋
ผ๋ฌธ์์ ์๊ฐํ๋ word2vec ๊ธฐ๋ฒ์
๋๋ค. ์ด๋ฅผ ๊ตฌํํ๊ธฐ ์ํ ์ํคํ
์ฒ ๋ชจ๋ธ๋ก, CBOW ๋ชจ๋ธ๊ณผ Skip-gram ๋ชจ๋ธ์ ์ ์ํ์์ต๋๋ค.
ย
Model Architectures
Distributed representation
ํฌ์ ํํ(Sparse Representation)
e.g. 10000๊ฐ์ ๋จ์ด ์ค โ๊ฐ์์งโ๊ฐ 4๋ฒ์งธ ๋จ์ด๋ผ๋ฉด?(0๋ถํฐ ์์)
๊ฐ์์ง = [0 0 0 0 1 0 0 ... ์ค๋ต ... 0}
- ํํํ๊ณ ์ ํ๋ ๋จ์ด์ ์ธ๋ฑ์ค ๊ฐ๋ง 1์ด๊ณ ๋๋จธ์ง๋ 0์ผ๋ก ํํํ์ฌ ๋ฒกํฐ ๋๋ ํ๋ ฌ์ ๊ฐ์ด ๋๋ถ๋ถ 0์ผ๋ก ํํ๋๋ ๋ฐฉ์
- one-hot vector / 1-of-V vector (* V : Vocabulary์ ์ ์ฒด ๋จ์ด ์)
- ํด๋น ํํ์ ๊ฐ ๋จ์ด ๋ฒกํฐ๊ฐ์ ์ ์ฌ์ฑ์ ํํํ ์ ์์ต๋๋ค.
๋ถ์ฐ ํํ(Distributed representation)
e.g. ๊ฐ์์ง = [0.2 0.3 0.5 0.7 0.2 ... ์ค๋ต ... 0.2]
- ๋จ์ด์ ์๋ฏธ๋ฅผ ๋ค์ฐจ์ ๊ณต๊ฐ์ ๋ถ์ฐํ์ฌ ๋ฒกํฐํ ์ํค๋ ๋ฐฉ์
- ๋ถ์ฐํํ์ ์ด์ฉํ์ฌ ๋จ์ด ๊ฐ์ ์๋ฏธ์ ์ ์ฌ์ฑ์ ๋ฒกํฐํ ํ๋ ๊ฒ์ word embedding์ด๋ผ ํ๊ณ , ํด๋น ๋ ผ๋ฌธ์์๋ neural net์ ํ์ต์ํค๊ธฐ ์ํด ๋ถ์ฐ ํํ์ ์ฌ์ฉํฉ๋๋ค.
Computational Complexity
์ฌ๋ฌ architecture๋ฅผ ๋น๊ตํ๊ธฐ์ ์์, ๊ณ์ฐ๋ณต์ก๋(๋ชจ๋ธ์ ์์ ํ ํ์ต์ํค๋๋ฐ ์ฐ์ด๋ ํ๋ผ๋ฏธํฐ ์)๋ฅผ ์ ์ํด์ผํฉ๋๋ค. ํด๋น ๋
ผ๋ฌธ์์๋ ๊ณ์ฐ๋ณต์ก๋๋ฅผ ์๋์ ๊ฐ์ด ์ ์ํ๊ณ ์์ต๋๋ค.
E : ํ์ต ์ epoch ์ (3 ~ 50)
T : Training set์ ์๋ ๋จ์ด ์ (~1,000,000,000)
Q : ์ถํ์ ๋ชจ๋ธ architecture์ ์ํด ๊ฒฐ์ ๋๋ ๋ถ๋ถ
ย
Continuous Bag Of Words
์ฃผ๋ณ(๋งฅ๋ฝ)์ ๋จ์ด๋ค๋ก ์ค๊ฐ(์ค์ฌ)์ ๋จ์ด๋ฅผ ์์ธกํฉ๋๋ค. ์ค์ฌ๋จ์ด๋ฅผ ์์ธกํ๊ธฐ ์ํด ์ฃผ๋ณ ๋จ์ด๋ฅผ ์ด๋์ ๋๊น์ง ์ด์ฉํ ๊ฒ์ธ์ง(window size) ๊ฒฐ์ ํ์ฌ ๋ชจ๋ธ์ input์ผ๋ก ์
๋ ฅํฉ๋๋ค. window size๋ฅผ n์ด๋ผ ํ๋ฉด, ์ค์ ๋ก ์์ธก์ ์ฐ์ด๋ ์ฃผ๋ณ ๋จ์ด์ ๊ฐ์๋ 2n๊ฐ๊ฐ ๋ฉ๋๋ค.
ํด๋น architecture๋ feedforward NNLM๊ณผ ์ ์ฌํ์ง๋ง, hidden layer๊ฐ ์ ๊ฑฐ๋๋ฉด์, projection layer๊ฐ ๋ชจ๋ ๋จ์ด๋ค๊ณผ ๊ณต์ ๋ฉ๋๋ค. ๋ํ, ์ ์ฒด word vector์ ํ๊ท ๊ฐ(bag-of-words)์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋จ์ด์ ์์๊ฐ projection์ ์ํฅ์ ์ฃผ์ง ์์ต๋๋ค. ๋ง์ง๋ง์ผ๋ก ํด๋น ๋ชจ๋ธ์ ์ฐ์์ ์ธ context๋ฅผ ์ด์ฉํ๊ธฐ ๋๋ฌธ์ CBOW (Continuous Bag-of-words) ๋ผ๋ ํํ์ ์ฌ์ฉํ์์ต๋๋ค.
- input : ์์ธก์ ์ด์ฉํ 2n๊ฐ์ ์ฃผ๋ณ๋จ์ด 1-of-V ๋ฒกํฐ
- output label : ์์ธกํ๊ณ ์ ํ๋ ์ค๊ฐ๋จ์ด์ 1-of-V ๋ฒกํฐ
- training complexity Q = N x D + D x log(V)
N : ์ด์ ๋จ์ด์ ๊ฐ์
D : vector์ ์ฐจ์
V : Vocabulary ๋ด ์ ์ฒด ๋จ์ด ์
ย
e.g. The fat cat sat on the mat. โ [โTheโ, โfatโ, โcatโ, โonโ, โtheโ, โmatโ]์ผ๋ก โsatโ์ ์์ธกํด๋ณด์
โsatโ : ์ค์ฌ(center) ๋จ์ด
[โTheโ, โfatโ, โcatโ, โonโ, โtheโ, โmatโ] : ์ฃผ๋ณ(context) ๋จ์ด
ย
๋จผ์ ์๋์ฐ๋ฅผ ์์ผ๋ก ์ฎ๊ฒจ๊ฐ๋ฉฐ(sliding window) ์ค์ฌ๋จ์ด์ ์ฃผ๋ณ ๋จ์ด๋ฅผ ๋ณ๊ฒฝํด ๋๊ฐ๋ฉด์ ํ์ต์ ์ด์ฉํ ๋ฐ์ดํฐ์
์ ๊ตฌ์ฑํฉ๋๋ค.
Model์ ์ฃผ๋ณ vector๊ฐ ์
๋ ฅ์ผ๋ก ๋ค์ด๊ฐ๋ฉด์ ๊ณผ ๊ณฑํด์ง 4๊ฐ์ ์๋ฒ ๋ฉ ๋ฒกํฐ์ ๋ํ์ฌ ํ๊ท ๊ฐ์ ๊ณ์ฐํ์ฌ projection layer๋ก ์ ๋ฌ๋๊ณ ,ํด๋น ๋ฒกํฐ๊ฐ ๋ค์ ์ ๊ณฑํด์ง๋ฉด์ output layer๋ก ์ ๋ฌ๋ฉ๋๋ค. ์ด ๋ฒกํฐ์ softmax๋ฅผ ์ ์ฉํ ๊ฒฐ๊ณผ ๋ฒกํฐ์ target label ์ฌ์ด์ cross-entropy ๊ฐ์ loss function์ผ๋ก ์ด์ฉํฉ๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ํ๋ ํ๊น ๋จ์ด์ ์-ํซ ๋ฒกํฐ๋ (0, 0, 0, 1, 0, 0, 0)์
๋๋ค. ๋ง์ง๋ง์ softmax๋ฅผ ์ทจํด์ค ๋ฒกํฐ๊ฐ (0, 0, 0, 1, 0, 0, 0)์ ๊ฐ๊น์์ ธ cross-entropy๊ฐ์ด 0์ ๊ฐ๊น์์ง ์ ์๋๋ก ๊ฐ์ค์น ํ๋ ฌ W, Wโ๊ฐ ๊ฐฑ์ ๋ฉ๋๋ค.
ย
Continuous Skip-gram Model
Continuous Skip-gram Model ์ CBOW๊ณผ input๊ณผ output์ด ๋ฐ๋์
๋๋ค. ์ฆ CBOW์์๋ ์ฃผ๋ณ ๋จ์ด(before and after current word)๋ฅผ ํตํด ์ค์ฌ ๋จ์ด(current word)๋ฅผ ์์ธกํ๋ค๋ฉด, Skip-gram์ ์ค์ฌ ๋จ์ด์์ ์ฃผ๋ณ ๋จ์ด๋ฅผ ์์ธกํฉ๋๋ค.
- input : ์์ธก์ ์ด์ฉํ ์ค๊ฐ๋จ์ด์ 1-of-V ๋ฒกํฐ
- output label : ์์ธกํ๊ณ ์ ํ๋ 2n๊ฐ์ ์ฃผ๋ณ๋จ์ด 1-of-V ๋ฒกํฐ
- training complexity Q = C x (D + D x log(V))
C : ๋จ์ด์ ์ต๋ ๊ฑฐ๋ฆฌ
D : vector์ ์ฐจ์
V : Vocabulary ๋ด ์ ์ฒด ๋จ์ด ์
ย
์๋ฅผ ๋ค์ด "The fat cat sat on the mat" ์ด๋ผ๋ ๋ฌธ์ฅ์์ โsatโ์ด๋ผ๋ ์ค์ฌ ๋จ์ด๋ฅผ log-linear classifier์ input์ผ๋ก ์
๋ ฅํ๋ฉด โfatโ, โcatโ, โonโ, โtheโ ์ output์ ๋์ถํฉ๋๋ค. ์ค์ฌ ๋จ์ด์ ๋ํด์ ์ฃผ๋ณ ๋จ์ด๋ฅผ ์์ธกํ๋ฏ๋ก projection layer์์ ๋ฒกํฐ๋ค์ ํ๊ท ์ ๊ตฌํ๋ ๊ณผ์ ์ ์์ต๋๋ค.
ํ์ต๊ณผ์ ์์ ๋ฒ์๋ฅผ ์ฆ๊ฐ์ํค๋ฉด word vector์ ์ฑ๋ฅ์ด ์ข์์ง์ง๋ง, ๊ณ์ฐ ๋น์ฉ์ด ์ฆ๊ฐํฉ๋๋ค. ๋ํ, ์ค์ฌ ๋จ์ด์ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋จ์ด๋ ํด๋น ๋จ์ด์ ๊ด๋ จ์ด ์์ ๊ฐ๋ฅ์ฑ์ด ๋ฎ๊ธฐ ๋๋ฌธ์, ํ์ต ๋จ์ด์์ ์ ์ ์ํ๋ง ํ๋ ๋ฐฉ๋ฒ์ ํตํด ๋ฎ์ weight๋ฅผ ์ค๋๋ค.
<1, C> ์ ๋ฒ์์์ ๋๋คํ๊ฒ R(Window size)์ ๋ฝ๊ณ , ์ค์ฌ ๋จ์ด ์ด์ ์ R๊ฐ, ์ค์ฌ ๋จ์ด ์ดํ์ R๊ฐ์ ๋ํด์ ์์ธกํด ์ด R+R =2R๊ฐ์ word์ ๋ํด ์์ธกํ๋ ๊ตฌ์กฐ์
๋๋ค.
Skip-gram๊ณผ ๊ธฐ์กด์ ๋ฐฉ๋ฒ์ธ NNLM, RNNLM๋ฅผ ๋น๊ตํ์ ๋, ๋จ์ํ ๊ตฌ์กฐ๋ก๋ ๋ฐ์ด๋ ์ฑ๋ฅ์ word vector๋ฅผ ํ์ตํ ์ ์์ต๋๋ค.
ย
ย
์ด๋ฒ ํฌ์คํธ์์๋ Introduction, architecture์ ๋ํด์ ์ดํด๋ดค์ต๋๋ค. Word2Vec์ ๊ธฐ์กด์ ๋จ์ด๋ค ๊ฐ ์ฐ๊ด์ฑ ์์ด ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๋ก ํ์ตํ๋ ๋ฐฉ๋ฒ์ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ณ , ๋จ์ด ๋ฒกํฐ๋ฅผ ํฐ ๋ฐ์ดํฐ ์
์ผ๋ก ๋ถํฐ ํ์ตํ๋ ๊ฒ์ ๋ชฉํ๋ก ๋๊ฐ์ง ํ์ต๋ฐฉ์์ธ CBOW(Continuous Bag-of-words)์ Skip-gram์ ์ ์ํ์ต๋๋ค.
๋ค์ ํฌ์คํธ์์๋ Word2Vec์ CBOW์ Skip-gram๋ฅผ ์ฌ์ฉํ ๊ฒฐ๊ณผ ๋ฐ ์์ ๊ทธ๋ฆฌ๊ณ ์ฝ๋๊ตฌํ์ ์๊ฐํ๊ฒ ์ต๋๋ค.
ย