-
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๋ค์์ ํํฐ๋ง, ๋ง์คํน ์ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ๋ค๋ค ๋ณด๊ฒ ์ต๋๋ค.
๋ฐ์ํ'ML engineer > NLP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ ๊ณ ์ด์ผ๊ธฐ] chatGPT ์ LLM์ ๋ํ ์๊ฐ (0) 2023.02.19 Korean Language Model - ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ (1) 2023.02.04 Transformer Encoder (0) 2022.12.31