Skip to content

Peer_Session_Week_2

JAEHEE RYU edited this page May 24, 2021 · 3 revisions

Day06๐Ÿ˜ฅ

2021.05.03 (์›”)

๋Œ€ํšŒ ํ† ํฌ

โค๏ธRetriever

  • ํƒœ์–‘ : BM25 ํ† ํฌ๋‚˜์ด์ฆˆ ์•„๋ฌด๊ฒƒ๋„ ์•ˆ ํ•œ ๊ฒŒ ์„ฑ๋Šฅ ๊ฐ€์žฅ ์ข‹์•˜์Œ (๋ฒ ์ด์Šค๋ผ์ธ morphs ์‚ฌ์šฉ)
  • ์ตํšจ Elasticsearch Guide 7.12
  • ์•™์ƒ๋ธ” ์‹œ๋„ โ†’ ์„ฑ๋Šฅ ํ•˜๋ฝ
  • ํƒœ์–‘ : ์•™์ƒ๋ธ”์„ ์–ด๋–ป๊ฒŒ ?
    • ์ตํšจ : k=1๋กœ ํ•ด์„œ ๊ฐ ๋ชจ๋ธ์ด ์˜ˆ์ธกํ•œ ๊ฒƒ์„ Count ๊ธฐ์ค€์œผ๋กœ ์•™์ƒ๋ธ” ์‹œ๋„ํ•จ. k์˜ ๊ฐ’์„ ๋†’๊ฒŒ ์ฃผ๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์œผ๋‚˜, 1๊ฐœ๋ฅผ ์“ฐ๋Š”๊ฒŒ ์ข‹๋‹ค๋Š” ๊ธ€์„ ๋ดค๋‹ค.
      Evaluating QA: the Retriever & the Full QA System
  • ์ข…ํ—Œ : Votingํ•  ๋•Œ์—๋Š” k๋ฅผ ๋” ๋งŽ์ด ์“ฐ๋Š”๊ฒŒ ์ข‹์ง€ ์•Š์„๊นŒ?
    • ์ตํšจ : ๊ฒฝํ—˜์ƒ k๊ฐ€ ์˜ฌ๋ผ๊ฐˆ์ˆ˜๋ก ๋–จ์–ด์ง€๋”๋ผ.
  • ํƒœ์–‘ : BM25๊ฐ€ ๋” ์ข‹๋‹ค๊ณ  ์ƒ๊ฐ BM25๋ž‘ Dense Embedding์—์„œ ๊ฐ ์˜ˆ์ธก์„ ๋‚ด๊ณ , BM25์—์„œ ๋‚ธ ์˜ˆ์ธก์„ ๊ธฐ์ค€์œผ๋กœ Dense Embedding๊ณผ๋„ ๋งค์นญ์ด ๋˜๋Š”์ง€๋ฅผ ์ฒดํฌํ•˜๋Š” ํ˜•ํƒœ๋ฅผ ๊ตฌ์ƒ์ค‘์ž„.
  • ์ข…ํ—Œ : Dense Embedding์—์„œ ์„ฑ๋Šฅ ํ–ฅ์ƒ ๊ฐ€๋Šฅ์„ฑ์ด ๋ณด์ธ๋‹ค. ์ž๊พธ Cuda Error๊ฐ€ ๋‚˜์„œ ์•„์ง์€ ๋ฉˆ์ถฐ์žˆ๋‹ค. ์ค„๋ฐ”๊ฟˆ ๋ฌธ์ž์™€ ๊ฐ™์€ ํ…์ŠคํŠธ๋Š” ์ „์ฒ˜๋ฆฌ๋กœ ์ง€์šฐ๊ณ  ์‚ฌ์šฉํ–ˆ๋‹ค.
  • ์ข…ํ—Œ : ์˜ค๋Š˜ ๊ฐ•์˜ ์‹ค์Šต์—์„œ ์‚ฌ์šฉํ•  ๋•Œ์—๋Š” ํ•™์Šต์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ์—†๊ณ , ๋ถˆ๋Ÿฌ๋‹ค ์“ฐ๋Š” ๊ฒƒ๋งŒ ์žˆ๋”๋ผ.
  • ์ตํšจ & ์ข…ํ—Œ & ํƒœ์–‘ : ์•„๋ฌดํŠผ Dense Embedding๋„ ํ™œ์šฉํ•ด์„œ ์˜ˆ์ธก์„ ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

๐Ÿ’™Reader

  • ์ตํšจ
    • Random Mask ์”Œ์›Œ๋ดค๋‹ค โ†’ validation์—์„œ ํšจ๊ณผ ๆœ‰
    • but, ์ œ์ถœ ์‹œ ์„ฑ๋Šฅ ํ•˜๋ฝ
    • ์ „์ฒ˜๋ฆฌ๋Š” ๋ฌด์กฐ๊ฑด ํ•„์š”ํ•  ๋“ฏ(KorQuAD๋Š” ๋ณ„๋‹ค๋ฅธ ์ฒ˜๋ฆฌ ์—†์ด ์„ฑ๋Šฅ์ด ์ž˜ ๋‚˜์˜ค๋Š” ๊ฒƒ์œผ๋กœ ๋ดค์„ ๋•Œ, ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋งŒ ์ž˜ํ•ด๋„ ์ข‹์€ ํšจ๊ณผ๊ฐ€ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.)
      1. \n โ‡’ ๊ฐœํ–‰ ๋ฌธ์ž ์ „์ฒ˜๋ฆฌ
      2. ์ด๋ชจํ‹ฐ์ฝ˜ ์ „์ฒ˜๋ฆฌ
  • ์ˆ˜์ง€ : ElectraForQA๋ฅผ ํ•˜๋Š” ์ค‘์ž„. monologg๋‹˜์ด KorQuAD์—์„œ 90๋ช‡%๋ฅผ ์ฐ์—ˆ๋‹ค๋”๋ผ. ๋ฒ ์ด์Šค๋ผ์ธ Tokenizer์™€์˜ ์ฐจ์ด๊ฐ€ ์žˆ์–ด์„œ, ๋‘ ์†์„ฑ์„ ๊ตฌํ˜„ํ•ด์•ผ ํ•จ. ์ด๊ฑธ ์ž˜ ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ์ด ๋ฒ ์ด์Šค๋ผ์ธ์— ๋งž๋„๋ก ๋ฐ”๊พธ๊ณ , ์šฐ๋ฆฌ ๋ฐ์ดํ„ฐ๋กœ ์žฌํ•™์Šต ์‹œํ‚ค๋Š”๊ฒŒ ์˜๋ฏธ๊ฐ€ ์žˆ์„๊นŒ? ์ด ์ž‘์—…์„ ํ•˜๋Š”๊ฒŒ ํšจ์œจ์ ์ด๊ธด ํ• ๊นŒ?์— ๋Œ€ํ•œ ์˜๋ฌธ๋„ ์žˆ๋‹ค.
    • ์ตํšจ : Fast Tokenizer์—๋งŒ ํ•ด๋‹น ์†์„ฑ์ด ์—†๋Š” ๊ฒƒ์ธ๊ฐ€?
      • ์ˆ˜์ง€ : ํ˜„์žฌ ์‚ฌ์šฉํ•˜๋ ค๋Š” Tokenizer๋Š” Fast๊ฐ€ ์—†๊ณ , ๊ทธ๋Ÿฌ๋‹ค๋ณด๋‹ˆ ๋ฒ ์ด์Šค๋ผ์ธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์†์„ฑ์ด ์—†๋‹ค.
    • ์ข…ํ—Œ & ์žฌํฌ : monologg๋‹˜์ด ํ•œ ํ•™์Šต ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ณ  ํ™œ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ?
    • ์ตํšจ : KoElectra๋กœ ๋Œ๋ฆด๋•Œ ๋Œ์•„๋Š” ๊ฐ”๋‹ค.
      • ์ˆ˜์ง€ : Fine Tuning๋œ Model์ด ์•ˆ๋Œ์•„๊ฐ€๊ณ  ์žˆ๋‹ค.
    • ์žฌํฌ & ์ตํšจ : ์ผ๋‹จ ํ•ด๋ณด๋Š” ๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.
  • ํƒœ์–‘ : ์กฐ๊ธˆ ๋‹ค๋ฅธ Context๋ฅผ ๋„ฃ๊ณ , ์ •๋‹ต์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ํ•™์Šต์‹œํ‚ค๋ฉด ์ข‹์ง€ ์•Š์„๊นŒ?
    • ์žฌํฌ : ์ •๋‹ต์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ํ•™์Šต์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.
    • ์ˆ˜์ง€ : ์ข…ํ—Œ๋‹˜๊ป˜ ์ฝ์–ด๋‹ฌ๋ผ๊ณ  ํ•œ ๋…ผ๋ฌธ์ด ๋น„์Šทํ•œ ๋‚ด์šฉ์ด ๋‹ด๊ฒจ์žˆ๋‹ค.

Day07โ˜•

2021.05.04 (ํ™”)

๋Œ€ํšŒ ํ† ํฌ

