Trofish commited on
Commit
075db61
·
verified ·
1 Parent(s): ba40edd

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +33 -40
README.md CHANGED
@@ -1,34 +1,27 @@
1
  2023 성균관대 하계집중 산학협력프로젝트 VAIV
2
- ### Github : https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM
3
-
4
  ## GPT 기반의 자연스럽고(Friendly) 윤리적인(Harmless) 일상 대화형 챗봇 모델
 
5
 
6
- # 과제 목표
7
- GPT-NEOX 기반 자연스럽고 윤리적인 한국어 기반 일상 대화형 챗봇 모델 구현
 
 
 
8
  - Self-Instruct: GPT4를 이용한 데이터 증강
9
  - RLHF(Reinforcement Learning from Human Feedback): 사람의 선호도를 반영한 강화학습
10
  - DeepSpeed: 대규모 분산 딥러닝을 위한 새로운 메모리 최적화 기술
11
-
12
- # 개발 내용
13
- Task 1: 강화학습 단계별 데이터셋 구축
14
- Task 2: SFT 모델 Fine-tuning (https://huggingface.co/Trofish/KULLM-SFT-v2)
15
- Task 3: Reward 모델 ver1,2,3 구현
16
- Task 4: RLHF와 DeepSpeedChat을 통한 최종 모델 구현 (https://huggingface.co/Trofish/KULLM-RLHF)
17
 
18
  # Task1. 강화학습 단계별 데이터셋 구축
19
- ![image](https://github.com/VAIV-2023/VAIV2023/assets/79634774/a4988abd-c6fd-4fc2-8e53-9a02240e2275)
20
- ![image](https://github.com/VAIV-2023/VAIV2023/assets/79634774/dae49a1e-a834-463c-9f95-34cf254fdaeb)
21
- ## 데이터셋 선정 고려 사항
22
- - **일상 대화와 혐오 표현 대처 능력을 올리기 위한 데이터셋과, 학습 시 챗봇 모델의 general한 task에 대한 성능이 하락하는 것을 막기 위해서 general task 데이터셋을 구성**
23
-
24
- - **국립국어원 일상 대화 데이터셋:** 일상적인 대화에 대한 자연스러운 응답이 있으면서도, 맞춤법이 잘 지켜지고 은어, 비문, 초성 등이 없으며 주제별로 다양한 대화가 있음
25
-
26
- - **AI Hub 혐오 표현 데이터셋:** 혐오, 차별, 성적인 내용, 폭력, 범죄 등 카테고리별로 다양한 혐오 표현이 있음
27
-
28
- - **General task 데이터셋**
29
- - Evol-Instruct 데이터셋: 다양한 분야에 대한 복잡하고 논리적인 prompt와 답변이 있음
30
- - Self-Instruct 데이터셋: 사람이 직접 생성한 양질의 Seed data를 기반으로 데이터 증강
31
- - RLHF 한국어 번역 데이터셋: DeepSpeedChat에서 공개한 데이터셋을 한국어로 번역
32
 
33
  # Task2. SFT 모델 Fine-tuning
34
  ## Baseline Model
@@ -46,8 +39,6 @@
46
  ![image](https://github.com/VAIV-2023/VAIV2023/assets/79634774/a994a960-db7c-4e75-a11a-d7755d372722)
47
  * G-Eval: https://arxiv.org/abs/2303.16634
48
 
49
- ## Final SFT Model
50
- - https://huggingface.co/Trofish/KULLM-SFT-v2
51
 
52
  # Task3-1. Reward Model ver1 구현
53
  ## Baseline Model
@@ -64,33 +55,35 @@
64
  - 데이터셋 유형별로 G-Eval 평가 Prompt에 차이를 두었음
65
  - ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/7d7117d0-02e9-42dd-8ce3-5244cf726bf8)
66
  ## Reward v1 Model Finetuning
67
- - ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/da4d9b15-ec91-44bb-84d9-f28aeffd16ad)
68
  - InstructGPT 논문에 따르면, Reward 모델은 overfitting되면 성능이 크게 저하된다고 함 --> epoch 수를 1로 설정
69
  - batch size나 learning rate 등 다른 hyper-parameter는 성능에 큰 영향이 없다고 함
70
  - Colab A100 40GB 기준 총 학습 시간 4분
71
 
72
  ## Reward v1 Model Evaluation
73
- - ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/f4af0b7d-af47-4881-8adf-d14be43c0eb1)
 
74
  - Reward Model Template
75
- - **"아래는 작업을 설명하는 명령어입니다. 요청을 적절히 완료하는 응답을 작성하세요. \n\n ### 명령어:\n{prompt}\n\n ### 응답:\n"**
76
 
77
- # Task3-2. Reward Model ver2,3 구현
78
- ## RewardModel ver1 Issues
79
- - 구현된 Reward 모델의 성���이 좋지 않음 (Accuracy 0.65)
80
- - Reward 모델을 사용하여 Step3 학습시 혐오표현이 아닌데도 혐오표현이라고 인식하고 답변하는 문제 발생
81
 
82
- ## Issue 해결방안 (Reward Model ver2,3)
83
- - ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/99c7fd6c-448e-4780-9573-0ef51b8e3183)
 
84
  - General Task 답변에 대한 평가 성능을 높이기 위해 Evol-instruct 데이터 추가
85
- - SFT 모델로 답변을 2개 생성하였을 때, Chosen, Rejected 답변의 차이가 크게 없어 모델이 학습되지 않는 현상을 방지하기 위하여 2개의 모델 **(ChatGPT, SFT)**를 사용하여 답변을 생성
86
- - 혐오표현 학습시(Ver2) Step3 학습 이후에 답변이 이상하게 생성되는 Issue가 있어, 혐오표현을 데이터를 제거하고 학습(Ver3)
87
  - RM-ver1은 GPT4가 Chosen, Rejected 레이블링을 진행하였지만, Resource 이슈로 인해 일부만 사람이 라벨링 진행
88
- - 일상대화, 혐오표현 데이터셋
89
  - ChatGPT와 SFT 모두 일관되게 높은 퀄리티의 답변을 생성하지 않아, 사람이 직접 라벨링 진행
90
  - RLHF 한국어 번역, Evol-Instruct 데이터셋
91
- - ChatGPT가 일관되게 높은 퀄리티의 답변을 생성하여 ChatGPT를 Chosen, SFT를 Rejected로 라벨링
92
- ## Reward Model ver2,3 Evaluation
93
- ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/7889398a-86dc-4b03-8300-64b772d49887)
94
 
