๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
NLP ๐Ÿ—ฃ/ํ•œ๊ตญ์–ด ์ž„๋ฒ ๋”ฉ

1. Embedding

by Jouureee 2021. 12. 10.

1.1 ์ž„๋ฒ ๋”ฉ์ด๋ž€

์‚ฌ๋žŒ์ด ์“ฐ๋Š” ์ž์—ฐ์–ด๋ฅผ ๊ธฐ๊ณ„๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒกํ„ฐ๋กœ ๋ฐ”๊พธ๋Š” ๊ณผ์ •

 

1.2 ์ž„๋ฒ ๋”ฉ์˜ ์—ญํ• 

1) ๋‹จ์–ด/ ๋ฌธ์žฅ ๊ฐ„ ๊ด€๋ จ๋„ ๊ณ„์‚ฐ

๋‹จ์–ด๋ฅผ ๋ฒกํ„ฐ๋กœ ํ‘œํ˜„ํ•˜๋Š” ์ˆœ๊ฐ„ ๋‹จ์–ด๊ฐ„์˜ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐ ๊ฐ€๋Šฅ ex> ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„

 

2) ์˜๋ฏธ/๋ฌธ๋ฒ• ์ •๋ณด ํ•จ์ถ•

๋ฒกํ„ฐ๊ฐ„์˜ ์‚ฌ์นœ ์—ฐ์‚ฐ์œผ๋กœ ๋‹จ์–ด ๊ฐ„์˜ ์œ ์ถ” ํ‰๊ฐ€ ๊ฐ€๋Šฅ

ex> ๋‹จ์–ด1 + ๋‹จ์–ด 2 - ๋‹จ์–ด 3 = ์•„๋“ค + ๋”ธ - ์†Œ๋…„ = ์†Œ๋…€

 

3) ์ „์ด ํ•™์Šต

๋‹จ์–ด๋ฅผ ์ž„๋ฒ ๋”ฉ ํ•œ ๊ฐ’์ด input ์œผ๋กœ ์“ฐ์ธ๋‹ค.

 

1.3 ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•

0) ๊ทธ ์ „์— ์‹œ์†Œ๋Ÿฌ์Šค๋ฅผ ํ™œ์šฉํ•œ ๋ฐฉ๋ฒ• (์‹œ์†Œ๋Ÿฌ์Šค ๊ธฐ๋ฐ˜ ๊ธฐ๋ฒ•)

  • wordNet์ˆ˜๋งŽ์€ ๋‹จ์–ด์— ๋Œ€ํ•œ ๋™์˜์–ด์™€ ๊ณ„์ธต ๊ตฌ์กฐ ๋“ฑ ์ •์˜
  • ํ•˜์ง€๋งŒ ์ˆ˜์ž‘์—…์œผ๋กœ ์‹œ๋Œ€ ๋ณ€ํ™”์— ๋Œ€์‘ํ•˜๊ธฐ ์–ด๋ ต๋‹ค. ๋น„์šฉ์ด ๋งŽ์ด ๋“ ๋‹ค. ๋‹จ์–ด๊ฐ„ ๋ฏธ๋ฌ˜ํ•œ ์ฐจ์ด๋ฅผ ํ‘œํ˜„ ํ•  ์ˆ˜ ์—†๋‹ค.
  • nlp์—์„œ ๊ฐ€์žฅ ์œ ๋ช…ํ•œ ์‹œ์†Œ๋Ÿฌ์Šค