โค๏ธRetriever

  • ํƒœ์–‘ : ์ „์ฒ˜๋ฆฌ๋ฅผ ์–ด๋Š ๋‹จ๊ณ„์—์„œ ํ™œ์šฉํ–ˆ๋‚˜?
    • ์ตํšจ : Retrieval ๋‹จ๊ณ„์—์„œ๋ถ€ํ„ฐ ํ™œ์šฉํ–ˆ๋‹ค. ์ด๋•Œ ์„ฑ๋Šฅํ–ฅ์ƒ์ด ์žˆ์ง€๋Š” ์•Š์•˜๊ณ , ์ด ์ „์ฒ˜๋ฆฌ ๋œ Text๋ฅผ Reader์—์„œ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ด ๋‹จ๊ณ„์—์„œ๋ถ€ํ„ฐ ์ฒ˜๋ฆฌํ•˜๊ณ  ์‚ฌ์šฉํ•จ.
  • ์ข…ํ—Œ : ์–ด์ œ ๋งํ–ˆ๋˜ Cuda Error์˜ ์›์ธ์„ ์ฐพ์•˜๋‹ค. (ํ•™์Šต ์ •๋ฆฌ์— ์˜ฌ๋ ค๋†จ๋‹ค.) ์›๋ž˜๋Š” Context ์ „์ฒด์— ๋Œ€ํ•ด์„œ Index๋ฅผ ์žก์•„์ฃผ๋ ค๊ณ  ํ–ˆ์Œ. ์‚ฌ์ „ ํ•™์Šต๋œ ๋ชจ๋ธ์€ 512 Size์ด๊ธฐ ๋•Œ๋ฌธ์—, Index๊ฐ€ ๋„˜์–ด๊ฐ€๋ฉด ๋ถ€๋ฅผ์ˆ˜๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์ž„. ๊ทธ๋ž˜์„œ, ๋ฌธ์žฅ๋‹จ์œ„๋กœ ๋Š์–ด์„œ 512์ด๋‚ด๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋„๋ก ํ–ˆ์Œ. ๊ทผ๋ฐ, ์ด ์ดํ›„์— Cuda Error๊ฐ€ ๋‚จ. ํ•œ ๋ฌธ์žฅ์ธ๋ฐ๋„, 512๋ฅผ ๋„˜์–ด๊ฐ€๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด์—ˆ์Œ. ๊ทธ๋ž˜์„œ 512๊ฐ€ ๋„˜์–ด๊ฐ€๋Š” ๋ฌธ์žฅ์— ๋Œ€ํ•ด์„œ๋Š” ๊ทธ ์ดํ›„ Index๋ฅผ ๋™์ผํ•˜๊ฒŒ 512๋กœ ์ฒ˜๋ฆฌํ•จ. ๋Œ๋ ค๋ณด๊ณ  ์„ฑ๋Šฅ ์ฒดํฌ๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด ์ž„์‹œ๋ฐฉํŽธ์— ๊ฐ€๊นŒ์šด ์ฒ˜๋ฆฌ๋ฅผ ํ•œ ์ƒํ™ฉ์ž„.
    • ์ตํšจ : ๋ถˆ์šฉ์–ด์™€ ๊ฐ™์€ ์ •๋ณด๋ฅผ ์ œ๊ฑฐํ•˜๊ณ ๋‚˜๋ฉด ๋ชจ๋“  ๋ฌธ์žฅ์„ 512 ์ด๋‚ด๋กœ ๋„ฃ์„ ์ˆ˜ ์žˆ์„์ง€๋„ !
  • ์ตํšจ : Dense Embedding์„ ํ™œ์šฉํ•ด๋ณด์ž. Elastic Search๋กœ ํ•œ 20๊ฐœ๋ฅผ ๋ฝ‘๊ณ , ๊ทธ ๋‹ค์Œ์— Dense Embedding์„ ํ†ต๊ณผํ•ด์„œ ์ตœ์ข… N๊ฐœ์˜ Document๋ฅผ ์ฐพ๋Š” ๊ฒƒ์€ ์–ด๋–จ๊นŒ?
    • ์ข…ํ—Œ : ์ƒ๋™ํ•œ ์ƒ๊ฐ์„ ํ–ˆ๋‹ค. ๋‹ค๋งŒ, ์ˆœ์„œ๋Š” ์–ด๋–ค๊ฒŒ ๋” ์ข‹์„์ง€๋Š” ๊ณ ๋ฏผ์ด ๋œ๋‹ค.
    • ์ตํšจ : Top20์ด๋ฉด ๊ฑฐ์˜ 100% ์ •๋‹ต์— ํ•ด๋‹นํ•˜๋Š” Document๋ฅผ ์ฐพ์„ ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋Ÿผ, ์ด ์ค‘์—์„œ Dense Embedding์„ ํ†ต๊ณผํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค.
    • ํƒœ์–‘ : ์ฟผ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ „์ฒด ๋ฌธ์žฅ๊ณผ์˜ ์œ ์‚ฌ๋„๋ฅผ ๊ตฌํ•˜๊ณ  ์œ ์‚ฌ๋„๊ฐ€ ๋†’์€ ๋ฌธ์žฅ์„ ์ž…๋ ฅ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์–ด๋–จ๊นŒ?

๐Ÿ’™Reader

  • ์ตํšจ : ์ „์ฒ˜๋ฆฌ๋ž‘, Concat ๋‘๊ฐœ ์จ๋ดค๋Š”๋ฐ, ๋‘˜ ๋‹ค ์„ฑ๋Šฅ ํ–ฅ์ƒ์ด ์žˆ์—ˆ๋‹ค.
  • ํƒœ์–‘: concat ํ•œ ๊ฑฐ ์จ๋ดค๋Š”๋ฐ 5~7์ด ๊ฐ€์žฅ ์ ๋‹นํ–ˆ์Œ
    • ์ตํšจ: 5๊ฐœ or 7๊ฐœ?
      • ํƒœ์–‘: 7๊ฐœ (10๊ฐœ๋Š” ํ™•์‹คํžˆ ์•„๋‹˜ โ‡’ EM์€ ์˜ฌ๋ผ๊ฐ”๋Š”๋ฐ F1 ์Šค์ฝ”์–ด๋Š” ์ข€ ๋–จ์–ด์ง)
  • ์ˆ˜์ง€ : offset_mapping๊ณผ overflow_to_sample_mapping์„ ๊ตฌํ˜„ํ•˜๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ, ๊ฒฐ๊ณผ๋ก ์ ์œผ๋กœ label์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ’๋งŒ ์ฐพ์œผ๋ฉด ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•จ. ๊ทธ๋ž˜์„œ, ํ˜•์‹์— ๋งž๊ฒŒ ๋งŒ๋“ค์–ด๋งŒ ์ฃผ๋ฉด ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Œ. Logic ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ผํ•œ ํšจ๊ณผ๋ฅผ ๋‚ด๋„๋ก ์œ„๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.
  • ์žฌํฌ : Span ๋‹จ์œ„ Random Masking ์„ค๋ช… (Notion ๋งํฌ ์ฐธ์กฐ) ๋‹จ์–ด์˜ ์‹œ์ž‘์„ ์ฐพ๋Š” Logic์ด ์žˆ๊ณ , Randomํ•œ ๊ธธ์ด๋งŒํผ์˜ Token์„ Maskingํ•˜๋Š” ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Œ. MLM๊ณผ SBO์˜ Task๋กœ Loss๋ฅผ ๊ตฌํ•˜๋Š” ํ˜•ํƒœ๋กœ ํ•™์Šต์„ ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ. ์ด๋ฅผ ํ†ตํ•ด์„œ, Token์„ ์˜๋ฏธ๋‹จ์œ„๋กœ ์ž˜ ๊ตฌ๋ถ„ํ•˜๋Š” Model์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฆฌ๋ผ ์ƒ๊ฐ ๋จ.
  • ์ตํšจ : Token ๋‹จ์œ„ Random Masking์€ ์„ฑ๋Šฅ์ด ๋–จ์–ด์กŒ๋‹ค.
    • ์ข…ํ—Œ : Question์ชฝ์— Masking์„ ํ•ด๋ณด๋Š” ๊ฑด ์–ด๋–จ๊นŒ?
  • ์ˆ˜์ง€ : ํƒœ์–‘๋‹˜์ด ๋งŒ๋“  Dataset ์ ์šฉํ•ด๋ณด์•˜๋Š”๊ฐ€? ์ตํšจ๋‹˜?
    • ์ตํšจ : ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ ์“ฐ๋Š” ๊ฒƒ์„ ๋‹ค์‹œ ์‹œ๋„ํ•ด๋ณด๊ธด ํ•ด์•ผํ•  ๊ฒƒ ๊ฐ™๋‹ค. (ํ† ๋ก  ๊ฒŒ์‹œํŒ์— ์˜ฌ๋ผ์˜จ ๊ฒƒ์„ ๋ณด๋‹ˆ๊นŒ, ๊ธธ์ด์™€ ๊ฐ™์€ ์ด์Šˆ๊ฐ€ ์žˆ์—ˆ์„์ง€๋„ ๋ชจ๋ฅด๊ฒ ๋‹ค.)
  • ์ตํšจ : ํ•™์Šต ํ•  ๋•Œ๋„ ์—ฌ๋Ÿฌ Context๋ฅผ Concatenateํ•˜๊ณ , ํ•™์Šต ์‹œํ‚ค๋‹ˆ๊นŒ ์„ฑ๋Šฅ์€ ์˜ค๋ฅด๋”๋ผ. ํ˜„์žฌ k=5, 7๊นŒ์ง€๋„ ํ•ด๋ณผ ์˜ˆ์ •
  • ํƒœ์–‘ : Question์„ ๋ณ€ํ˜•ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–จ๊นŒ?
  • ์žฌํฌ : ์ˆ˜์ง€๋‹˜์ด ์ค€ ๋…ผ๋ฌธ ์ข‹์€๋“ฏ Top N์˜ Document๋ฅผ ๊ฐ€์ ธ์™€์„œ, Noise๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค. Document๋ฅผ Paragraph๋กœ ๋‚˜๋ˆ ์„œ ๊ฐ–๊ณ ์˜ค์ž. Paragraph๋‚ด์—์„œ Ranking์„ ๋งค๊ธฐ๊ณ , ์ค‘์š”ํ•œ Paragraph๋งŒ ๊ฐ€์ ธ์˜ค์ž. ์ƒ๊ด€์ด ์—†๋Š” Paragraph๋Š” Noise๋กœ ํŒ๋‹จํ•จ.

Day08๐ŸŽ‡

2021.05.05 (์ˆ˜)