95
  # Task4. RLHF와 DeepSpeedChat을 통한 최종 모델 구현
96
  - Microsoft에서 만든 대규모 분산 딥러닝을 위한 새로운 메모리 최적화 기술(DeepSpeed)을 RLHF Process에 적용한 DeepSpeedChat 사용
 
1
  2023 성균관대 하계집중 산학협력프로젝트 VAIV
 
 
2
  ## GPT 기반의 자연스럽고(Friendly) 윤리적인(Harmless) 일상 대화형 챗봇 모델
3
+ ### Github : https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM
4
 
5
+ # 연구 배경 및 목적
6
+ GPT-NEOX(Polyglot-ko) 기반 자연스럽고 윤리적인 한국어 기반 일상 대화형 챗봇 모델 구현
7
+ ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/18bb1ab4-8924-4b43-b538-1e6529297217)
8
+
9
+ # 개발 내용
10
  - Self-Instruct: GPT4를 이용한 데이터 증강
11
  - RLHF(Reinforcement Learning from Human Feedback): 사람의 선호도를 반영한 강화학습
12
  - DeepSpeed: 대규모 분산 딥러닝을 위한 새로운 메모리 최적화 기술
13
+
14
+ - Task 1: 강화학습 단계별 데이터셋 구축
15
+ - Task 2: SFT 모델 Instruction-tuning
16
+ - Task 3: Reward 모델 ver1,2,3 구현
17
+ - Task 4: RLHF와 DeepSpeedChat을 통한 최종 모델 구현 (https://huggingface.co/Trofish/KULLM-RLHF)
 
18
 
19
  # Task1. 강화학습 단계별 데이터셋 구축
20
+ ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/4bb56e36-0c49-4d15-a2c6-2824867419a8)
21
+ ![Screenshot 2024-06-18 at 11 05 55 AM](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/2f637065-fa25-4402-b319-113ff4c6e1a9)
22
+ ![Screenshot 2024-06-18 at 11 06 08 AM](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/2a6c2e9b-1292-43b9-b5e7-5ced3643988d)
23
+
24
+
 
 
 
 
 
 
 
 
25
 
