๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

DataScience/NLP with Deeplearning

[Natural Language Processing with Deep Learning] 01. Intro & Word Vectors

๋ณธ ํฌ์ŠคํŒ…์€ ์Šคํƒ ํฌ๋“œ Christopher Manning ๊ต์ˆ˜๋‹˜์˜ [Stanford CS224N: Natural Language Processing with Deep Learning]์ˆ˜์—…์„ ๋ฐ”ํƒ•์œผ๋กœ ์ œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์™ธ์—๋„ ์ถ”๊ฐ€ ์„ค๋ช…์ด ํ•„์š”ํ•œ ๊ฐœ๋… ๋“ฑ ์ฐธ๊ณ ํ•œ ์ž๋ฃŒ๋Š” ๋งํฌ์™€ ์ถœ์ฒ˜๋ฅผ ๋‚จ๊ฒจ๋‘์—ˆ์Šต๋‹ˆ๋‹ค.

 

๊ฐ•์˜ ์˜์ƒ : https://www.youtube.com/watch?feature=shared&v=rmVRLeJRkl4

๊ฐ•์˜ ์ž๋ฃŒ : https://web.stanford.edu/class/cs224n/slides/


๊ฐœ์š”

2023๋…„์„ ๊ฐ•ํƒ€ํ•œ openAI์˜ ChatGPT๋ฅผ ์ด์–ด ๊ตฌ๊ธ€์˜ Bard, ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์˜ Bing์ด ์—ฐ๋‹ฌ์•„ ์ถœ์‹œ๋˜๋ฉฐ ์˜จ ์‚ฌํšŒ๊ฐ€ ์ƒ์„ฑํ˜• AI ๊ธฐ๋ฐ˜ ์–ธ์–ด ๋ชจ๋ธ์„ ์ฃผ๋ชฉํ•˜๊ณ  ์žˆ๋‹ค. ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ NLP(Natural Language Processin, ์ž์—ฐ์–ด์ฒ˜๋ฆฌ) ๊ธฐ์ˆ ์˜ ์ˆ˜์š”๋„ ์ฆ๊ฐ€ํ•˜๊ณ  ๊ฐ๊ด‘ ๋ฐ›๊ณ  ์žˆ๋‹ค.

ํ•„์ž๋„ ์—ฐ๊ตฌ์‹ค์—์„œ ํ•˜๋Š” ํ”„๋กœ์ ํŠธ์— ํ…์ŠคํŠธ๋งˆ์ด๋‹์ด ๋งŽ์ด ์“ฐ์—ฌ์„œ LDA ํ† ํ”ฝ ๋ชจ๋ธ๋ง, ๊ฐ์„ฑ๋ถ„์„ ๋“ฑ์„ ์ž„์˜๋กœ ํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ, ์ž์—ฐ์–ด์ฒ˜๋ฆฌ ๊ธฐ์ˆ ์˜ ๊ฐœ๋…๊ณผ ์›๋ฆฌ๋ฅผ ๊นŠ์ด ์ดํ•ดํ•˜๊ณ  ์ ์ ˆํžˆ ํ™œ์šฉํ•˜๊ณ ์ž ์Šคํƒ ํฌ๋“œ์˜ ๋”ฅ๋Ÿฌ๋‹ ๊ธฐ๋ฐ˜ ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•˜๊ฒŒ ๋˜์—ˆ๊ณ , ๋ฐฐ์šด ๊ฐœ๋…์„ ๋‚ด ๋‚˜๋ฆ„์˜ ์–ธ์–ด๋กœ ํ‘œํ˜„ํ•˜๊ณ ์ž ํฌ์ŠคํŒ…์„ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. 