๋ฉ˜ํ† ๋ง(with ์กฐ์šฉ๋ž˜ ๋ฉ˜ํ† ๋‹˜)

  1. ์ปดํผํ‹ฐ์…˜์„ ์ง„ํ–‰ํ•˜๋ฉด์„œ ์ฃผ์–ด์ง„ ํ…Œ์Šคํฌ์— ๋งž๊ฒŒ ์ง„ํ–‰(์ „์ฒ˜๋ฆฌ, ๋ถˆ์šฉ์–ด ์ •์˜๋“ฑ๋“ฑ...) ํ•˜๋Š”๊ฒŒ ์ค‘์š”ํ•˜๋‹ค๋Š” ๋ง์„ ๋งŽ์ด ๋“ค์—ˆ๋Š”๋ฐ ์•„์ง ๊ฒฝํ—˜์ด ์ ์–ด ํ•ด๋‹น ๋ง์ด ์ž˜ ์™€๋‹ฟ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ์˜ˆ์‹œ๊ฐ™์€๊ฒŒ ์žˆ์„๊นŒ์š”?? (๊ธฐ๊ณ„๋…ํ•ด๋ถ€๋ถ„์ด ์•„๋‹ˆ์—ฌ๋„ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค)

    • ํƒœ์Šคํฌ๋ฅผ ์ƒ๊ฐํ•˜๋ฉด ๋‹น์—ฐํ•œ ๋ถ€๋ถ„์ด ์žˆ์„ ๊ฒƒ ๊ฐ™์Œ. Task๋งˆ๋‹ค ๋‹ค๋ฅธ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Œ. wiki์—์„œ ๊ฐ€์ ธ์˜ค๋‹ค๋ณด๋ฉด ๋“ค์–ด๊ฐ€๋Š” ํ‘œ๋‚˜, ์ด๋ชจํ‹ฐ์ฝ˜, HTML Tag ๋“ฑ ๊ฐ์ • Classification์˜ ๊ฒฝ์šฐ์—๋Š” ์ด๋ชจ์ง€๋ฅผ ๋†”๋‘๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์Œ. ์˜ˆ๋ฅผ ๋“ค๋ฉด, ๋ฌธ์žฅ๋ถ€ํ˜ธ์˜ ๊ฒฝ์šฐ๋„ Task์— ๋”ฐ๋ผ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์ด ๋‹ฌ๋ผ์งˆ ๋“ฏ

    • ์ค‘์š”ํ•œ Input์ธ๊ฐ€์— ๋Œ€ํ•œ ์—ฌ๋ถ€๋กœ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์ข‹์„ ๋“ฏํ•˜๋‹ค. ์˜์–ด์˜ ๊ฒฝ์šฐ ๊ด€์‚ฌ๊ฐ€ ์˜๋ฏธ๋ฅผ ํŒŒ์•…ํ•˜๋Š”๋ฐ ์ค‘์š”ํ•œ๊ฐ€? ์™€ ๊ฐ™์ด ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์„๋“ฏ. ๋ถˆ์šฉ์–ด๋Š” Named Entity๋กœ ์ธ์‹ํ•˜๊ณ  ๋‚จ๊ฒจ๋‘๊ฑฐ๋‚˜ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ํ•˜๋Š” ๋“ฑ ๊ฐœํ–‰๋ฌธ์ž ์ œ๊ฑฐ ๋“ฑ์€ ์„ฑ๋Šฅ ํ–ฅ์ƒ์— ๋„์›€์ด ๋˜๋Š” ๊ฒƒ์ด ๋งž์Œ. ํŠน์ˆ˜๋ฌธ์ž ๋“ฑ ์ œ๊ฑฐ๋Š” ํ†ต์ƒ ๋งŽ์ด ์‚ฌ์šฉํ•จ. ์›๋ž˜๋Š” ์ •๋‹ต์˜ ๋ฐฐ๋ฆฌ์—์ด์…˜์ด ์žˆ๋Š”๋ฐ, ์ด๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ํ†ต์ƒ์ ์œผ๋กœ๋Š” ์ง€์šฐ๋Š”๊ฒŒ ๋งž์Œ. ex) ์ธ๋ฌผ์˜ ์ด๋ฆ„์„ ์ฐพ๋Š” ๊ฒฝ์šฐ, ์„ฑ์ด ์žˆ๊ณ  ์—†๊ณ , ๋“ฑ๊ณผ ๊ฐ™์€ ๋ฐฐ๋ฆฌ์—์ด์…˜์ด ์žˆ์–ด์•ผ ํ•จ. but) ํ˜„์žฌ๋Š” answer๊ฐ€ 1๊ฐœ ๋ฐ–์— ์—†๊ธด ํ•จ. โ†’ ๋ฌธ์ œ ์ •์˜๋ฅผ ๋”ฐ๋ผ๊ฐ€๋Š”๊ฒŒ ๋งž๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

      • ์ข…ํ—Œ : ๋งŒ์•ฝ ๊บฝ์‡ ๋ฅผ ๋ถ™์ด๋Š” ์‹์œผ๋กœ Prediction์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ์–ด๋–จ๊นŒ์š”?

        ๋ฉ˜ํ† ๋‹˜ : ๊ฐ€๋Šฅํ•œ ํ›„์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์ผ ์ˆ˜ ์žˆ์Œ. but, ๋ชจ๋“  Prediction์— ๋ถ™์—ฌ์•ผ ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ์˜์‚ฌ๊ฒฐ์ •์€ Data์˜ ๋ถ„ํฌ ๋“ฑ ํ™•์ธ ํ›„์— ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•  ๋“ฏ

  2. ๋ฒ ์ด์Šค๋ผ์ธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” Tokenizer๋Š” PreTrainedTokenizerFast (FastTokenizer) ๊ธฐ๋ฐ˜์ธ๋ฐ ์ œ๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์€ QA task์— fine-tune๋œ tokenizer๋Š”(monologg/koelectra-base-v2-finetuned-korquad) FastTokenizer ๊ธฐ๋ฐ˜์ด ์•„๋‹ˆ๋ผ FastTokenizer์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ช‡๋ช‡ feature๋“ค์ด ์—†์Šต๋‹ˆ๋‹ค. (ex. offset_mapping, overflow_to_sample_mapping ๋“ฑ) ์ง€๊ธˆ์œผ๋กœ์„  ์ €ํฌ ๋ฒ ์ด์Šค๋ผ์ธ์— ๋งž๊ฒŒ ํ•ด๋‹น feature๋“ค์„ ์ง์ ‘ ๊ตฌํ˜„ํ•ด๋ณด๋Š” ์‹์œผ๋กœ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋Š”๋ฐ ํ˜น์‹œ ์ด๊ฒƒ ๋ง๊ณ ๋„ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ์„๊นŒ์š”?

    • ์ˆ˜์ง€ : KorQuAD๋กœ ๋ฏธ๋ฆฌ ํ•™์Šตํ•œ Model์„ ํ™œ์šฉํ•ด๋ณด๋ ค๊ณ  ํ•œ ์‹œ๋„์˜€๋‹ค. KorQuAD์—์„œ ์„ฑ๋Šฅ์ด ๋ณด์žฅ๋˜์–ด๋„, ์šฐ๋ฆฌ Data์™€ ์™„์ „ ๋งž์ง€๋Š” ์•Š์•˜๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ์ด๋Ÿฐ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์ด ์ข‹์„๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : KorQuAD์™€ ์šฐ๋ฆฌ์˜ Data๋Š” ๋ถ„ํฌ๊ฐ€ ๋‹ค๋ฅด๊ธฐ๋Š” ํ•˜๋‹ค. ์งˆ๋ฌธ์˜ ์œ ํ˜•๋„ ๋‹ค๋ฅด๊ณ , Context์˜ ์œ ํ˜•๋„ ์ข€ ๋‹ค๋ฅด๋‹ค. Data์˜ ๋ถ„ํฌ๊ฐ€ ๋‹ค๋ฅธ ๊ฒƒ์€ ๋งž๋‹ค. ํ•˜์ง€๋งŒ, Data๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค๋Š” ์˜๋ฏธ์—์„œ, ํ•™์Šต์‹œ์— ๋„์›€์ด ๋ ๊ฑฐ๋ผ๋Š” ์ƒ๊ฐ์€ ํ•œ๋‹ค.
    • ์ตํšจ : KorQuAD๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ•™์Šต์‹œ์ผœ๋ดค๋Š”๋ฐ, ์‹คํ—˜์ ์œผ๋กœ๋Š” ์„ฑ๋Šฅ์ด ๋งค์šฐ ๋–จ์–ด์ง€๋”๋ผ. ๊ทธ๋ฆฌ๊ณ  ๊ธธ์ด๋„ ๋งค์šฐ ๋‹ค๋ฅธ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์—ˆ๋‹ค. Wiki Dataset๊ณผ KorQuAD Dataset์˜ ๊ธธ์ด๋ฅผ ๋น„์Šทํ•˜๊ฒŒ ๋งž์ถ”๋Š”๊ฑด ์–ด๋–จ๊นŒํ•˜๋Š” ์ƒ๊ฐ๋„ ํ•˜๊ณ  ์žˆ์Œ. ๊ทธ๋ฆฌ๊ณ  ์ด๋ ‡๊ฒŒ Data๋ฅผ ๋Š˜๋ฆฌ๋ฉด Retrieval์˜ ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง€๋Š” ๊ฒƒ๋„ ์šฐ๋ ค๊ฐ€ ๋œ๋‹ค. ๋ฉ˜ํ† ๋‹˜ : KorQuAD๋กœ ํ•™์Šต์„ ์ง„ํ–‰ํ•œ ๋‹ค์Œ์—, ๊ทธ ๋‹ค์Œ์— ์šฐ๋ฆฌ Dataset (KLUE)๋ฅผ ํ•™์Šตํ•ด๋ณด๋Š” ๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ผ ์ˆ˜ ์žˆ๋‹ค. ํ˜น์€ Oversampling์„ ํ•ด์„œ ๋น„์œจ์„ ๋งž์ถ”๋Š” ํ˜•ํƒœ๋กœ ํ•™์Šต์‹œ์ผœ๋ณด๋Š” ๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ผ ์ˆ˜ ์žˆ๋‹ค. ๊ธธ์ด๋Š” ์–ด์ฐจํ”ผ Readingํ•  ๋•Œ ์ž˜๋ผ์„œ ์ฝ๊ธฐ ๋•Œ๋ฌธ์—, ํฌ๊ฒŒ ๋ฌธ์ œ๋˜์ง€ ์•Š์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค.
    • ์ตํšจ : ์™œ KorQuAD์™€ ์šฐ๋ฆฌ์˜ Data์˜ ๊ธธ์ด๋Š” ์™œ ์ฐจ์ด๊ฐ€ ํฐ๊ฐ€์š”? ๋ฉ˜ํ† ๋‹˜ : KLUE Data๊ฐ€ KorQuAD๋ณด๋‹ค ์–ด๋ ต๊ฒŒ ์„ค๊ณ„ํ–ˆ๋‹ค. ์™œ๋ƒ๋ฉด, KorQuAD์™€ ๋‹ค๋ฅด๊ฒŒ ๋งŒ๋“ค์–ด์•ผ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋” ์–ด๋ ต๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋” ์–ด๋ ค์šธ ๊ฒƒ์ž„.
    • ์ต : ์–ต์ง€๋กœ KorQuAD์— ๋งž์ถœ ํ•„์š”๋Š” ์—†๋Š” ๊ฒƒ์ผ๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : ํ™•๋‹ต์„ ๋“œ๋ฆด ์ˆ˜๋Š” ์—†์„ ๊ฒƒ๊ฐ™๋‹ค. ๊ทผ๋ฐ Model์˜ ๊ธฐ์ค€์œผ๋กœ ์ƒ๊ฐํ•ด๋ณด๋ฉด, ํฐ ์˜๋ฏธ๋Š” ์—†์œผ๋ฆฌ๋ผ ์ƒ๊ฐํ•œ๋‹ค.
  3. ๋ฆฌํŠธ๋ฆฌ๋ฒ„ ๋‹จ๊ณ„์—์„œ elastic search(open source ๊ฒ€์ƒ‰ ์—”์ง„)๋ฅผ ํ™œ์šฉํ•˜๊ณ  ์žˆ๋Š”๋ฐ, ๋Œ€์ฒดํ•  ๋งŒํ•œ, ํ˜น์€ ๊ฒธํ• ๋งŒํ•œ ๋‹ค๋ฅธ ์˜ˆ์‹œ๊ฐ€ ์žˆ์„๊นŒ์š”?

    • Elastic Search๋Š” ๋งค์šฐ ์ข‹์€ Choice๋ผ๊ณ  ์ƒ๊ฐํ•จ. ์™ ๋งŒํ•œ Search API ์ค‘์—์„œ๋Š” ๊ฐ€์žฅ ์„ฑ๋Šฅ์ด ์ข‹๋‹ค๊ณ  ์•Œ๋ ค์ ธ ์žˆ์Œ. ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ๋งŒ ์ž˜ ์„ค์ •ํ•ด์ฃผ๋ฉด ์ข‹์„ ๋“ฏ. ๋‚ด๋ถ€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ฌด์—‡์œผ๋กœ ์“ธ์ง€ ๋“ฑ์ด ์ค‘์š”ํ•  ๋“ฏํ•จ. ์ด์ „์— ํšŒ์‚ฌ์—์„œ ๊ฒ๋‚˜ ์—ด์‹ฌํžˆ ๋งŒ๋“ค๋˜ Search System๋ณด๋‹ค ๊ทธ๋ƒฅ ๊ฐ–๋‹ค ์“ด Elastic Search๊ฐ€ ์ž˜ ๋™์ž‘ํ–ˆ๋‹ค. ์ตœ์ข…์ ์œผ๋กœ๋Š” Retrieval์„ ๋ฒ—์–ด๋‚˜๋Š” ํ˜•ํƒœ๋กœ ๋๊ณ , ์•™์ƒ๋ธ” ํ˜•์‹์œผ๋กœ ๋‘ ๋ฐฉํ–ฅ ๋ชจ๋‘ ๋‹ค ์ผ๋‹ค. ์•„๋ฌดํŠผ Retrieval ๋‹จ๊ณ„์—์„œ๋Š” Elastic Search๊ฐ€ ๋งค์šฐ ์ข‹๋‹ค.
      • ์žฌํฌ : Elastic Search์™€ Dense Embedding์„ ๊ฐ™์ด ์จ๋ณด๋ ค๊ณ  ํ•˜๋Š”๋ฐ, ์ด ์ ‘๊ทผ ๋ฐฉ๋ฒ•์ด ์ข‹์„๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : ์‹ค์ œ๋กœ ํ˜„์—…์—์„œ๋„ ์•™์ƒ๋ธ”๋กœ ์ ‘๊ทผํ•œ๋‹ค. Elastic Search์™€ Dense Embedding์—์„œ Proba๋ฅผ ๋ฝ‘์•„์„œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Œ. ์ด๋ฅผ ํ•ฉ์น˜๋Š” ๋ฐฉ๋ฒ•๋„ ๋‹ค์–‘ํ•จ. Union Set์œผ๋กœ ๋ชจ๋‘ ๋ฝ‘์•„์„œ ๋ณธ๋‹ค๋“ ์ง€, ํ˜„์žฌ๋Š” ์‹œ๊ฐ„์ด ์ค‘์š”์น˜ ์•Š์œผ๋‹ˆ, ๊ฐ Retriever์—์„œ ๋‚˜์˜จ Context๋ฅผ ๋ชจ๋‘ ํ™œ์šฉํ•ด์„œ ์ถ”๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜๋„ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.
  4. ์Œ์ ˆ๋‹จ์œ„ ํ† ํฌ๋‚˜์ด์ง• ํŒ์ด ์žˆ์„๊นŒ์š”?

    • Pretrained Model์„ ํ™œ์šฉํ•˜๊ณ  ์žˆ๋Š”๋ฐ, ๋™์ผํ•œ Tokenizer๋ฅผ ํ™œ์šฉํ•ด์ฃผ๋Š”๊ฒŒ ์ข‹์„ ๊ฒƒ์ด๋‹ค. Tokenizer๋ฅผ ๋ฐ”๊พธ๋Š” ๊ฑด ์ข€ ์–ด๋ ค์šด ์ ‘๊ทผ๋ฐฉ๋ฒ•์ธ ๊ฒƒ ๊ฐ™๋‹ค. ํ•ด๋‹น Tokenizer๋กœ Tokenizing์„ ํ•ด์•ผ Model์ด ์ดํ•ดํ•  ๊ฒƒ์ž„. ํ•˜ใ…‡+ใ…ใ„ด ๊ณผ ๊ฐ™์ด ์กฐํ•ฉํ˜• Tokenizing์„ ํ–ˆ์Œ. ์š”์ƒˆ๋Š” ์™„์„ฑํ˜•์œผ๋กœ ํ•˜๊ณ  ์žˆ์Œ. ์ด๊ฒŒ ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๊ณ  ์žˆ์Œ. ์•„๋งˆ KLUE ๋•Œ ํ•˜์…จ๋˜ ๋ง์”€์€ ์™„์„ฑํ˜•์œผ๋กœ Tokenizingํ•˜๋ผ๋Š” ์˜๋ฏธ์˜€์œผ๋ฆฌ๋ผ ์ƒ๊ฐํ•จ. ์ผ๋‹จ ์–ด๋ ค์šด ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์Œ. ๋‹น์žฅ ๋– ์˜ค๋ฅธ ์•„์ด๋””์–ด๋Š” POS Tagging์„ ํ•ด์„œ ๋–ผ๋‚ผ ์ˆ˜ ์žˆ์„์ง€๋„ ๋ชจ๋ฅด๊ฒ ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋–ผ๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ํ•™์Šต์„ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์„์ˆ˜๋„ ์žˆ๋‹ค. ์ด๋Ÿฌ๋ฉด ํ•™์Šต๋‹จ๊ณ„์—์„œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ? ์ค‘๊ฐ„์— ๋„์–ด์“ฐ๊ธฐ๋ฅผ ๋„ฃ๋Š” ํ˜•ํƒœ๋กœ ํ•˜๋ฉด, ์˜๋ฏธ์ƒ์œผ๋กœ ํฌ๊ฒŒ ๋‹ฌ๋ผ์ง€์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ ์ƒ๊ฐํ•œ๋‹ค.
      • ์žฌํฌ : Mecab์œผ๋กœ ๋–ผ๋Š” ๊ฒƒ๋„ ์ƒ๊ฐ์€ ํ–ˆ๋Š”๋ฐ, ์ด ๋ฐฉ๋ฒ•์ด ์ •์ƒ์ ์ธ ์ ‘๊ทผ๋ฐฉ๋ฒ•์ผ๊นŒ์š”? A : ์•ˆ์“ฐ๋Š” ์ ‘๊ทผ๋ฐฉ๋ฒ•์ด ์•„๋‹ˆ๋‹ค. Pre Tokenizing์ด๋ผ๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๊ธฐ๋„ ํ•œ๋‹ค. ์ด๋Ÿฐ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์€ ์ž์ฃผ ์‚ฌ์šฉํ•œ๋‹ค. Pretokenizer๋กœ ๋ฏธ๋ฆฌ Token๋“ค์„ ์ฐข์–ด๋†“๊ณ  Tokenizing์„ ์ˆ˜ํ–‰ํ•จ. ๊ฑฑ์ •๋˜๋Š” ๋ฌธ์ œ๋Š”, Pre-trained Model์„ ํ™œ์šฉํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, Model์ด ํ•™์Šตํ•œ ํ˜•ํƒœ์™€ ๋งค์šฐ ๋‹ค๋ฅด๊ฒŒ ๋  ๊ฒฝ์šฐ์— Model ์ž์ฒด๊ฐ€ ์„ฑ๋Šฅ์ด ํ•˜๋ฝํ•  ์ˆ˜ ์žˆ๋‹ค. (Tradeoff ๆœ‰)
  5. ๋ฆฌํŠธ๋ฆฌ๋ฒ„ ๋‹จ๊ณ„์—์„œ๋„ ๋ฆฌํŠธ๋ฆฌ๋ฒ„ ๋ชจ๋ธ๋ผ๋ฆฌ ์•™์ƒ๋ธ”ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ์žˆ๋‚˜์š”? (์„œ๋กœ ๋‹ค๋ฅธ score ์ธก์ •๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ์•™์ƒ๋ธ”์‹œ ์„ฑ๋Šฅ์ด ์•ˆ ๋‚˜์™”์Šต๋‹ˆ๋‹ค.)

    • ์ตํšจ : ๋‹ค์–‘ํ•œ ์กฐํ•ฉ์œผ๋กœ ์•™์ƒ๋ธ”์„ ํ–ˆ๋Š”๋ฐ, ๊ฒฝํ—˜์ ์œผ๋กœ ์„ฑ๋Šฅ์ด ๋–จ์–ด์กŒ์Šต๋‹ˆ๋‹ค. ์™ค๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : Sparse ์ค‘์—์„œ๋Š” BM25๊ฐ€ ์ œ์ผ ์ž˜ํ•œ๋‹ค. ๋‹ค๋ฅธ ๊ธฐ๋ฒ•๊ณผ Correlation์ด ๋†’์€ ์• ๋“ค๊ณผ ๋ฌถ์–ด์„œ ๊ทธ๋Ÿฐ๊ฒŒ ์•„๋‹๊นŒ์‹ถ๋‹ค. ๋˜ํ•œ, ๊ฐ ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์ฐจ์ด๊ฐ€ ์žˆ์–ด์„œ ์ผ์ˆ˜๋„ ์žˆ๋‹ค.
    • ์ตํšจ : ์„ฑ๋Šฅ ์ž์ฒด๋Š” ํฐ ์ฐจ์ด๊ฐ€ ์—†์—ˆ๋‹ค. ๋ฉ˜ํ† ๋‹˜ : ๊ทธ๋Ÿผ ์•„๋งˆ Correlation์ด ๋ฌธ์ œ๊ฐ€ ๋œ ๋“ฏ ํ•˜๋‹ค.
    • ์ข…ํ—Œ : Dense Embedding์„ ๋งŒ๋“ค๊ณ  ์žˆ๋Š”๋ฐ, Context์˜ ๊ธธ์ด๊ฐ€ ๊ธธ์–ด์„œ, ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๊ณ  ์žˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ• ๊นŒ์š”? Baseline์—์„œ์˜ Code๋ฅผ ํ™œ์šฉํ•˜์ž๋‹ˆ, Retrieval ๋‹จ๊ณ„์—์„œ๋Š” ์•ž์ชฝ ํ† ํฐ๋งŒ ๋“ค์–ด๊ฐ€๋Š” ํ˜•ํƒœ๊ฐ€ ๋œ๋‹ค. ํ˜„์žฌ๋Š” ๊ฐ ๋ฌธ์žฅ์œผ๋กœ ์งค๋ผ์„œ Average Pooling์„ ํ•˜๋Š” ํ˜•ํƒœ๋กœ ํ•˜๊ณ  ์žˆ์Œ. ๋ฉ˜ํ† ๋‹˜ : Context๋ฅผ ์Šฌ๋ผ์ด๋”ฉ ํ•˜๋ฉด์„œ ์ž๋ฅด๊ณ , ๊ฐ๊ฐ์˜ ๋ฌธ์žฅ์„ ๊ฐ๊ฐ์˜ Context์ฒ˜๋Ÿผ ํŒ๋‹จํ•˜๋ฉด์„œ, ํ•˜๋‚˜๋ผ๋„ ๊ฑธ๋ฆฌ๋ฉด ๋ฝ‘์•„์˜ค๋Š” ํ˜•ํƒœ๋กœ ๊ตฌํ˜„์„ ํ•˜๋Š” ๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ผ ์ˆ˜ ์žˆ์Œ.
    • ์ข…ํ—Œ : Inference Time์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ์ ์šฉํ•˜๋ฉด ์ข‹์„๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : ๋™์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์ˆ˜ํ–‰ํ•ด๋„ ๋  ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ ์ค‘์— ํ•˜๋‚˜๋ผ๋„ ๊ฑธ๋ฆฌ๋ฉด ํ•ด๋‹น Context์˜ ID ๋“ฑ์„ ์ด์šฉํ•ด์„œ ๋‹ค ๋ฝ‘์•„์˜ค๋ฉด ๋  ๋“ฏํ•˜๋‹ค. ์˜คํžˆ๋ ค, Trainingํ•  ๋•Œ์—๋Š” Average ํ˜•ํƒœ๋กœ ์ˆ˜ํ–‰ํ•˜๋Š”๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™๊ณ , Inference์—์„œ ์œ„ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•ด๋ณด๋Š” ๊ฒŒ ์ข‹์ง€ ์•Š์„๊นŒ ์ƒ๊ฐํ•จ. ์ถ”๊ฐ€์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ, ์ •๋‹ต์ด ํฌํ•จ๋œ ๋ถ€๋ถ„๋งŒ positive example๋กœ ํ™œ์šฉํ•˜๊ณ  ๋‚˜๋จธ์ง€๋Š”... ๋ฒ„๋ฆฌ๋Š” ์‹์œผ๋กœ(negative example๋กœ..?) ํ•™์Šต์„ ํ•˜๋Š” ๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ผ ์ˆ˜ ์žˆ๋‹ค. ๋‚˜๋จธ์ง€๋Š” ๋ฒ„๋ ค์„œ ์•„์˜ˆ ํ™œ์šฉํ•˜์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์„ ์ˆ˜ ์žˆ์Œ.
  6. MRC task์—์„œ Masking์„ ์ ์šฉํ•  ๋•Œ ์–ด๋–ค ์‹์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋‚˜์š”? ํ˜„์žฌ๊นŒ์ง€์˜ ์‹คํ—˜ ๊ฒฐ๊ณผ๋กœ๋Š” context์— ๋žœ๋ค masking์„ ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค, ์งˆ๋ฌธ์—๋งŒ masking์„ ํ•˜๋Š” ์ชฝ์ด ์„ฑ๋Šฅ์ด ์ข‹์•˜๋Š”๋ฐ ์ด์œ ๊ฐ€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

    • Word Dropout์ด๋ผ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Œ. Context์— ๋Œ€ํ•œ Masking๋ณด๋‹ค, Question์— Maskingํ–ˆ์„ ๋•Œ ์ข‹์•˜๋‹ค๋Š” ๊ฒƒ์„ ํ•ด์„ํ•ด๋ณด๋ฉด, Context์—๋Š” ์“ธ๋ฐ ์—†๋Š” Token์ด ๋งŽ์•„์„œ ํšจ๊ณผ๊ฐ€ ๋ฏธ๋ฏธํ–ˆ์„ ๊ฒƒ์ž„. Question์€ ํ›จ์”ฌ ์ค‘์š”ํ•œ ์ •๋ณด๊ฐ€ ๊ฐ€๋ ค์ง€๋Š” ํ˜•ํƒœ์ž„. ๊ทธ๋ž˜์„œ ๋ฌธ์ œ๊ฐ€ ์–ด๋ ค์›Œ์ง€๊ณ  ์ข‹์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์™”๋‹ค๊ณ  ์ƒ๊ฐํ•จ. ์ถ”๊ฐ€๋กœ, ์ •๋‹ต์— ๋งˆ์Šคํ‚น์ด ๋˜๋Š” ๊ฒฝ์šฐ์—๋Š” ์•„์˜ˆ ๋ฌธ์ œ๋ฅผ ํ‹€๋ ธ์„ ๊ฒƒ์ด๋‹ค. ์ด ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ์ด ๋–จ์–ด์กŒ์œผ๋ฆฌ๋ผ ์ƒ๊ฐํ•จ.
      • ์žฌํฌ : ๊ทธ๋Ÿผ ์งˆ๋ฌธ๊ณผ ์œ ์‚ฌ๋„๊ฐ€ ๋†’์€ ๋ฌธ์žฅ์— Masking์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์œ ํšจํ• ๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : 7๋ฒˆ์ด๋ž‘ ์—ฐ๊ฒฐํ•ด์„œ ์„ค๋ช…ํ•˜๊ฒ ์Œ. ๊ฑฑ์ •์ด ๋˜๋Š” ๊ฒƒ์€, ๋งˆ์Šคํ‚น์ด ํ—ท๊ฐˆ๋ฆฌ๋Š” ๋ฌธ์žฅ์— ๋Œ€ํ•œ ํ‘œ์‹œ์ฒ˜๋Ÿผ ์ดํ•ด๋  ์ˆ˜๋„ ์žˆ์„์ˆ˜๋„.
  7. token ๋‹จ์œ„ ๋žœ๋ค masking์ด ์•„๋‹Œ, span ๋‹จ์œ„์˜ masking์€ ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜์‹œ๋‚˜์š”? ๊ด€๋ จ ๋ฌธํ—Œ

    • Span ๋‹จ์œ„๋กœ Masking์„ ํ•˜๋Š” ๊ฒƒ์€ Pretrain ๋‹จ๊ณ„์—์„œ ํ–ˆ๋˜ ๊ฒƒ ๊ฐ™๊ธฐ๋„ ํ•˜๋‹ค. ๊ทผ๋ฐ, ๊ดœ์ฐฎ์€ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์ธ ๊ฒƒ ๊ฐ™๋‹ค. ์˜๋ฏธ๊ฐ€ ์žˆ๋Š” ๋‹จ์œ„๋กœ(entity ๋‹จ์œ„) Span์„ ์žก๊ณ  ๋งˆ์Šคํ‚น์„ ํ•˜๋Š”๊ฒŒ ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ƒˆ๋‹ค๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์žˆ๋‹ค.

      ์ค‘์š”ํ•œ๊ฑด, ์ •๋‹ต์— ๋งˆ์Šคํ‚น์„ ํ•˜๋ฉด ์•ˆ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•จ.

      • ์ข…ํ—Œ : ์ผ๋ฐ˜์ ์œผ๋กœ context ๋‚ด์—์„œ ์ค‘์š”ํ•œ span์„ ์ฐพ์•„์„œ masking์„ ํ•œ๋‹ค๊ณ  ํ•˜์…จ๋Š”๋ฐ ์ค‘์š”ํ•œ span์„ ์–ด๋–ป๊ฒŒ ์ฐพ์œผ๋ฉด ๋ ๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : Fine Tuning์˜ ๋‹จ๊ณ„์™€ Pre training ๋‹จ๊ณ„๋ฅผ ๊ตฌ๋ถ„ํ•ด์„œ ์ƒ๊ฐํ•ด๋ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค. Fine Tuning ๋‹จ๊ณ„์—์„œ ์–ด๋””์— ๋งˆ์Šคํ‚น ํ•ด์•ผํ•˜๋Š”๊ฐ€์— ๋Œ€ํ•œ ๊ฒƒ์€ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ๋ณธ ์ ์ด ์—†๋‹ค. ์ •๋‹ต Context ๋‚ด์— ์ •๋‹ต ์ฃผ๋ณ€์˜ Token์„ ๋งˆ์Šคํ‚น ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–จ๊นŒํ•˜๊ณ  ์ƒ๊ฐํ•จ. (์ •๋‹ต ์™ธ ๋‹ค๋ฅธ ์—”ํ‹ฐํ‹ฐ) ์ •๋‹ต์ด ๋“ค์–ด์žˆ๋Š” ๋ฌธ์žฅ์˜ ์˜๋ฏธ๋ฅผ ์ดํ•ดํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํ•ด๋‹น ๋ฌธ์žฅ์„ ์กฐ๊ธˆ ๋” ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ต๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์˜๋ฏธ๊ฐ€ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ๊ผญ Entity๊ฐ€ ์•„๋‹ˆ๋”๋ผ๋„, ๋™์‚ฌ์™€ ๊ฐ™์€ ํ˜•ํƒœ์˜ Token์„ ๋งˆ์Šคํ‚นํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์€ ๋ฐฉ๋ฒ•์ผ ์ˆ˜ ์žˆ๋‹ค.
      • ์žฌํฌ : Masking์„ ์”Œ์šด Data์™€ ์•ˆ์”Œ์šด Data๋ฅผ ์—ฌ๋Ÿฌ๋ฒˆ ํ•™์Šต์‹œํ‚ค๋ฉด ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ์ง€๋Š” ์•Š์„๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : ์˜คํžˆ๋ ค ๋ง์”€ํ•˜์‹  ๋ฐฉ๋ฒ•์ด ๋” ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.
  8. XLM roberta large, koelectra ์œ„์ฃผ๋กœ ํ™œ์šฉ ์ค‘์ธ๋ฐ ์ถ”์ฒœํ•ด์ฃผ์‹ค๋งŒ ํ•œ model์ด ์žˆ์œผ์‹ ๊ฐ€์š”?!

    • XLM๋งŒํผ ์ข‹์€๊ฒŒ ์—†๋Š” ๊ฒƒ ๊ฐ™๋‹ค. Electra Model์€ ์‚ฌ์‹ค ์„ฑ๋Šฅ์„ ์—„์ฒญ ์˜ฌ๋ฆฌ๋ ค๋Š” ๋ชฉ์ ์ด ์•„๋‹ˆ์—ˆ๋‹ค. ์ ์€ ๋ฆฌ์†Œ์Šค๋ฅผ ์จ์„œ Bert๋งŒํ•œ ์„ฑ๋Šฅ์„ ๋‚ด๊ฒ ๋‹ค๊ณ  ํ•œ๊ฒŒ Electra์˜ ๋ชฉ์ ์ด๋‹ค. ํ˜„์‹ค์ ์œผ๋กœ Bert๋ณด๋‹ค ์ž‘๊ณ , ๋น ๋ฅด๊ณ  ํ•จ. ๊ทผ๋ฐ ์„ฑ๋Šฅ์€ Bert๊ฐ€ ๋” ์ข‹์Œ. (๊ทธ๋ž˜์„œ ํ˜„์—…์—์„œ๋Š” Electra๋ฅผ ์ž์ฃผ ์”€.) ๊ทผ๋ฐ, ์„ฑ๋Šฅ๋ฉด์—์„œ๋Š” roberta๊ฐ€ ์งฑ์ด๋‹ค. T5๋Š” ์จ๋ดค๋Š”์ง€? ์ด๊ฒƒ๋„ ์‹คํ—˜ํ•ด๋ณผ๋งŒํ•œ ๊ฐ€์น˜๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•จ. ์ด ๋ชจ๋ธ์ด QA์— ์ ํ•ฉํ•˜๊ฒŒ ๋˜์–ด์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. T5์˜ Encoder ๋ถ€๋ถ„๋งŒ ๋–ผ์–ด๋‚ด์„œ ์“ฐ๋ฉด roberta์ฒ˜๋Ÿผ ์“ธ ์ˆ˜ ์žˆ๋‹ค.
      • ์ตํšจ : MRC์—์„œ ์•™์ƒ๋ธ”ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ด ์žˆ์„๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : ์ผ๋‹จ 2์Šคํ…Œ์ด์ง€๋กœ ๊ฐ„๋‹ค๋Š” ๊ฒƒ ๊ฐ™์œผ๋‹ˆ, MRC์—์„œ ์•™์ƒ๋ธ”์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜๊ฒ ์Œ. ํ™•๋ฅ ๊ฐ’์œผ๋กœ ํ•˜๊ธฐ๋Š” ์–ด๋ ค์šธ ๊ฒƒ ๊ฐ™๊ณ , ๊ฐ ์ •๋‹ต์„ ๋‚ด๊ณ  Proba๊ฐ€ ๊ฐ€์žฅ ๋†’์€ ๊ฒƒ์„ ์ฐพ๋Š” ๋ฐฉ์‹์ด ๋  ๋“ฏํ•จ. ์—ฌ๋Ÿฌ๊ฐœ์˜ MRC๋ฅผ ์ง„ํ–‰ํ•˜๊ณ , ๊ฐ Model์˜ ์ •๋‹ต Span์„ ํ™•์ธํ•˜๊ณ , ์ด๋ฅผ Votingํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ๊ฐ ๋ชจ๋ธ์ด ์ถœ๋ ฅํ•˜๋Š” Span์˜ Score๋ฅผ ๋ณด๊ณ  ์ตœ์ข… ์ถœ๋ ฅ์„ ๊ฒฐ์ •ํ•˜๋Š” ์‹์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•  ๋“ฏ. Logit์˜ ํ‰๊ท ์„ ๊ตฌํ•ด์„œ ์•™์ƒ๋ธ” ํ•  ์ˆ˜๋„ ์žˆ์„ ๋“ฏ. ๋งŒ์•ฝ Scale์ด ๋‹ค๋ฅด๋ฉด Normalization์„ ํ•˜๋ฉด ๋  ๋“ฏ ํ•จ.
  9. Query์— ํ•ด๋‹นํ•˜๋Š” Token์˜ Embedding Vector๋ฅผ ์ง์ ‘์ ์œผ๋กœ ํ™œ์šฉํ•ด๋ณด๊ณ  ์‹ถ์€๋ฐ ๊ด€๋ จ ๋…ผ๋ฌธ ์žˆ์„๊นŒ์š”?

    • ๋‹น์žฅ ๊ธฐ์–ต๋‚˜๋Š” ๋…ผ๋ฌธ์€ ์—†๋‹ค. ํ•ด๋ณผ๋งŒํ•œ ์•„์ด๋””์–ด์ธ ๊ฒƒ ๊ฐ™๋‹ค. ๋‹จ์ˆœ Pooling๋ณด๋‹ค, ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋Š” layer๋ฅผ ๋‘๊ณ , ํ™œ์šฉํ•ด๋ณด๋Š” ๊ฒƒ์€ ์–ด๋–จ์ง€? ์ถ”๊ฐ€์ ์ธ Information์„ ์–ด๋–ป๊ฒŒ ๋” ์ค„ ์ˆ˜ ์žˆ์„์ง€? ๋ฐฑ๋ณธ ๋ชจ๋ธ์ด ์ปค๋ฒ„ํ•˜์ง€ ๋ชปํ•˜๋Š” ์˜๋ฏธ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š”๊ฒŒ ์ข‹์€ ์•„์ด๋””์–ด ์ผ ๊ฒƒ ๊ฐ™๋‹ค.
      • ์žฌํฌ : ์„œ๋ฏผ์ค€ ๊ต์ˆ˜๋‹˜์ด ์ฐธ์—ฌํ•œ ๋…ผ๋ฌธ์— ๋ณด๋ฉด, ์งˆ๋ฌธ์„ ํžˆ๋“  ์Šคํ…Œ์ดํŠธ ๋ฒกํ„ฐ๋กœ ๋งŒ๋“ค์–ด์„œ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋”๋ผ. ์งˆ๋ฌธ์ด ์ค‘์š”ํ•  ๊ฒƒ ๊ฐ™์•„์„œ ์ ์šฉํ•˜๋ ค๋Š” ์‹œ๋„์ž„. ์งˆ๋ฌธ์„ ๋ฒกํ„ฐํ™”ํ•  ๋•Œ GloVe์™€ ๊ฐ™์€ Model์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์–ด๋–จ์ง€? ์˜์–ด๋กœ ๋ฒˆ์—ญํ•ด์„œ ์“ฐ๋Š” ๊ฒƒ์€ ์–ด๋–จ์ง€์— ๋Œ€ํ•œ ์ƒ๊ฐ๋„ ๋“ค์—ˆ๋‹ค.
      • Q1 : ํ•œ๊ตญ์–ด๋กœ GloVe๋ฅผ ํƒœ์›Œ๋„ ๋ ์ง€? ๊ทธ๋Ÿฌ๋Š”๊ฒŒ ๋” ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. ๊ดœํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋‚„ ์ˆ˜ ์žˆ๋‹ค.
      • Q2 : ์„œ๋ฏผ์ค€ ๊ต์ˆ˜๋‹˜์˜ Real time ๊ธฐ๋ฐ˜์˜ ๋…ผ๋ฌธ์˜ ์ •๋ณด๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”? ์ด๊ฑด ๊ด€์  ์ž์ฒด๊ฐ€ ์•„์˜ˆ ๋‹ค๋ฅด๋‹ค. ์ง€๊ธˆ์€ ๋ฌธ์„œ๋‹จ์œ„๋กœ ๋ณด๊ณ , ๊ฐ€์žฅ ์ข‹์€ ๋ฌธ์„œ๋ฅผ ์ฐพ๊ณ  ๋ฆฌ๋“œํ•˜๋Š” ํ˜•ํƒœ์ž„. ์ด ๋…ผ๋ฌธ์€ ๋ฌธ์„œ๋ฅผ ๋ฏธ๋ฆฌ ๋‹ค ์ชผ๊ฐœ๊ณ , ๊ฐ ๋ชจ๋“  ํ”„๋ ˆ์ด์ฆˆ๋ฅผ ์ž„๋ฒ ๋”ฉ ํ•˜๋Š” ํ˜•ํƒœ๋กœ ์ง„ํ–‰ํ•จ. ๊ฑฐ๊ธฐ์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ ํ”„๋ ˆ์ด์ฆˆ๋ฅผ ์ฐพ๋Š” ํ˜•ํƒœ์ž„.
      • Q3 : Ranking Paragraph ๋…ผ๋ฌธ์˜ ์•„์ด๋””์–ด๋ฅผ ์ ์šฉํ•ด๋ณผ ์ˆ˜๋Š” ์—†์„๊นŒ์š”? ๊ฐ Paragraph์— ๋Œ€ํ•ด ranking์„ ๋งค๊ธฐ๊ณ  reading์„ ํ•˜๋Š” ๊ฒƒ์€ ์ข‹์€ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์ธ ๊ฒƒ ๊ฐ™๋‹ค.
      • ์ถ”๊ฐ€ ๋‹ต๋ณ€ : BiDrectional์€ MRC์˜ ํ‘œ์ค€์œผ๋กœ ์‚ฌ์šฉ๋  ์ •๋„๋กœ ๋งค์šฐ๋งค์šฐ๋งค์šฐ ์ข‹์€ Model์ด๋‹ค. BERT์ดํ›„์— ํ˜„์žฌ๋Š” ์•ˆ์“ฐ๋Š” Model ๊ตฌ์กฐ์ด๊ธด ํ•˜๋‹ค. BERT์˜ Pretrainํ•˜๋Š” ๊ฒƒ์„ ์ƒ๊ฐํ•ด๋ดค์„ ๋•Œ, ์ง€๊ธˆ๊ณผ ๊ฐ™์€ ํ˜•ํƒœ๋กœ ์ง„ํ–‰๋˜๊ณ  ์žˆ๊ธฐ๋Š” ํ•˜๋‹ค. ๋„์ „ํ•ด๋ณผ๋งŒํ•œ ์ข‹์€ IDEA๋ผ๊ณ ๋Š” ์ƒ๊ฐํ•˜๋‚˜, ์–ด๋–ป๊ฒŒ ๋ณด๋ฉด BERT ๊ตฌ์กฐ์— ์˜ํ•ด ์ด๋ฏธ ๊นจ์ง„ ๋ฐฉ๋ฒ•์ด๋ผ๊ณ  ์ดํ•ดํ•  ์ˆ˜๋„ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ์‹œ๋„ํ•ด๋ณผ๋งŒ์€ ํ•˜๋‚˜, ์„ฑ๋Šฅ๋ฉด์— ์žˆ์–ด์„œ ์žฅ๋‹ดํ•  ์ˆ˜๋Š” ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.
      • ์ข…ํ—Œ : BiDirectional Attention Flow Model๊ณผ BERT๋ฅผ ์กฐํ•ฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–จ๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : Contextual Embedding์„ BERT๋กœ ์“ฐ๊ณ , Query์™€์˜ Attention์„ ๋‚ด๊ณ , ์ดํ›„์— Transformer๋ฅผ ํ™œ์šฉํ•˜๋Š” ํ˜•ํƒœ๋กœ Embedding์„ ์ถ”๊ฐ€๋กœ ํ•ด์„œ, ์ถœ๋ ฅ์„ ๋‚ด๋Š” ๊ฒƒ์„ ์–ด๋–จ๊นŒ ์ƒ๊ฐ์ด ๋“ฆ.
      • ์ข…ํ—Œ : Data ์ˆ˜์— ๋น„ํ•ด ๋„ˆ๋ฌด ํ•™์Šต๋˜์ง€ ์•Š์€ Layer๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹์ง€ ๊ฑฑ์ •๋˜๊ธฐ๋„ ํ•œ๋‹ค. ๋ฉ˜ํ† ๋‹˜ : ๋™์ผํ•œ ๊ฑฑ์ •์€ ๋œ๋‹ค. Modeling Layer ๋ถ€๋ถ„์ด ์ œ๋Œ€๋กœ ํ•™์Šต ๋ ์ง€ ๊ฑฑ์ •์ด ๋˜๊ธด ํ•œ๋‹ค. ์‹ค์ œ๋กœ BERT ์œ„์— Layer๋ฅผ ๋งŽ์ด ์Œ“์ง€ ์•Š์œผ๋ ค๋Š” ์ด์œ ๋„ ๋™์ผํ•œ ์ด์œ ๋‹ค.
      • ์žฌํฌ : KorQuAD๋กœ ์‚ฌ์ „ํ•™์Šต ์‹œํ‚ค๊ณ  ๋‚˜์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฑด ์–ด๋–จ๊นŒ์š”? ๋ฉ˜ํ† ๋‹˜ : ๋งค์šฐ๋งค์šฐ๋งค์šฐ ํ•ต์‹ฌ์ ์ธ ์ ‘๊ทผ์ด๋‹ค. ์ด๋ฅผ ํ•™์Šต์— ํ™œ์šฉํ•˜๊ณ  ์ ‘๊ทผํ•˜๋Š” ๊ฑด ๋งค์šฐ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค.
  10. ์ถ”๊ฐ€ ์งˆ๋ฌธ : ์งˆ๋ฌธ์„ Paraprasing ํ•ด์„œ ์—ฌ๋Ÿฌ ์งˆ๋ฌธ์„ ๋งŒ๋“ค๊ณ  ๋” ๋งŽ์€ Sample์„ ๋งŒ๋“œ๋Š” ์ ‘๊ทผ ๋ฐฉ๋ฒ•์€ ์–ด๋–จ๊นŒ์š”?

    ์ข‹์€ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์ธ ๊ฒƒ ๊ฐ™๋‹ค. but, ์ธ๊ฐ„ ์ง€๋Šฅ์€ ๋น„์ถ”์ฒœํ•จ. ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” Rule Base๋กœ ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ์กฐ๊ธˆ ๋‹ค๋ฅธ ํ˜•ํƒœ์˜ ์งˆ๋ฌธ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„๋“ฏ ํ•˜๋‹ค. Question ํ…œํ”Œ๋ฆฟ์„ ๋งŒ๋“ค์–ด์„œ ์งˆ๋ฌธ์„ ์ƒ์„ฑํ•ด๋‚ผ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ์—ญ๋ฒˆ์—ญ์ด ํŒจ๋Ÿฌํ”„๋ ˆ์ด์ง•์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. Text Data Augmentation์œผ๋กœ ๊ฒ€์ƒ‰ํ•ด์„œ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. PLM์„ ํ™œ์šฉํ•ด์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋‹จ์–ด๋กœ ๋ฐ”๊พธ๋Š” ํ˜•ํƒœ๋กœ ํ•  ์ˆ˜๋„ ์žˆ์Œ.


