Week20 Day5 - ai-esg/our-history GitHub Wiki

https://magnetikonline.github.io/markdown-toc-generate/

ํŒ€ NLP 11์กฐ Week20 Day4

๋ชฉ์ฐจ

์ผ์ž

  • 2021.12.16 ๋ชฉ

ํŒ€์›

  • ๋ฌธ์„์•”_T2075
  • ๋ฐ•๋งˆ๋ฃจ์ฐฌ_T2078
  • ๋ฐ•์•„๋ฉ˜_T2090
  • ์šฐ์›์ง„_T2137
  • ์œค์˜ํ›ˆ_T2142
  • ์žฅ๋™๊ฑด_T2185
  • ํ™ํ˜„์Šน_T2250

์ฃผ๊ฐ„ ์ผ์ •

  • 1์ฃผ์ฐจ ๋ฉ˜ํ† ๋ง 12/10(๊ธˆ) 16:00
  • 2์ฃผ์ฐจ ๋ฉ˜ํ† ๋ง 12/15(์ˆ˜) 16:30
  • 3์ฃผ์ฐจ ๋ฉ˜ํ† ๋ง 12/20(์›”) 16:00

ํ”ผ์–ด์„ธ์…˜

์ตœ์ข…ํ”„๋กœ์ ํŠธ

ํ˜‘์—… ๋งํฌ

์ตœ์ข… ํ”„๋กœ์ ํŠธ์—์„œ ์ž‘์„ฑ

๊ตฌ๊ธ€๋“œ๋ผ์ด๋ธŒ ๋งํฌ

ํ”ผ๊ทธ๋งˆ ๋งํฌ

ํ”„๋กœํ† ํƒ€์ž… ๋งํฌ

install_requirements ์ž‘์„ฑ์„ ์ƒํ™œํ™”ํ•ฉ์‹œ๋‹ค~!

12/17์ผ์ž ์ด์Šˆ ์‚ฌํ•ญ

  1. DAPT์— ์‚ฌ์šฉ๋  ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ๊ณ ๋ฏผ (์ „์ฒ˜๋ฆฌ ์ˆ˜์ค€ ๋ฐ ๋“ค์–ด๊ฐˆ ๋ฐ์ดํ„ฐ)
    • ํด๋”๋ช… : 12/16 ๊ธฐ์กด + ๋„์–ด์“ฐ๊ธฐ ์ „์ฒ˜๋ฆฌ๋งŒ ํ•œ ํŒŒ์ผ
  2. Dense ๋ชจ๋ธ ๊ทธ๋Œ€๋กœ ์ถ”๊ฐ€ํ•˜์˜€์œผ๋‚˜ ์ง€์—ญ์ด ๋งž์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‚˜์™€์„œ API ์˜ค๋ฅ˜๊ฐ€ ์ƒ๊ธฐ๋Š” ๋ฌธ์ œ ๋ฐœ์ƒ (ISSUE ์ฐธ๊ณ )
  3. ํƒœํ™”๊ฐ•๋™๊ตดํ”ผ์•„

ํ”„๋กœ์ ํŠธ (์ฃผ๋ง ๊ณผ์ œ)

  • ์›น ์„œ๋น„์Šค ์ด๋ฆ„
    • "์˜๊ฒฌ"
  • ์•„์ด์ฝ˜
    • "์˜๊ฒฌ"
  • ๋”ฐ๋ด‰ ์–ธ๋”ฐ๋ด‰ ์ด๋ฏธ์ง€
    • "์˜๊ฒฌ"

์˜ˆ์‹œ