1) ํ†ต๊ณ„ ๊ธฐ๋ฒ•์—์„œ ๋‰ด๋Ÿด ๋„คํŠธ์›Œํฌ ๊ธฐ๋ฐ˜์œผ๋กœ (ํ†ต๊ณ„ ๊ธฐ๋ฐ˜ ๊ธฐ๋ฒ•)

  • ์ดˆ๊ธฐ ์ž ์žฌ ์˜๋ฏธ ๋ถ„์„(๋‹จ์–ด์˜ ์‚ฌ์šฉ ๋นˆ๋„, ๋ง๋ญ‰์น˜ ํ†ต๊ณ„๋Ÿ‰)์— ํŠน์ด๊ฐ’ ๋ถ„ํ•ด์™€ ๊ฐ™์€ ์ˆ˜ํ•™์  ๊ธฐ๋ฒ•์„ ์ ์šฉํ•ด ๋ฒกํ„ฐ์˜ ์ฐจ์›์„ ์ถ•์†Œํ•˜๋Š” ๋ฐฉ๋ฒ• ์‚ฌ์šฉ
  • ํ•˜์ง€๋งŒ ๋ง๋ญ‰์น˜ ๋ฐ์ดํ„ฐ ์…‹์— ๋“ค์–ด๊ฐ„ ๋‹จ์–ด๊ฐ€ ๋งŽ์•„ ํ–‰์ด ์ปค์ง€๊ณ , ๊ทธ์— ๋ฐ˜ํ•ด ๋ฐ์ดํ„ฐ ๊ฐ’์€ ๋Œ€๋ถ€๋ถ„ 0(ํฌ์†Œ ํ–‰๋ ฌ)์„ ๋ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์›๋ž˜ ํ–‰์˜ ์ฐจ์›์„ ์ถ•์†Œํ•˜๊ฒŒ ๋˜๋Š”๋ฐ ๋‹จ์–ด๋ฅผ ์ถ•์†Œํ•˜๋Š” ๊ฒƒ์„ ๋‹จ์–ด ์ˆ˜์ค€ ์ž„๋ฒ ๋”ฉ, ๋ฌธ์„œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์„œ๋ฅผ ์ถ•์†Œํ•˜๋Š” ๊ฒƒ์„ ๋ฌธ์„œ ์ฐจ์›์˜ ์ž„๋ฒ ๋”ฉ์ด๋ผ๊ณ  ํ•œ๋‹ค.
  • ์ตœ๊ทผ์—๋Š” ๋‰ด๋Ÿด ๋„คํŠธ์›Œํฌ ๊ธฐ๋ฐ˜์˜ ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•๋“ค์ด ์ฃผ๋ชฉ ๋ฐ›๊ณ  ์žˆ๋‹ค. ๋‰ด๋Ÿด ๋„คํŠธ์›Œํฌ ๊ธฐ๋ฐ˜์˜ ๋ชจ๋ธ๋“ค์€ ์ด์ „ ๋‹จ์–ด๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ๋‹ค์Œ ๋‹จ์–ด๊ฐ€ ๋ญ๊ฐ€ ๋ ์ง€ ์˜ˆ์ธกํ•˜๊ฑฐ๋‚˜ ๋ฌธ์žฅ ๋‚ด ๋นˆ์นธ์— ๋“ค์–ด๊ฐˆ ๋‹จ์–ด๊ฐ€ ๋ฌด์—‡์ธ์ง€์— ๊ด€ํ•ด ํ•™์Šตํ•œ๋‹ค.

 

2) ๋‹จ์–ด ์ˆ˜์ค€์—์„œ ๋ฌธ์žฅ ์ˆ˜์ค€์œผ๋กœ (์ถ”๋ก  ๊ธฐ๋ฐ˜ ๊ธฐ๋ฒ•)

  • ๋‹จ์–ด ์ˆ˜์ค€ ๋ชจ๋ธ ex> NLPM, Word2Vec, Glove, FastText, Swivel
  • ๋‹จ์–ด ์ž„๋ฒ ๋”ฉ๊ธฐ๋ฒ•๋“ค์€ ๊ฐ ๋ฒกํ„ฐ์— ํ•ด๋‹น ๋‹จ์–ด์˜ ๋ฌธ๋งฅ์  ์˜๋ฏธ๋ฅผ ํ•จ์ถ•ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ๋‹จ์–ด ์ˆ˜์ค€์˜ ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•์˜ ๋‹จ์ ์€ ๋™์Œ์ด์˜์–ด ๋ถ„๊ฐ„์ด ์–ด๋ ต๊ณ , ๋‹จ์–ด์˜ ํ˜•ํƒœ๊ฐ€ ๊ฐ™๋‹ค๋ฉด ๋™์ผ ๋‹จ์–ด๋กœ ๋ณด๊ณ  ๋ฌธ๋งฅ ์ •๋ณด๋ฅผ ํ•ด๋‹น ๋‹จ์–ด ๋ฒกํ„ฐ์— ํˆฌ์˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • 2018๋…„ ์ดํ›„ ELMo๊ฐ€ ๋ฐœํ‘œ๋œ ํ›„ ๋ฌธ์žฅ ์ˆ˜์ค€ ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•๋“ค์ด ์ฃผ๋ชฉ์„ ๋ฐ›๊ฒŒ ๋œ๋‹ค. ex > GPT, BERT ๋“ฑ
  • ๋ฌธ์žฅ ์ˆ˜์ค€์˜ ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•๋“ค์€ ๊ฐœ๋ณ„ ๋‹จ์–ด๊ฐ€ ์•„๋‹Œ ๋‹จ์–ด ์‹œํ€€์Šค ์ „์ฒด์˜ ๋ฌธ๋งฅ์  ์˜๋ฏธ๋ฅผ ํ•จ์ถ•ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹จ์–ด ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•๋ณด๋‹ค ์ „์ด ํ•™์Šต ํšจ๊ณผ์— ํšจ๊ณผ์ ์ด๋ผ๊ณ  ํ•œ๋‹ค.