Day09๐Ÿ˜€

2021.05.06 (๋ชฉ)

๋Œ€ํšŒ ํ† ํฌ

โค๏ธRetriever

  • ๋…ผ์˜ ์‚ฌํ•ญ ์—†์Œ

๐Ÿ’™Reader

  • ์ตํšจ : KorQuAD๋กœ ํ•™์Šต ์‹œํ‚จ ํ›„ ์šฐ๋ฆฌ Data๋กœ ํ•™์Šต์‹œํ‚ค๋Š” ๊ฒƒ ํ•ด๋ดค๋‹ค.
    • ์ตํšจ : Validation Set์„ ๋ญ๋กœ ํ• ๊นŒ์š”?
    • ์žฌํฌ & ์ข…ํ—Œ : KorQuAD๋กœ ์“ฐ๋Š”๊ฒŒ ์ข‹์„๋“ฏ
  • ํƒœ์–‘ : Question์— Maskingํ•˜๋Š” ๋ฐฉ๋ฒ• ๋‹ค๋ฅธ๊ฑธ ํ•ด๋ดค๋‹ค. ๋‹จ์–ด ๊ธฐ์ค€ Random Masking์„ ํ•ด์„œ ํ•™์Šต์„ ์ง„ํ–‰ํ•ด๋ดค๋‹ค. Original Question, Masking Question ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ๋ชจ๋‘ ํ•™์Šต์— ํ™œ์šฉํ•ด๋ดค๋‹ค.

