ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [01] Korean Language Model - ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘
    ML engineer/NLP 2022. 12. 31. 00:33
    ๋ฐ˜์‘ํ˜•

    ๐Ÿ•“ 3 mins read

    # ์–ธ์–ด ๋ชจ๋ธ ๋งŒ๋“ค๊ธฐ

    ์‚ฌ์‹ค ์˜ค๋ž˜ ์ „ ๋ถ€ํ„ฐ ํ•œ๋ฒˆ ํ•ด์•ผ์ง€ ํ•˜๊ณ ๋Š” ์ง์žฅ์ผ์ด ๋ฐ”๋น ์„œ, ์œก์•„๋กœ ๋ฐ”๋น ์„œ ํ•‘๊ณ„๋กœ ๊ณ„์† ๋ฏธ๋ฃจ๋˜ ๋‚ด์šฉ์ธ๋ฐ,
    NLP ์ฃผ์ œ๋กœ ๋ฉ˜ํ† ๋ง์„ ์•ฝ 6๊ฐœ์›” ๊ฐ€๋Ÿ‰ ํ•˜๋ฉด์„œ ์ž๋ฃŒ๋‚˜ ์˜ˆ์ œ๊ฐ€ ์ข€ ์ •๋ฆฌ๋˜์–ด์žˆ์œผ๋ฉด ์ข‹๊ฒ ๋‹ค ์‹ถ์–ด์„œ ๊ฒฐ๊ตญ ์‹œ์ž‘ํ•˜๊ฒŒ ๋œ ํ”„๋กœ์ ํŠธ ์ž…๋‹ˆ๋‹ค.

     

    ## ์ด๋ฏธ ๋งŽ์ด ์žˆ์ง€ ์•Š๋‚˜?

    - github ์—๋„ ์žˆ๊ณ , huggingface hub์—๋„ ์ด๋ฏธ ๋‹ค์ˆ˜์˜ ํ•œ๊ตญ์–ด BERT, BART, GPT, ... ๋งŽ์ง€ ์•Š๋‚˜?
    - ํ•™์ƒ ๋˜๋Š” ๊ฐœ์ธ์ด ์ง‘์—์„œ ์–ธ์–ด ๋ชจ๋ธ์„ ๋Œ€๊ทœ๋ชจ๋กœ ํ•™์Šต ํ•˜๊ธฐ๋Š” ์‰ฝ์ง€ ์•Š์€๊ฒŒ ํ˜„์‹ค์ ์ด๊ณ 
    - ์ƒˆ๋กœ ๋งŒ๋“ ๋‹ค ํ•˜๋”๋ผ๋„ ๊ธฐ์กด์˜ ์„ฑ๋Šฅ๋„ ๋” ์ข‹๊ณ , ๊ทœ๋ชจ๋„ ๋” ํฐ ๋ชจ๋ธ์ด ์žˆ์–ด ๊ฒฐ๊ณผ๋ฌผ ์ž์ฒด๋Š” ํ•„์š”ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

     

    ## ๊ทธ๋Ÿผ์—๋„ ์ง์ ‘  ํ•˜๋Š” ์ด์œ ๋Š”?

    vocab์ด ๊ฒฐ๊ตญ ๋ชจ๋ธ-ํ† ํฌ๋‚˜์ด์ € ๊ฐ„์— ๊ฐ•๊ฒฐํ•ฉ๋˜์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ์ƒˆ๋กœ์šด tokenizer๋ฅผ ๋งŒ๋“ ๋‹ค๊ฑฐ๋‚˜, ํ•  ๊ฒฝ์šฐ ๋ชจ๋ธ๋„ ์ƒˆ๋กœ ๋งŒ๋“ค์–ด์•ผํ•  ๊ฒƒ์ด๊ณ ,

    ํ˜„์—…์—์„œ ์‹ค์ œ ์–ธ์–ด ๋ชจ๋ธ์„ ์ดํ•ดํ•˜๊ณ  ๊ฐœ๋ฐœํ•ด์„œ, ๋‚˜์•„๊ฐ€ ์„œ๋น„์Šค ํ•˜๋Š”๋ฐ ์žˆ์–ด์„œ ๊ฐ€์žฅ ๋งŽ์€ ์‹œ๊ฐ„์„ ์“ฐ๋Š”๊ฒƒ์€ ๋ชจ๋ธ์„ ๋งŒ๋“œ๋Š”์ผ์ด ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ๋ฅผ ์ค€๋น„ํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ์— ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋Œ€๋ถ€๋ถ„์˜ ๊ณต๊ฐœ๋œ ๋ชจ๋ธ๋“ค์€, ํ•™์Šต๋œ ๋ชจ๋ธ์„ ํ™œ์šฉํ•˜๊ณ , finetuning ํ•˜๋Š” ์ฝ”๋“œ์™€ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜๊ณ , ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ  ์ „์ฒ˜๋ฆฌ ํ•˜๋Š” ๊ณผ์ •์€ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ…์ŠคํŠธ๋กœ ์„ค๋ช…์— ๊ทธ์น˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

    ๋งŽ์€ ํ”„๋กœ๊ทธ๋žจ ๊ตฌํ˜„ ์ž‘์—…์ด ๊ทธ๋ ‡๋“ฏ์ด,
    ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋„ ์ˆ˜ ๋งŽ์€ ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ , ๋‹ค์–‘ํ•œ ์—ฃ์ง€ ์ผ€์ด์Šค์— ๋Œ€๋น„ํ•˜๋Š”๋ฐ ๋งŽ์€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ณผ์ •์„ ์ข€ ๋” ํˆฌ๋ช…ํ•˜๊ฒŒ, ๋Œ€๋žต์ ์œผ๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š”๊ฒƒ์ด ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์˜ ๋ชฉ์ ์ž…๋‹ˆ๋‹ค.

     

    # ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘

    ์ถœ์ฒ˜: https://odsc.medium.com/20-open-datasets-for-natural-language-processing-538fbfaf8e38

    ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ์— ์•ž์„œ, ์ˆ˜์ง‘๋ถ€ํ„ฐ ํ•ด์•ผ๊ฒ ์ฃ ?

    - ๋ฌผ๋ก  ๋” ํฐ ๊ทœ๋ชจ์˜ ๋ฐ์ดํ„ฐ๋กœ, ๋” ๊ณ ์„ฑ๋Šฅ ๋ชจ๋ธ์„ ์›ํ•œ๋‹ค๋ฉด, ์—ฌ๊ธฐ์„œ ์–ธ๊ธ‰ํ•˜๋Š” ์ฝ”ํผ์Šค ์™ธ์—๋„ ๊ธฐ์—…์ฒด๋ฉด ์ง์ ‘ ๋ณด์œ ํ•œ ๋ฐ์ดํ„ฐ๋„ ์žˆ์„ํ…Œ๊ณ , common crawl ๊ฐ™์€ ํ•œ๊ตญ์–ด์— ๊ตญํ•œ๋˜์ง€ ์•Š์€ ๋ฐฉ๋Œ€ํ•œ ์›น๋ฐ์ดํ„ฐ๋กœ ํ™•์žฅํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

     

    ๋ˆ„๊ตฌ๋“  ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์ค‘ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๋ช‡๊ฐ€์ง€๋งŒ ์†Œ๊ฐœ ํ•ฉ๋‹ˆ๋‹ค.
    (Korpora ๊ฐ™์€๊ณณ์— ์ด๋ฏธ ์ž˜ ์ •๋ฆฌ ๋˜์–ด์žˆ์œผ๋‹ˆ ๊ณจ๋ผ ๋‹ด์œผ์…”๋„ ๋˜๊ฒ ๋„ค์š”)

    KcBERT ๋ชจ๋ธ ํ•™์Šต์šฉ ๋Œ“๊ธ€ ๋ฐ์ดํ„ฐ ์˜จ๋ผ์ธ ๊ตฌ์–ด์ฒด ์ฝ”ํผ์Šค
    ์ฒญ์™€๋Œ€ ๊ตญ๋ฏผ ์ฒญ์› ์˜จ๋ผ์ธ ๊ตฌ์–ด์ฒด ์ฝ”ํผ์Šค
    KLUE ๋ฐ์ดํ„ฐ์…‹ ๋‹ค์–‘ํ•œ task ์ฝ”ํผ์Šค๋“ค
    ๋ชจ๋‘์˜ ๋ง๋ญ‰์น˜ ๋‹ค์–‘ํ•œ task ์ฝ”ํผ์Šค๋“ค
    ํ•œ๊ตญ์–ด ์œ„ํ‚คํ”ผ๋””์•„ / ๋‚˜๋ฌด์œ„ํ‚ค ๋ฌธ์–ด์ฒด๋กœ ๋‹ค์–‘ํ•œ ์ง€์‹๊ณผ ์ •๋ณด ํฌํ•จ
    AIํ—ˆ๋ธŒ ๋ฐ์ดํ„ฐ์…‹ ๋‹ค์–‘ํ•œ task ์ฝ”ํผ์Šค๋“ค

    * Korpora์— ๋” ๋งŽ์€ ์ฝ”ํผ์Šค๋“ค์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ •๋ฆฌ ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค : https://github.com/ko-nlp/Korpora

     

    GitHub - ko-nlp/Korpora: Korean corpus repository

    Korean corpus repository. Contribute to ko-nlp/Korpora development by creating an account on GitHub.

    github.com

     

    ์ฝ”ํผ์Šค๋ฅผ ๋ชจ์•˜์œผ๋ฉด, ๋ชจ๋ธ ํ•™์Šต์„ ์œ„ํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ช‡๊ฐ€์ง€ ์ „์ฒ˜๋ฆฌ๋ฅผ ํ•ด๋‘ก๋‹ˆ๋‹ค.

    1. ์••์ถ• ํ•ด์ œ, ๋ฉ”ํƒ€ ์ •๋ณด ์ œ๊ฑฐ
    - ๋‹จ์ผ ํฌ๋งท์œผ๋กœ ํ…์ŠคํŠธ๋ฅผ ๋ชจ์œผ๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ •์˜ ํ•ฉ๋‹ˆ๋‹ค.

    * ๋ฌธ์„œ = ๋ฌธ์žฅ์˜ ์ง‘ํ•ฉ
    
    ๊ฐ ์ฝ”ํผ์Šค์˜ ์„ฑ๊ฒฉ์— ๋”ฐ๋ผ ์ ๋‹นํ•œ ๋‹จ์œ„์˜ ๋ฌธ์„œ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
    - wiki๋ฅ˜๋Š” ํ•˜๋‚˜์˜ article์ด๋‚˜ ๋‹จ๋ฝ์„ ๋ฌธ์„œ๋กœ
    - ๋Œ€ํ™”๋ฅ˜๋Š” ํ•˜๋‚˜์˜ ๋Œ€ํ™” ์„ธ์…˜์„ ๋ฌธ์„œ๋กœ
    
    ๋ฌธ์„œ์˜ ํฌ๊ธฐ์— ํŽธ์ฐจ๋ฅผ ์ œํ•œ ํ•˜๊ธฐ ์œ„ํ•ด ํ•œ ๋ฌธ์„œ์—๋Š” ์ตœ๋Œ€ 100 ๋ฌธ์žฅ๋งŒ ํ—ˆ์šฉ ํ•ฉ๋‹ˆ๋‹ค.
    ๋ฌธ์„œ์˜ ์ตœ๋Œ€ ๊ธธ์ด๋„ 10,000 ์บ๋ฆญํ„ฐ๋กœ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค.
    
    ๋ฌธ์„œ ๋‚ด์˜ ๋ฌธ์žฅ๋“ค์€ `<br>` ๊ฐ™์€ ํŠน์ˆ˜ ํŒจํ„ด์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์ฃผ๊ณ ,
    ๋Œ€ํ™” ์ฝ”ํผ์Šค๋“ค์˜ ๊ฒฝ์šฐ `[P1]`, `[P3]` ๊ณผ ๊ฐ™์€ ํ™”์ž ํ† ํฐ์„ ๊ตฌ๋ถ„์ž ์‚ผ์Šต๋‹ˆ๋‹ค.
     - ๋‹จ์ผ ํ™”์ž์˜ ๋‚˜๋ž˜์ด์…˜ ๊ฐ™์€ ๊ฒฝ์šฐ `[P1]` ํ† ํฐ ํ•˜๋‚˜๋กœ ๊ฐ ๋ฐœํ™”๋ฅผ ๊ตฌ๋ถ„.

    - ์›น ๋ฌธ์„œ๋Š” 1์ฐจ์ ์ธ ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง์— ๋ฉ”ํƒ€ ์ •๋ณด๋ฅผ ํ™œ์šฉ ๊ฐ€๋Šฅ.
    - ์ถ”๊ฐ€์ ์œผ๋กœ ๊ด‘๊ณ ์„ฑ, ์ŠคํŒธ์„ฑ ์›น ๋ฌธ์„œ๋ฅผ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด์–ด๊ฐ€ ํ•˜๋‚˜ ์žˆ์œผ๋ฉด ํŽธ๋ฆฌ.

    2. ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง
    - ํ•™์Šต์— ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐ

    3. ๋ฐ์ดํ„ฐ ๋งˆ์Šคํ‚น
    - ํ•™์Šต์— bias๋ฅผ ์ฃผ๊ฑฐ๋‚˜ ๊ฐœ์ธ/๋ฏผ๊ฐ ์ •๋ณด๋“ฑ์€ ์›๋ฌธ์„ ๋งˆ์Šคํ‚น ํ•„์š”
    - ์ •๊ทœํ‘œํ˜„์‹ ์ •๋„๋กœ ์ œ๊ฑฐ ๊ฐ€๋Šฅํ•œ ํŒจํ„ด ์œ„์ฃผ๋กœ ์ฒ˜๋ฆฌ

    ๋ณธ ํ”„๋กœ์ ํŠธ์—์„  ์ตœ์ข…์ ์œผ๋กœ ์•ฝ 10G ์ •๋„์˜ ๋ฐ์ดํ„ฐ๋งŒ ๊ตฌ์–ด์ฒด์™€ ๋ฌธ์–ด์ฒด๊ฐ€ ์„ž์ด๋„๋ก ์ทจํ•ด์„œ ํ•™์Šต์— ํ™œ์šฉ ํ•ฉ๋‹ˆ๋‹ค.

    ์ฝ”ํผ์Šค ๋ช… ์ „์ฒ˜๋ฆฌ ํ›„ ์‚ฌ์ด์ฆˆ ๋น„๊ณ 
    wiki_namu_hub.txt 3.3 G ๋‚˜๋ฌด์œ„ํ‚ค, ํ•œ๊ตญ์–ด ์œ„ํ‚ค, AIhub ์˜จ๋ผ์ธ ๊ตฌ์–ด์ฒด ๋ง๋ญ‰์น˜
    korean_petitions 0.6 G ๊ตญ๋ฏผ ์ฒญ์› 2๋…„์น˜ (2017.08 ~ 2019.03)
    NIK_spoken.txt 1.1 G ๋ชจ๋‘์˜ ๋ง๋ญ‰์น˜ ๊ตฌ์–ด์ฒด
    NIK_web.txt 0.7 G ๋ชจ๋‘์˜ ๋ง๋ญ‰์น˜ ์›น
    NIK_written.txt 6.5 G ๋ชจ๋‘์˜ ๋ง๋ญ‰์น˜ ๋ฌธ์–ด์ฒด
    aihub_web.txt 8.9 G ๋Œ€๊ทœ๋ชจ ์›น๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ํ•œ๊ตญ์–ด ๋ง๋ญ‰์น˜
    kcbert_news.txt 12 G kcBERT ์˜จ๋ผ์ธ ๊ตฌ์–ด์ฒด ์ฝ”ํผ์Šค v1

     

    ์œ„์˜ ๋‚ด์šฉ๋“ค๊ณผ ๊ด€๋ จ๋œ ์ฝ”๋“œ๋Š” ์•„๋ž˜ ๋ ˆํฌ์— ์ •๋ฆฌ ์ค‘์ž…๋‹ˆ๋‹ค.
    https://github.com/naubull2/koolade/tree/main/data

     

    ๋‹ค์Œ์—” ํ•„ํ„ฐ๋ง, ๋งˆ์Šคํ‚น ์ „์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ž์„ธํžˆ ๋‹ค๋ค„ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€

Designed by naubull2.