machine learning ๋ชจ๋ธ์ ๋ฃ์ด ํ์ตํ๊ธฐ ์ํด์๋ ์ซ์ ํํ์ ๋ฐ์ดํฐ์ด์ฌ์ผ ํ๋ค.
๊ทธ๋ ๋ค๋ฉด ์์ฐ์ด์ ๊ฒฝ์ฐ ์ด๋ป๊ฒ ์ซ์๋ก ๋ฐ๊ฟ์ฃผ์ด์ผ ํ์ต์ด ์ ์ด๋ค์ง ์ ์์๊น?
- one-hot embedding
- featurized embedding
- word embedding
์ฒซ ๋ฒ์งธ ์๋ : one hot embedding
์ ์ฒด vocabulary๋ฅผ ๊ตฌ์ฑํ๊ณ ,
๊ฐ๊ฐ์ ๋จ์ด๋ฅผ ๊ฐ ๋จ์ด์ ํด๋นํ๋ ์์น์ ์์๋ง 1, ๋๋จธ์ง์ ์์๋ 0์ธ one-hot vector๋ก ํ์ํ๋ ๊ฒ์ด ์ข์ ๋ฐฉ๋ฒ์ผ๊น?
์ฐ์ ๊ฐ์ฅ ์๊ฐํ๊ธฐ ์ฌ์ด ๋ฐฉ๋ฒ์ธ ๊ฒ์ ๋ง๋ค.
ํ์ง๋ง ๋จ์ด๊ฐ์ ๊ด๊ณ๋ฅผ ํ์ ํ์ง ๋ชปํ๋ค๋ ๋งค์ฐ ํฐ ๋จ์ ์ด ์กด์ฌํ๋ค.
๋จ์ด๊ฐ์ ์ ์ฌ์ฑ์ ํ๋จํ๊ธฐ ์ํด cosine similarity๋ ๋ฒกํฐ ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ฅผ ์ธก์ ํ๊ณค ํ๋๋ฐ,
์๋ก ๋ค๋ฅธ ๋ ๋จ์ด๊ฐ์ ๋ด์ ์ ๊ตฌํ๋ฉด 0์ด๊ณ , ๋ชจ๋ ๋ฒกํฐ ์ฌ์ด์ ๊ฑฐ๋ฆฌ ๋ํ ๋์ผํ๊ธฐ ๋๋ฌธ์
์ ์ฌ์ฑ/๋น์ ์ฌ์ฑ์ ์ธก์ ํ ์ ์๋ค. (๋๋ฌด ํฐ ๋จ์ )
๋ ๋ฒ์งธ ์๋ : featurized representation
๋จ์ด์ ํน์ง์ ๊ตฌ๋ถํ ๋งํ ํญ๋ชฉ์ ๊ณ ๋ฅธ ๋ค์์ ๊ทธ ๊ด๊ณ๋ฅผ ์์น์ ์ผ๋ก ํํํ๋ ๊ฒ์ด๋ค.
gender์ ๋ํด์ ๋จ์ฑ์ ๊ฒฝ์ฐ ์์๊ฐ์ ๋๋๋ก, ์ฌ์ฑ์ ๊ฒฝ์ฐ ์์๊ฐ์ ๋๋๋ก ์ค์ ํ๋ ๊ฒ์ด๋ค.
์์ ์ฌ์ง์ ๋ณด๋ฉด man, king๊ณผ ๊ฐ์ ๊ฒฝ์ฐ (-) ๊ฐ์ ๊ฐ์ง๊ณ , woman, queen๊ณผ ๊ฐ์ ๊ฒฝ์ฐ (+)๊ฐ์ ์ง๋๋ค.
๋ฐ๋ฉด, ์ฑ๋ณ ๊ฐ๋ ์ด ์๋ apple, oragne์ ๊ฒฝ์ฐ 0์ ๊ฐ๊น์ด ๊ฐ์ ๊ฐ๋๋ค.
์์๋ ์์๋ฅผ ์ํด 4๊ฐ์ง ํญ๋ชฉ๋ง ๋์์์ง๋ง, ์ค์ ๋ก๋ ์ฌ๋ฌ๊ฐ์ ๊ธฐ์ค์ ์ ์ ํด์ผ ํ๋ค.
์ดํ ์ด ๊ธฐ์ค์ ๋ง๊ฒ ์์น๊ฐ์ ๋ถ์ฌํ๋ฉด ๊ฐ ๋จ์ด์ ๋์๋๋ ์ด๋ฒกํฐ๊ฐ ๋จ์ด์ embedding vector๊ฐ ๋๋ ๊ฒ์ด๋ค.
one-hot vector๋ณด๋ค๋ ๋จ์ด๊ฐ์ ์ ์ฌ์ฑ/๋น์ ์ฌ์ฑ์ ํฌ์ฐฉํ๊ธฐ ์ฌ์์ก์ง๋ง,
๊ฐ ๋จ์ด๋ฅผ ์ด๋ ๊ฒ embeddingํ๋ ๊ฒ์ ์์ ๋ํ๋ง ๋ณด์๋ ๊ฒฐ์ฝ ์ฌ์ด ๋ฌธ์ ๊ฐ ์๋๋ผ๋ ๊ฒ์ ์ ์ ์๋ค.
๊ทธ๋ ๋ค๋ฉด ์ด๋ป๊ฒ embedding ํด์ผ ์ ์ฌ์ฑ/๋น์ ์ฌ์ฑ์ ํ๋จํ ์ ์์ผ๋ฉฐ + ์ข์ embedding ๊ฐ์ ์ป์ ์ ์์๊น?
์ธ ๋ฒ์งธ ์๋ : word embedding
word embedding์ neural network๋ฅผ ์ด์ฉํ์ฌ ํ์ต์ํค์๋ ์์ด๋์ด๊ฐ ๋์ค๊ธฐ ์์ํ๋ค.
ํ์ตํด์ ์ป๊ณ ์ถ์ embedding vector๋ ์ด๋ค ๋ฒกํฐ์ธ๊ฐ?
- ์๋ง์ text data ์ ๋จ์ด ์ฌ์ด์ ๋ค์ํ ๊ด๊ณ๋ฅผ ๋ฐ์ํ ์ ์๋๋ก
- ๋จ์ด์ ์ ์ฌ์ฑ/๋น์ ์ฌ์ฑ์ ๋ฐ์ํ ์ ์๋๋ก
์ด์ ์ face recognition ๋ฌธ์ ๋ฅผ ๋ค๋ฃจ๋ฉด์
๋์ผํ ์ฌ๋์ ๋ํ๋ธ ์ด๋ฏธ์ง ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ ์ต์ํ๋๋๋ก, ๊ฐ๊ธฐ ๋ค๋ฅธ ์ฌ๋์ ๋ํ๋ธ ์ด๋ฏธ์ง ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ ์ต๋ํ๋๋๋ก
neural network๋ฅผ ํ์ตํ๋ค๊ณ ํ์๋๋ฐ, ์ด๊ฒ๊ณผ ๋งค์ฐ ์ ์ฌํ ์์ด๋์ด์ด๋ค.
์ ์ฌํ ๊ด๊ณ์ ์๋ ๋จ์ด ์ฌ์ด์ ์ ์ฌ์ฑ์ ์ต๋ํ๋๋๋ก, ๊ด๋ จ์ด ์์ด๋ณด์ด๋ ๋จ์ด ์ฌ์ด์ ์ ์ฌ์ฑ์ ์ต์ํ๋๋๋ก ํ์ตํ๊ณ ์ ํ๋ค.
์ด๋ ๊ฒ ํ์ต์ ์งํํ๋ word embedding ๋ฐฉ๋ฒ ์ค word2vec ๋ฐฉ๋ฒ์ ๋ํด ๋ค๋ค๋ณด๊ณ ์ ํ๋ค.
word2vec
word2vec์ ์์ด๋์ด๋ "์ฃผ๋ณ ๋จ์ด๋ฅผ ๋ณด๋ฉด ๊ทธ ๋จ์ด์ ์๋ฏธ๋ฅผ ์ ์ถํ ์ ์๋ค"๋ผ๋ ์์ด๋์ด๋ฅผ ํ์ฉํ ๋ฐฉ๋ฒ์ด๋ค.
word2vec์๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋๋ฐ,
- CBOW : ์ฃผ๋ณ ๋จ์ด๋ก ์ค์ฌ ๋จ์ด๋ฅผ ์์ธกํ๋ ๋ฐฉ์
- skip-gram : ์ค์ฌ ๋จ์ด๋ก ์ฃผ๋ณ ๋จ์ด๋ฅผ ์์ธกํ๋ ๋ฐฉ์
์ด๋ ๊ฒ 2๊ฐ์ง๊ฐ ์กด์ฌํ๋ค.
์ฌ๊ธฐ์ ๋งํ๋ ์ฃผ๋ณ๋จ์ด๋ ์ค์ฌ๋จ์ด ์ /ํ์ ์์นํ ๋จ์ด๋ฅผ ๋งํ๋ค.์ด "์ฃผ๋ณ"์ ์ ๋๋ window๋ผ๋ ๋ณ์๋ฅผ ํตํด ์กฐ์ ํ ์ ์๋๋ฐ,window=2๋ผ๋ฉด ์ค์ฌ๋จ์ด ์ ์ 2๋จ์ด + ์ค์ฌ๋จ์ด ์ดํ์ 2๋จ์ด๋ฅผ ์ฃผ๋ณ๋จ์ด๋ก ๋ณด๋ ๊ฒ์ด๋ค.
์ด๋ ๊ฒ window ๊ฐ์ ํตํด ์ฃผ๋ณ๋จ์ด์ ๋ฒ์๋ฅผ ์ค์ ํ๋ฉด ์ฃผ๋ณ๋จ์ด๋ฅผ X๋ก, ์ค์ฌ๋จ์ด๋ฅผ y๋ก ๋๊ณ ๋ฐ๋ณต์ ์ผ๋ก ํ์ต์ ์ํํ๋ค.์ด ๋ ํ์ต๋๋ parameter๊ฐ embedding matrix๊ฐ ๋๋ ๊ฒ์ด๋ค.
- ์ฃผ๋ณ ๋จ์ด K๊ฐ์ one-hot vector๊ฐ ๋ชจ๋ธ๋ก ๋ค์ด๊ฐ๋ค.
- matrix W์ ๊ณฑํด์ง๋ฉด์ K๊ฐ์ embedding vector๊ฐ ๊ณ์ฐ๋๋ค.
- K๊ฐ์ embedding vector๋ฅผ ํ๊ท ์ทจํ์ฌ h๋ฒกํฐ๋ฅผ ๋ง๋ ๋ค.
- h๋ฒกํฐ์ matrix W'๋ฅผ ๊ณฑํ์ฌ y_hat ๋ฒกํฐ๋ฅผ ๋ง๋ ๋ค.
- y_hat ๋ฒกํฐ์ W์ ๊ฐ ํ๋ฒกํฐ(=word embedding)๋ฅผ ๋ด์ ํ ๊ฒ์ softmax ์ ์ฉํ์ฌ cross-entropy loss๋ฅผ ๊ตฌํ๋ค.
- backpropagationํ์ฌ ํ๋ ฌ W, W' ๋ฅผ ์ ๋ฐ์ดํธ ํ๋ค.
- ์์ ๊ณผ์ ์ ๋ฐ๋ณตํ๋ค.
์ด๋ฌํ ๊ณผ์ ์ ๋ฐ๋ณต์ ์ผ๋ก ์ํํ์ฌ ์ป๊ฒ๋ W, W' ํ๋ ฌ์ด embedding matrix๊ฐ ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก W, W' ์ค ํ๋์ ํ๋ ฌ๋ง ์ฌ์ฉํ๊ฑฐ๋ ์๋๋ฉด ๋ ํ๋ ฌ์ ํตํด ๊ตฌํด์ง embedding vector์ ํ๊ท ์ ์ต์ข ์ ์ธ embedding vector๋ก ์ฌ์ฉํ๋ค๊ณ ํ๋ค.
์์์ ์ค๋ช ํ ๋ชจ๋ธ์ ์ฃผ๋ณ๋จ์ด๋ก ์ค์ฌ๋จ์ด๋ฅผ ์์ธกํ๋ CBOW ๋ชจ๋ธ์ ๋ํด์ ์ค๋ช ํ ๊ฒ์ด๊ณ ,
์ค์ฌ๋จ์ด๋ก ์ฃผ๋ณ๋จ์ด๋ฅผ ์์ธกํ๋ skip-gram ๋ชจ๋ธ๋ ์ด์ ์ ์ฌํ๋ค.
๋ค๋ง, input์ผ๋ก ์ค์ฌ๋จ์ด์ one-hot vector ํ๋, output์ผ๋ก K๊ฐ์ vector๊ฐ ๋์จ๋ค๋ ๊ฒ์ด ์ฐจ์ด์ ์ด๋ค.
์ผ๋ฐ์ ์ผ๋ก CBOW ๋ณด๋ค๋ skip-gram์ ์ฑ๋ฅ์ด ์ข๊ธฐ ๋๋ฌธ์ skip-gram์ ์ฃผ๋ก ์ฌ์ฉํ๋ค.
ํ ๋จ์ด๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ณด์์ ๋ CBOW๋ฅผ ์ฌ์ฉํ๋ฉด ์ ๋ต์ด ๋๋ ๊ฒฝ์ฐ๋ 1๋ฒ๋ง ์กด์ฌํ๋ ๋ฐ๋ฉด,
skip-gram์ ์ฌ์ฉํ๋ฉด ์ ๋ต์ด ๋๋ ๊ฒฝ์ฐ๋ 2*W๋ฒ ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ๋ ๋ง์ ์ ๋ฐ์ดํธ ๊ธฐํ๊ฐ ์๋ค. (W=window ํฌ๊ธฐ)
๋ฐ๋ผ์ ๋ง๋ญ์น์ ํฌ๊ธฐ๊ฐ ๋์ผํ๋๋ผ๋ ํ์ต๋์ด 2*W๋ฐฐ ์ฐจ์ด๋๋ ํจ๊ณผ๊ฐ ์๊ธฐ ๋๋ฌธ์ word2vec๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ CBOW ๋์ skip-gram์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
'๐ > Coursera_DL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
WEEK8 : beam search in language model (0) | 2020.12.27 |
---|---|
WEEK8 : negative sampling (0) | 2020.12.26 |
WEEK7 : LSTM, GRU (0) | 2020.12.25 |
WEEK7 : RNN (0) | 2020.12.25 |
WEEK7 : convNet in 1D, 2D, 3D (0) | 2020.12.25 |