์ฝ”๋“œ ๊ณต์œ 

์ข…ํ—Œ : Dense Embedding

  • Mecab์œผ๋กœ Pretokenizingํ•จ. ๋ฌธ์žฅ ๋‹จ์œ„๋กœ ์ž˜๋ผ์„œ ํ™œ์šฉํ•จ. ํ•™์Šต ํ•  ๋•Œ 512 ๊ธธ์ด๋ฅผ ๋žœ๋คํ•˜๊ฒŒ ์‚ฌ์šฉํ•จ.
  • ์ถ”๋ก  ํ•  ๋•Œ ์ ˆ๋ฐ˜์”ฉ ์˜ค๋ฒ„๋žฉํ•˜๋ฉด์„œ ์ „์ฒด Context๋ฅผ ์‚ฌ์šฉํ•จ. ์ดํ›„ ์ „์ฒด Average๋ฅผ ํ•จ. ๋งค ๋ฐฐ์น˜๋งˆ๋‹ค Context๊ฐ€ ๋ช‡๊ฐœ๋กœ ์ž˜๋ฆด์ง€ ๋ชจ๋ฅด๋Š” ๊ฒƒ๋„ ํฐ ๋ฌธ์ œ์˜€๋‹ค. GPU๊ฐ€ ํ„ฐ์ง€์ง€ ์•Š๊ฒŒ ์˜ฌ๋ฆฌ๊ณ  ๋‚ด๋ฆฌ๋Š” ๊ฒƒ์„ ์ฝ˜ํŠธ๋กคํ•˜๋Š”๊ฒŒ ์ค‘์š”ํ–ˆ๋‹ค.
  • Elastic Search Error๋กœ ํ˜„์žฌ ์ค‘๋‹จ ์ƒํƒœ์ž„. (์ •ํ™•ํ•˜๊ฒŒ๋Š” nori๊ฐ€ ๋™์ž‘ํ•˜์ง€ ์•Š์Œ.) โ†’ ํ•ด๊ฒฐํ•จ.