3) ๋กค → ์—”๋“œํˆฌ์—”๋“œ → ํ”„๋ฆฌํŠธ๋ ˆ์ธ/ํŒŒ์ธํŠœ๋‹

  • ๋ฐ์ดํ„ฐ ํ†ต์งธ๋กœ ๋ชจ๋ธ์— ๋„ฃ๊ณ  ์ž…์ถœ๋ ฅ ์‚ฌ์ด์˜ ๊ด€๊ณ„๋ฅผ ์‚ฌ๋žŒ์˜ ๊ฐœ์ž… ์—†์ด ๋ชจ๋ธ ์Šค์Šค๋กœ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ดํ•ดํ•˜๋„๋ก ํ•˜๋Š” ๊ธฐ๋ฒ•์„ ์—”๋“œํˆฌ์—”๋“œ๋ผ๊ณ  ํ•œ๋‹ค. ex>seq2Seq
  • 2018๋…„ ์ดํ›„ ELMo๊ฐ€ ๋ฐœํ‘œ๋œ ํ›„ ์—”๋“œํˆฌ ์—”๋“œ ๋ฐฉ์‹์—์„œ ๋ฒ—์–ด๋‚˜ ํ”„๋ฆฌํŠธ๋ ˆ์ธ(pretrain), ํŒŒ์ธํŠœ๋‹(fine tuning) ๋ฐฉ์‹์œผ๋กœ ๋ฐœ์ „ํ•˜๊ณ  ์žˆ๋‹ค. ์šฐ์„  ๋Œ€๊ทœ๋ชจ ๋ง๋ญ‰์น˜๋กœ ์ž„๋ฒ ๋”ฉ์„ ๋งŒ๋“ ๋‹ค.(pretrain)
  • ์ด ์ž„๋ฒ ๋”ฉ์—๋Š” ๋ง๋ญ‰์น˜์˜ ์˜๋ฏธ์ , ๋ฌธ๋ฒ•์  ๋งฅ๋ฝ์ด ํฌํ•จ๋˜์–ด ์žˆ๋‹ค. ์ดํ›„ ์ž„๋ฒ ๋”ฉ์„ ์ž…๋ ฅ์œผ๋กœ ํ•˜๋Š” ์ƒˆ๋กœ์šด ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ๋งŒ๋“ค๊ณ  ์šฐ๋ฆฌ๊ฐ€ ํ’€๊ณ  ์‹ถ์€ ๊ตฌ์ฒด์ ์ธ ๋ฌธ์ œ์— ๋งž๋Š” ์†Œ๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์— ๋งž๊ฒŒ ์ž„๋ฒ ๋”ฉ์„ ํฌํ•จํ•œ ๋ชจ๋ธ ์ „์ฒด๋ฅผ ์—…๋ฐ์ดํŠธ ํ•œ๋‹ค. (fine tuning)
  • ex > ELMo, GPT, BERT

1.4 ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•

  • ํ–‰๋ ฌ ๋ถ„ํ•ด ๊ธฐ๋ฒ• ex> Glove
  • ์˜ˆ์ธก ๊ธฐ๋ฐ˜ ๋ฐฉ๋ฒ• ex> Word2Vec, fasttest, BERT, ELMo, GPT
  • ํ† ๋น… ๊ธฐ๋ฐ˜ ๋ฐฉ๋ฒ• ex> LDA

๋Œ“๊ธ€