FE

  • ์ปดํฌ๋„ŒํŠธ ๊ตฌ์กฐ๋กœ ๋ณ€๊ฒฝ
  • ๋“œ๋ž๋‹ค์šด ์ถ”๊ฐ€ ํ•„์š”
  • ์œ ์‚ฌ ๋ช…์†Œ ๊ฒ€์ƒ‰์—์„œ ๋“œ๋ž๋‹ค์šด ์กฐ๊ฑด ๋ณ€๊ฒฝ
  • '๋นจ๋ฆฌ๋นจ๋ฆฌ'
  • ์ด๋ฏธ์ง€ ์—†์Œ ์ฒ˜๋ฆฌ ํ•„์š”
  • ์‘๋‹ต ๋ณด์—ฌ์ฃผ๊ธฐ
  • Logging page ๋˜๋Š” ์ปดํฌ๋„ŒํŠธ
    • ๋””์ž์ธ ์–ด์ฉŒ์ง€...
  • error page

BE (FE ์—์„œ ๋ชจ๋“ˆํ™” ์ž‘์—…ํ•œ๊ฑฐ ํ•„์š”ํ•˜๋ฉด ํ†ก์ฃผ์„ธ์šฉ~!)

  • cookiecutter ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ github ์—…๋กœ๋“œ
  • API ๋ฌธ์„œ
  • Model API
  • Tour API
  • Log API
    • ์—ฌ๊ธฐ์— ์ถ”ํ›„ ์ž‘์—…
    • ๊พธ์ค€ํ•œ feedback data
  • DB ๊ตฌ์ถ•
    • cloud storage

Model

  • Sparse
  • Dense

๋ฐ์ดํ„ฐ

  • dense ํ›ˆ๋ จ query context pair์— ๋Œ€ํ•œ ์˜์‹ฌ
    • ํ˜„ ๋ฐฉ์‹ : Sparse ๊ธฐ์ค€ ๊ด€๋ จ๋„ ๋†’์€ ๋ฌธ์„œ ๋ผ๋ฆฌ ๊ฒฐํ•ฉ ์˜๊ฒฌ
    • ์šฐ์„  ์ง์ ‘ ๋ณด๊ธฐ
    • ๋ฆฌ๋ทฐ, ๋ธ”๋กœ๊ทธ ์ƒ์œ„ N ๊ฐœ๋งŒ์—์„œ Sparse
    • context ->
    • ๋ฐ์ดํ„ฐ ๋Ÿ‰์œผ๋กœ ์™•์ฐฝ ๋Š˜๋ ค๋ณด๋Š”๊ฒƒ๋„... -> Pair ์ˆ˜๋ฅผ ๊ฐ€๋Šฅํ•œ ๋Š˜๋ ค๋ณด๋Š” ๋ฐฉ์‹
๊ฐœ์ธ์ ์œผ๋กœ ์ƒ๊ฐํ•˜๋Š” ํ…Œ์ŠคํŠธ (์ง„ํ–‰ํ•œ ํ…Œ์ŠคํŠธ๋Š” ๊ผญ ์‹คํ—˜ ์ž‘์„ฑํ•„์š”)
์ƒ๊ฐํ•œ ํ‰๊ฐ€์ง€ํ‘œ
  • 5 pair ๊ธฐ์ค€ pair 4:1 ๋กœ train val ๋ถ„๋ฆฌํ›„ ์ ์ˆ˜ ํ™•์ธ
  • ์ฆ‰ pair๋ฅผ 8:2๋กœ ๋ถ„๋ฆฌ ํ›„ train val ์ ์ˆ˜ ํ™•์ธ
  • top-k 5,10 ๋“ฑ์œผ๋กœ ๊ณ ์ • ํ›„ ํ™•์ธ
sparse(์œ ์‚ฌ ๋ช…์†Œ ๊ฒ€์ƒ‰)
  • ์ถ”๊ฐ€์ ์œผ๋กœ ์œ ์‚ฌ ๋ช…์†Œ ๊ฒ€์ƒ‰์—์„œ๋Š” pair ๋ฐ์ดํ„ฐ์— ์žˆ๋Š” ๋ช…์†Œ ๋ฐ์ดํ„ฐ์— ๋ชจ๋“  context(๊ฐ€๋Šฅํ•œ ๋งŽ์€ ๋ธ”๋กœ๊ทธ ๋ฐ์ดํ„ฐ)๋ฅผ ์‚ฌ์šฉํ•ด๋ณด๋Š”๊ฒŒ ์–ด๋–ค์ง€
    • ํด๋”๋ช… :12/16 blog_limit30
      • ์˜ˆ์™ธ์ ์œผ๋กœ pair ์‚ฌ์šฉ์ด ์•„๋‹Œ result_prepro.json, info_prepro.json๋ฅผ ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค
dense (baseline ์„ ํƒ ๋ถ€ํ„ฐ ์ง„ํ–‰ํ•  ํ•„์š”๊ฐ€ ์žˆ์Œ ๋˜ํ•œ ํ‰๊ฐ€ ๊ธฐ์ค€์„ ์–ด๋–ป๊ฒŒ ํ• ์ง€ ๊ณ ๋ฏผํ•  ํ•„์š”๋„ ์žˆ์Œ)
  • 1. ๋ธ”๋กœ๊ทธ ์ตœ์†Œ ๊ธธ์ด 100 pair ์ˆ˜ 5๊ฐœ - ์˜ํ›ˆ

    • ํด๋”๋ช… : 12/13 ์ „์ฒ˜๋ฆฌ + ๋ธ”๋กœ๊ทธ ์ตœ์†Œ len 100
    • base ๊ธฐ์ค€์„ ๊ตฌ์„ฑ
  • 2. [1] + ๋ธ”๋กœ๊ทธ ๋„์–ด์“ฐ๊ธฐ ์ „์ฒ˜๋ฆฌ ์ง„ํ–‰ - ์˜ํ›ˆ

    • ํด๋”๋ช… : 12/16 ๊ธฐ์กด + ๋„์–ด์“ฐ๊ธฐ
    • ๋ธ”๋กœ๊ทธ ๋„์–ด์“ฐ๊ธฐ์— ๋Œ€ํ•œ ์˜ํ–ฅ๋ ฅ ๋ถ„์„ vs [1]
  • 3. [1] + [2] + tokenizer input ๋ณ€๊ฒฝ - ๋ฐ•๋งˆ๋ฃจ์ฐฌ

    • ํด๋”๋ช… : 12/16 tokenizer
    • Sparse ํ† ํฌ๋‚˜์ด์ € ๋ณ€๊ฒฝ
      • ๋‹จ stemming ์€ ๊ณ ๋ ค ์•ˆํ•จ (์ถ”ํ›„์ƒ๊ฐํ•ด๋ณผ๊ฒŒ์š”..)
      • ํŠน์ˆ˜๋ฌธ์ž๋“ค ์ฃ„๋‹ค ๊ณ ๋ ค ์ œ์™ธ (์ œ๊ฑฐ)
    • stopword ์ œ๊ฑฐ ๋ฒ„์ „์€ ๋งŒ๋“ค์–ด๋ด์•ผํ•˜๋‚˜..?
      • ๊ทธ๋Ÿผ ๊ทธ๋ƒฅ ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜ ์“ฐ๋Š”๊ฒŒ ์ข‹์„๋“ฏ?
    • vs [2]
  • 4. pair ๋งค์นญ ๊ธฐ์ค€ ๋ณ€๊ฒฝ..?

    • ์–ด๋–ป๊ฒŒ ์ง„ํ–‰ํ• ์ง€ ๊ณ ๋ คํ• ๊ฒŒ ํ•„์š”ํ•จ ์–ด๋–ป๊ฒŒ ๋ณด๋ฉด 3๋ฒˆ์˜ ํ™•์žฅ
    • vs [1]
  • ๋‹จ ๋„์–ด์“ฐ๊ธฐ๋ฅผ ๋‹ค์‹œ ์žก๋Š” ๊ฒƒ์€ ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋ฏ€๋กœ ๋„์–ด์“ฐ๊ธฐ ์ „์ฒ˜๋ฆฌ ์ œ์™ธ (์ดํ•˜ ๊ฐฏ์ˆ˜ 30๊ฐœ ์ „๋ถ€ ๋™์ผ)

  • 5. context ๊ฐฏ์ˆ˜๊ฐ€ 30 ์ด์ƒ (pair 5๊ฐœ) - ํ™ํ˜„์Šน

    • ํด๋”๋ช… : 12/16 blog_limit30
    • context ์ดˆ๊ธฐ ๊ฐฏ์ˆ˜์˜ ์˜ํ–ฅ๋ ฅ ๋ถ„์„
    • vs [1]
  • 6. context ๊ฐฏ์ˆ˜๊ฐ€ 100 ์ด์ƒ + pair ์ˆ˜ 10๊ฐœ - ๋ฐ•์•„๋ฉ˜

    • ํด๋”๋ช… : 12/16 pair10
    • pair ๊ฐฏ์ˆ˜ ์˜ํ–ฅ๋ ฅ๋ถ„์„ vs [2]
  • 7. ์ˆ˜์ž‘์—… ๋ฐ์ดํ„ฐ vs [2] - ๋ฐ•๋งˆ๋ฃจ์ฐฌ

    • ํด๋”๋ช… : 12/17์ˆ˜์ž‘์—… ๋ฐ์ดํ„ฐ
    • vs [2]
    • split chunk - ๋ฌธ์„์•”
    • context ๋ฒ„๋ฆฌ๊ธฐ
      • ์ง€์šด ํ›„์˜ context ์ด ๊ฐฏ์ˆ˜ 5๊ฐœ
      • ์ง€์—ญ ๋ณ„๋กœ ์ง„ํ–‰ํ• ํ…๋ฐ
        • ์ง€์—ญ ๋ณ„ ๊ฐฏ์ˆ˜:
          • ์„œ์šธ : 725
          • ์ธ์ฒœ : 395
          • ๋Œ€์ „ : 145
          • ๋Œ€๊ตฌ : 245
          • ๊ด‘์ฃผ : 130
          • ๋ถ€์‚ฐ : 380
          • ์šธ์‚ฐ : 180----------2200 ๋ฐ•์•„๋ฉ˜
          • ์„ธ์ข…ํŠน๋ณ„์ž์น˜์‹œ : 45
          • ๊ฒฝ๊ธฐ๋„ : 1115
          • ๊ฐ•์›๋„ : 995
          • ์ถฉ์ฒญ๋ถ๋„ : 420------2575 ๋ฐ•๋งˆ๋ฃจ์ฐฌ
          • ์ถฉ์ฒญ๋‚จ๋„ : 770
          • ๊ฒฝ์ƒ๋ถ๋„ : 805
          • ๊ฒฝ์ƒ๋‚จ๋„ : 870------2445 ํ™ํ˜„์Šน
          • ์ „๋ผ๋ถ๋„ : 430
          • ์ „๋ผ๋‚จ๋„ : 625
          • ์ œ์ฃผ๋„ : 825--------1880 ์œค์˜ํ›ˆ
  • 8. DAPT ์ง„ํ–‰ ->

    • DAPT ์˜ํ–ฅ๋ ฅ ๋ถ„์„ VS [2]
  • 9. context ๊ฐฏ์ˆ˜๊ฐ€ 30 ์ด์ƒ + pair ์ˆ˜ 10๊ฐœ

    • ์œ„ ์„ฑ๋Šฅ ๋น„๊ต ํ›„ ํ•„์š”์‹œ ์—…๋กœ๋“œ ์˜ˆ์ •
feature ์ถ”๊ฐ€
  • ๋ฐ์ดํ„ฐ์— ๋ฌด์กฐ๊ฑด overview ์ถ”๊ฐ€ํ•˜๋Š”๊ฑฐ ๊ดœ์ฐฎ์„์ง€๋„..?
    • ๋ฌธ์ œ๋Š” query ์ธ๋ฐ....

ํ•˜๋ฉด ์ข‹์€๊ฑฐ

  • Load balancing
  • Docker
  • Kubernetes