์ตํšจ : Elastic Search

  • ์„ค์น˜ ๋ฐ ํ™œ์šฉ๋ฐฉ๋ฒ• ์„ค๋ช…
  • Data ์ „์ฒ˜๋ฆฌ : ๊ฐœํ–‰๋ฌธ์ž์™€ ํŠน์ˆ˜๋ฌธ์ž ๋“ฑ ์ง€์šฐ๊ธฐ. โ†’ ์ค„๋ฐ”๊ฟˆ ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์œผ๋ฉด ์ข‹๊ฒ ๋‹ค. โ†’ [SEP]๋Š” ์„ฑ๋Šฅ์ด ์—„์ฒญ ๋–จ์–ด์ง„๋‹ค. DataDict ํ˜•ํƒœ๋กœ ์žฌ์ €์žฅํ•จ.
  • ๊ฑฑ์ •๋˜๋Š” ์‚ฌํ•ญ : backbone name์„ model name์œผ๋กœ ์„ค์ •ํ•ด์„œ ์ €์žฅํ•˜๊ณ  ์žˆ์Œ. koelectra ์‚ฌ์šฉํ•  ๋•Œ monologg ๋””๋ ‰ํ† ๋ฆฌ ํ˜•ํƒœ๋กœ ์ ‘๊ทผํ•จ. (tokenizer๋ฅผ ์ „๋‹ฌํ•ด์•ผํ•  ๋“ฏ)

