|
2023 ์ฑ๊ท ๊ด๋ ํ๊ณ์ง์ค ์ฐํํ๋ ฅํ๋ก์ ํธ VAIV |
|
## GPT ๊ธฐ๋ฐ์ ์์ฐ์ค๋ฝ๊ณ (Friendly) ์ค๋ฆฌ์ ์ธ(Harmless) ์ผ์ ๋ํํ ์ฑ๋ด ๋ชจ๋ธ |
|
### Github : https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM |
|
|
|
# ์ฐ๊ตฌ ๋ฐฐ๊ฒฝ ๋ฐ ๋ชฉ์ |
|
GPT-NEOX(Polyglot-ko) ๊ธฐ๋ฐ ์์ฐ์ค๋ฝ๊ณ ์ค๋ฆฌ์ ์ธ ํ๊ตญ์ด ๊ธฐ๋ฐ ์ผ์ ๋ํํ ์ฑ๋ด ๋ชจ๋ธ ๊ตฌํ |
|
 |
|
|
|
# ๊ฐ๋ฐ ๋ด์ฉ |
|
- Self-Instruct: GPT4๋ฅผ ์ด์ฉํ ๋ฐ์ดํฐ ์ฆ๊ฐ |
|
- RLHF(Reinforcement Learning from Human Feedback): ์ฌ๋์ ์ ํธ๋๋ฅผ ๋ฐ์ํ ๊ฐํํ์ต |
|
- DeepSpeed: ๋๊ท๋ชจ ๋ถ์ฐ ๋ฅ๋ฌ๋์ ์ํ ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ์ต์ ํ ๊ธฐ์ |
|
|
|
- Task 1: ๊ฐํํ์ต ๋จ๊ณ๋ณ ๋ฐ์ดํฐ์
๊ตฌ์ถ |
|
- Task 2: SFT ๋ชจ๋ธ Instruction-tuning |
|
- Task 3: Reward ๋ชจ๋ธ ver1,2,3 ๊ตฌํ |
|
- Task 4: RLHF์ DeepSpeedChat์ ํตํ ์ต์ข
๋ชจ๋ธ ๊ตฌํ (https://huggingface.co/Trofish/KULLM-RLHF) |
|
|
|
# Task1. ๊ฐํํ์ต ๋จ๊ณ๋ณ ๋ฐ์ดํฐ์
๊ตฌ์ถ |
|
 |
|
 |
|
 |
|
|
|
|
|
|
|
# Task2. SFT ๋ชจ๋ธ Fine-tuning |
|
## Baseline Model |
|
[- ๊ณ ๋ ค๋ํ๊ต NLP & AI ์ฐ๊ตฌ์ค๊ณผ HIAI ์ฐ๊ตฌ์๊ฐ ๊ฐ๋ฐํ ํ๊ตญ์ด LLM **"KULLM"** ์ฌ์ฉ](https://github.com/nlpai-lab/KULLM) |
|
|
|
## Datasets |
|
 |
|
|
|
## SFT Model Finetuning |
|
 |
|
* ๋ชจ๋ธํ์ต์๋ Google Colab์์ ์ ๊ณตํ๋ A100 40GB GPU ์ฌ์ฉ |
|
|
|
## SFT Model Evaluation |
|
 |
|
 |
|
* G-Eval: https://arxiv.org/abs/2303.16634 |
|
|
|
|
|
# Task3-1. Reward Model ver1 ๊ตฌํ |
|
## Baseline Model |
|
- EleutherAI์์ ๊ฐ๋ฐํ ์ด๊ฑฐ๋ ํ๊ตญ์ด ์ธ์ด ๋ชจ๋ธ **Polyglot-Ko** ์ฌ์ฉ |
|
- 1.3b ๋ชจ๋ธ๊ณผ 5.8b ๋ชจ๋ธ์ ๊ฐ๊ฐ ์คํ |
|
## Datasets |
|
 |
|
- InstructGPT์ ๋ฐ์ดํฐ์
๊ตฌ์ถ ๋ฐฉ๋ฒ |
|
- Reward ๋ชจ๋ธ ํ์ต ๋ฐ์ดํฐ์
์ผ๋ก SFT ํ์ต์ ์ฌ์ฉํ prompt(1,500๊ฐ - ์ผ์๋ํ:ํ์คํํ=2:1)์ ์๋ก์ด prompt(1,000๊ฐ - DeepSpeedChat ๋ฒ์ญ ๋ฐ์ดํฐ์
) ์ฌ์ฉ |
|
- SFT ๋ชจ๋ธ์์ ํ๊ฐ์ prompt๋น K๊ฐ์ Response๋ฅผ ์์ฑํ๊ณ , ์์๋ฅผ Labeling |
|
- ๋ฐ์ดํฐ์
๋ผ๋ฒจ๋ง |
|
- Instruct GPT์ ๊ฒฝ์ฐ ์ฌ๋์ด ์ง์ Labeling์ ํ์ฟ์ง๋ง, ์ผ๊ด๋ ํ๊ฐ์ ์๊ฐ ๋จ์ถ์ ์ํด GPt-4์ G-Eval์ ์ด์ฉ |
|
- SFT์์ ์์ฑํ ๋ Response ์ค G-Eval ํ๊ฐ ์ ์ ํฉ์ด ๋์ ๊ฒ์ Chosen response๋ก ๊ฒฐ์ |
|
- ๋ฐ์ดํฐ์
์ ํ๋ณ๋ก G-Eval ํ๊ฐ Prompt์ ์ฐจ์ด๋ฅผ ๋์์ |
|
-  |
|
## Reward v1 Model Finetuning |
|
 |
|
- InstructGPT ๋
ผ๋ฌธ์ ๋ฐ๋ฅด๋ฉด, Reward ๋ชจ๋ธ์ overfitting๋๋ฉด ์ฑ๋ฅ์ด ํฌ๊ฒ ์ ํ๋๋ค๊ณ ํจ --> epoch ์๋ฅผ 1๋ก ์ค์ |
|
- batch size๋ learning rate ๋ฑ ๋ค๋ฅธ hyper-parameter๋ ์ฑ๋ฅ์ ํฐ ์ํฅ์ด ์๋ค๊ณ ํจ |
|
- Colab A100 40GB ๊ธฐ์ค ์ด ํ์ต ์๊ฐ 4๋ถ |
|
|
|
## Reward v1 Model Evaluation |
|
 |
|
|
|
- Reward Model Template |
|
- "์๋๋ ์์
์ ์ค๋ช
ํ๋ ๋ช
๋ น์ด์
๋๋ค. ์์ฒญ์ ์ ์ ํ ์๋ฃํ๋ ์๋ต์ ์์ฑํ์ธ์. \n\n ### ๋ช
๋ น์ด:\n{prompt}\n\n ### ์๋ต:\n" |
|
|
|
# Task3-2. Reward Model ver2 ๊ตฌํ |
|
## Reward Model ver1 Issues |
|
- ๊ตฌํ๋ Reward Model์ ์ฑ๋ฅ์ด ์ข์ง ์์ (Accuracy 0.65) |
|
- Reward Model ver1์ ์ฌ์ฉํ์ฌ Step3 ํ์ต์ ํ์คํํ์ด ์๋๋ฐ๋ ํ์คํํ์ด๋ผ๊ณ ์ธ์ํ๊ณ ๋ต๋ณํ๋ ๋ฌธ์ ๋ฐ์ |
|
|
|
## Issue ํด๊ฒฐ๋ฐฉ์ |
|
 |
|
- SFT ๋ชจ๋ธ๋ก ๋ต๋ณ์ 2๊ฐ ์์ฑํ์์ ๋(Ver1), Chosen, Rejected ๋ต๋ณ์ ์ฐจ์ด๊ฐ ํฌ๊ฒ ์์ด ๋ชจ๋ธ์ด ํ์ต๋์ง ์๋ ํ์์ ๋ฐฉ์งํ๊ธฐ ์ํ์ฌ 2๊ฐ์ ๋ชจ๋ธ **(ChatGPT, SFT)**๋ฅผ ์ฌ์ฉํ์ฌ ๋ต๋ณ์ ์์ฑ(Ver2) |
|
- General Task ๋ต๋ณ์ ๋ํ ํ๊ฐ ์ฑ๋ฅ์ ๋์ด๊ธฐ ์ํด Evol-instruct ๋ฐ์ดํฐ ์ถ๊ฐ |
|
- ํ์ต์ ์ฌ์ฉํ ๋ชจ๋ ๋ฐ์ดํฐ์
์ 15 token ์ดํ, cosine ์ ์ฌ๋ 0.5 ์ด์์ผ ๊ฒฝ์ฐ ์ ๊ฑฐํ๋ Filtering ์์
์ํ |
|
- ํ์คํํ ํ์ต์(Ver1) Step3 ๊ฐํํ์ต ์ดํ์ ๋ต๋ณ์ด ์ด์ํ๊ฒ ์์ฑ๋๋ Issue๊ฐ ์์ด, ํ์คํํ์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ฑฐํ๊ณ ํ์ต(Ver2) |
|
- RM-ver1์ GPT4๊ฐ Chosen, Rejected ๋ ์ด๋ธ๋ง์ ์งํํ์์ง๋ง, Resource ์ด์๋ก ์ธํด ์ผ๋ถ๋ง ์ฌ๋์ด ๋ผ๋ฒจ๋ง ์งํ |
|
- ์ผ์๋ํ ๋ฐ์ดํฐ์
|
|
- ChatGPT์ SFT ๋ชจ๋ ์ผ๊ด๋๊ฒ ๋์ ํ๋ฆฌํฐ์ ๋ต๋ณ์ ์์ฑํ์ง ์์, ์ฌ๋์ด ์ง์ ๋ผ๋ฒจ๋ง ์งํ |
|
- RLHF ํ๊ตญ์ด ๋ฒ์ญ, Evol-Instruct ๋ฐ์ดํฐ์
|
|
- ChatGPT๊ฐ ์ผ๊ด๋๊ฒ ๋์ ํ๋ฆฌํฐ์ ๋ต๋ณ์ ์์ฑํ์ฌ ChatGPT๋ฅผ Chosen, SFT๋ฅผ Rejected๋ก ๋ผ๋ฒจ๋ง ์งํ |
|
## Reward Model ver2 Evaluation |
|
 |
|
|
|
# Task4. RLHF์ DeepSpeedChat์ ํตํ ์ต์ข
๋ชจ๋ธ ๊ตฌํ |
|
- Microsoft์์ ๋ง๋ ๋๊ท๋ชจ ๋ถ์ฐ ๋ฅ๋ฌ๋์ ์ํ ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ์ต์ ํ ๊ธฐ์ (DeepSpeed)์ RLHF Process์ ์ ์ฉํ DeepSpeedChat ์ฌ์ฉ |
|
- Human preference๋ก ํ์ต์ ์ํจ Reward ๋ชจ๋ธ๊ณผ ๊ฐํํ์ต์ ํตํด SFT ๋ชจ๋ธ์ ์ฌ๋์ ์ ํธ๋๋ฅผ ๋ฐ์ํ์ฌ ์์ฐ์ค๋ฝ๊ณ (FRIENDLY), ์ค๋ฆฌ์ ์ธ (HARMLESS)ย ์ฑ๋ด ์์ฑ |
|
|
|
## Baseline Models |
|
- Actor Model: KULLM-SFT-V2 |
|
- Reward Model: Polyglot-Ko-Reward-V3 |
|
|
|
## Training Options |
|
 |
|
|
|
## RLHF Training |
|
 |
|
- ํ์ต ๊ฒฐ๊ณผ, SFT ๋ชจ๋ธ์ ๋ต๋ณ์ ๋ํ ํ๋ฆฌํฐ์ธ Reward๊ฐ ์์นํ๋ ๊ฒ์ ํ์ธ (์ฌ๋์ ์ ํธ๋๊ฐ ๋์ ๋ต๋ณ์ ์์ฑ) |
|
|
|
## RLFH Model Evaluation |
|
 |
|
 |
|
|
|
## Final RLHF Model |
|
- https://huggingface.co/Trofish/KULLM-RLHF |
|
|
|
|
|
# Contributors ๐ |
|
- ๋ฐ์ฑ์ (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 20ํ๋ฒ, [email protected]) |
|
- ์กํ๋น (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 20ํ๋ฒ, [email protected]) |
|
- ํ์ ๋ฏผ (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 21ํ๋ฒ, [email protected]) |
|
- ํ์ฌ์ (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 20ํ๋ฒ, [email protected]) |
|
|
|
|