26
  # Task2. SFT 모델 Fine-tuning
27
  ## Baseline Model
 
39
  ![image](https://github.com/VAIV-2023/VAIV2023/assets/79634774/a994a960-db7c-4e75-a11a-d7755d372722)
40
  * G-Eval: https://arxiv.org/abs/2303.16634
41
 
 
 
42
 
43
  # Task3-1. Reward Model ver1 구현
44
  ## Baseline Model
 
55
  - 데이터셋 유형별로 G-Eval 평가 Prompt에 차이를 두었음
56
  - ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/7d7117d0-02e9-42dd-8ce3-5244cf726bf8)
57
  ## Reward v1 Model Finetuning
58
+ ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/da4d9b15-ec91-44bb-84d9-f28aeffd16ad)
59
  - InstructGPT 논문에 따르면, Reward 모델은 overfitting되면 성능이 크게 저하된다고 함 --> epoch 수를 1로 설정
60
  - batch size나 learning rate 등 다른 hyper-parameter는 성능에 큰 영향이 없다고 함
61
  - Colab A100 40GB 기준 총 학습 시간 4분
62
 
63
  ## Reward v1 Model Evaluation
64
+ ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/c21be612-b26d-4a1c-a1e2-6a99442660da)
65
+
66
  - Reward Model Template
67
+ - "아래는 작업을 설명하는 명령어입니다. 요청을 적절히 완료하는 응답을 작성하세요. \n\n ### 명령어:\n{prompt}\n\n ### 응답:\n"
68
 
69
+ # Task3-2. Reward Model ver2 구현
70
+ ## Reward Model ver1 Issues
71
+ - 구현된 Reward Model의 성능이 좋지 않음 (Accuracy 0.65)
72
+ - Reward Model ver1을 사용하여 Step3 학습시 혐오표현이 아닌데도 혐오표현이라고 인식하고 답변하는 문제 발생
73
 
74
+ ## Issue 해결방안
75
+ ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/6f4f0665-a8c7-4903-a626-f37018b7e4c9)
76
+ - SFT 모델로 답변을 2개 생성하였을 때(Ver1), Chosen, Rejected 답변의 차이가 크게 없어 모델이 학습되지 않는 현상을 방지하기 위하여 2개의 모델 **(ChatGPT, SFT)**를 사용하여 답변을 생성(Ver2)
77
  - General Task 답변에 대한 평가 성능을 높이기 위해 Evol-instruct 데이터 추가
78
+ - 학습에 사용한 모든 데이터셋은 15 token 이하, cosine 유사도 0.5 이상일 경우 제거하는 Filtering 작업 수행
79
+ - 혐오표현 학습시(Ver1) Step3 강화학습 이후에 답변이 이상하게 생성되는 Issue가 있어, 혐오표현을 데이터를 제거하고 학습(Ver2)
80
  - RM-ver1은 GPT4가 Chosen, Rejected 레이블링을 진행하였지만, Resource 이슈로 인해 일부만 사람이 라벨링 진행
81
+ - 일상대화 데이터셋
82
  - ChatGPT와 SFT 모두 일관되게 높은 퀄리티의 답변을 생성하지 않아, 사람이 직접 라벨링 진행
83
  - RLHF 한국어 번역, Evol-Instruct 데이터셋
84
+ - ChatGPT가 일관되게 높은 퀄리티의 답변을 생성하여 ChatGPT를 Chosen, SFT를 Rejected로 라벨링 진행
85
+ ## Reward Model ver2 Evaluation
86
+ ![image](https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM/assets/79634774/834cb645-7909-464b-b072-635aaac8eeff)
87
 
88
  # Task4. RLHF와 DeepSpeedChat을 통한 최종 모델 구현
89
  - Microsoft에서 만든 대규모 분산 딥러닝을 위한 새로운 메모리 최적화 기술(DeepSpeed)을 RLHF Process에 적용한 DeepSpeedChat 사용