ํƒœ์–‘ : Retrieval / Data Masking / ์กฐ์‚ฌ๋ฒ„๋ฆฌ๊ธฐ

  • Retrieval : bm25๋กœ ๋ฐ”๊ฟ”์„œ ์ˆ˜ํ–‰ํ•ด๋ดค๋‹ค. BM250kapi๋ผ๋Š” API๋ฅผ ์‚ฌ์šฉํ•ด๋ดค๋‹ค.
  • Data Masking : Question์˜ ํŠน์ • ๋‹จ์–ด๋“ค์„ MASK๋กœ ๋ฐ”๊พธ๊ณ  Data๋ฅผ ๋Š˜๋ ค์คŒ. ์ด Data๋ฅผ Dataset์œผ๋กœ ๋‹ค์‹œ ์ €์žฅํ•˜๊ณ , ํ•™์Šต์— ํ™œ์šฉํ•จ. Maskingํ•  ๋•Œ Tokenizer๋ฅผ ์ „๋‹ฌํ•ด์„œ Token์˜ ๊ฐฏ์ˆ˜๋ฅผ ๋งž์ถ”๋Š” ๋ฐฉ๋ฒ•์€?
  • ์กฐ์‚ฌ๋ฒ„๋ฆฌ๊ธฐ : ํ›„์ฒ˜๋ฆฌ ์ดํ›„ Last Processing ํ•จ์ˆ˜๋กœ, ์žฌ์ฒ˜๋ฆฌํ•ด์„œ ์กฐ์‚ฌ์™€ ํŠน์ • Tag๋ฅผ ๋ฒ„๋ฆผ. '์˜'์™€ ๊ฐ™์€ ์กฐ์‚ฌ๋ฅผ ๋–ผ๋Š”๊ฒŒ ์–ด๋ ต๋‹ค. Mecab Tokenizer๋ง๊ณ  ๋‹ค๋ฅธ ๊ฒƒ๋„ ์จ๋ณด๋Š”๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ผ ๋“ฏ.

Day10โ˜”

2021.05.07 (๊ธˆ)

๋Œ€ํšŒ ํ† ํฌ

โค๏ธRetriever

  • ์ตํšจ : ๊ตฌ๊ธ€์— ํ•œ๊ตญ์–ด ๋ถˆ์šฉ์–ด ์–ด๋ฏธ ์น˜๋ฉด ์—„์ฒญ ๋งŽ์ด ๋‚˜์˜ด โ†’ ๋ถˆ์šฉ์–ด ์‚ฌ์ „ ์ถ”๊ฐ€ (Top1์ผ๋•Œ๋Š” 0.5์˜ค๋ฆ„, Top9์€ ๋™์ผํ•œ ์ˆ˜์น˜)
    • ์ตํšจ : ์—ฌ๋Ÿฌ Context๋ฅผ ๋ณด๋Š”๊ฒŒ ์œ„ํ—˜ํ•  ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค.
    • ์ข…ํ—Œ : K๊ฐ€ ๋Š˜์—ˆ์„ ๋•Œ ์„ฑ๋Šฅ์ด ๋Š˜์–ด๋‚˜๋Š”๊ฒŒ, ์šฐ๋ คํ•œ ์ด์œ  ๋•Œ๋ฌธ์ด์—ˆ๋‹ค๊ณ  ํ•˜๋”๋ผ๋„, LB๊ธฐ์ค€์œผ๋กœ ๊ฐ€๋Š”๊ฒŒ ๋งž๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์ผ๋ฐ˜ํ™” ๋œ ์„ฑ๋Šฅ์„ Checkํ•  ๋งŒํ•œ ์ˆ˜๋‹จ์ด ๋งˆ๋•…์น˜ ์•Š๊ณ , ์ด๊ฒƒ๊นŒ์ง€๋Š” ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ๋‹จ์ผ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€๋Š”๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.
  • ์ข…ํ—Œ : Elastic Search๋กœ 20๊ฐœ์˜ Context๋ฅผ ์ฐพ์•˜์Œ. GT๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์— GT๋ฅผ ์ถ”๊ฐ€ํ•ด์„œ Positive๋กœ ์‚ฌ์šฉํ•˜๊ฒŒ ํ–ˆ์Œ. ํ•™์Šต ํ•  ๋•Œ Batch 2๋งŒ ๋ผ๋„ ํ„ฐ์ง. Batch๋Š” 1์ธ๋ฐ, ์ด ํ•œ Batch๋‚ด์— 20๊ฐœ์˜ Pair๊ฐ€ ๋“ค์–ด์žˆ๋Š” ํ˜•ํƒœ์ž„. ํ•™์Šตํ•˜๋Š”๋ฐ ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค. ํ•œ ์—ํญ์— 1์‹œ๊ฐ„ ์ •๋„ ๊ฑธ๋ฆฐ๋‹ค. ๋‹ค๋ฅธ ๋ชจ๋ธ๋„ ํ•™์Šต์‹œ์ผœ์„œ ํ™•์ธํ•ด๋ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค. lr์„ ์ค„์ด๊ณ  epoch์„ ๋Š˜๋ฆฌ๋‹ˆ๊นŒ ์ ์  ๋” ํ•™์Šต์ด ์ž˜ ๋˜๋Š” ํ˜•ํƒœ๋ฅผ ๋ณด์—ฌ์ฃผ๊ณ  ์žˆ์Œ.
    • ์ตํšจ : KorQuAD๋„ ํ•™์Šตํ•˜๋Š”๋ฐ ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๊ธด ํ•˜๋Š”๋ฐ, ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•์œผ๋กœ ์žฌํ•™์Šต ์‹œ์ผœ์„œ ํ•˜๋Š” ํ˜•ํƒœ๋Š” ์–ด๋–จ๊นŒ ์ƒ๊ฐ์ด ๋“ ๋‹ค.

๐Ÿ’™Reader

  • ์ตํšจ : Conv Layer ์ถ”๊ฐ€, KorQuAD๋กœ ํ•™์Šตํ•  ๋•Œ ๋” ๋งŽ์ด ๋Œ๋ฆผ(3์—ํญโ†’8์—ํญ), ์กฐ์‚ฌ ๋ฒ„๋ฆฌ๋Š”๊ฑฐ ํƒœ์–‘๋‹˜๊ฑฐ๋กœ ๋ฐ”๊ฟˆ.

    • ํƒœ์–‘ : ์ฝ”๋“œ ๊ฐœ์„ ๋์œผ๋‹ˆ, ์ ์šฉํ•ด๋ณด์ž. (์—ฌ๋Ÿฌ ํ† ํฌ๋‚˜์ด์ € ์‚ฌ์šฉํ•ด๋ด„.)
  • ํ˜„๊ทœ : ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ๋ณ„ prediction error rate ๋น„๊ต

  • ์ˆ˜์ง€ : prepare_train_dataset๊ณผ prepare_validation_dataset ํ•จ์ˆ˜๋ฅผ ์ƒˆ๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ์žˆ์Œ. (์—„์ฒญ ๊ณ ์ƒํ•จ. ๋งค์šฐ ๋งŽ์€ ๋…ธ๋ ฅ์ด ๋“ค์–ด๊ฐ.) offset_mapping์„ ๊ฒฐ๊ตญ ๊ตฌํ˜„ํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™์Œ. ๋‚˜์ค‘์— validation data๋„ ํ•™์Šต์— ์‚ฌ์šฉํ•˜๋ฉด ์ข‹๊ฒ ๋‹ค.

  • ํƒœ์–‘ : Scheduler ๋นผ๊ณ  ํ•™์Šตํ•ด๋ณด๋Š” ๊ฑด ์–ด๋–จ๊นŒ ์ƒ๊ฐ์ด ๋“ ๋‹ค. K์— ๋”ฐ๋ผ ๋‹ค๋ฅธ Prediction์„ Hard Voting ํ•ด๋ณด๋Š”๊ฑด ์–ด๋–จ๊นŒ ์‹ถ๋‹ค.

  • ํƒœ์–‘ : ์—ญ๋ฒˆ์—ญ์œผ๋กœ Question์„ ๋Š˜๋ ค์„œ ํ•™์Šตํ•ด๋ดค๋Š”๋ฐ, ์‹คํ—˜ ์ƒ ์„ฑ๋Šฅ์ด ๋‚ด๋ ค๊ฐ.

  • ์ตํšจ : KorQuAD Data ๋“ฑ ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š”, ์‚ฌ์ „ํ•™์Šต ํ•œ ํ›„์— KLUE Data๋กœ ์žฌํ•™์Šต ์‹œํ‚ค๋Š”๊ฒŒ ๋” ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

    • ํƒœ์–‘ & ์ข…ํ—Œ : ํ•™์Šต Epoch๋Š”? ์™œ?
    • ์ตํšจ : KorQuAD๋Š” 8Ep, KLUE๋Š” 3Ep โ†’ KorQuAD๋Š” ๋” ํ•™์Šตํ•ด๋„ ๋ ๋“ฏ, KLUE๋Š” ์ด ์ •๋„๋ฉด ์ˆ˜๋ ดํ•˜๋Š” ๋“ฏ.
  • ํƒœ์–‘ : Context๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ๊ฐ–๊ณ  ์™€์„œ, ๋ฌธ์žฅ ๋“ฑ์œผ๋กœ ์ž๋ฅด๊ณ , Question๊ณผ ๊ด€๋ จ ์žˆ๋Š” ๊ฒƒ๋“ค๋กœ๋งŒ ํ•™์Šต์„ ํ•˜๋Š” ๊ฑด ์–ด๋–จ๊นŒ?

    • ์ตํšจ : ๊ด€๋ จํ•ด์„œ, ๊ธธ์ด์— ๋Œ€ํ•œ ์ด์Šˆ๋กœ ์ƒ๊ฐํ–ˆ์—ˆ๋Š”๋ฐ, ๋ฉ˜ํ† ๋‹˜ ๋ง์”€ ๋“ฃ๊ณ ๋‚˜์„œ ๊ธธ์ด์— ๋Œ€ํ•ด ๋‹ค์‹œ ๊ณ ๋ฏผํ•˜๊ณ  ์žˆ๋‹ค.
    • ์žฌํฌ : Context๋ฅผ Phasage๋กœ ์ž˜๋ผ์„œ Wiki Data๋ฅผ ๋งŒ๋“ค๊ณ , ๊ฐ Phasage์— ๋Œ€ํ•ด ํ•™์Šต์„ ์ง„ํ–‰ํ•˜๋ฉด, ๋” ๋‹ค์–‘ํ•œ ๋ฌธ์žฅ์„ ๋ณด๊ณ  ํ•™์Šต์ด ๋  ๊ฒƒ ๊ฐ™๋‹ค.
  • ๋ฌธ์ œ์‹œ ํ•˜๊ณ  ์žˆ๋Š” ์‚ฌํ•ญ : ๊ธธ์ด์— ๋”ฐ๋ผ ์„ฑ๋Šฅ์ด ๋‹ฌ๋ผ์งˆ ๊ฒƒ ๊ฐ™๋‹ค.