NLP๋ž€ ๋ฌด์—‡์ธ๊ฐ€

  • ์ž์—ฐ์–ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ชฉ์ ์€ ์ปดํ“จํ„ฐ๊ฐ€ ์ž์—ฐ์–ด๋ฅผ ์ฒ˜๋ฆฌํ•˜์—ฌ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. 0๊ณผ 1๋กœ ์ •๋ณด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์ปดํ“จํ„ฐ์—๊ฒŒ ๋ณต์žกํ•œ ์ธ๊ฐ„์˜ ์–ธ์–ด๋ฅผ 0๊ณผ 1๋กœ ์ž˜ ๋ณ€ํ™˜ํ•ด์„œ ์ปดํ“จํ„ฐ๊ฐ€ ์‚ฌ๋žŒ๊ณผ ์˜์‚ฌ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š” ๋ถ„์•ผ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ธ๊ฐ„์˜ ์–ธ์–ด๋Š” 0๊ณผ 1๋กœ ํ‘œํ˜„ํ•˜๊ธฐ์—๋Š” ๋ณต์žกํ•˜๋‹ค. ๊ฐ™์€ ๋‹จ์–ด๋ผ๊ณ  ํ•  ์ง€๋ผ๋„ ๋งฅ๋ฝ์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ์“ฐ์ด๋ฉฐ, ๋” ๊นŠ๊ฒŒ ๋“ค์–ด๊ฐ€๋ฉด ๋งํ•˜๋Š” ์‚ฌ๋žŒ์˜ ํ‘œ์ •, ์†์ง“์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ์“ฐ์ด๊ธฐ๋„ ํ•œ๋‹ค.
    (๊ณ ๊ฐœ๋ฅผ ์ €์œผ๋ฉฐ “์˜ค ~ ์Œ์‹ ๋ง›์žˆ๋„ค ~” ํ•˜๋Š” ๊ฒƒ์€ ์Œ์‹์ด ๋ณ„๋กœ์ž„์„ ๋น„๊ผฌ๋Š” ๋งฅ๋ฝ์ด๋‹ค.)

  • ๋น…๋ฐ์ดํ„ฐ ์‹œ๋Œ€์— ๋ฐฉ๋Œ€ํ•œ ์–‘์˜ ๋น„์ •ํ˜• ๋ฐ์ดํ„ฐ๊ฐ€ ์Ÿ์•„์ ธ ๋‚˜์˜ค๊ณ  ์žˆ๋‹ค. NLP๋Š” ์ธ๊ฐ„๊ณผ ์ปดํ“จํ„ฐ ์ƒํ˜ธ์ž‘์šฉ์„ ๋•๋Š” ์ธ๊ณต์ง€๋Šฅ์˜ ํ•œ ๋ถ„์•ผ์ด๋‹ค.
    (์ฐธ๊ณ  : https://modulabs.co.kr/blog/natural-language-process-definition/, https://www.oracle.com/kr/artificial-intelligence/what-is-natural-language-processing/)

NLP์˜ ๋‘ ๊ฐ€์ง€ ๋ชจ๋ธ

 ๋‹ค์–‘ํ•˜๊ณ  ๋ณต์žกํ•œ ์ธ๊ฐ„ ์–ธ์–ด ์‹œ์Šคํ…œ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ ๋ชจ๋ธ์—๋Š” ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€ ๋ฐฉ์‹์ด ์žˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ๋Š” ํ†ต๊ณ„์— ๊ธฐ์ดˆํ•œ ํ†ต๊ณ„์  ์–ธ์–ด ๋ชจ๋ธ (Statistical Language Model, SLM)์ด๊ณ , ๋‘ ๋ฒˆ์งธ๋Š” ์ธ๊ณต ์‹ ๊ฒฝ๋ง์— ๊ธฐ์ดˆํ•œ ๋”ฅ๋Ÿฌ๋‹ ์–ธ์–ด ๋ชจ๋ธ(Deep Neural Network Language Model, DNN LM)์ด๋‹ค.

  • ํ†ต๊ณ„์  ์–ธ์–ด ๋ชจ๋ธ์€ ๋‹จ์–ด์˜ ๋“ฑ์žฅ ํšŸ์ˆ˜๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์กฐ๊ฑด๋ถ€ ํ™•๋ฅ ์„ ๊ณ„์‚ฐํ•œ๋‹ค. ๋ฐฉ๋Œ€ํ•œ ์–‘์˜ ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ํ•™์Šตํ•˜์—ฌ, ์–ด๋–ค ๋ฌธ์žฅ์—์„œ ์•ž ๋‹จ์–ด๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๋‹ค์Œ ๋‹จ์–ด๊ฐ€ ๋‚˜์˜ฌ ํ™•๋ฅ ์„ ๊ตฌํ•˜๋Š” ์ปจ์…‰์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด “๋‚˜๋Š” ๋ฐฅ์„” ์ด๋ผ๋Š” ๋ฌธ์žฅ์ด ์ฃผ์–ด์ง€๋ฉด ํ™•๋ฅ ์ ์œผ๋กœ “๋จน๋Š”๋‹ค.”๋ผ๋Š” ๋‹จ์–ด๊ฐ€ ๋‚˜์˜ฌ ํ™•๋ฅ ์ด ํฌ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
  • ๋”ฅ๋Ÿฌ๋‹ ์–ธ์–ด ๋ชจ๋ธ์€ ํ†ต๊ณ„์  ์–ธ์–ด ๋ชจ๋ธ์˜ ๋‹จ์ ์„ ๋ณด์™„ํ•œ ๋ชจ๋ธ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ†ต๊ณ„์  ์–ธ์–ด ๋ชจ๋ธ์€ ์กฐ๊ฑด๋ถ€ ํ™•๋ฅ ์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฉ๋Œ€ํ•œ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒฝํ—˜์ ์œผ๋กœ ํ•™์Šตํ•ด์•ผ๋งŒ ํ•œ๋‹ค.(Sparsity Problem) ๋”ฅ๋Ÿฌ๋‹ ์–ธ์–ด ๋ชจ๋ธ์€ ์‹ ๊ฒฝ๋ง์„ ํ†ตํ•ด ๋‹จ์–ด๊ฐ„ ์œ ์‚ฌ๋„๋ฅผ ๊ณ ๋ คํ•˜์—ฌ ์•ž ๋‹จ์–ด์— ์ ์ ˆํ•œ ๋’ท ๋‹จ์–ด๋ฅผ ๊ตฌํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์•ž์ด๋ž‘ ๋˜‘๊ฐ™์ด “๋‚˜๋Š” ๋ฐฅ์„” ์ด๋ผ๋Š” ๋ฌธ์žฅ์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ์€ ๊ฒฝํ—˜์ ์ธ ํ™•๋ฅ ์ด ์•„๋‹Œ “๋‚˜”์™€ “๋ฐฅ”๊ณผ ์œ ์‚ฌ๋„๊ฐ€ ๋†’์€ “๋จน๋Š”๋‹ค” ๋ผ๋Š” ๋‹จ์–ด๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
    (์ฐธ๊ณ  : https://velog.io/@kingjiwoo/2.์–ธ์–ด๋ชจ๋ธLanguage-Model , https://velog.io/@milkbutterchesse/๊ธฐ์ดˆ์ž์—ฐ์–ด์ฒ˜๋ฆฌ-7.3์‹ ๊ฒฝ๋ง์–ธ์–ด๋ชจ๋ธ)

 

 


The Course

NLP์˜ ๋‘ ๊ฐ€์ง€ ์–ธ์–ด ๋ชจ๋ธ (SLM, DLM) ์ค‘์—์„œ ํ•ด๋‹น ๊ฐ•์˜๋Š” DLM์— ์ดˆ์ ์„ ๋งž์ถฐ NLP๋ฅผ ๋‹ค๋ฃฌ๋‹ค.

์ˆ˜์—…์˜ ๋ชฉํ‘œ(๊ณง ํฌ์ŠคํŒ…์˜ ๋ชฉํ‘œ)๋Š” 

 

1. NLP๋ฅผ ์œ„ํ•œ ๋”ฅ๋Ÿฌ๋‹์˜ ๊ธฐ์ดˆ

2. ์ธ๊ฐ„ ์–ธ์–ด์™€ ์ปดํ“จํ„ฐ ์ฒ˜๋ฆฌ ๊ฐ„์˜ ์ฐจ์ด์— ๋Œ€ํ•œ ํฐ ๊ทธ๋ฆผ์˜ ์ดํ•ด

3. NLP์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ์œ„ํ•œ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

 

์ด๋‹ค. 

 

์–ธ์–ด๋Š” ์‚ฌ๋žŒ๋“ค๋กœ๋ถ€ํ„ฐ ์ดํ•ด๋˜๋Š” ์‚ฌํšŒ์  ์‹œ์Šคํ…œ์ด๋ฉฐ, ๋ชจํ˜ธํ•จ์ด ์กด์žฌํ•  ์ˆ˜ ๋ฐ–์— ์—†๋‹ค. ์‚ฌ๋žŒ๋“ค ๊ฐ„์˜ ์–ธ์–ด์—๋Š” Phrasing(๋งฅ๋ฝ ์ •๋„๋กœ ๋ฒˆ์—ญ), ํ†ค, ํƒ€์ด๋ฐ ๋“ฑ์˜ ์„ ํƒ์„ ํ†ตํ•œ ๊ฐ™์€ ๋ง์ด๋”๋ผ๋„ ๋‹ค๋ฅธ ํ‘œํ˜„์ด ์กด์žฌํ•œ๋‹ค.

๊ฐ•์˜ ์ค‘ ์‚ฌ์šฉ๋œ ์‚ฝํ™”

NLP์˜ ๊ด€์‹ฌ์€ ์ด๋Ÿฐ ๋ณต์žกํ•œ ์‚ฌ๋žŒ๋“ค์˜ ์–ธ์–ด๋ฅผ ์ปดํ“จํ„ฐ๋กœ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด, ์‚ฌ๋žŒ๋“ค์ด ์–ด๋–ค ๋ชฉ์ ์œผ๋กœ ๋‹จ์–ด๋ฅผ ์„ ํƒํ–ˆ๋Š”์ง€ ์ถ”์ธกํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ธ๊ฐ„ ์–ธ์–ด์˜ ํฅ๋ฏธ๋กœ์šด ์ ์€ ์ธ๋ฅ˜๊ฐ€ ๊ตฌ์ถ•ํ–ˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ธ๊ฐ„์˜ ์ง€๋Šฅ์— ๋Œ€ํ•œ ์—ฐ๊ตฌ๋Š” ์ง€์†๋˜์–ด ์™”๋‹ค. ์ด ์ค‘์—์„œ๋„ ์–ธ์–ด์˜ ์—ญํ• ์€ ์ค‘์š”ํ–ˆ๋‹ค. ๋น„์Šทํ•œ ์˜์žฅ๋ฅ˜์™€ ๋‹ค๋ฅด๊ฒŒ ์ธ๊ฐ„์€ ๊ฐ•๋ ฅํ•œ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ํ†ตํ•ด ๋‹ค๋ฅธ ์ƒ๋ช…์ฒด๋“ค๋ณด๋‹ค ์šฐ์„ธํ•˜๊ฒŒ ํ–ˆ๋‹ค. ์ž์‹ ์˜ ์ƒ๊ฐ์„ ๋ง๋กœ ํ‘œํ˜„ํ•˜๊ณ  ๊ธ€๋กœ ์“ฐ๋Š” ๊ฒƒ์€ ๊ธด ๊ธฐ์–ต์„ ๊ฐ–๊ฒŒ ๋˜์—ˆ๊ณ  ์ง€์‹์ด ๊ฑฐ๋ฆฌ์™€ ์‹œ๊ฐ„๊ณผ ์ƒ๊ด€ ์—†์ด ์ „๋‹ฌ๋˜๊ฒŒ ํ•˜์˜€๋‹ค.

๊ฒฐ๊ตญ AI, HCI ๊ด€์ ์—์„œ ์ฃผ์š”ํ•œ ์งˆ๋ฌธ์€ “์ปดํ“จํ„ฐ๊ฐ€ ์ธ๊ฐ„์˜ ์–ธ์–ด์— ๋‹ด๊ธด ์ •๋ณด๋ฅผ ์–ด๋–ป๊ฒŒ ์ดํ•ดํ•˜๋А๋ƒ”์— ์žˆ๋‹ค.

 


Human Language and Word Meaning

์ธ๊ฐ„์€ ์ฑ…๊ณผ ์›น ๋“ฑ์„ ํ†ตํ•ด ๋‹ค์–‘ํ•œ ์–ธ์–ด๋กœ ํ…์ŠคํŠธ๋ฅผ ๋‚จ๊ธฐ๊ณ  ์žˆ๊ณ , ์ด์ œ๋Š” ์ œ๋ฒ• ํ•ฉ๋ฆฌ์ ์œผ๋กœ ๋ฐฉ๋Œ€ํ•œ ์–‘์˜ ํ…์ŠคํŠธ ์ •๋ณด๋ฅผ ๋ชจ๊ตญ์–ด๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค.

  • GPT-3 : ์šฐ๋ฆฌ๊ฐ€ ์ž˜ ์•Œ๊ณ  ์žˆ๋Š” OpenAI๊ฐ€ ์ถœ์‹œํ•œ ์ƒˆ๋กœ์šด ๊ฑฐ๋Œ€ ์–ธ์–ด ๋ชจ๋ธ
    ๋‹ค์Œ ๋‹จ์–ด๊ฐ€ ๋ญ๊ฐ€ ์˜ฌ์ง€ ์ ๊ธฐ๋„ ํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์“ด ๋ฌธ์žฅ์— ๋Œ€ํ•ด ์ฆ‰๊ฐ์ ์ธ ๋ฌธ์žฅ์„ ์ƒ์„ฑํ•ด๋‚ธ๋‹ค. ๋‚ด๊ฐ€ ํ•„์š”ํ•œ ์ž‘์—…์„ ์ž…๋ ฅํ•˜๋ฉด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด์ฃผ๊ธฐ๋„ ํ•œ๋‹ค.
    ์ด ๋ชจ๋ธ์ด ๋Œ€๋‹จํ•œ ์ด์œ ๋Š” universal model๋กœ์จ์˜ ์ฒซ ๊ฑธ์Œ์œผ๋กœ, ์ธ๊ฐ„์˜ ์–ธ์–ด์— ๋Œ€ํ•œ ๋ชจ๋“  ์ง€์‹์„ ๊ฐ–๊ณ  ์žˆ๋Š” ๋ชจ๋ธ๋กœ์จ์˜ ์ฒซ ๊ฑธ์Œ์ด๋ผ๋Š” ๊ฒƒ์— ์žˆ๋‹ค.

GPT๋Š” ์ด ์˜ˆ์‹œ์ฒ˜๋Ÿผ ์ธ๊ฐ„์˜ ๋ฌธ์žฅ์˜ ์˜๋„๋ฅผ ํŒŒ์•…ํ•˜์—ฌ, ํ™”์ž์˜ ์˜๋„์— ๋งž๊ฒŒ ๋ฌธ์žฅ์„ ์ƒ์„ฑํ•˜๋Š” AI์ด๋‹ค.

 GPT3๋Š” ์–ธ์–ด์˜ ๋œป์„ ์•Œ๊ณ  ์žˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์–ด๋–ค ์ผ์„ ํ•˜๊ณ  ์‹ถ์€์ง€ ์ž…๋ ฅ๋œ ๋ฌธ์žฅ์„ ํ†ตํ•ด ์˜๋ฏธ๋ฅผ ํŒŒ์•…ํ•ด ์˜๋„๋ฅผ ํŒŒ์•…ํ•œ ๋‹ต๋ณ€์„ ์ค€๋‹ค.

Meaning of the word

์–ธ์–ด์˜ ์˜๋ฏธ๋Š” Signifier (๊ธฐํ‘œ), Signified(๊ธฐ์˜)๋กœ ์ด๋ฃจ์–ด์ง„๋‹ค. Signifier๋Š” ์–ธ์–ด์˜ ํ‘œ์‹œ ์ž์ฒด, ์ฆ‰ “์‚ฐ”์ด๋ผ๋Š” ๋‹จ์–ด ๊ทธ ์ž์ฒด๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๊ธฐํ˜ธ ํ˜•ํƒœ๋ฅผ ๋งํ•˜๊ณ , Signified๋Š” “๋‚˜๋ฌด๊ฐ€ ๋งŽ๊ณ  ํ‘ธ๋ฅธ, ์‹œ์›ํ•œ “ ๋“ฑ ์‚ฐ์— ๋Œ€ํ•ด ์šฐ๋ฆฌ๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ๊ธฐํ˜ธ ์˜๋ฏธ๋ฅผ ๋œปํ•œ๋‹ค.

(์ถœ์ฒ˜ : https://m.blog.naver.com/dasan11/220340193155)

์ธ๊ฐ„์˜ ์–ธ์–ด๋ฅผ ์ œ๋Œ€๋กœ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ์–ธ์–ด ๋ชจ๋ธ์€ ๊ธฐํ‘œ ๋ฟ ์•„๋‹ˆ๋ผ ๊ธฐ์˜๊นŒ์ง€ ํŒŒ์•…ํ•˜๋Š” ๋ชจ๋ธ์ด์–ด์•ผ ํ•œ๋‹ค.

๊ณผ๊ฑฐ์— ์–ธ์–ด์˜ ์˜๋ฏธ๋ฅผ ํŒŒ์•…ํ•˜๋Š” ์ž‘์—…์€ WorNet์ด๋ผ ๋ถˆ๋ฆฌ๋Š” ์‚ฌ์ „๊ณผ ๊ฐ™์€ ๊ฒƒ์„ ์ œ์ž‘ํ•˜์—ฌ ๋™์˜์–ด(synonym)์™€ ์ƒ์˜์–ด(hypernyms)(=๋‹จ์–ด ๊ฐ„์˜ ๊ด€๊ณ„)๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค. ๋‹จ์–ด ๊ฐ„์˜ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด ์ธ๊ฐ„์˜ ์–ธ์–ด๋ฅผ ์ดํ•ดํ–ˆ๋‹ค.

 

  • WordNet์˜ ๋ฌธ์ œ
    ๋‰˜์•™์Šค๋ฅผ ํŒŒ์•…ํ•˜๊ธฐ ์–ด๋ ต๊ณ , ๋‹จ์–ด์˜ ์ƒˆ๋กœ์šด ๋œป์ด ๋ˆ„๋ฝ๋  ์ˆ˜ ์žˆ๋‹ค. ๋ฌด์—‡๋ณด๋‹ค ์ผ์ผํžˆ ๋‹จ์–ด๋ฅผ ๋งคํ•‘ํ•ด์•ผ ํ•˜๋ฏ€๋กœ, ์‚ฌ๋žŒ์˜ ๋…ธ๋™๋ ฅ์ด ํ•„์š”ํ•˜๋‹ค. 
    ์ •ํ™•ํ•œ ๋‹จ์–ด ๊ฐ„ ์œ ์‚ฌ์„ฑ์„ ๊ณ„์‚ฐํ•˜๊ธฐ๋„ ์–ด๋ ต๋‹ค.
    • ์ „ํ†ต์  ์–ธ์–ด ๋ชจ๋ธ์˜ ๋ฌธ์ œ๋Š” ๋‹จ์–ด๋ฅผ ์ด์‚ฐ์ ์ธ ๊ธฐํ˜ธ๋กœ ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ฆ‰ ๋ฌธ์žฅ์—์„œ ์ž‘์šฉํ•˜๋Š” ์ „์—ญ์ ์ธ ์˜๋ฏธ๋ฅผ ํŒŒ์•…ํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ์ง€์—ญ์ ์ธ(localist) ์˜๋ฏธ๋งŒ์„ ๊ณ ๋ คํ•˜๋Š” ๊ฒƒ์ด๋‹ค.์ด๋Ÿฐ ๋ฐฉ์‹์€ ๋˜ํ•œ ๋‹จ์–ด ๊ฐ„์˜ ์œ ์‚ฌ์„ฑ์„ ๊ณ„์‚ฐํ•  ์ˆ˜ ์—†๋‹ค.
    • ์ด๋Ÿฐ ์ง€์—ญ์ ์ธ ์˜๋ฏธ ๊ณ ๋ ค๋Š” ๋‹จ์–ด์˜ ๊ฐฏ์ˆ˜๋งŒํผ ๋ฒกํ„ฐ ๊ณต๊ฐ„์ด ์ปค์ง€๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜๊ธฐ๋„ ํ•œ๋‹ค. (๋‹จ์–ด์˜ ๊ฐฏ์ˆ˜๋งŒํผ ๋ฒกํ„ฐํ™”ํ•ด์„œ ์˜๋ฏธ๋ฅผ ์ €์žฅํ•˜๋ฏ€๋กœ)

 

 ์ด๋Ÿฐ ์‹์œผ๋กœ Motel๊ณผ Hotel์€ ์ธ๊ฐ„์˜ ์–ธ์–ด๋กœ๋Š” ์œ ์‚ฌํ•œ ์˜๋ฏธ๋กœ ์‚ฌ์šฉ๋˜์ง€๋งŒ, ์ธ์ฝ”๋”ฉ ๋ฐฉ์‹์œผ๋กœ ๋ดค์„ ๋•Œ ์ปดํ“จํ„ฐ๋Š” ๋‹จ์–ด ๊ฐ„์˜ ์œ ์‚ฌ์„ฑ์„ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์—†๋‹ค. (์˜ˆ๋ฅผ ๋“ค์–ด ์ „ํ˜€ ๋‹ค๋ฅธ ์˜๋ฏธ์ธ ‘์‚ฌ๊ณผ’๊ฐ€ apple = [0000000000000100]์œผ๋กœ ์ง€์ •๋˜๋ฉด, ์ปดํ“จํ„ฐ๋Š” 1์˜ ๊ฐฏ์ˆ˜์™€ ๊ฑฐ๋ฆฌ๋งŒ ๋ณด๊ณ  ์‚ฌ๊ณผ, ๋ชจํ…” ๊ฐ„์˜ ๊ด€๊ณ„์™€ ๋ชจํ…”, ํ˜ธํ…” ๊ด€์˜ ๊ด€๊ณ„๋ฅผ ๊ฐ™๋‹ค๊ณ  ์ดํ•ดํ•˜๊ฒŒ ๋œ๋‹ค. / ๋˜ํ•œ ์ˆ˜ํ•™์ ์œผ๋กœ ๋ด๋„, ๋‘ ๋ฒกํ„ฐ์˜ ๊ด€๊ณ„๋Š” ์ง๊ตํ•˜๋ฏ€๋กœ ์œ ์‚ฌ์„ฑ์€ 0์ด๋‹ค.)

 

  • Distribution Semantics
    “You shall know a word by the company it keeps”
    ํ†ต๊ณ„์  ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ์˜ ๊ฐ€์žฅ ์„ฑ๊ณต์ ์ธ ์•„์ด๋””์–ด : ํ•˜๋‚˜์˜ ๋‹จ์–ด์™€ ํ•จ๊ป˜ ์“ฐ์ธ ๋‹จ์–ด๋“ค์€ ๊ฐ™์€ ๋งฅ๋ฝ์ด๋‹ค.

์œ ์‚ฌํ•œ ๋ฌธ๋งฅ์— ๋‚˜ํƒ€๋‚˜๋Š” ๋‹จ์–ด์˜ ๋ฒกํ„ฐ์™€ ์œ ์‚ฌํ•˜๋„๋ก ์„ ํƒ๋œ ๊ฐ ๋‹จ์–ด์— ๋Œ€ํ•ด ๋ฐ€์ง‘๋œ ๋ฒกํ„ฐ(dense vector)๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ๋ฒกํ„ฐ ๋‚ด์ (์Šค์นผ๋ผ)์œผ๋กœ ์œ ์‚ฌ์„ฑ์„ ์ธก์ •

→ ์ด ๋•Œ ๋งŒ๋“ค์–ด์ง„ ๋‹จ์–ด ๋ฒกํ„ฐ๋“ค์„ word embeddings๋ผ๊ณ  ํ•œ๋‹ค.

์ด๋Ÿฐ ์‹์œผ๋กœ ํ‘œํ˜„๋œ ๋‹จ์–ด๋Š” ๋” ์ด์ƒ ์ง€์—ญ์ ์ธ ์˜๋ฏธ๋ฅผ ๊ฐ–์ง€ ์•Š๋Š”๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•œ n๊ฐœ ์ฐจ์›์—์„œ์˜ ์˜๋ฏธ๋ฅผ ๊ฐ–๊ธฐ ๋•Œ๋ฌธ์—, ๋งฅ๋ฝ์— ๋”ฐ๋ผ ํ‘œํ˜„๋  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๊ณ  ์ด๊ฒƒ์„ distributed representation ๋˜์—ˆ๋‹ค๊ณ  ํ‘œํ˜„ํ•œ๋‹ค.

 

 


Word2vec introduction

  • Word2Vec
    • ๋‹จ์–ด ๋ฒกํ„ฐ๋ฅผ ํ•™์Šตํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ
      ํฐ ๋ง๋ญ‰์น˜(corpus)๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์„ ๋•Œ ์‚ฌ์ „์— ์žˆ๋Š” ๋ชจ๋“  ๋‹จ์–ด๋ฅผ ๋ฒกํ„ฐ๋กœ ํ‘œํ˜„
    • ๊ฐ๊ฐ์˜ ๋‹จ์–ด๊ฐ€ ๊ฐ€์งˆ ์ตœ์ ์˜ ๋ฒกํ„ฐ๋Š” ๋ฌด์—‡์ธ๊ฐ€? 
      ์— ๋Œ€ํ•˜์—ฌ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. 

  • center word “c”์™€ context(outside) words o์— ๋Œ€ํ•ด, ๊ฐ๊ฐ์˜ ์œ„์น˜(c์˜ ์œ„์น˜์ธ t์— ๋Œ€ํ•ด)๋ฅผ ๊ฐ–๋„๋ก ๋ถ€์—ฌ

  • c์™€ o ์‚ฌ์ด์˜ ์œ ์‚ฌ๋„๋ฅผ ์ธก์ •ํ•˜์—ฌ c์— ๋Œ€ํ•œ o์˜ ํ™•๋ฅ  ๊ณ„์‚ฐ → ํ™•๋ฅ ์„ ์ตœ๋Œ€ํ™”ํ•˜๋„๋ก ๊ณ„์‚ฐ ๋ฐ˜๋ณต (t์˜ ์œ„์น˜๋ฅผ ๋ณ€๊ฒฝํ•ด๊ฐ€๋ฉด์„œ ์ˆ˜ํ–‰)

Word2vec objective function gradients

  • Word2Vec์˜ ๋ชฉ์  ํ•จ์ˆ˜
    • ๋‹ค๋ฅธ ๋จธ์‹ ๋Ÿฌ๋‹ ๋ฐฉ๋ฒ•๊ณผ ๋น„์Šทํ•˜๊ฒŒ Word2vec ์—ญ์‹œ ์˜ˆ์ธก์˜ ์ •ํ™•๋„๋ฅผ ์ตœ๋Œ€ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋ชฉ์ ํ•จ์ˆ˜(๋น„์šฉํ•จ์ˆ˜)๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค.
    • ๊ฐ๊ฐ์˜ ์œ„์น˜ t(1…T)์— ๋Œ€ํ•ด, ์ค‘์‹ฌ ๋‹จ์–ด Wj๋“ค์— ๋Œ€ํ•ด m๊ฐœ์˜ ๋ฌธ๋งฅ ๋‹จ์–ด์˜ ์กฐ๊ฑด๋ถ€ ํ™•๋ฅ ์˜ ๊ณฑ์ด Wordvec์—์„œ์˜ ์šฐ๋„ํ•จ์ˆ˜์ด๋‹ค.

 

์ค‘์‹ฌ๋‹จ์–ด์— ๋Œ€ํ•œ ๋ฌธ๋งฅ๋‹จ์–ด์˜ ์กฐ๊ฑด๋ถ€ ํ™•๋ฅ ์„ ์–ด๋–ป๊ฒŒ ๊ตฌํ•˜๋Š”๊ฐ€ ?

๋‹จ์–ด w์— ๋Œ€ํ•˜์—ฌ, ๋ฒกํ„ฐ v_w๊ฐ€ w๊ฐ€ ์ค‘์‹ฌ๋‹จ์–ด์ผ ๋•Œ ๋ฒกํ„ฐ์ด๊ณ  ๋ฒกํ„ฐ u_w๊ฐ€ u๊ฐ€ ๋ฌธ๋งฅ๋‹จ์–ด์ผ ๋•Œ ๋ฒกํ„ฐ๋ผ๋ฉด ์กฐ๊ฑด๋ถ€ ํ™•๋ฅ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ณ„์‚ฐ๋œ๋‹ค.

  1. ๋‚ด์ ์„ ํ†ตํ•ด o์™€ c์˜ ์œ ์‚ฌ๋„ ๊ตฌํ•˜๊ธฐ : ๋†’์€ ๋‚ด์ ๊ฐ’์ด ๋†’์€ ํ™•๋ฅ (์œ ์‚ฌ๋„)์ด๋‹ค. (→ ๋ถ„์žํ•ญ)
  2. ์ง€์ˆ˜ํ™”(exponentiation)ํ•ด์„œ ๋ชจ๋“  ๊ฐ’์„ ์–‘์ˆ˜๋กœ ๋ฐ”๊พผ๋‹ค. (๋ถ„๋ชจ, ๋ถ„์ž ๋ชจ๋‘)
    • ํ™•๋ฅ ์€ ์Œ์ˆ˜์ผ ์ˆ˜ ์—†์œผ๋ฏ€๋กœ
  3. ๋ชจ๋“  ์–ดํœ˜์— ํ™•๋ฅ ๊ฐ’์„ ๋ถ€์—ฌํ•˜๊ธฐ ์œ„ํ•ด ์ •๊ทœํ™”ํ•œ๋‹ค. (→ ๋ถ„๋ชจํ•ญ)
    • 1๋กœ ์ •๊ทœํ™”๋ฅผ ์ง„ํ–‰ํ•จ

์ด ๋ชจ๋“  ๊ณผ์ •์ด Softmax Function์ด๋‹ค. softmax๋Š” ํŠน์ดํ•œ ๋‹จ์–ด์—๋„ ์ž‘์€ ํ™•๋ฅ ์ด๋ผ๋„ ๋ถ€์—ฌํ•œ๋‹ค.

 

์šฐ๋„ํ•จ์ˆ˜์˜ ๋ชฉ์ ํ•จ์ˆ˜๋Š” ์šฐ๋„ํ•จ์ˆ˜๋ฅผ ๋กœ๊ทธํ™”ํ•˜์—ฌ ๊ณ„์‚ฐ์„ ์‰ฝ๊ฒŒ ํ•œ ํ›„, ์Œ์ˆ˜๋ฅผ ์ทจํ•˜์—ฌ ์ตœ์†Œ๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ๋กœ ๋ณ€ํ˜•์‹œํ‚จ Negative Log Likelihood ํ•จ์ˆ˜์ด๋‹ค. Gradient Descent๋ฅผ ์ด์šฉํ•˜๋ฉด ์ตœ์†Œ๊ฐ’์„ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ’€ ์ˆ˜ ์žˆ๋‹ค.

์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์†์‹ค(๋ชฉ์ ํ•จ์ˆ˜)๋ฅผ ์ตœ์†Œํ™”ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ธ๊ฐ€?

theta๋Š” ๋ชจ๋ธ์˜ ๋ชจ๋“  ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ํ•˜๋‚˜์˜ ๊ธด ๋ฒกํ„ฐ์ด๊ณ , ์ด ๊ฒฝ์šฐ d๊ฐœ์˜ ์ฐจ์›์„ ๊ฐ€์ง„ V๊ฐœ์˜ ๋‹จ์–ด์˜ ์ง‘ํ•ฉ์ด ๋ฒกํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค. ๋ชจ๋“  ๋‹จ์–ด๋Š” ์ค‘์‹ฌ๋‹จ์–ด์ผ ๋•Œ v, ๋ฌธ๋งฅ๋‹จ์–ด์ผ u๋กœ ์ด ๋‘ ๊ฐœ์˜ ๋ฒกํ„ฐ๋ฅผ ๊ฐ–๋Š”๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ theta ๋ฒกํ„ฐ์˜ ํฌ๊ธฐ๋Š” d X V X 2(๋‘ ๊ฐœ์˜ ๋ฒกํ„ฐ)์ธ ๊ฒƒ์ด๋‹ค.

์†์‹คํ•จ์ˆ˜๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ชจ๋“  ๋ฒกํ„ฐ๋“ค์˜ gradients๋ฅผ ๊ณ„์‚ฐํ•ด์•ผ ํ•œ๋‹ค.

 

์†์‹คํ•จ์ˆ˜ ๊ณ„์‚ฐ๋ฒ•

 ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํ•ต์‹ฌ์€ ์ค‘์‹ฌ๋‹จ์–ด์˜ ๋ณ€ํ™”์— ๋”ฐ๋ผ, ๋น„์šฉํ•จ์ˆ˜๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ, ๋ณ€์ˆ˜๋Š” ์ค‘์‹ฌ๋‹จ์–ด ๋ฒกํ„ฐ (V_c)์ด๋‹ค. V_c๋ฅผ ๋ฏธ๋ถ„ํ•˜์—ฌ ๋ฏธ๋ถ„๊ฐ’์ด 0์ด ๋˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ฐพ์œผ๋ฉด ๋œ๋‹ค.

(1) ๋ถ„์žํ•ญ์˜ ๋ฏธ๋ถ„๊ฒฐ๊ณผ์ด๋‹ค. log์™€ ์ง€์ˆ˜๋Š” ์ƒ์‡„๋˜๊ณ , v_c๋Š” ๋ฏธ๋ถ„ํ•˜์—ฌ 1์ด ๋˜๋ฏ€๋กœ u_0 ๋ฒกํ„ฐ๋งŒ ๋‚จ๋Š”๋‹ค.

(2) ๋ถ„๋ชจํ•ญ์˜ ๋ฏธ๋ถ„์€ ์กฐ๊ธˆ ๋ณต์žกํ•˜๋‹ค. ํ•จ์ˆ˜ ์•ˆ์— ํ•จ์ˆ˜๊ฐ€ ์žˆ๋Š” ๊ผด์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. (log ๋’ค์— ์‹œ๊ทธ๋งˆ๊ฐ€ ์žˆ๋Š” ๊ผด) ์ด ๋•Œ๋Š” Chain Rule์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

 

chain rule์„ ์ ์šฉํ•˜์—ฌ log ํ•จ์ˆ˜์˜ ๋„ํ•จ์ˆ˜์™€ ์‹œ๊ทธ๋งˆ ์•ˆ์— ์žˆ๋Š” ์ง€์ˆ˜ ํ•จ์ˆ˜์˜ ๋„ํ•จ์ˆ˜๋ฅผ ๊ตฌํ•œ ๊ฐ’์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

 

์ตœ์ข…์ ์œผ๋กœ ๊ตฌํ•ด์ง„ ์†์‹คํ•จ์ˆ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๊ณ , ์ฒซ ๋ฒˆ์งธ ํ•ญ์ด ๋ฏธ๋ถ„๋œ ๊ฐ’(u_0)์€ ๊ณง ๊ด€์ธก์น˜(observation)์„ ์˜๋ฏธํ•˜๋ฏ€๋กœ, ์†์‹คํ•จ์ˆ˜์˜ v_c์— ๋Œ€ํ•œ ๋ฏธ๋ถ„๊ฐ’์€ ๊ด€์ธก์น˜์—์„œ ๊ธฐ๋Œ“๊ฐ’์„ ๋บ€ ๊ฐ’์ด ๋œ๋‹ค.

 

์†์‹คํ•จ์ˆ˜๊ฐ€ ์ตœ์†Œ๊ฐ€ ๋˜๋Š” ์ง€์ ์„ ์ฐพ๊ธฐ ์œ„ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๊ฒฝ์‚ฌํ•˜๊ฐ•๋ฒ•(gradient descent algorithm)์ด๋ฉฐ, ๋‹ค์Œ ์‹œ๊ฐ„์— optimization basic๊ณผ ํ•จ๊ป˜ ๋‹ค๋ฃจ๋„๋ก ํ•˜๊ฒ ๋‹ค.


 

 

๋ฐฐ์šฐ๋Š” ๊ณผ์ •์—์„œ ์ž‘์„ฑํ•˜๋‹ค ๋ณด๋‹ˆ ๋ถ€์กฑํ•œ ์ ์ด ๋งŽ๊ณ  ํ‹€๋ฆฐ ์ ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ˜น์‹œ ์„ค๋ช…์ด ์ถ”๊ฐ€์ ์œผ๋กœ ํ•„์š”ํ•œ ๋ถ€๋ถ„์ด๋‚˜ ์ˆ˜์ •ํ•ด์•ผ ํ•  ๋ถ€๋ถ„ ๋ฐœ๊ฒฌํ•˜์‹œ๋ฉด ํ”ผ๋“œ๋ฐฑ ์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.