Textbooks Are All You Need
Abstract
์ฐ๋ฆฌ๋ phi-1์ด๋ผ๋ ์๋ก์ด ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ์ ์๊ฐํฉ๋๋ค. ์ด ๋ชจ๋ธ์ ๊ฒฝ์ ๋ชจ๋ธ๋ณด๋ค ํจ์ฌ ์์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. phi-1์ 1.3B ๊ฐ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๊ฐ์ง Transformer ๊ธฐ๋ฐ ๋ชจ๋ธ๋ก, ์น์์ "๊ต๊ณผ์ ์์ค"์ ๋ฐ์ดํฐ (6B ํ ํฐ)์ GPT-3.5 (1B ํ ํฐ)๋ฅผ ์ฌ์ฉํ์ฌ 8 A100์์ 4์ผ ๋์ ํ๋ จ๋์์ต๋๋ค. ์ด ์์ ๊ท๋ชจ์๋ ๋ถ๊ตฌํ๊ณ phi-1์ HumanEval์์ 50.6%์ pass@1 ์ ํ๋์ MBPP์์ 55.5%์ ์ ํ๋๋ฅผ ๋ฌ์ฑํฉ๋๋ค. ๋ํ, ์ฝ๋ฉ ์ฐ์ต ๋ฐ์ดํฐ์ ์์ finetuning ๋จ๊ณ ์ด์ ์ธ phi-1-base ๋ชจ๋ธ๊ณผ ๊ฐ์ ํ์ดํ๋ผ์ธ์ผ๋ก ํ๋ จ๋ 350M ๊ฐ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๊ฐ์ง ๋ ์์ ๋ชจ๋ธ์ธ phi-1-small์ ์ฌ์ ํ HumanEval์์ 45%์ ์ ํ๋๋ฅผ ๋ฌ์ฑํฉ๋๋ค.
1 Introduction
์ธ๊ณต ์ ๊ฒฝ๋ง์ ๋๊ท๋ชจ ํ๋ จ ๊ธฐ์ ์ ํนํ Transformer ์ํคํ ์ฒ[VSP+17]์ ๋ฐ๊ฒฌ ์ดํ์ ๋๋ผ์ด ์ง์ ์ ์ด๋ฃจ์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ์ฑ๊ณต์ ๊ณผํ์ ๋ฐฐ๊ฒฝ์ ์ฌ์ ํ ์ ํ์ ์ ๋๋ค. Transformers๊ฐ ์๊ฐ๋ ๊ฒ๊ณผ ๋์์ ์ฑ๋ฅ์ด ์ด๋ ์ ๋ ์์ธก ๊ฐ๋ฅํ๊ฒ ๊ฐ์ ๋๋ค๋ ๊ฒ์ด ํ์ธ๋ ๊ฒ์ฒ๋ผ, ์ฑ๋ฅ์ ๊ณ์ฐ ๋๋ ๋คํธ์ํฌ์ ํฌ๊ธฐ๋ฅผ ํ์ฅํจ์ ๋ฐ๋ผ ์ด๋ ์ ๋ ์์ธก ๊ฐ๋ฅํ๊ฒ ๊ฐ์ ๋๋ค๋ ๊ฒ์ด ์ผ์ข ์ ์ง์๋ก ์ ๋ฆฌ๋์์ต๋๋ค[HNA+17]. ์ด๋ฌํ ํ์์ ์ด์ ์ค์ผ์ผ๋ง ๋ฒ์น[KMH+20]์ด๋ผ๊ณ ๋ถ๋ฆฌ๊ณ ์์ต๋๋ค. ๋ฅ ๋ฌ๋์์ ์ค์ผ์ผ ํ์์ ์ด๋ฌํ ์ค์ผ์ผ๋ง ๋ฒ์น์ ๋ฐ๋ผ ์ด๋ฃจ์ด์ก์ผ๋ฉฐ, ์ด๋ฌํ ๋ฒ์น์ ๋ณํ๋ค์ ๋ฐ๊ฒฌ์ ์ฑ๋ฅ์ ๊ธ๊ฒฉํ ํฅ์์ผ๋ก ์ด์ด์ก์ต๋๋ค[HBM+22]. ๋ณธ ์ฐ๊ตฌ์์๋ Eldan๊ณผ Li [EL23]์ ์ฐ๊ตฌ๋ฅผ ๋ฐ๋ผ, ๋ฐ์ดํฐ์ ํ์ง์ด ๊ฐ์ ๋ ์๋ก ์ด๋ค ๊ฐ์ ์ด ์ป์ด์ง ์ ์๋์ง ์ดํด๋ณด๊ณ ์ ํฉ๋๋ค. ๋์ ํ์ง์ ๋ฐ์ดํฐ๊ฐ ๋ ์ข์ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฒ์ ์ค๋ซ๋์ ์๋ ค์ ธ ์์ผ๋ฉฐ, ๋ฐ์ดํฐ ์ ์ ๋ ํ๋์ ์ธ ๋ฐ์ดํฐ์ ์์ฑ์ ์ค์ํ ๋ถ๋ถ์ ๋๋ค[RSR+20]. ์ด๋ ๋ค๋ฅธ ๋ถ๊ฐํจ๊ณผ๋ก์จ ์๋์ ์ผ๋ก ์์ ๋ฐ์ดํฐ์ [LYR+23, YGK+23]์ด๋ ๋ฐ์ดํฐ์ ๋ํ ์ถ๊ฐ์ ์ธ ํจ์ค๋ฅผ ํ์ฉํ ์ ์๋ค๋ ์ฅ์ ์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค[MRB+23]. TinyStories์ ๋ํ Eldan๊ณผ Li์ ์ต๊ทผ ์ฐ๊ตฌ (์ ๊ฒฝ๋ง์ ์์ด๋ฅผ ๊ฐ๋ฅด์น๊ธฐ ์ํด ํฉ์ฑ์ผ๋ก ์์ฑ๋ ๊ณ ํ์ง ๋ฐ์ดํฐ์ )๋ ์ค์ ๋ก ๊ณ ํ์ง ๋ฐ์ดํฐ์ ํจ๊ณผ๊ฐ ์ด๋ฅผ ๋ฐ์ด๋์ด, ๋๊ท๋ชจ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํจ์ฌ ๋ ๊ฐ๋ณ๊ฒ ํ๋ จ/๋ชจ๋ธ๋งํ ์ ์๊ฒ ํ ์ ์๋ค๋ ๊ฒ์ ๋ณด์์ต๋๋ค[E23]. ๋ณธ ์ฐ๊ตฌ์์๋ ๊ณ ํ์ง ๋ฐ์ดํฐ๊ฐ ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ(LLM)์ SOTA(State-of-the-Art)๋ฅผ ๊ฐ์ ํ๋ฉด์ ๋ฐ์ดํฐ์ ํฌ๊ธฐ์ ํ๋ จ ๊ณ์ฐ์ ํ์ ํ๊ฒ ์ค์ผ ์ ์๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค. ํ๋ จ์ด ๋ ํ์ํ ๋ ์์ ๋ชจ๋ธ์ LLM์ ํ๊ฒฝ์ ๋น์ฉ์ ์๋นํ ์ค์ผ ์ ์์ต๋๋ค[BGMMS21].
์ฝ๋๋ฅผ ์ํด ํ๋ จ๋ LLMs์ ์ฃผ๋ชฉํ๊ณ ํนํ [CTJ+21]๊ณผ ๊ฐ์ด ๊ฐ๋จํ Python ํจ์๋ฅผ ๋ ์คํธ๋ง์ผ๋ก ์์ฑํฉ๋๋ค. ํ์์ ์ฐ๊ตฌ์์ ์ ์๋ ํ๊ฐ ๋ฒค์น๋งํฌ์ธ HumanEval์ ์ฝ๋์ ๋ํ LLMs์ ์ฑ๋ฅ์ ๋น๊ตํ๋ ๋ฐ ๋๋ฆฌ ์ฑํ๋์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ณ ํ์ง ๋ฐ์ดํฐ์ ํจ๊ณผ๋ฅผ ๊ฐ์กฐํ๊ธฐ ์ํด phi-1-base ๋ชจ๋ธ์ finetuning ๋จ๊ณ ์ด์ ์ธ Eldan๊ณผ Li์ ์ด๊ธฐ ์ฐ๊ตฌ๋ฅผ ๋ฐ์ด๋์ด ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๋ณด์ฌ์ค๋๋ค. ๋ฐ์ดํฐ์ ํฌ๊ธฐ์ ํ๋ จ ๊ณ์ฐ์ ํ์ ํ ์ค์ผ ์ ์์ต๋๋ค. ๋ ์ค์ํ ๊ฒ์ ํ๋ จ์ด ๋ ํ์ํ ์์ ๋ชจ๋ธ์ LLMs์ ํ๊ฒฝ์ ๋น์ฉ์ ์๋นํ ์ค์ผ ์ ์๋ค๋ ์ ์ ๋๋ค[BGMMS21].
1arXiv:2306.11644v1 [cs.CL] 2023๋ 6์ 20์ผ
๋ ์ง | ๋ชจ๋ธ | ๋ชจ๋ธ ํฌ๊ธฐ | ๋ฐ์ดํฐ์ ํฌ๊ธฐ | HumanEval | MBPP |
---|---|---|---|---|---|
2021๋ 7์ | Codex-300M [CTJ+21] | 300M | 100B | 13.2% | - |
2021๋ 7์ | Codex-12B [CTJ+21] | 12B | 100B | 28.8% | - |
2022๋ 3์ | CodeGen-Mono-350M [NPH+23] | 350M | 577B | 12.8% | - |
2022๋ 3์ | CodeGen-Mono-16.1B [NPH+23] | 16.1B | 577B | 29.3% | 35.3% |
2022๋ 4์ | PaLM-Coder [CND+22] | 540B | 780B | 35.9% | 47.0% |
2022๋ 9์ | CodeGeeX [ZXZ+23] | 13B | 850B | 22.9% | 24.4% |
2022๋ 11์ | GPT-3.5 [Ope23] | 175B | N.A. | 47% | - |
2022๋ 12์ | SantaCoder [ALK+23] | 1.1B | 236B | 14.0% | 35.0% |
2023๋ 3์ | GPT-4 [Ope23] | N.A. | N.A. | 67% | - |
2023๋ 4์ | Replit [Rep23] | 2.7B | 525B | 21.9% | - |
2023๋ 4์ | Replit-Finetuned [Rep23] | 2.7B | 525B | 30.5% | - |
2023๋ 5์ | CodeGen2-1B [NHX+23] | 1B | N.A. | 10.3% | - |
2023๋ 5์ | CodeGen2-7B [NHX+23] | 7B | N.A. | 19.1% | - |
2023๋ 5์ | StarCoder [LAZ+23] | 15.5B | 1T | 33.6% | 52.7% |
2023๋ 5์ | StarCoder-Prompted [LAZ+23] | 15.5B | 1T | 40.8% | 49.5% |
2023๋ 5์ | PaLM 2-S [ADF+23] | N.A. | N.A. | 37.6% | 50.0% |
2023๋ 5์ | CodeT5+ [WLG+23] | 2B | 52B | 24.2% | - |
2023๋ 5์ | CodeT5+ [WLG+23] | 16B | 52B | 30.9% | - |
2023๋ 5์ | InstructCodeT5+ [WLG+23] | 16B | 52B | 35.0% | - |
2023๋ 6์ | WizardCoder [LXZ+23] | 16B | 1T | 57.3% | 51.8% |
2023๋ 6์ | phi-1 | 1.3B | 7B | 50.6% | 55.5% |
Table 1: ๋ณธ ๋ ผ๋ฌธ์ ํ๋ก๊ทธ๋จ ํฉ์ฑ์ ์ํ ์ธ์ด ๋ชจ๋ธ(Language Model for Program Synthesis)์ ์ฑ๋ฅ์ ๋น๊ตํ๋ ์ฐ๊ตฌ์ ๋๋ค. ํ ์ด๋ธ 1์์๋ ๋ค์ํ ๋ชจ๋ธ๋ค์ ๋ชจ๋ธ ํฌ๊ธฐ, ๋ฐ์ดํฐ์ ํฌ๊ธฐ, HumanEval ๋ฐ MBPP ์ฑ๋ฅ์ ํ์ธํ ์ ์์ต๋๋ค.
๋ณธ ์ฐ๊ตฌ์์๋ phi-1์ด๋ผ๋ 1.3B ํ๋ผ๋ฏธํฐ ๋ชจ๋ธ์ ํ์ต์ํค๊ณ , ์ฝ 70B ํ ํฐ(7B ํ ํฐ ์ด์์ ๋ฐ์ดํฐ)์ ๋ํด 8๋ฒ์ ํ์ต ๊ณผ์ ์ ๊ฑฐ์น ๋ค 200M ํ ํฐ ๋ฏธ๋ง์ ๋ฐ์ดํฐ์ ๋ํด finetuning์ ์ํํ์์ต๋๋ค. ํ ์คํธ๋ถ ํ๋ฆฌํฐ์ ๋ฐ์ดํฐ๋ฅผ ํ์ต์ ํ์ฉํ์์ผ๋ฉฐ, GPT-3.5๋ก๋ถํฐ ์์ฑ๋ ํฉ์ฑ ๋ฐ์ดํฐ์ ์น ์์ค๋ก๋ถํฐ ํํฐ๋ง๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์์ต๋๋ค. ํ ์ด๋ธ 1์์ ํ์ธํ ์ ์๋ฏ์ด, ๋ฐ์ดํฐ์ ๋ฐ ๋ชจ๋ธ ํฌ๊ธฐ ์ธก๋ฉด์์ ๊ธฐ์กด ๋ชจ๋ธ๋ค๊ณผ ๋น๊ตํ์ ๋ phi-1์ ๋ช ํํ ์์ ํธ์ด์ง๋ง, HumanEval ๋ฐ MBPP ์ฑ๋ฅ์์ ์ฐ์ํ ๊ฒฐ๊ณผ๋ฅผ ์ป์์ต๋๋ค. phi-1์ ๋จ์ผ LLM ์์ฑ์ ๊ธฐ๋ฐํ 50.6% pass@1 ์ ํ๋๋ฅผ ๊ฐ์ง๋ฉฐ, ์ด๋ ์์ฒด๋ณด๊ณ ๋ ์ต๊ณ ์ฑ๋ฅ ์ค ํ๋์ ๋๋ค. ์น์ 2์์๋ ํ์ต ๊ณผ์ ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ ์ํ๊ณ , ์ด๋ฌํ ๊ฒฐ๊ณผ๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ๋ฐ์ดํฐ ์ ํ ๊ณผ์ ์ ์ค์์ฑ์ ๋ํด ๋ ผ์ํฉ๋๋ค. ๋ํ, ๊ธฐ์กด ๋ชจ๋ธ๋ค์ ๋นํด ํจ์ฌ ์ ์ ํ ํฐ์ผ๋ก ํ์ต๋์์์๋ ๋ถ๊ตฌํ๊ณ , phi-1์ ์ ์์ ์ธ ํน์ฑ์ ๋ณด์ฌ์ค๋๋ค. ์น์ 3์์๋ ์ด๋ฌํ ์ ์์ ์ธ ํน์ฑ์ ๋ํด ๋ ผ์ํ๋ฉฐ, ํนํ ํ๋ผ๋ฏธํฐ ์๊ฐ ์ ์์ ํต์ฌ์ ์ธ ์ญํ ์ ํ๋์ง์ ๋ํ ๊ฐ์ค์ phi-1๊ณผ phi-1-small์ ์ถ๋ ฅ์ ๋น๊ตํ์ฌ ํ์ธํฉ๋๋ค. ๋ณธ ์น์ ์์ ์ฌ์ฉ๋ ๋ฐฉ๋ฒ๋ก ์ LLM์ ์ฑ๋ฅ์ ํ๊ฐํ๊ธฐ ์ํด ์ ์ ์ธ ๋ฒค์น๋งํฌ๋ฅผ ๋ฒ์ด๋๋ ๊ฒ์ ์ฃผ์ฅํ "Sparks of AGI" ๋ ผ๋ฌธ [BCE+23]๊ณผ ์ ์ฌํฉ๋๋ค. ๋ง์ง๋ง์ผ๋ก, ์น์ 4์์๋ ๋ชจ๋ธ ํ๊ฐ๋ฅผ ์ํ ๋์์ ์ธ ๋ฒค์น๋งํฌ๋ฅผ ๋ ผ์ํ๊ณ , ์น์ 5์์๋ HumanEval์ ๋ํ ํ์ต ๋ฐ์ดํฐ์ ์ค์ผ ๊ฐ๋ฅ์ฑ์ ๋ํด ์ฐ๊ตฌํฉ๋๋ค.
More related works
๋ณธ ์ฐ๊ตฌ๋ ํ๋ก๊ทธ๋จ ํฉ์ฑ์ ์ํด LLM์ ์ฌ์ฉํ๋ ์ต๊ทผ ํ๋ก๊ทธ๋จ์ ์ผ๋ถ์
๋๋ค. ์์ธํ ์ฐธ๊ณ ๋ฌธํ์ [CTJ+21, NPH+22]๋ฅผ ์ฐธ์กฐํ์ญ์์ค. ๋ํ, ์ฐ๋ฆฌ์ ์ ๊ทผ ๋ฐฉ์์ ์ด๋ฏธ ์กด์ฌํ๋ LLM์ ์ฌ์ฉํ์ฌ ์๋ก์ด ์ธ๋์ LLM์ ํ๋ จํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ํฉ์ฑํ๋ ์๋ก์ด ํธ๋ ๋์ ์ผํ์
๋๋ค. [WKM+22, TGZ+23, ...] [MMJ+23, LGK+23, JWJ+23]. "์ฌ๊ท์ ํ์ต"์ด ์ด๋ฌํ ๊ฒฐ๊ณผ์ ์ธ LLM์ ๋ฒ์๋ฅผ ์ขํ์ง ์ ์๋์ง์ ๋ํ ๋
ผ์๊ฐ ์งํ ์ค์ด๋ค [SSZ+23, GWS+23] [MMJ+23]๋ ๋ฐ๋ ์๊ฒฌ์ ์ ์ํ๊ณ ์๋ค.
์ด ๋
ผ๋ฌธ์์๋ ์ฐ๋ฆฌ๊ฐ ์ค๊ณํ ์ข์ ๊ณผ์ ์ ์ด์ ์ ๋ง์ถ๊ณ ์์ผ๋ฉฐ, ์ด ๊ฒฝ์ฐ์๋ ํ์์ ๋
ผ๋ฌธ์์ ์ฃผ์ฅํ๋ ๋๋ก ํน์ ๊ณผ์ ์์ ๊ต์ฌ LLM๋ณด๋ค ๋ ๋์ ์ฑ๋ฅ์ ๋ฌ์ฑํ๋ ๊ฒ์ด ๊ฐ๋ฅํด ๋ณด์ธ๋ค.
2 Training details and the importance of high-quality data
Figure 2.1: HumanEval์์์ Pass@1 ์ ํ๋ (%). ๋ง๋ ๊ทธ๋ํ์ ๊ทธ๋ฃนํ๋ ๋ฐ์ดํฐ์ ๊ณ์ฐ ์๊ฐ์ ์ฆ๊ฐ์ํค๋ ์ผ๋ฐ์ ์ธ ์ค์ผ์ผ๋ง ์ฐจ์(26B ํ ํฐ์์ 76B๋ก) ๋๋ ๋ชจ๋ธ์ ๋งค๊ฐ๋ณ์ ์๋ฅผ ์ฆ๊ฐ์ํค๋ ๊ฒฝ์ฐ(350M์์ 1.3B๋ก)์ ํด๋นํ๋ค. ๊ทธ๋ฃน ๋ด์ ๊ฐ ์ด์ ๋ค๋ฅธ ํ๋ จ ๋ฐ์ดํฐ ์ธํธ์ ํด๋นํ๋ค:
(A) ์ฒซ ๋ฒ์งธ(์ฃผํฉ์) ์ด์ The Stack์ ์ค๋ณต์ด ์ ๊ฑฐ๋ Python ํ์ผ ๋ฐ 1.3B ๋งค๊ฐ๋ณ์ ๋ชจ๋ธ์ฉ StackOverflow์์ ํ๋ จ๋ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๋ํ๋ธ๋ค.
(B) ๋ ๋ฒ์งธ(์ฐ๋์) ์ด์ ์ฐ๋ฆฌ์ ์๋ก์ด ๋ฐ์ดํฐ ์ธํธ์ธ CodeTextbook์ผ๋ก ํ๋ จ๋ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๋ํ๋ธ๋ค.
(C) ๋ง์ง๋ง์ผ๋ก, ์ธ ๋ฒ์งธ(์งํ ์ฐ๋์) ์ด์ ์ฐ๋ฆฌ์ ์๋ก์ด CodeExercises ๋ฐ์ดํฐ ์ธํธ์์ ์ธ ๋ฒ์งธ ์ด ๋ชจ๋ธ์ ๋ํด finestuningํ ๊ฒฐ๊ณผ๋ฅผ ๋ํ๋ธ๋ค.
์ฐ๋ฆฌ๋ ๋จ์ง 1.3B ๋งค๊ฐ๋ณ์ ๋ชจ๋ธ๋ก CodeTextbook ๋ฐ์ดํฐ ์ธํธ๋ก ํ๋ จ๋ phi-1-base ๋ชจ๋ธ๋ก์ 29%์ HumanEval ์ฑ๋ฅ์ ๋ฌ์ฑํ๋ค. ์ด์ ์ HumanEval์์ 30%์ ๊ฐ๊น์ด ์ฑ๋ฅ์ ๋ฌ์ฑํ ๊ฐ์ฅ ์์ ๋ชจ๋ธ์ 2.7B ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ์ง Replit-Finetuned ๋ชจ๋ธ๋ก, ์ฐ๋ฆฌ๋ณด๋ค 100๋ฐฐ ๋ ๋ง์ ๊ต์ก ํ ํฐ์ผ๋ก ํ๋ จ๋์๋ค. ๋ํ, phi-1์ ์ป๊ธฐ ์ํด CodeExercises ๋ฐ์ดํฐ ์ธํธ์ ๋ํด finetuningํ๋ฉด HumanEval์์ 51%์ ์ต๊ณ ์ฑ๋ฅ์ ์ป์ ๋ฟ๋ง ์๋๋ผ ์ถ๊ฐ์ ์ธ ์์์น ๋ชปํ ์ฝ๋ฉ ๋ฅ๋ ฅ์ ์ ๋ณด์ธ๋ค.(3์ ์ฐธ์กฐ).
๋
ผ๋ฌธ ์ ๋ชฉ์์ ์์๋ ๋๋ก, ์ฐ๋ฆฌ์ ๋ชจ๋ธ์ ํต์ฌ ๊ตฌ์ฑ ์์๋ ๊ต๊ณผ์ ์์ค์ ํ๋ จ ๋ฐ์ดํฐ์ ์์กดํ๋ค. ์ฝ๋ ์์ฑ์ ์ํด ์ด์ ์ฐ๊ตฌ์์ ์ฌ์ฉ๋ ํ์ค ํ
์คํธ ๋ฐ์ดํฐ ์์ค์ธ The Stack [KLA+22](ํ์ฉ ๋ผ์ด์ ์ค๋ฅผ ๊ฐ์ง ์ ์ฅ์์ ์์ค ์ฝ๋๋ฅผ ํฌํจ) ๋ฐ ๊ธฐํ ์น ๊ธฐ๋ฐ ๋ฐ์ดํฐ ์ธํธ(StackOverflow ๋ฐ CodeContest [LCC+22])๋ ๋ชจ๋ธ์๊ฒ ์๊ณ ๋ฆฌ์ฆ์ ์ธ ์ถ๋ก ๊ณผ ๊ณํ์ ๊ฐ๋ฅด์น๋ ๋ฐ ์ต์ ํ๋์ง ์์๋ค๊ณ ์ฃผ์ฅํ๋ค.
๋ฐ๋ฉด์, ์ฐ๋ฆฌ์ ๋ชจ๋ธ ๊ตฌ์กฐ์ ํ๋ จ ๋ฐฉ๋ฒ์ ์๋นํ ์ ํต์ ์ด๋ฏ๋ก(2.3์ ์ฐธ์กฐ), ์ด ์ ์์๋ ์ฃผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ ๋ณํ๋์ง ์ค๋ช
ํ๋ค.
ํ์ค ์ฝ๋ ๋ฐ์ดํฐ ์ธํธ[KLA+22, LCC+22]๋ ๋ค์ํ ์ฃผ์ ์ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๋ค๋ฃจ๋ ๋๊ท๋ชจ์ด๊ณ ๋ค์ํ ๋ง๋ญ์น๋ฅผ ํ์ฑํ๋ค. ๊ทธ๋ฌ๋ ๋ฌด์์ ์ํ์ ์๋ ๊ฒ์ฌ๋ฅผ ํตํด ๋ง์ ์ค๋ํซ์ด ์ฝ๋ฉ์ ๊ธฐ๋ณธ ์ฌํญ์ ๋ฐฐ์ฐ๊ธฐ์๋ ๋งค์ฐ ๊ต์ก์ ์ด์ง ์๊ณ ์ฌ๋ฌ ๊ฐ์ง ๋จ์ ์ด ์๋ ๊ฒ์ผ๋ก ๊ด์ฐฐ๋๋ค:
๋ง์ ์ํ์ด ์์ฒด ์๊ฒฐ๋์ง ์์์ผ๋ฉฐ, ์ฆ, ์ถ๊ฐ ์ปจํ ์คํธ ์์ด๋ ์ดํดํ๊ธฐ ์ด๋ ต๊ฒ ๋ค๋ฅธ ๋ชจ๋์ด๋ ํ์ผ์ ์์กดํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค.
์ด ๋
ผ๋ฌธ์ ๊ธฐ์กด์ ์ฝ๋ ๋ฐ์ดํฐ์
์ ํ๊ณ์ ๊ณผ ์ธ์ด ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๋ํด ๋
ผ์ํ๊ณ ์์ต๋๋ค. ๊ธฐ์กด์ ์ฝ๋ ๋ฐ์ดํฐ์
์ ์๋ฏธ ์๋ ๊ณ์ฐ์ ํฌํจํ์ง ์์ผ๋ฉฐ, ๋๋ถ๋ถ์ ์์ ์ ์, ๋งค๊ฐ ๋ณ์ ์ค์ ๋๋ GUI ์์ ๊ตฌ์ฑ๊ณผ ๊ฐ์ ๋จ์ํ ์ฝ๋๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ๋ํ ์๊ณ ๋ฆฌ์ฆ ๋ก์ง์ ํฌํจํ๋ ์ํ๋ค์ ๋ณต์กํ๊ฑฐ๋ ๋ฌธ์ํ๋์ง ์์ ํจ์ ์์ ์จ๊ฒจ์ ธ ์์ด ๋ฐ๋ผ๊ฐ๊ธฐ ์ด๋ ต๊ณ ํ์ตํ๊ธฐ ์ด๋ ต์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ค์ ์ธ๊ฐ ํ์ต์๊ฐ ์ด๋ฌํ ๋ฐ์ดํฐ์
์ผ๋ก๋ถํฐ ์ฝ๋ฉ ์คํฌ์ ์ต๋ํ๋ ๊ฒ์ด ์ผ๋ง๋ ๊ดด๋ก์ฐ๊ณ ๋นํจ์จ์ ์ธ์ง ์์ํด๋ณผ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ด์ ๋ก ์ฐ๋ฆฌ๋ ์ธ์ด ๋ชจ๋ธ์ ์ฑ๋ฅ์๋ ์ํฅ์ ๋ฏธ์น๋ ์ด๋ฌํ ๋ฌธ์ ๋ค์ ํด๊ฒฐํ๊ธฐ ์ํด ๋
ธ๋ ฅํ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ณ ์์ ์ผ๋ก ๊ณ ํ์ง์ ๋ฐ์ดํฐ๋ฅผ ์ ํํ๊ณ ์์ฑํจ์ผ๋ก์จ ๊ธฐ์กด ๋ฐฉ๋ฒ๋ณด๋ค ํจ์ฌ ์์ ๋ชจ๋ธ๊ณผ ๋ ์ ์ ๊ณ์ฐ์ผ๋ก ์ฝ๋ ์์ฑ ์์
์์ ์ต์ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค. ์ฐ๋ฆฌ์ ํ๋ จ์ ์ธ ๊ฐ์ง ์ฃผ์ ๋ฐ์ดํฐ์
์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ์ฒซ์งธ, ์ฝ 60์ต ํ ํฐ์ผ๋ก ๊ตฌ์ฑ๋ The Stack๊ณผ StackOverflow์ ํ์ ์งํฉ์ธ ํํฐ๋ง๋ ์ฝ๋-์ธ์ด ๋ฐ์ดํฐ์
. ๋์งธ, ์ฝ 10์ต ํ ํฐ์ GPT-3.5๋ก ์์ฑ๋ ํ์ด์ฌ ๋ฐ์ดํฐ์
. ์
์งธ, ์ฝ 1์ต 8์ฒ๋ง ํ ํฐ์ ํ์ด์ฌ ์ฐ์ต ๋ฌธ์ ์ ํด๋ต์ผ๋ก ๊ตฌ์ฑ๋ ์์ ํฉ์ฑ ์ฐ์ต ๋ฐ์ดํฐ์
์
๋๋ค. ์ด๋ฌํ ๋ฐ์ดํฐ์
์ ์ด 70์ต ํ ํฐ ์ดํ์
๋๋ค. ์ฐ๋ฆฌ๋ ํํฐ๋ง๋ ์ฝ๋-์ธ์ด์ ํฉ์ฑ ๊ต๊ณผ์ ๋ฐ์ดํฐ์
์ ์กฐํฉ์ "CodeTextbook"์ด๋ผ๊ณ ๋ถ๋ฅด๋ฉฐ, ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ ํ๋ จ ๋จ๊ณ์์ ๊ฒฝ์๋ ฅ ์๋ HumanEval ์ฑ๋ฅ 29%๋ฅผ ๋ฌ์ฑํ๋ ๊ธฐ๋ณธ ๋ชจ๋ธ phi-1-base์ ์ป์ ์ ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ 1์ต 8์ฒ๋ง ํ ํฐ์ ํฉ์ฑ ์ฐ์ต ๋ฐ์ดํฐ์
"CodeExercises"๋ฅผ ์ฌ์ฉํ์ฌ phi-1-base ๋ชจ๋ธ์ ์ธ๋ฐํ๊ฒ ํ๋ํ์ฌ phi-1์ ์ป์ต๋๋ค.
๊ธฐ์กด์ ์ฝ๋ ๋ฐ์ดํฐ์ ์ ์๋ฏธ ์๋ ๊ณ์ฐ์ ํฌํจํ์ง ์์ผ๋ฉฐ, ๋๋ถ๋ถ์ ์์ ์ ์, ๋งค๊ฐ ๋ณ์ ์ค์ ๋๋ GUI ์์ ๊ตฌ์ฑ๊ณผ ๊ฐ์ ๋จ์ํ ์ฝ๋๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ๋ํ ์๊ณ ๋ฆฌ์ฆ ๋ก์ง์ ํฌํจํ๋ ์ํ๋ค์ ๋ณต์กํ๊ฑฐ๋ ๋ฌธ์ํ๋์ง ์์ ํจ์ ์์ ์จ๊ฒจ์ ธ ์์ด ๋ฐ๋ผ๊ฐ๊ธฐ ์ด๋ ต๊ณ ํ์ตํ๊ธฐ ์ด๋ ต์ต๋๋ค. ์ด๋ฌํ ์์ ๋ค์ ํน์ ์ฃผ์ ๋ ์ฌ์ฉ ์ฌ๋ก์ ํธํฅ๋์ด ์์ด ๋ฐ์ดํฐ์ ์ ์ฒด์์ ์ฝ๋ฉ ๊ฐ๋ ๊ณผ ๊ธฐ์ ์ ๊ท ํ์ด ๋ง์ง ์์ต๋๋ค. ์ด๋ฌํ ๋ฐ์ดํฐ์ ์์ ์ฝ๋ฉ ์คํฌ์ ์ต๋ํ๋ ค๋ ์ธ๊ฐ ํ์ต์์๊ฒ๋ ๋ง์ ๋ ธ์ด์ฆ, ๋ชจํธ์ฑ ๋ฐ ๋ถ์์ ์ฑ๊ณผ ๊ฐ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ฌ ๋ถ๋ง์กฑ์ค๋ฝ๊ณ ๋นํจ์จ์ ์ผ ๊ฒ์ผ๋ก ์์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ด์ ๋ก ์ฐ๋ฆฌ๋ ์ธ์ด ๋ชจ๋ธ์ ์ฑ๋ฅ์๋ ์ํฅ์ ๋ฏธ์น๋ ์ด๋ฌํ ๋ฌธ์ ๋ค์ ํด๊ฒฐํ๊ธฐ ์ํด ๋ ธ๋ ฅํ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ธ์ด ๋ชจ๋ธ์ด ์์ฐ์ด๋ฅผ ์ฝ๋๋ก ๋งคํํ๋ ์ ํธ์ ํ์ง๊ณผ ์์ ์ค์ด๋ ์์๋ก ์ธํด ๊ธฐ์กด ๋ฐฉ๋ฒ๋ณด๋ค ๋ ๋ง์ ์ฑ๊ณผ๋ฅผ ์ป์ ์ ์์ ๊ฒ์ด๋ผ๊ณ ์ถ์ธกํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ธ์ด ๋ชจ๋ธ์ด ์ข์ "๊ต๊ณผ์"๋ก ์ธ์ํ ์ ์๋ ํ๋ จ ์ธํธ์ ๋์ผํ ํ์ง์ ๊ฐ์ง๋ ํ๋ จ ์ธํธ์์ ์ฅ์ ์ ์ป์ ๊ฒ์ด๋ผ๊ณ ๊ฐ์ ํฉ๋๋ค. ์ด ๋ ผ๋ฌธ์์ ์ฐ๋ฆฌ๋ ์ด๋ฌํ ๋์ ์ ์ง์ ๋์ํ๊ณ , ๊ณ ์์ ์ผ๋ก ๊ณ ํ์ง์ ๋ฐ์ดํฐ๋ฅผ ์ ํํ๊ณ ์์ฑํจ์ผ๋ก์จ ๊ธฐ์กด ๋ฐฉ๋ฒ๋ณด๋ค ํจ์ฌ ์์ ๋ชจ๋ธ๊ณผ ๋ ์ ์ ๊ณ์ฐ์ผ๋ก ์ฝ๋ ์์ฑ ์์ ์์ ์ต์ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค.
์ฐ๋ฆฌ์ ํ๋ จ์ ์ธ ๊ฐ์ง ์ฃผ์ ๋ฐ์ดํฐ์ ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ์ฒซ์งธ, ์ฝ 60์ต ํ ํฐ์ผ๋ก ๊ตฌ์ฑ๋ ํํฐ๋ง๋ ์ฝ๋-์ธ์ด ๋ฐ์ดํฐ์ ์ The Stack๊ณผ StackOverflow์ ํ์ ์งํฉ์ ๋๋ค. ์ด ๋ฐ์ดํฐ์ ์ ์ธ์ด ๋ชจ๋ธ ๊ธฐ๋ฐ์ ๋ถ๋ฅ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ป์์ต๋๋ค. ๋์งธ, ์ฝ 10์ต ํ ํฐ์ GPT-3.5๋ก ์์ฑ๋ ํ์ด์ฌ ๊ต๊ณผ์ ๋ฐ์ดํฐ์ ์ ๋๋ค. ์ ์งธ, ์ฝ 1์ต 8์ฒ๋ง ํ ํฐ์ ํ์ด์ฌ ์ฐ์ต ๋ฌธ์ ์ ํด๋ต์ผ๋ก ๊ตฌ์ฑ๋ ์์ ํฉ์ฑ ์ฐ์ต ๋ฐ์ดํฐ์ ์ ๋๋ค. ์ด๋ฌํ ๋ฐ์ดํฐ์ ์ ์ด 70์ต ํ ํฐ ์ดํ์ ๋๋ค. ํํฐ๋ง๋ ์ฝ๋-์ธ์ด์ ํฉ์ฑ ๊ต๊ณผ์ ๋ฐ์ดํฐ์ ์ ์กฐํฉ์ "CodeTextbook"์ด๋ผ๊ณ ๋ถ๋ฅด๋ฉฐ, ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ ํ๋ จ ๋จ๊ณ์์ ๊ฒฝ์๋ ฅ ์๋ HumanEval ์ฑ๋ฅ 29%๋ฅผ ๋ฌ์ฑํ๋ ๊ธฐ๋ณธ ๋ชจ๋ธ phi-1-base์ ์ป์ ์ ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ 1์ต 8์ฒ๋ง ํ ํฐ์ ํฉ์ฑ ์ฐ์ต ๋ฐ์ดํฐ์ "CodeExercises"๋ฅผ ์ฌ์ฉํ์ฌ phi-1-base ๋ชจ๋ธ์ ์ธ๋ฐํ๊ฒ ํ๋ํ์ฌ phi-1์ ์ป์ต๋๋ค.
2.1 Filtering of existing code datasets using a transformer-based classifier
์ฐ๋ฆฌ๋ ๊ณต๊ฐ์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ Python ์ฝ๋ ๋ฐ์ดํฐ์ ์ ์ฌ์ฉํ์ฌ ์์ํฉ๋๋ค. The Stack๊ณผ StackOverflow์ ์ค๋ณต ์ ๊ฑฐ๋ ๋ฒ์ ์ Python ํ์ ์งํฉ์ ์ฌ์ฉํ๋ฉฐ, ์ด ๋ฐ์ดํฐ์ ์ ์ด 3์ฒ5๋ฐฑ๋ง ๊ฐ์ ํ์ผ/์ํ๊ณผ 3์ฒ5๋ฐฑ์ต ๊ฐ์ ํ ํฐ์ ํฌํจํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์์ ๋ถ๋ถ์งํฉ์ ํ์ผ(์ฝ 10๋ง ๊ฐ์ ์ํ)์ ํ์ง์ ์ฃผ์์ผ๋ก ์ง์ ํ๊ธฐ ์ํด GPT-4๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ฃผ์ด์ง ์ฝ๋ ์กฐ๊ฐ์ ๋ํด ๋ชจ๋ธ์๊ฒ "๊ธฐ๋ณธ ์ฝ๋ฉ ๊ฐ๋ ์ ๋ฐฐ์ฐ๊ณ ์ ํ๋ ํ์์ ์ํ ๊ต์ก์ ๊ฐ์น๋ฅผ ํ๋จํ๋ผ"๋ ํ๋กฌํํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๊ทธ๋ฐ ๋ค์ ์ฃผ์์ด ๋ฌ๋ฆฐ ์ด ๋ฐ์ดํฐ์ ์ ์ฌ์ฉํ์ฌ ์ฌ์ ํ๋ จ๋ codegen ๋ชจ๋ธ์ ์ถ๋ ฅ ์๋ฒ ๋ฉ์ ํน์ง์ผ๋ก ์ฌ์ฉํ์ฌ ํ์ผ/์ํ์ ํ์ง์ ์์ธกํ๋ ๋๋ค ํฌ๋ ์คํธ ๋ถ๋ฅ๊ธฐ๋ฅผ ํ๋ จ์ํต๋๋ค. ์ฐ๋ฆฌ๋ ํฉ์ฑ ์ฝํ ์ธ ์์ฑ์ ๊ด๋ฒ์ํ๊ฒ ์ฌ์ฉ๋๋ GPT-3.5์ ๋ฌ๋ฆฌ, GPT-4๋ ์ฃผ๋ก The Stack๊ณผ StackOverflow์ ์์ ๋ถ๋ถ์งํฉ์ ๋ํ ์ฃผ์์ ์ฌ์ฉ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ GPT-4์ ์ฌ์ฉ์ ๋จ์ํ ๊ท์ฐฎ์ ์ธ๊ฐ ์ฃผ์ ์์ ์ ํผํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ผ๋ก๋ง ์ฌ์ฉํ๋ค๊ณ ์๊ฐํฉ๋๋ค. [DLT+23]
2.2 Creation of synthetic textbook-quality datasets
์ฝ๋ ์์ฑ์ ์ํ ๊ณ ํ์ง ๋ฐ์ดํฐ์
์ ์์ฑํ๋ ์ฃผ์ ๋์ ์ค ํ๋๋ ์์ ๊ฐ ๋ค์ํ๊ณ ๋ฐ๋ณต๋์ง ์๋ ๊ฒ์ ๋ณด์ฅํ๋ ๊ฒ์ด๋ค. ์ด๋ฌํ ๋ค์์ฑ์ ๋ค์ํ ์ฝ๋ฉ ๊ฐ๋
, ๊ธฐ์ ๋ฐ ์๋๋ฆฌ์ค๋ฅผ ๋ค๋ฃจ๊ณ ๋์ด๋, ๋ณต์ก์ฑ ๋ฐ ์คํ์ผ์์ ๋ค์์ฑ์ ๊ฐ์ ธ์ผ ํจ์ ์๋ฏธํ๋ค. ์ด ๋ค์์ฑ์ ๋ช ๊ฐ์ง ์ด์ ๋ก ์ค์ํ๋ค. ์ฆ, ์ธ์ด ๋ชจ๋ธ์๊ฒ ์ฝ๋๋ก ๋ฌธ์ ๋ฅผ ํํํ๊ณ ํด๊ฒฐํ๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ๋
ธ์ถ์ํค๊ณ , ํน์ ํจํด์ด๋ ์๋ฃจ์
์ ๊ธฐ์ตํ๊ฑฐ๋ ๊ธฐ์ตํ๋ ๊ฒ์ ๋ฐฉ์งํ๋ฉฐ, ๋ชจ๋ธ์ ์ผ๋ฐํ ๋ฐ ๊ฐ๊ฑด์ฑ์ ๋์ธ๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ๋ค์์ฑ์ ๋ฌ์ฑํ๋ ๊ฒ์ ์ฝ์ง ์๋ค. ํนํ ๋ค๋ฅธ ์ธ์ด ๋ชจ๋ธ์ ์ํด ์์ฑ๋ ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ๋ ๊ทธ๋ ๋ค. ๋จ์ํ ๋ชจ๋ธ์๊ฒ ์ฝ๋ฉ ๊ต์ฌ๋ ์ฐ์ต ๋ฌธ์ ์ธํธ๋ฅผ ์์ฑํ๋๋ก ์ง์ํ๋ ๊ฒฝ์ฐ, ์ง์ ์ฌํญ์ด๋ ๋งค๊ฐ ๋ณ์์ ์ฝ๊ฐ์ ๋ณํ๊ฐ ์๋๋ผ๋ ๋์ผํ ๊ฐ๋
๊ณผ ์๋ฃจ์
์ด ๋ฐ๋ณต๋๋ ๋งค์ฐ ๋์ง์ ์ด๊ณ ์ค๋ณต๋ ๋ฐ์ดํฐ์
์ด ์์ฑ๋ ๊ฒ์ด๋ค. ์ด๋ ์ธ์ด ๋ชจ๋ธ์ด ํ๋ จ ๋ฐ์ดํฐ์ ์ฌ์ ์ ์ฃผ์ด์ง ๊ฐ์ ์ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ฅ ๊ฐ๋ฅ์ฑ์ด ๋๊ฑฐ๋ ์ผ๋ฐ์ ์ธ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ฅด๋ฉฐ, ๋์ฒด ๋๋ ๋
ํนํ ์ฝ๋ ์์ฑ ๋ฐฉ์์ ํ์ํ๋ ์ฐฝ์์ฑ์ด๋ ๋๊ธฐ ๋ถ์ฌ๊ฐ ๋ถ์กฑํ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฐ๋ผ์ ์์ ์ ํ์ง๊ณผ ์ผ๊ด์ฑ์ ์ ์งํ๋ฉด์ ์ธ์ด ๋ชจ๋ธ์ด ์ถ๋ ฅ์์ ๋์ฑ ์ฐฝ์์ ์ด๊ณ ๋ค์ํ ๋ฐฉ์์ผ๋ก ์๋ํ๋๋ก ์ ๋ํ ์ ์๋ ์ ์ ํ "๊ธฐ๊ต"๋ฅผ ์ฐพ์์ผ ํ๋ค. [EL23]์์ ์๊ฐ์ ๋ฐ์, ๊ณ ์ ๋ ์ดํ์์ ์ ํ๋ ๋จ์ด์ ๋ฌด์์ ํ์ ์งํฉ์ ํฌํจํ์ฌ ๋ค์ํ ์งง์ ์ด์ผ๊ธฐ ์งํฉ์ด ์์ฑ๋๋๋ก ์๊ตฌํ๋ ๋ฐฉ์์ผ๋ก ๋ฌด์์์ฑ์ ์
๋ ฅ์ ์ฃผ์
ํ๋ ๋ฐฉ๋ฒ์ ์ฐพ๋๋ค.
The synthetic textbook dataset
์ด ๋ฐ์ดํฐ์
์ GPT-3.5๋ก ์์ฑ๋ Python ๊ต๊ณผ์์ ํ ํฐ ์๊ฐ 10์ต๊ฐ ๋ฏธ๋ง์ธ ๋ฐ์ดํฐ์
์ผ๋ก, ์์ฐ์ด๊ฐ ๋ง์ด ํฌํจ๋ ํ
์คํธ์ ๊ด๋ จ ์๋ ์ฝ๋ ์ค๋ํซ์ด ๊ต์ฐจ๋์ด ๊ณ ํ์ง์ ์์ค๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด ํฉ์ฑ๋์์ต๋๋ค.
๋ํ ์ด ๊ต๊ณผ์์ ๋ด์ฉ์ ์ถ๋ก ๊ณผ ๊ธฐ๋ณธ์ ์ธ ์๊ณ ๋ฆฌ์ฆ ๊ธฐ์ ์ ์ด์งํ๋ ์ฃผ์ ๋ก ๊ณ ๋ คํ์ต๋๋ค. ์ฌ๊ธฐ์์ ๋ค์์ฑ์ ์์ฑ๋ ๊ต๊ณผ์์ ์ฃผ์ ์ ๋์ ๋
์์ ๋ํ ์ ์ฝ ์กฐ๊ฑด์ ์ ๊ณตํจ์ผ๋ก์จ ์ป์ ์ ์์ต๋๋ค. ๋ค์ ์์๋ ํฉ์ฑ์ผ๋ก ์์ฑ๋ ๊ต๊ณผ์ ํ
์คํธ๋ฅผ ๋ณด์ฌ์ค๋๋ค.
๋จผ์ , ๋จ์ ํ๋ ฌ๊ณผ ๋น๋จ์ ํ๋ ฌ์ ์ ์ํด ๋ด
์๋ค. ํ๋ ฌ์ ํ๋ ฌ์์ด 0์ด๋ฉด ํด๋น ํ๋ ฌ์ ๋จ์ ํ๋ ฌ์ด๋ผ๊ณ ํฉ๋๋ค. ๋ฐ๋ฉด, ํ๋ ฌ์ ํ๋ ฌ์์ด 0์ด ์๋๋ฉด ํด๋น ํ๋ ฌ์ ๋น๋จ์ ํ๋ ฌ์ด๋ผ๊ณ ํฉ๋๋ค. ์ด์ ์์ ๋ฅผ ํตํด ์ด๋ฌํ ๊ฐ๋
์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์์ 1:
ํ๋ ฌ A = np.array([[1, 2], [2, 4]])์ ๊ณ ๋ คํด ๋ด
์๋ค. ์ด ํ๋ ฌ์ด ๋จ์์ธ์ง ๋น๋จ์์ธ์ง๋ฅผ ํ๋ ฌ์ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ํ์ธํ ์ ์์ต๋๋ค. is_singular(A)
๋ผ๋ Python ํจ์๋ฅผ ์ ์ํ ์ ์์ผ๋ฉฐ, ์ด ํจ์๋ A์ ํ๋ ฌ์์ด 0์ด๋ฉด true๋ฅผ ๋ฐํํ๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด false๋ฅผ ๋ฐํํฉ๋๋ค.
The CodeExercises dataset
์ด๊ฒ์ ์์ ํฉ์ฑ ์ฐ์ต ๋ฐ์ดํฐ์
์ผ๋ก, Python ์ฐ์ต๋ฌธ์ ์ ํด๋ต์ ํ ํฐ ์๊ฐ 1์ต 8000๋ง๊ฐ ๋ฏธ๋ง์
๋๋ค. ๊ฐ ์ฐ์ต๋ฌธ์ ๋ ์์ฑํด์ผ ํ๋ ํจ์์ ๋ฌธ์ ๋ฌธ์์ด์
๋๋ค. ์ด ๋ฐ์ดํฐ์
์ ๋ชฉํ๋ ์์ฐ์ด ์ง์นจ์ ๊ธฐ๋ฐํ์ฌ ํจ์ ์์ฑ ์์
์ ์ํํ๋ ๋ชจ๋ธ์ ์กฐ์ ํ๋ ๊ฒ์
๋๋ค. ์ด ๋ฐ์ดํฐ์
์ GPT-3.5๋ก ์์ฑ๋์์ผ๋ฉฐ, ์ฃผ๋ ๋ค์์ฑ ์ ๋ ๋ฐฉ๋ฒ์ ํจ์ ์ด๋ฆ์ ์ ํํจ์ผ๋ก์จ ์ด๋ฃจ์ด์ง๋๋ค. ํนํ ์ด ๋ฐ์ดํฐ์
์ ๋ํด์๋ ๋ค์ ์น์
์์ ๋ช
์์ ์ธ ์ค์ผ ์ ๊ฑฐ์ ๋์ฒด ํ๊ฐ๋ฅผ ์ํํ์ฌ HumanEval ๋ฒค์น๋งํฌ์ ์ ์ฌํ ๋ฌธ์ ๊ฐ ๋ฏธ์ธ์กฐ์ ๋์ ๋ํ๋์ง ์๋๋ก ๋ณด์ฅํฉ๋๋ค. ๋ค์ ์ค๋ํซ์ ํฉ์ฑ์ผ๋ก ์์ฑ๋ ์ฐ์ต๋ฌธ์ ๋ฅผ ๋ณด์ฌ์ค๋๋ค.
2.3 Model architecture and traning
์ฐ๋ฆฌ๋ FlashAttention ๊ตฌํ์ ์ฌ์ฉํ์ฌ ๋ฉํฐ ํค๋ ์ดํ ์ (MHA) [DFE+22]์ ์ฌ์ฉํ ๋์ฝ๋ ์ ์ฉ ํธ๋์คํฌ๋จธ [VSP+17] ๋ชจ๋ธ์ ์ฌ์ฉํฉ๋๋ค. ๋ํ CodeGen [NPH+22], PaLM [CND+22], GPT-NeoX [BBH+22]์ ๊ฐ์ ์ต๊ทผ ๋ชจ๋ธ๋ค์ ๋ฐ๋ผ MHA ๋ฐ MLP ๋ ์ด์ด๋ฅผ ๋ณ๋ ฌ ๊ตฌ์ฑ์ผ๋ก ์ฌ์ฉํฉ๋๋ค. ์ฐ๋ฆฌ์ 13์ต ๊ฐ ํ๋ผ๋ฏธํฐ phi-1 ๋ชจ๋ธ์ ์ํคํ ์ฒ๋ 24๊ฐ ๋ ์ด์ด, 2048์ ํ๋ ๋๋ฉ์ , 8192์ MLP ์ธํฐ ๋๋ฉ์ , ๊ฐ๊ฐ 64์ ์ดํ ์ ํค๋ 32๊ฐ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ๋ ์์ 3์ต 5000๋ง ๊ฐ ํ๋ผ๋ฏธํฐ phi-1-small ๋ชจ๋ธ์ 20๊ฐ์ ๋ ์ด์ด, 1024์ ํ๋ ๋๋ฉ์ , 4096์ MLP ์ธํฐ ๋๋ฉ์ , ๊ฐ๊ฐ 64์ ์ดํ ์ ํค๋ 16๊ฐ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
์ฐ๋ฆฌ๋ rotary position embedding [SLP+21]์ 32์ rotary ๋๋ฉ์ ์ผ๋ก ์ฌ์ฉํฉ๋๋ค. ์ด๋ฌํ ์ํคํ ์ฒ ์ ํ์ [NPH+22]์์ ์ฑํ๋์์ต๋๋ค. ๋ํ ์ฐ๋ฆฌ๋ codegen-350M-mono [NPH+22]์ ๋์ผํ ํ ํฌ๋์ด์ ๋ฅผ ์ฌ์ฉํฉ๋๋ค. FlashAttention์ ์ ์ธํ๊ณ ์ฐ๋ฆฌ์ ๋ชจ๋ธ๋ค์ Fill-In-the-Middle (FIM) [BJT+22] ๋๋ Multi-Query-Attention (MQA) [RSR+20]์ ๊ฐ์ ๋ค๋ฅธ ์๋ก์ด ๊ธฐ์ ์ ์ฌ์ฉํ์ง ์์ต๋๋ค. ์ด๋ฌํ ๊ธฐ์ ๋ค์ ์ฑ๋ฅ๊ณผ ํจ์จ์ฑ์ ๋์ฑ ํฅ์์ํฌ ์ ์์ต๋๋ค [LAZ+23].
pretraining๊ณผ finetuning ๋ชจ๋์์ ์ฐ๋ฆฌ๋ ๊ฐ๊ฐ์ ๋ฐ์ดํฐ์ ์ ํ์ผ์ ๊ตฌ๋ถํ๋ "โฃendoftextโฃ" ํ ํฐ์ ์ฌ์ฉํ์ฌ ํ๋์ ์ฐจ์ ๋ฐฐ์ด๋ก ์ฐ๊ฒฐํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๋ค์ ํ ํฐ ์์ธก ์์ค์ ๊ฐ์ง 2048์ ์ํ์ค ๊ธธ์ด๋ก ๋ฐ์ดํฐ์ ๋ฐฐ์ด์์ ๋ชจ๋ธ์ ํ๋ จ์ํต๋๋ค. ์ฐ๋ฆฌ๋ AdamW ์ตํฐ๋ง์ด์ , linear-warmup-linear-decay ํ์ต๋ฅ ์ค์ผ์ค, ๊ทธ๋ฆฌ๊ณ ์ดํ ์ ๊ณผ residual dropout 0.1์ ์ฌ์ฉํ๋ fp16 ํ๋ จ์ ์ฌ์ฉํฉ๋๋ค. ์ฐ๋ฆฌ๋ deepspeed๋ฅผ ์ฌ์ฉํ์ฌ 8๊ฐ์ Nvidia-A100 GPU์์ ๋ชจ๋ธ์ ํ๋ จ์ํต๋๋ค. ์ฐ๋ฆฌ์ ์ฌ์ ํ๋ จ๋ ๋ฒ ์ด์ค ๋ชจ๋ธ phi-1-base๋ 4์ผ ์ด๋ด์ ํ๋ จ์ผ๋ก ์ป์ด์ก์ต๋๋ค. ๋์ผํ ํ๋์จ์ด์์ phi-1์ ์ป๊ธฐ ์ํด ์ถ๊ฐ๋ก 7์๊ฐ์ ์ฌ์ฉํ์ฌ finetuning์ ์ํํฉ๋๋ค.
์ฌ์ ํ๋ จ. phi-1-base๋ CodeTextbook ๋ฐ์ดํฐ์ (ํํฐ๋ง๋ ์ฝ๋-์ธ์ด ๋ง๋ญ์น ๋ฐ ํฉ์ฑ ๊ต๊ณผ์)๋ก ํ๋ จ๋์์ต๋๋ค. ๋ฐ์ดํฐ ๋ณ๋ ฌ ์ฒ๋ฆฌ ๋ฐ ๊ทธ๋ผ๋์ธํธ ๋์ ์ ํฌํจํ ํจ๊ณผ์ ์ธ ๋ฐฐ์น ํฌ๊ธฐ 1024, ์์ ๋จ๊ณ 750์์ ์ต๋ ํ์ต๋ฅ 1e-3, ๊ฐ์ค์น ๊ฐ์ 0.1์ ์ฌ์ฉํ์ฌ ์ด 36,000 ๋จ๊ณ ๋์ ํ๋ จํฉ๋๋ค. ์ฐ๋ฆฌ๋ 24,000 ๋จ๊ณ์ ์ฒดํฌํฌ์ธํธ๋ฅผ phi-1-base๋ก ์ฌ์ฉํฉ๋๋ค. ์ด๋ ์ด 50B ์ด์์ ํ๋ จ ํ ํฐ์ ๋ํด CodeTextbook ๋ฐ์ดํฐ์ ์์ ์ฝ 8 epoch์ ํด๋นํฉ๋๋ค. ์์ ํฌ๊ธฐ์ ๊ณ์ฐ ๋ฅ๋ ฅ์๋ ๋ถ๊ตฌํ๊ณ , ์ด ๋ชจ๋ธ์ ์ด๋ฏธ HumanEval์์ 29%์ ์ ํ๋๋ฅผ ๋ฌ์ฑํฉ๋๋ค.
Finetuning. phi-1์ CodeExercises ๋ฐ์ดํฐ์ ์์ phi-1-base๋ฅผ finetuningํ์ฌ ์ป์ด์ง๋๋ค. finetuning์ ์ํด ์ฌ์ ํ๋ จ๊ณผ ๋์ผํ ์ค์ ์ ์ฌ์ฉํ์ง๋ง ํ์ดํผํ๋ผ๋ฏธํฐ๋ ๋ค๋ฆ ๋๋ค. ํจ๊ณผ์ ์ธ ๋ฐฐ์น ํฌ๊ธฐ๋ 256, ์์ 50 ๋จ๊ณ์์ ์ต๋ ํ์ต๋ฅ 1e-4, ๊ฐ์ค์น ๊ฐ์ 0.01์ ์ฌ์ฉํฉ๋๋ค. ์ด 6,000 ๋จ๊ณ ๋์ ํ๋ จํ๊ณ ๋งค 1000 ๋จ๊ณ๋ง๋ค ์ต์์ ์ฒดํฌํฌ์ธํธ๋ฅผ ์ ํํฉ๋๋ค.
3 Spikes of model capability after finetuning on CodeExcersies
Figure 2.1์ HumanEval์์์ ๊ฐ์ฅ ํฐ ๊ฐ์ ์ด ์์ CodeExercises ๋ฐ์ดํฐ์ (<200M ํ ํฐ)์์์ finetuning์ผ๋ก ์ธํ ๊ฒ์์ ๋ณด์ฌ์ค๋๋ค. CodeExercises๋ ๊ธฐ๋ณธ Python ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ง ์ฌ์ฉํ๋ ์งง์ Python ์์ ์ผ๋ก๋ง ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด ์น์ ์์๋ finetuning ๋ฐ์ดํฐ์ ์ ํฌํจ๋์ง ์์ ์์ ์ ์คํํ๋ ๋ฐ ๋ชจ๋ธ์ด ์๋นํ ๊ฐ์ ์ ๋ณด์ด๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค. ์ด๋ ๋ณธ์ง์ ์ผ๋ก ๋ณธ์ธ์ CodeExercises ๋ฐ์ดํฐ์ ์ ๋ช ์์ ์ผ๋ก ํฌํจ๋์ง ์์ ์ง์์ ์ฌ์ ํ๋ จ ๊ธฐ๊ฐ ๋์ ์ต๋ํ๊ณ ์ ๋ฆฌํ๋ ๋ฐ ๋ชจ๋ธ์ด ๋์์ ๋ฐ์์ ๊ฐ๋ฅ์ฑ์ ์์ฌํฉ๋๋ค. ์ด ์น์ ์์๋ finetuned ๋ชจ๋ธ phi-1๊ณผ ๊ทธ ์ฌ์ ํ๋ จ๋ 13์ต ๊ฐ ํ๋ผ๋ฏธํฐ ๋ฒ ์ด์ค ๋ชจ๋ธ phi-1-base์ ๋ฅ๋ ฅ์ ์ง์ ์ผ๋ก ๋น๊ตํ๊ณ ๋์กฐํ๋ ๋ฐ ์ด์ ์ ๋ง์ถ ๊ฒ์ ๋๋ค.
3.1 Finetuning improves the model's understanding
์ฐ๋ฆฌ๊ฐ ์ง์ ๋ง๋ ๊ฐ๋จํ Python ํจ์๋ฅผ ์ฌ์ฉํ์ฌ, ์ฐ๋ฆฌ๋ ์๋์์ finetuning ํ ๋ชจ๋ธ์ด ์ง์์ ๋ํด ํจ์ฌ ๋ ๋์ ์์ค์ ์ดํด๋ ฅ๊ณผ ์ค์์ฑ์ ๋ณด์ฌ์ค๋๋ค.
ํนํ, phi-1-base๋ ํ๋กฌํํธ์ ๋ ผ๋ฆฌ์ ์ธ ๊ด๊ณ์ ์ด๋ ค์์ ๊ฒช์ง๋ง, phi-1์ ์ง๋ฌธ์ ํด์ํ๊ณ ์ ํํ ๋ต์ ์์ฑํ ์ ์์ต๋๋ค. ์ด ์์์์๋ 350M์ phi-1-small ๋ชจ๋ธ์กฐ์ฐจ๋ ๋ฌธ์ ์ ๋ํ ์ดํด ์์ค์ ์ผ๋ถ ๋ณด์ฌ์ฃผ์ง๋ง, ๊ฒฐ๊ณผ์ ์ธ ํด๊ฒฐ์ฑ ์ ์๋ชป๋ฉ๋๋ค.
3.2 Feinetuning improves the model's ability to use external libraries
CodeExercises์์์ Feinetuning์ด ์์์น ๋ชปํ๊ฒ Pygame๊ณผ Tkinter์ ๊ฐ์ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ ๋ฅ๋ ฅ์ ํฅ์์ํจ๋ค๋ ๊ฒ์ ์ฌ๊ธฐ์ ๋ณด์ฌ์ค๋๋ค. ์ฐ๋ฆฌ์ ์ฐ์ต๋ฌธ์ ์๋ ์ด๋ฌํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํฌํจ๋์ด ์์ง ์์์๋ ๋ถ๊ตฌํ๊ณ , ์ด๋ ์ฐ๋ฆฌ์ Feinetuning์ด ๋ชฉํ๋ก ํ ์์ ๋ฟ๋ง ์๋๋ผ ๊ด๋ จ ์๋ ์์ ์ ์ฌ์ ํ๋ จ์ผ๋ก๋ถํฐ ๋ณด๋ค ์ฝ๊ฒ ์ถ์ถ ๊ฐ๋ฅํ๊ฒ ๋ง๋ ๋ค๋ ๊ฒ์ ์์ฌํฉ๋๋ค. ์ฐธ๊ณ ๋ก, Figure 3.1์ CodeExercises ๋ฐ์ดํฐ์ ์์ ํจํค์ง ์ํฌํธ์ ๋ถํฌ๋ฅผ ๋ณด์ฌ์ค๋๋ค.
Figure 3.1: Feinetuning์์ 879486๊ฐ์ ์ฐ์ต๋ฌธ์ ์ค ์ํฌํธ ์ (10ํ ๋ฏธ๋ง์ผ๋ก ๋ฌด์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ํฌํธ). ๊ทธ๋ํ๋ ๋ค์ ํ๋กฌํํธ๋ก phi-1์ ์ํด ์์ฑ๋์์ต๋๋ค: "์ฌ์ ์ด ์์ ๋, ๊ฐ์ ๊ธฐ์ค์ผ๋ก ์ฌ์ ์ ํฐ ๊ฐ๋ถํฐ ์์ ๊ฐ์ผ๋ก ์ ๋ ฌํ๊ณ , pyplot ๋ง๋ ๊ทธ๋ํ๋ฅผ ์์ฑํ์ธ์. ๋จผ์ ๊ธ๊ผด ํฌ๊ธฐ๋ฅผ 7๋ก ์ค์ ํ๊ณ , ๊ทธ ๋ค์ x์ถ ๋ ์ด๋ธ์ 90๋๋ก ํ์ ํ์ธ์. x์ถ์ ํค์ด๊ณ , y์ถ์ ์ฌ์ ์ ๊ฐ์ ๋๋ค. y์ถ์ ๋ก๊ทธ ์ค์ผ์ผ์ ์ฌ์ฉํ์ธ์. ๋ํ, y์ถ ๋ ์ด๋ธ์ 'Log Number of Times'๋ก, x์ถ ๋ ์ด๋ธ์ 'Imports'๋ก ์ค์ ํ์ธ์. dpi๋ 1000์ผ๋ก ์ค์ ํ์ธ์."
PyGame ์์
PyGame์ ์ฌ์ฉํ์ฌ ์ฝ๋๋ฅผ ์์ฑํ์ฌ ๊ณต์ ์ด๋์ํต๋๋ค.
์์ ์ฝ๋ ์ค๋ํซ์ ํ๋ฉด์ ๊ณต์ ํ๊ธฐ๋ ๊ฐ๋จํ PyGame ํ๋ก๊ทธ๋จ์ ๋ฉ์ธ ๋ฃจํ๋ฅผ ๋ณด์ฌ์ค๋๋ค. phi-1์ ํ๋กฌํํธ์ ์ง์๋ ๋๋ก PyGame ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ณต์ ์ ๋ฐ์ดํธํ๊ณ ๊ทธ๋ฆฌ๋ ๋ฅ๋ ฅ์ ์ฌ๋ฐ๋ฅด๊ฒ ์ ์ฉํฉ๋๋ค. phi-1-base์ phi-1-small์ ๋ฌธ๋ฒ์ ์ผ๋ก ์ฌ๋ฐ๋ฅธ ํจ์ ํธ์ถ์ ์์ฑํ์ง๋ง ์๋ฏธ๋ก ์ ์ผ๋ก๋ ๊ด๋ จ์ด ์์ต๋๋ค. phi-1-base๋ ์ ์ ํ API ํธ์ถ์ ์ฌ์ฉํ๋ ๋ฅ๋ ฅ์ ์ผ๋ถ ๋ณด์ฌ์ฃผ์ง๋ง, ์์ ์ ๋ ผ๋ฆฌ๋ฅผ ๋ฐ๋ฅด์ง ๋ชปํฉ๋๋ค. ๋ฐ๋ฉด์ phi-1-small์ ๋ ผ๋ฆฌ๋ฅผ ์ดํดํ์ง๋ง ์ฌ๋ฐ๋ฅธ ํจ์ ํธ์ถ์ ํ์ตํ ์ถฉ๋ถํ ๋ฅ๋ ฅ์ด ์์ต๋๋ค.
TKinter ์์ . ๋ ๋ฒ์งธ ์์ ๋ ์ฌ์ฉ์๊ฐ ๋ฒํผ์ ํด๋ฆญํ ๋ ๋ชจ๋ธ์๊ฒ ํ ์คํธ ํ๋๋ฅผ ์ ๋ฐ์ดํธํ๋๋ก ์์ฒญํ๋ TKinter ์์ฉ ํ๋ก๊ทธ๋จ์ ๋๋ค.
์ธ ๋ชจ๋ธ์ ์์ฑ์ ํ๋กฌํํธ ์ดํด๋ ฅ์ ํฐ ์ฐจ์ด๋ฅผ ๋ณด์ฌ์ค๋๋ค. phi-1-base์ phi-1-small์ ์ฌ๋ฐ๋ฅธ Tkinter API๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๊ณ ์๋ฏธ ์๋ ํจ์ ํธ์ถ์ ๋ง๋ญ๋๋ค. ๋ฐ๋ฉด phi-1์ GUI์ ๋ชจ๋ ํจ์๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌํํ์ต๋๋ค(๋จ, "pewpewpew?"๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๋ณต์ฌํ์ง ์์์ต๋๋ค). Appendix A์๋ pytorch ๋ฐ pyplot์ ์ํ ๋ ๊ฐ์ง ์ถ๊ฐ ์์ ๋ฅผ ์ ์ํฉ๋๋ค.
์ฑํ ๋ชจ๋ ์์ ์ ๋๋ค. ๋ง์ง๋ง์ผ๋ก, ์ฐ๋ฆฌ๋ phi-1์ด phi-1-base๋ณด๋ค ๋ ๋์ ์ฑํ ๋ฅ๋ ฅ์ ๊ฐ๊ณ ์๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋๋ค. ์ฌ์ ํ๋ จ์์๋ ์ฑํ ๋ฐ์ดํฐ๊ฐ ๋ฐฐ์ ๋์ง๋ง, fine-tuning์์๋ ๋ฐฐ์ ๋์ง ์์์๋ ๋ถ๊ตฌํ๊ณ ์ ๋๋ค.
๋ชจ๋ธ | ํฌ๊ธฐ | ํ๋ จ ํ ํฐ | ์ ์ | HumanEval |
---|---|---|---|---|
CodeGen-Mono-350M | 350M | 577B | 0.19 | 12.8% |
CodeGen-Mono-16.1B | 16.1B | 577B | 0.38 | 29.3% |
Replit | 2.7B | 525B | 0.37 | 21.9% |
StarCoder | 15.5B | 1T | 0.51 | 33.6% |
phi-1-base | 1.3B | 7B | 0.37 | 29% |
phi-1-small | 350M | 7B | 0.45 | 45% |
phi-1 | 1.3B | 7B | 0.52 | 50.6% |
ํ 2: 50๊ฐ์ ์๋ก์ด ๋น์ ํต์ ์ฝ๋ฉ ๋ฌธ์ ์ ๋ํ LLM ๋ฑ๊ธ ์ดํด๋.
([EL23]์์์ ๊ฐ์ด) ์ด ์ ๊ทผ ๋ฐฉ์์ ๋ ๊ฐ์ง ๋ช
ํํ ์ฅ์ ์ด ์์ต๋๋ค. (1) GPT-4๋ฅผ ํ๊ฐ์๋ก ์ฌ์ฉํจ์ผ๋ก์จ, ํ์ ๋ชจ๋ธ์ ์ฝ๋ฉ ๋ฅ๋ ฅ์ ๋ํ ๋ ์ธ๋ฐํ๊ณ ์๋ฏธ ์๋ ์ ํธ๋ฅผ ์ป์ ์ ์์ผ๋ฉฐ, (2) ํ
์คํธ์ ํ์์ฑ์ ์์ฑ๋๋ค. ์ฐ๋ฆฌ์ ํ๋กฌํํธ๋ LLM์๊ฒ ํ์์ ์๋ฃจ์
์ ๋จผ์ ์งง์ ์ธ์ด ํ๊ฐ๋ก ํ๊ฐํ ๋ค์ 0๋ถํฐ 10๊น์ง์ ๋ฑ๊ธ์ ๋งค๊ธฐ๋๋ก ์ง์ํฉ๋๋ค. phi-1๊ณผ ๊ฒฝ์ ๋ชจ๋ธ์ ๊ฒฐ๊ณผ๋ ํ 2๋ฅผ ์ฐธ์กฐํ์ญ์์ค. ์๋ก์ด ๋น์ ํต์ ๋ฌธ์ ์์์ ๋ฑ๊ธ์ HumanEval๊ณผ ๋์ผํ ์์๋ฅผ ์ ๊ณตํฉ๋๋ค(ํ 1 ์ฐธ์กฐ). phi-1์ StarCoder๋ณด๋ค ๋์ ์ ์๋ฅผ ๋ฌ์ฑํ๋ฉฐ, ์ด๋ HumanEval์์๋ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค. ์ด๋ฌํ ์๋ก์ด ๋ฌธ์ ๋ค์ด ํ๋ จ ๋ฐ์ดํฐ์ ์ค์ผ๋๋ ๊ธฐํ๊ฐ ์์์ผ๋ฉฐ, ๋ํ ํ๋ จ ๋ถํฌ ๋ฒ์๋ฅผ ๋ฒ์ด๋ ๊ฒ์ผ๋ก ์ค๊ณ๋์๊ธฐ ๋๋ฌธ์, ์ด๋ฌํ ๊ฒฐ๊ณผ๋ phi-1์ ์ฑ๋ฅ์ ํ๋น์ฑ์ ๋ํ ์ ๋ขฐ๋๋ฅผ ํฌ๊ฒ ๋์
๋๋ค.
5 Data pruning for unbiased performance evaluation
๊ทธ๋ฆผ 2.1์์ CodeExercises๋ก์ ํ๋ จ์ด HumanEval ๋ฒค์น๋งํฌ์์ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ์๋นํ ํฅ์์ํจ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. ์ด ํฅ์์ ์กฐ์ฌํ๊ธฐ ์ํด, ์ฐ๋ฆฌ๋ CodeExercises ๋ฐ์ดํฐ์ ์์ HumanEval๊ณผ "์ ์ฌํ" ํ์ผ์ ์ ๊ฑฐํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง์น๊ธฐํ๋ ๊ฒ์ ์ ์ํฉ๋๋ค. ์ด ๊ณผ์ ์ "๊ฐ๋ ฅํ ํํ"์ ๋ฐ์ดํฐ ์ค์ผ ์ ๊ฑฐ๋ก ๋ณผ ์ ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๊ฐ์ง์น๊ธฐ๋ ๋ฐ์ดํฐ์์ ๋ชจ๋ธ์ ๋ค์ ํ๋ จํ๊ณ , ์ฌ์ ํ HumanEval์์ ๊ฐ๋ ฅํ ์ฑ๋ฅ์ ๊ด์ฐฐํฉ๋๋ค. ํนํ, 40% ์ด์์ CodeExercises ๋ฐ์ดํฐ์ ์ ์ ๊ทน์ ์ผ๋ก ๊ฐ์ง์น๊ธฐํ ๊ฒฝ์ฐ์๋ (์ด๋ HumanEval๊ณผ ๋ฏธ๋ฌํ๊ฒ ์ ์ฌํ ํ์ผ๋ ๊ฐ์ง์น๊ธฐํฉ๋๋ค. Appendix C ์ฐธ์กฐ), ์ฌํ๋ จ๋ phi-1์ ์ฌ์ ํ StarCoder๋ณด๋ค ์ฐ์ํ ์ฑ๋ฅ์ ๋ํ๋ ๋๋ค.
์ฐ๋ฆฌ๋ ์ด๋ฌํ ๋ฐ์ดํฐ ๊ฐ์ง์น๊ธฐ ์คํ์ด ์ฑ๋ฅ์ ๊ณต์ ํ๊ฒ ํ๊ฐํ๋ ๋ฐฉ๋ฒ์ด๋ฉฐ, ์ผ๋ฐ์ ์ผ๋ก ํ๋ จ ๋ฐ ํ ์คํธ ๋ฐ์ดํฐ ๊ฐ์ ์ค์ฒฉ ์ ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๊ธฐ์กด "์ค์ผ" ์ฐ๊ตฌ์ ๋นํด ๋ณด๋ค ์๋ฏธ ์๋ ๊ฒ์ด๋ผ๊ณ ๋ฏฟ์ต๋๋ค ([AON+21] 4.8 ์ฅ ์ฐธ์กฐ). ์์ ์ฑ์ ์ํด, ์ด ์น์ ์์๋ ํ์ค์ ์ธ ์ค์ผ ์คํ์ ์ํํ์ฌ CodeExercises๊ฐ ์ด ํ์ค์ ์ธ ์๋ฏธ์์ HumanEval์ ์ค์ผ๋์ง ์์์์ ๋ณด์ฌ์ค๋๋ค.
5.1 N-gram overlap
N-gram์ ๊ณต์ ๋๋ n-๋จ์ด ์ํ์ค์ ๊ธฐ๋ฐํ์ฌ ํ ์คํธ ์ธ๊ทธ๋จผํธ์ ์ ์ฌ์ฑ์ ์ธก์ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ humaneval ์ง๋ฌธ์ ๋ ์คํธ๋ง๊ณผ CodeExercises ๋ฐ์ดํฐ์ ์์ ์์ฑ๋ ๊ฐ ์ฐ์ต๋ฌธ์ ์ n-gram ์ค์ฒฉ์ ๊ณ์ฐํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๋ฐ์ดํฐ์ ์์ ์ ์ด๋ ํ๋์ ํญ๋ชฉ๊ณผ 13-gram ์ค์ฒฉ์ด ์๋ humaneval ์ง๋ฌธ 4๊ฐ๋ฅผ ์ฐพ์์ต๋๋ค. ์ถ๊ฐ ์กฐ์ฌ ๊ฒฐ๊ณผ, 13-gram์ 4๊ฐ ์ค๋ณต ์ฌ๋ก๊ฐ ๋ชจ๋ ์๋ ์์์ ๊ฐ์ด ๊ฑฐ์ง ์์ฑ์์ ์๊ฒ ๋์์ต๋๋ค. ์ฐ๋ฆฌ์ n-gram ์ค์ฒฉ ๋ถ์์ ๋ฐ์ดํฐ์ ์ด HumanEval๊ณผ ๊ฑฐ์ ๋ฌธ์ ๋จ์๋ก ์ค์ฒฉ๋์ง ์์์ ๋ณด์ฌ์ค๋๋ค.
ํ ์คํธ ์ธํธ๋ฅผ ์๊ฒฉํ๊ฒ ๊ตฌ์ฑํ๋ ๊ฒ์ [LXWZ23]์ ์ํด ๋ณด์ฌ์ง ๋๋ก ์๋นํ ์์ ์ผ ์ ์์ต๋๋ค. ์ด ๋ ผ๋ฌธ์ ์ฃผ์ด์ง ์์ ์ ์์ ๋ฆฌ์คํธ์์ 0๋ณด๋ค ํฌ๊ณ , ์ ์ ์์ฒด์ ๊ฐ๊ณผ ๋์ผํ๊ฑฐ๋ ๊ทธ๋ณด๋ค ๋น๋๊ฐ ๋ ๋์ ๊ฐ์ฅ ํฐ ์ ์๋ฅผ ๋ฐํํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ ์ํ๋ค. ์ ์์ ๋น๋๋ ๋ฆฌ์คํธ์์ ๋ํ๋๋ ํ์์ด๋ค. ๋ํ ์ ์ ๋ฆฌ์คํธ์ ์ ๊ณฑ ๋น๋์ ํฉ์ ๊ณ์ฐํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐํ๋ค. ์ด๋ฅผ ์ํด ์ ์ ๋ฆฌ์คํธ์ ์ค๋ณต๋์ง ์๋ ๊ฐ ์ ์์ ๋น๋ ์ ๊ณฑ์ ํฉ์ ๊ตฌํ๋ค. ์ ์์ ๋น๋๋ ๋ฆฌ์คํธ์์ ๋ํ๋๋ ํ์์ด๋ค.
5.2 Embedding and syntax-based similarity analysis
์ฐ๋ฆฌ๋ ์ด์ ๊ฐ์ง์น๊ธฐ ์คํ์ ๋ํด ์์๋ณธ๋ค. ๋ฐฉ๊ธ ๋ณธ ๊ฒ์ฒ๋ผ, n-gram ๋ถ์์ HumanEval๊ณผ CodeExercises ์ฌ์ด์ ์ ์ฌํ ์ฝ๋ ์กฐ๊ฐ์ ์ฐพ๋ ๋ฐ์๋ ์ถฉ๋ถํ ์ ๊ตํ์ง ์๋ค. ๋์ ์๋ฒ ๋ฉ๊ณผ ๊ตฌ๋ฌธ ๊ธฐ๋ฐ ๊ฑฐ๋ฆฌ์ ์กฐํฉ์ ์ฌ์ฉํ๋ค. ์๋ฒ ๋ฉ ๊ฑฐ๋ฆฌ์ ๋ํด์๋ ์ฌ์ ํ๋ จ๋ CodeGen-Mono 350M ๋ชจ๋ธ [NPH+23]์์ ์ ๋๋ ์ฝ๋ ์กฐ๊ฐ์ ์๋ฒ ๋ฉ ๊ฐ์ L2 ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ์ฐํ๋ค. ์ฐ๋ฆฌ๋ ์๋ฒ ๋ฉ ๊ฑฐ๋ฆฌ๊ฐ ์ ์ฒด์ ์ธ ์ฝ๋ ์๋ฏธ๊ฐ ์ ์ฌํ ์ฝ๋ ์์ ํฌ์ฐฉํ๋ ๋ฐ ์ฑ๊ณตํ๋ค๋ ๊ฒ์ ๊ด์ฐฐํ๋ค. ์ด๋ ํ์ด์ฌ Docstring, ํจ์/ํด๋์ค ์ด๋ฆ, ์ฝ๋ ๊ตฌ์กฐ๋ฅผ ํตํด ์ถ๋ก ํ ์ ์๋ค. ๊ตฌ๋ฌธ ๊ธฐ๋ฐ ๊ฑฐ๋ฆฌ์ ๋ํด์๋ ์ฃผ์ด์ง ๋ ์ฝ๋ ์กฐ๊ฐ์ ์ถ์ ๊ตฌ๋ฌธ ํธ๋ฆฌ (AST) ์ฌ์ด์ (๋ฌธ์์ด) ํธ์ง ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ์ฐํ๋ค. AST ๊ฑฐ๋ฆฌ๋ ์ฝ๋ ์ ์ฌ์ด์ ์ค๋ณต๋๋ ๋ถ๋ถ์ ์ฑ๊ณต์ ์ผ๋ก ์๋ณํ๋ฉฐ, ๋ณ์/ํจ์ ์ด๋ฆ, ์ฃผ์ ๋ฐ ํ์ด์ฌ Docstring๊ณผ ๊ฐ์ ๋น๊ตฌ๋ฌธ ํ ์คํธ์ ๋ํด์๋ ๋ฌด๊ดํ๋ค. CodeExercises์ ๊ฐ์ง์น๊ธฐ๋ฅผ ์ํด ์๋ฒ ๋ฉ ๊ฑฐ๋ฆฌ์ ๋ํ ์๊ณ๊ฐ์ ๊ณ ์ ํ๊ณ , AST ๊ฑฐ๋ฆฌ์ ๋ํ ์ฌ๋ฌ ๋งค์น ๋น์จ τ๋ฅผ ํ ์คํธํ๋ค. ์๋ฒ ๋ฉ ๊ฑฐ๋ฆฌ์ ์ฌ๋ฌ AST ๋งค์น ๋น์จ τ๋ก ํฌ์ฐฉ๋ ์ฝ๋ ์์ ์์๋ ๋ถ๋ก C๋ฅผ ์ฐธ์กฐํ๋ผ. ์ฐ๋ฆฌ๋ τ๋ฅผ 0.95์์ 0.8 ์ฌ์ด๋ก ๋ณํ์ํจ๋ค. ์ด๋ CodeExercises์ 879.5K ์ด ๋ฌธ์ ์ค 42.5K์์ 354K๋ฅผ ์ ๊ฑฐํ๋ ๊ฒ์ ํด๋นํ๋ค.
τ | ๋ฌธ์ ๊ฐ์ | phi-1 ์ฌํ์ต | StarCoder-Prompted |
---|---|---|---|
0.95 | Similar 71 (81.7%) | 74.6% | 57.7% |
non-similar 93 (26.9%) | 32.3% | 29.0% | |
total 164 (50.6%) | 50.6% | 41.5% | |
0.9 | Similar 93 (63.4%) | 51.6% | 48.4% |
non-similar 71 (33.8%) | 36.6% | 32.4% | |
total 164 (50.6%) | 45.1% | 41.5% | |
0.85 | Similar 106 (62.3%) | 52.8% | 47.2% |
non-similar 58 (29.3%) | 34.5% | 31.0% | |
total 164 (50.6%) | 46.3% | 41.5% | |
0.8 | Similar 116 (59.5%) | 52.6% | 45.7% |
non-similar 48 (29.2%) | 27.1% | 31.2% | |
total 164 (50.6%) | 45.1% | 41.5% |
ํ 3์ ๋ค๋ฅธ ๋ชจ๋ธ์ด ์ฌ๋ฐ๋ฅด๊ฒ ํด๊ฒฐํ ์ ์ฌํ HumanEval ๋ฌธ์ ์ ์ ์ฌํ์ง ์์ ๋ฌธ์ ์ ๋ฐฑ๋ถ์จ์ ์์ฝํ ๊ฒ์ด๋ค. ์ ์ฌ์ฑ์ ํด๋น HumanEval ๋ฌธ์ ๊ฐ ์๋์ CodeExercises ๋ฐ์ดํฐ์ ๋ด์์ ๊ฐ๊น์ด ๋งค์น๊ฐ ์๋์ง ์ฌ๋ถ์ ๋ฐ๋ผ ๊ฒฐ์ ๋๋ค (์ฃผ์ด์ง τ์ ๋ํด). ๋ฌธ์ ๊ฐ์๋ ๊ฐ ํ์ ์งํฉ ๋ด์ HumanEval ๋ฌธ์ ์ ์๋ฅผ ๋ํ๋ธ๋ค. ์ฌ๊ธฐ์ τ๋ ์ ์ฌ์ฑ ๊ฒ์ฌ๋ฅผ ์ํ ์ฝ๋ ๊ฐ AST ๊ธฐ๋ฐ ๋งค์น ๋น์จ์ ์๊ณ๊ฐ์ด๋ค.
6 Conclusion
์ด ๋ ผ๋ฌธ์์๋ ์์ ์ ์์ ๋ฆฌ์คํธ์์ ํน์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๊ฐ์ฅ ํฐ ์ ์๋ฅผ ๋ฐํํ๋ ์๊ณ ๋ฆฌ์ฆ๊ณผ ์ ์ ๋ฆฌ์คํธ์ ๋น๋ ์ ๊ณฑ์ ํฉ์ ๊ณ์ฐํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ ์ํ์๋ค. ๋ํ ์๋ฒ ๋ฉ๊ณผ ๊ตฌ๋ฌธ ๊ธฐ๋ฐ ๊ฑฐ๋ฆฌ๋ฅผ ์กฐํฉํ์ฌ ์ฝ๋ ์ ์ฌ๋๋ฅผ ๋ถ์ํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ์๋ค. ์คํ ๊ฒฐ๊ณผ, ์๋ฒ ๋ฉ ๊ฑฐ๋ฆฌ์ AST ๊ฑฐ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฌํ ์ฝ๋ ์์ ํฌ์ฐฉํ ์ ์์์ ํ์ธํ์๋ค. ์ด๋ฌํ ๊ฒฐ๊ณผ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์ฝ๋ ๊ตฌ์กฐ์ ํน์ง์ ์ ํ์ ํ์ฌ ์ฝ๋์ ์๋ฏธ๋ฅผ ํ์ ํ๋ ๊ฒ์ด ์ค์ํ๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋ค. ์ด๋ฌํ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ถ์ ๋ฐฉ๋ฒ์ ์ฝ๋ ๊ฒ์ ๋ฐ ์ ์ฌ๋ ๋ถ์์ ํ์ฉ๋ ์ ์์ ๊ฒ์ผ๋ก ๊ธฐ๋๋๋ค.
์ด ๋ ผ๋ฌธ์์๋ ๊ณ ํ์ง ๋ฐ์ดํฐ์ ์ค์์ฑ์ ๊ฐ์กฐํ๋ฉฐ, ์ด๋ฅผ ํตํด ์ฝ๋ ์์ฑ ์์ ์์ ์ธ์ด ๋ชจ๋ธ์ ๋ฅ๋ ฅ์ ํฅ์์ํฌ ์ ์๋ค๋ ๊ฒ์ ์ ์ฆํ์ต๋๋ค. "๊ต๊ณผ์ ์์ค"์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ, ๋ชจ๋ธ ํฌ๊ธฐ๋ 10๋ฐฐ ์๊ณ ๋ฐ์ดํฐ์ ํฌ๊ธฐ๋ 100๋ฐฐ ์์์๋ ๋ถ๊ตฌํ๊ณ , HumanEval ๋ฐ MBPP์ ๊ฐ์ ์ฝ๋ฉ ๋ฒค์น๋งํฌ์์ ๊ฑฐ์ ๋ชจ๋ ์คํ์์ค ๋ชจ๋ธ์ ๋ฅ๊ฐํ๋ ๋ชจ๋ธ์ ํ๋ จ์ํฌ ์ ์์์ต๋๋ค. ์ด๋ฌํ ๊ณ ํ์ง ๋ฐ์ดํฐ๋ ์ฝ๋ฉ ๊ฐ๋ ๊ณผ ๊ธฐ์ ์ ๋ช ํํ๊ณ ์์ฒด ํฌํจ๋ ๊ท ํ ์กํ ์์ ๋ฅผ ์ ๊ณตํ์ฌ ์ฝ๋์ ๋ํ ์ธ์ด ๋ชจ๋ธ์ ํ์ต ํจ์จ์ฑ์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์๋ค๊ณ ๊ฐ์ค์ ์ ๊ธฐํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด ๋ชจ๋ธ์ ํ์ด์ฌ ์ฝ๋ฉ์ ํนํ๋์ด ์๊ณ , ๋ค๋ฅธ ์ธ์ด ๋ชจ๋ธ์ ๋นํด ๋ค๋ฅธ API๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ๋๋ฌธ ํจํค์ง๋ฅผ ์ฌ์ฉํ๋ ํ๋ก๊ทธ๋๋ฐ๊ณผ ๊ฐ์ ๋๋ฉ์ธ ํน์ ์ง์์ด ๋ถ์กฑํฉ๋๋ค. ๋ํ ๋ฐ์ดํฐ์ ์ ๊ตฌ์กฐํ๋ ํน์ฑ๊ณผ ์ธ์ด ๋ฐ ์คํ์ผ์ ๋ค์์ฑ ๋ถ์กฑ์ผ๋ก ์ธํด ์คํ์ผ ๋ณํ๋ ํ๋กฌํํธ์ ์ค๋ฅ(์: ๋ฌธ๋ฒ ์ค๋ฅ)์ ๋ํด ๋ ๊ฒฌ๊ณ ํฉ๋๋ค. ์ด๋ฌํ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ๋ ๋ง์ ์ฐ๊ตฌ๊ฐ ํ์ํ์ง๋ง, ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ์ฌ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์์ ๊ฒ์ด๋ผ๊ณ ๋ฏฟ์ต๋๋ค.
์ด ์ฐ๊ตฌ๋ ๊ณ ํ์ง ๋ฐ์ดํฐ์ ์ ์์ฑํ๋ ์ข์ ๋ฐฉ๋ฒ๋ก ์ ๊ฐ๋ฐํ๋ ๊ฒ์ด ์์ฐ์ด ์ฒ๋ฆฌ ๋ฐ ๊ด๋ จ ๋ถ์ผ์ ์ฐ๊ตฌ์ ์ค์ฌ ๋ฐฉํฅ์์ ๋ณด์ฌ์ค๋๋ค. ๊ทธ๋ฌ๋ ๊ณ ํ์ง ๋ฐ์ดํฐ์ ์ ์์ฑํ๋ ๊ฒ์ ๊ฐ๋จํ ์์ ์ด ์๋๋ฉฐ, ํด๊ฒฐํด์ผ ํ ๋ช ๊ฐ์ง ๋์ ๊ณผ์ ๊ฐ ์์ต๋๋ค. ๋ฐ์ดํฐ์ ์ด ๋ชจ๋ธ์ด ๋ฐฐ์์ผ ํ ๋ชจ๋ ๊ด๋ จ ์ปจํ ์ธ ์ ๊ฐ๋ ์ ๊ท ํ์๊ณ ๋ํ์ ์ธ ๋ฐฉ์์ผ๋ก ๋ค๋ฃจ๊ณ ์๋์ง ๋ณด์ฅํ๋ ๊ฒ์ด ํ ๊ฐ์ง ๋์ ๊ณผ์ ์ ๋๋ค. ๋ ๋ค๋ฅธ ๋์ ๊ณผ์ ๋ ๋ฐ์ดํฐ์ ์ด ์ค์ ๋ก ๋ค์ํ๊ณ ๋ฐ๋ณต์ ์ด์ง ์๋๋ก ํ๋ ๊ฒ์ด๋ฉฐ, ๋ชจ๋ธ์ด ๋ฐ์ดํฐ์ ๋จ์ํ ๊ณผ์ ํฉ๋์ง ์๊ฑฐ๋ ํน์ ํจํด์ด๋ ์๋ฃจ์ ์ ์๊ธฐํ์ง ์๋๋ก ํด์ผ ํฉ๋๋ค. ์ด๋ ๋ฐ์ดํฐ ์์ฑ ๊ณผ์ ์ ๋ฌด์์์ฑ๊ณผ ์ฐฝ์์ฑ์ ์ฃผ์ ํ๋ ๋ฐฉ๋ฒ์ ์ฐพ๋ ๊ฒ์ ์๊ตฌํ๋ฉฐ, ๋์์ ์์ ์ ํ์ง๊ณผ ์ผ๊ด์ฑ์ ์ ์งํด์ผ ํฉ๋๋ค. ๋ํ ์ด๋ฌํ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๊ธฐ ์ํด ์ธ์ด ๋ชจ๋ธ ์์ฒด๊ฐ ์ฌ์ฉ๋ ๊ฒ์ด๋ฏ๋ก, ์ด ๊ณผ์ ์ ๊ด๋ จ๋ ๋ฐ์ดํฐ์ ๋ชจ๋ธ์ ์ฑ ์, ํฌ๋ช ์ฑ ๋ฐ ํธํฅ๊ณผ ๊ฐ์ ์ค๋ฆฌ์ ๋ฐ ์ฌํ์ ์ํฅ์ ๋ํ ์ค์์ฑ์ด ๋์ฑ ์ฆ๊ฐํฉ๋๋ค.
References
[ADF+23] Rohan Anil, Andrew M Dai, Orhan Firat, Melvin Johnson, Dmitry Lepikhin, Alexandre
Passos, Siamak Shakeri, Emanuel Taropa, Paige Bailey, Zhifeng Chen, ๋ฑ. Palm 2 ๊ธฐ์ ๋ณด๊ณ ์. arXiv ์ฌ์ ์ธ์ arXiv:2305.10403 , 2023.
[ALK+23] Loubna Ben Allal, Raymond Li, Denis Kocetkov, Chenghao Mou, Christopher Akiki, Carlos Munoz Ferrandis, Niklas Muennighoff, Mayank Mishra, Alex Gu, Manan Dey ๋ฑ. Santacoder: ๋ณ์ ํฅํด ๊ฐ์ง ๋ง์ธ์! arXiv ์ฌ์ ์ธ์ arXiv:2301.03988 , 2023.
[AON+21] Jacob Austin, Augustus Odena, Maxwell Nye, Maarten Bosma, Henryk Michalewski, David Dohan, Ellen Jiang, Carrie Cai, Michael Terry, Quoc Le ๋ฑ. ๋ํ ์ธ์ด ๋ชจ๋ธ์ ์ฌ์ฉํ ํ๋ก๊ทธ๋จ ํฉ์ฑ. arXiv ์ฌ์ ์ธ์ arXiv:2108.07732 , 2021.
[AZL23] Zeyuan Allen-Zhu์ Yuanzhi Li. ์ธ์ด ๋ชจ๋ธ์ ๋ฌผ๋ฆฌํ: ์ 1๋ถ, ๋ฌธ๋งฅ ์์ ๋ฌธ๋ฒ. arXiv ์ฌ์ ์ธ์ arXiv:2305.13673 , 2023.
[BBH+22] Sid Black, Stella Biderman, Eric Hallahan, Quentin Anthony, Leo Gao, Laurence Golding, Horace He, Connor Leahy, Kyle McDonell, Jason Phang, Michael Pieler, USVSN Sai Prashanth, Shivanshu Purohit, Laria Reynolds, Jonathan Tow, Ben Wang, Samuel Weinbach ๋ฑ. GPT-NeoX-20B: ์คํ ์์ค ์๊ธฐํ๊ท ์ธ์ด ๋ชจ๋ธ. ACL Workshop on Challenges & Perspectives in Creating Large Language Models ๋
ผ๋ฌธ์ง, 2022.
[BCE+23] Sébastien Bubeck, Varun Chandrasekaran, Ronen Eldan, Johannes Gehrke, Eric Horvitz, Ece Kamar, Peter Lee, Yin Tat Lee, Yuanzhi Li, Scott Lundberg ๋ฑ. ์ธ๊ณต ์ผ๋ฐ ์ง๋ฅ์ ๋ฐํ: gpt-4์ ์ด๊ธฐ ์คํ. arXiv ์ฌ์ ์ธ์ arXiv:2303.12712 , 2023.
[BGMMS21] Emily M Bender, Timnit Gebru, Angelina McMillan-Major, Shmargaret Shmitchell. ํ๋ฅ ์ ์ต๋ฌด์์ ์ํ์ฑ: ์ธ์ด ๋ชจ๋ธ์ด ๋๋ฌด ์ปค์ง ์ ์์๊น? 2021๋
๊ณต์ ์ฑ, ์ฑ
์์ฑ, ํฌ๋ช
์ฑ ACM ํํ ๋
ผ๋ฌธ์ง, ํ์ด์ง 610-623, 2021.
[BJT+22] Mohammad Bavarian, Heewoo Jun, Nikolas Tezak, John Schulman, Christine McLeavey, Jerry Tworek, Mark Chen. ๊ฐ์ด๋ฐ ๋ถ๋ถ ์ฑ์ฐ๊ธฐ๋ฅผ ์ํ ์ธ์ด ๋ชจ๋ธ์ ํจ์จ์ ์ธ ํ๋ จ. arXiv ์ฌ์ ์ธ์ arXiv:2207.14255 , 2022.
[BMR+20] Tom Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared D Kaplan, Prafulla Dhariwal, Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, Sandhini Agarwal, Ariel Herbert-Voss, Gretchen Krueger, Tom Henighan, Rewon Child, Aditya Ramesh, Daniel Ziegler, Jeffrey Wu, Clemens Winter, Chris Hesse, Mark Chen, Eric Sigler, Mateusz Litwin, Scott Gray, Benjamin Chess, Jack Clark, Christopher Berner, Sam McCandlish, Alec Radford, Ilya Sutskever, Dario Amodei. ์ธ์ด ๋ชจ๋ธ์ ์๋ ์ท ํ์ต์์
๋๋ค. ์ ๊ฒฝ ์ ๋ณด ์ฒ๋ฆฌ ์์คํ
์ ๋ฐ์ , 33๊ถ, ํ์ด์ง 1877-1901, 2020.
[CND+22] Aakanksha Chowdhery, Sharan Narang, Jacob Devlin, Maarten Bosma, Gaurav Mishra, Adam Roberts, Paul Barham, Hyung Won Chung, Charles Sutton, Sebastian Gehrmann ๋ฑ. Palm: ๊ฒฝ๋ก๋ก ์ธ์ด ๋ชจ๋ธ ํ์ฅ. arXiv ์ฌ์ ์ธ์ arXiv:2204.02311 , 2022.
[CTJ+21] Mark Chen, Jerry Tworek, Heewoo Jun, Qiming Yuan, Henrique Ponde de Oliveira Pinto, Jared Kaplan, Harri Edwards, Yuri Burda, Nicholas Joseph, Greg Brockman, et al. Evaluating large language models trained on code. arXiv preprint arXiv:2107.03374 , 2021.
[DFE+22] Tri Dao, Dan Fu, Stefano Ermon, Atri Rudra, and Christopher Ré. Flashattention: Fast and memory-efficient exact attention with io-awareness. Advances in Neural Information Processing Systems , 35:16344–16359, 2022.
[DLT+23] Yann Dubois, Xuechen Li, Rohan Taori, Tianyi Zhang, Ishaan Gulrajani, Jimmy Ba, Carlos Guestrin, Percy Liang, and Tatsunori B Hashimoto. Alpacafarm: A simulation framework for methods that learn from human feedback. arXiv preprint arXiv:2305.14387 , 2023.
[EL23] Ronen Eldan and Yuanzhi Li. Tinystories: How small can language models be and still speak coherent english? arXiv preprint arXiv:2305.07759 , 2023.
[GWS+23] Arnav Gudibande, Eric Wallace, Charlie Snell, Xinyang Geng, Hao Liu, Pieter Abbeel, Sergey Levine, and Dawn Song. The false promise of imitating proprietary llms. arXiv preprint arXiv:2305.15717 , 2023.
[HBM+22] Jordan Hoffmann, Sebastian Borgeaud, Arthur Mensch, Elena Buchatskaya, Trevor Cai, Eliza Rutherford, Diego de las Casas, Lisa Anne Hendricks, Johannes Welbl, Aidan Clark, Tom Hennigan, Eric Noland, Katherine Millican, George van den Driessche, Bogdan Damoc, Aurelia Guy, Simon Osindero, Karen Simonyan, Erich Elsen, Oriol Vinyals, Jack William Rae, and Laurent Sifre. An empirical analysis of compute-optimal large language model training. In Alice H. Oh, Alekh Agarwal, Danielle Belgrave, and Kyunghyun Cho, editors, Advances in Neural Information Processing Systems , 2022.
[HNA+17] Joel Hestness, Sharan Narang, Newsha Ardalani, Gregory Diamos, Heewoo Jun, Hassan Kianinejad, Md Mostofa Ali Patwary, Yang Yang, and Yanqi Zhou. Deep learning scaling is predictable, empirically. arXiv preprint arXiv:1712.00409 , 2017.
[JWJ+23] Jaehun Jung, Peter West, Liwei Jiang, Faeze Brahman, Ximing Lu, Jillian Fisher, Taylor Sorensen, and Yejin Choi. Impossible distillation: from low-quality model to high-quality dataset & model for summarization and paraphrasing. arXiv preprint arXiv:2305.16635 , 2023.
[KLA+22] Denis Kocetkov, Raymond Li, Loubna Ben Allal, Jia Li, Chenghao Mou, Carlos Mu˜ noz Ferrandis, Yacine Jernite, Margaret Mitchell, Sean Hughes, Thomas Wolf, et al. The stack: 3 tb of permissively licensed source code. arXiv preprint arXiv:2211.15533 , 2022.
[KMH+20] Jared Kaplan, Sam McCandlish, Tom Henighan, Tom B Brown, Benjamin Chess, Rewon Child, Scott Gray, Alec Radford, Jeffrey Wu, and Dario Amodei. Scaling laws for neural language models. arXiv preprint arXiv:2001.08361 , 2020.
[LAZ+23] Raymond Li, Loubna Ben Allal, Yangtian Zi, Niklas Muennighoff, Denis Kocetkov, Chenghao Mou, Marc Marone, Christopher Akiki, Jia Li, Jenny Chim, et al. Starcoder: may the source be with you! arXiv preprint arXiv:2305.06161 , 2023.
[LCC+22] Yujia Li, David Choi, Junyoung Chung, Nate Kushman, Julian Schrittwieser, Rémi Leblond, Tom Eccles, James Keeling, Felix Gimeno, Agustin Dal Lago, et al. Competition-level code generation with alphacode. Science , 378(6624):1092–1097, 2022.
[LGK+23] Zinan Lin, Sivakanth Gopi, Janardhan Kulkarni, Harsha Nori, and Sergey Yekhanin. Differentially private synthetic data via foundation model apis 1: Images. arXiv preprint arXiv:2305.15560, 2023.
[LXWZ23] Jiawei Liu, Chunqiu Steven Xia, Yuyao Wang, and Lingming Zhang. Is your code generated by chatgpt really correct? rigorous evaluation of large language models for code generation. arXiv preprint arXiv:2305.01210, 2023.
[LXZ+23] Ziyang Luo, Can Xu, Pu Zhao, Qingfeng Sun, Xiubo Geng, Wenxiang Hu, Chongyang Tao, Jing Ma, Qingwei Lin, and Daxin Jiang. Wizardcoder: Empowering code large language models with evol-instruct, 2023.
[LYR+23] Shayne Longpre, Gregory Yauney, Emily Reif, Katherine Lee, Adam Roberts, Barret Zoph, Denny Zhou, Jason Wei, Kevin Robinson, David Mimno ๋ฑ. A pretrainer's guide to training data: Measuring the effects of data age, domain coverage, quality, & toxicity. arXiv preprint arXiv:2305.13169, 2023.
[MMJ+23] Subhabrata Mukherjee, Arindam Mitra, Ganesh Jawahar, Sahaj Agarwal, Hamid Palangi, and Ahmed Awadallah. Orca: Progressive learning from complex explanation traces of gpt-4. arXiv preprint arXiv:2306.02707, 2023.
[MRB+23] Niklas Muennighoff, Alexander M Rush, Boaz Barak, Teven Le Scao, Aleksandra Piktus, Nouamane Tazi, Sampo Pyysalo, Thomas Wolf, and Colin Raffel. Scaling data-constrained language models. arXiv preprint arXiv:2305.16264, 2023.
[NHX+23] Erik Nijkamp, Hiroaki Hayashi, Caiming Xiong, Silvio Savarese, and Yingbo Zhou. Codegen2: Lessons for training llms on programming and natural languages. arXiv preprint arXiv:2305.02309, 2023.
[NPH+22] Erik Nijkamp, Bo Pang, Hiroaki Hayashi, Lifu Tu, Huan Wang, Yingbo Zhou, Silvio Savarese, and Caiming Xiong. Codegen: An open large language model for code with multi-turn program synthesis. arXiv preprint, 2022.
[NPH+23] Erik Nijkamp, Bo Pang, Hiroaki Hayashi, Lifu Tu, Huan Wang, Yingbo Zhou, Silvio Savarese, and Caiming Xiong. Codegen: An open large language model for code with multi-turn program synthesis. ICLR, 2023.
[Ope23] OpenAI. Gpt-4 technical report, 2023. arXiv preprint arXiv:2303.08774 [cs.CL].
[Rep23] Replit. Replit dev day. https://twitter.com/Replit/status/1651344184593506304, 2023.
[RSR+20] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li, and Peter J Liu. Exploring the limits of transfer learning with a unified text-to-text transformer. The Journal of Machine Learning Research, 21(1):5485-5551, 2020.
[SLP+21] Jianlin Su, Yu Lu, Shengfeng Pan, Bo Wen, and Yunfeng Liu. Roformer: Enhanced transformer with rotary position embedding. arXiv preprint arXiv:2104.09864, 2021.
[SSZ+23] Ilia Shumailov, Zakhar Shumaylov, Yiren Zhao, Yarin Gal, Nicolas Papernot, and Ross Anderson. Model dementia: Generated data makes models forget. arXiv preprint arXiv:2305.17493, 2023.
[TGZ+23] Rohan Taori, Ishaan Gulrajani, Tianyi Zhang, Yann Dubois, Xuechen Li, Carlos Guestrin,
Percy Liang, and Tatsunori B. Hashimoto. Stanford alpaca: An instruction-following llama
model.https://github.com/tatsu-lab/stanford_alpaca , 2023.
[VSP+17] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N
Gomez, L ukasz Kaiser, and Illia Polosukhin. Attention is all you need. In Advances
in Neural Information Processing Systems , volume 30, 2017.
[WKM+22] Yizhong Wang, Yeganeh Kordi, Swaroop Mishra, Alisa Liu, Noah A Smith, Daniel
Khashabi, and Hannaneh Hajishirzi. Self-instruct: Aligning language model with self gen-
erated instructions. arXiv preprint arXiv:2212.10560 , 2022.
[WLG+23] Yue Wang, Hung Le, Akhilesh Deepak Gotmare, Nghi DQ Bui, Junnan Li, and Steven CH
Hoi. Codet5+: Open code large language models for code understanding and generation.
arXiv preprint arXiv:2305.07922 , 2023.
[WTB+22] Jason Wei, Yi Tay, Rishi Bommasani, Colin Raffel, Barret Zoph, Sebastian Borgeaud, Dani
Yogatama, Maarten Bosma, Denny Zhou, Donald Metzler, Ed H. Chi, Tatsunori Hashimoto,
Oriol Vinyals, Percy Liang, Jeff Dean, and William Fedus. Emergent abilities of large
language models. Transactions on Machine Learning Research , 2022. Survey Certification.
[YGK+23] Da Yu, Sivakanth Gopi, Janardhan Kulkarni, Zinan Lin, Saurabh Naik, Tomasz Lukasz
Religa, Jian Yin, and Huishuai Zhang. Selective pre-training for private fine-tuning. arXiv
preprint arXiv:2305.13865 , 2023.
[ZXZ+23] Qinkai Zheng, Xiao Xia, Xu Zou, Yuxiao Dong, Shan Wang, Yufei Xue, Zihan Wang, Lei
Shen, Andi Wang, Yang Li, Teng Su, Zhilin Yang, and Jie Tang. Codegeex: A pre-trained
model for code generation with multilingual evaluations on humaneval-x, 2023.
'๐ฃ๏ธ Natural Language Processing' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Pinecone] llama-index with Pinecone (0) | 2023.10.01 |
---|---|
The Path to Achieve Ultra-Low Inference Latency With LLaMA 65B on PyTorch/XLA (0) | 2023.07.06 |
LLM Context ํ์ฅ ๋ถ๊ฐ๋ฅ์ ์๋๋ค. (token size ๋๋ฆฌ๊ธฐ ์ ๋ฆฌ) (0) | 2023.06.28 |
Text Embedding + t-SNE Visualization (0) | 2023.06.22 |
[Langchain] paper-translator (0) | 2023.06.16 |