ํ™•์‹คํ•˜์ง€ ์•Š์€ ์‚ฌํ•ญ : -> ์งง์€ Phasage๋ฅผ ๋ณด๋Š”๊ฒŒ ๋” ์ข‹์€ Logit์ด ๋‚˜์˜ฌ๊นŒ? -> ๊ธด Phasage๋ฅผ ๋ณด๋Š”๊ฒŒ ๋” ์ข‹์€ Logit์ด ๋‚˜์˜ฌ๊นŒ?

๊ฐ€์„ค 1. ์งง์€ Phasage๊ฐ€ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. -> ์ •๋‹ต๊ณผ ๋ฌด๊ด€ํ•œ Noiseํ•œ Data๋“ค์„ ๋ฌด์‹œํ•  ์ˆ˜ ์žˆ๋‹ค. -> ์งง๊ฒŒ ์ž๋ฅด๋Š” ๋งŒํผ, ํ•œ Context์— ๋Œ€ํ•ด์„œ ์—ฌ๋Ÿฌ๊ฐœ์˜ Feature (Sample)๋กœ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ฐ€์„ค 2. ๊ธด Phasage๊ฐ€ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. -> ๋ฌธ๋งฅ์„ ํŒŒ์•…ํ•ด์•ผ ํ•˜๋Š” Task์ธ ๋งŒํผ, ํ•œ Sample์— ํฌํ•จ๋œ ๋ฌธ๋งฅ ์ •๋ณด๊ฐ€ ์ค‘์š”ํ•  ๊ฒƒ ๊ฐ™๋‹ค. -> ํ•œ Context์— ๋Œ€ํ•ด ์ ์€ Feature์— ๋Œ€ํ•œ Logit์„ ๋‚ด๊ธฐ ๋•Œ๋ฌธ์—, ๋” ํ™•์‹คํ•˜๊ฒŒ Token์„ ์žก์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

  • ํ˜„๊ทœ๋‹˜ ์ƒ๊ฐ : -> Retrieval์€ ๊ด€๋ จ์žˆ๋Š” ์—ฌ๋Ÿฌ๊ฐœ์˜ Context๋ฅผ ๋˜์ ธ์ฃผ๋Š”๊ฒŒ ๋งž๋Š” ๊ฒƒ ๊ฐ™๋‹ค. -> ๋ฌธ์žฅ์„ ์ž๋ฅด๊ฑฐ๋‚˜ ํ•˜๋Š” ๊ฒƒ์€, MRC Train ๊ณผ์ •์—์„œ ์ด๋ฃจ์–ด์ ธ์•ผ ํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

    • ํƒœ์–‘๋‹˜ ์ƒ๊ฐ : -> ํ•™์Šต ์ชฝ๋ณด๋‹ค๋Š”, Inferenceํ•  ๋•Œ, ๋” ๋งŽ์€ Context์— ๋Œ€ํ•ด์„œ ์ถ”๋ก ์„ ํ•˜๊ณ ์ž ํ–ˆ์Œ. -> ๋” ๋งŽ์€ Context์— ๋Œ€ํ•ด์„œ ๋‹ค ์ถ”๋ก ์„ ๋Œ๋ฆด ์ˆ˜ ์—†์œผ๋‹ˆ, ๊ด€๋ จ์žˆ๋Š” ๋ฌธ์žฅ๋“ค์— ๋Œ€ํ•ด์„œ๋งŒ ํ•˜๋ฉด ์–ด๋–จ๊นŒ? ํ•˜๋Š” ์•„์ด๋””์–ด์˜€์Œ.
  • ์ข…ํ—Œ๋‹˜ ์ƒ๊ฐ : -> ์งง์„ ์ˆ˜๋ก ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. -> Context๋ฅผ 10๊ฐœ ๋ฝ‘์•„์˜จ๋‹ค. -> ๋˜‘๊ฐ™์€ ํฌ๊ธฐ๋กœ ์ž๋ฅธ๋‹ค. (๋ฌธ์žฅ๋‹จ์œ„ ๋“ฑ) -> ๊ทธ๋ฆฌ๊ณ  ๋˜ ๋ฝ‘๋Š”๋‹ค. -> ์—ฌ๊ธฐ์„œ ๋ฝ‘ํžŒ Top N์œผ๋กœ ํ•™์Šตํ•˜๊ณ , ์ถ”๋ก ํ•˜์ž.

    • ์žฌํฌ๋‹˜ ์ƒ๊ฐ : -> Elastic Search์—์„œ ๋ถˆํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ๋ฐฐ์ œํ•˜๋ฉด ๋” ์ข‹์€ Retrieval์„ ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค. -> MRC Task ์ž์ฒด๋„, ๋งŽ์€ ๋ฌธ์žฅ์„ ๋ด์•ผํ•  ํ•„์š”๊ฐ€ ์—†์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค. -> ๊ฐ€์„ค 1์ด ๋” ํ•ฉ๋‹นํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. -> Elastic Search๋ฅผ ํ•œ๋ฒˆ๋งŒ ํƒœ์šฐ๋Š”๊ฒŒ ๋งž๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

    ์ง€๊ธˆ Retrieval ๋‹จ๊ณ„์—์„œ Ground Truth๋ฅผ Context ๋‹จ์œ„์˜ DocID๋ฅผ ์“ฐ๋Š”๊ฒŒ ์•„๋‹ˆ๊ณ , ๋ฌธ์žฅ ๋‹จ์œ„๋กœ Answer word๊ฐ€ ์žˆ๋Š” Phasage๋ฅผ GT๋กœ ์“ฐ๊ฒ ๋‹ค. -> ์—ฌ๊ธฐ์„œ Doc stride overlab์„ ์ฃผ๋ฉด ์ด์ƒํ•ด์งˆ ์ˆ˜ ์žˆ๋‹ค. -> answer์˜ text๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๊ฒŒ ๋˜๋ฉด, ์—ฌ๋Ÿฌ๊ฐœ์˜ phasage๊ฐ€ ์˜ค๋ฉด ~~ -> ์—ฌ๊ธฐ์„œ concat์„ ํ•˜๋ฉด, MRC์˜ GT๊ฐ€ ๋ง๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค. -> ๊ทธ๋Ÿผ ํ•™์Šตํ•  ๋•Œ๋Š” ๊ฐ๊ฐ ๋”ฐ๋กœ phasage๋ณ„๋กœ ํ•™์Šตํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค. -> ์ด์ฟ„ ์˜๊ฒฌ์€ ํ•™์Šตํ•  ๋•Œ๋„ Concat์„ ํ•ด๋„ ๋  ๊ฒƒ ๊ฐ™๋‹ค. -> ํƒœ์–‘&์ข…ํ—Œ ์˜๊ฒฌ, Overlab๋œ ๋ฌธ์žฅ์ด ์—ฌ๋Ÿฌ๋ฒˆ Concat๋œ ํ˜•ํƒœ์˜ sample์ด ๋งŒ๋“ค์–ด์ง€๋ฉด ์ด์ƒํ•ด์งˆ ๊ฑฐ ๊ฐ™๋‹ค. => ๋ฉ˜ํ† ๋‹˜๊ป˜ ์งˆ๋ฌธ ๋“œ๋ฆฌ๊ธฐ๋กœ


Day11๐Ÿ˜Š

2021.05.08 (ํ† )

๋Œ€ํšŒ ํ† ํฌ

โค๏ธRetriever

  • ์ข…ํ—Œ : Dense Embeddingํ•  ๋•Œ Model์„ ๋‘ ๊ฐœ ์˜ฌ๋ ค์•ผํ•˜๋‹ˆ, Cuda Error๊ฐ€ ์ž๊พธ ํ„ฐ์ง„๋‹ค. ์ผ๋‹จ 2๊ฐœ๋กœ ํ•ด๋ณด๊ณ , ์•ˆ๋˜๋ฉด ๋‚˜์ค‘์— 1๊ฐœ๋กœ ๋ฐ”๊ฟ”๋ณด์ž.

๐Ÿ’™Reader

  • ์ตํšจ : Context Concatํ•˜๋Š”๊ฑฐ๊ฐ€ Public LB๋‚˜ ๊ณผ์ ํ•ฉ ๋“ฑ์˜ ๋ฌธ์ œ๊ฐ€ ์žˆ์„๊นŒ ๊ฑฑ์ •๋œ๋‹ค.
    • ํƒœ์–‘ & ํ˜„๊ทœ : ๋ฌธ์ œ ์—†์„ ๋“ฏ ํ•˜๋‹ค! 10๊ฐœ ์ด์ƒ์œผ๋กœ ์‹คํ—˜์„ ํ•ด๋ณด๋ฉด ์ข‹์„๋“ฏ!

๐Ÿ  Home

Home

๐Ÿ“š Records

โ—ฝ Retrieval

โ—ฝ Reader

โ—ฝ Etc

๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ Peer Session

Week 1 โ–ช Week 2 โ–ช Week 3 โ–ช Week 4

๐Ÿ“‘ Reference

Reference

Clone this wiki locally