- Wrap-Up Report
- 이 프로젝트는 부스트캠프 AI Tech 7기 NLP track 경진 대회로, Dacon, Kaggle과 유사한 대회형 방식으로 진행되었다.
- 소형 언어 모델을 사용해 한국어 및 수능 시험에 최적화된 AI 모델을 개발하여 GPT, Claude, Gemini와 같은 대형 모델을 능가하는 성능을 목표로 하였다.
Team NLP크민
권지수 | 김성은 | 김태원 | 이다현 | 이한서 | 정주현 |
---|---|---|---|---|---|
이름 | 역할 |
---|---|
권지수 |
Text/Label Noise Split, Text Cleaning, Model Searching, Model Compression |
김성은 |
Text/Label Noise Split, Model Searching, Prompt-Based Generation |
김태원 |
PM, EDA, Re-Labeling, Evol-Instruct LLM for Augmentation |
이다현 |
PM, EDA, Re-Labeling, Evol-Instruct LLM for Augmentation |
이한서 |
Model Searching, Data Augmentation, Prompt Engineering, Fine-tuning |
정주현 |
Re-Labeling, ML Model Searching |
주제 | 소형 언어 모델을 사용해 대형 모델을 능가하는 한국어 및 수능 시험 최적화 AI 모델 개발 |
---|---|
구현 내용 | 주어진 수능형 문제 데이터셋을 전처리 및 증강하여 Train Dataset을 구성하고, 사전 학습된 소형 모델을 Train Dataset에 맞게 파인튜닝 후 학습을 진행한다. 이후 학습된 모델로 Test Dataset에 대해 추론을 수행한다. 이 과정에서 최적의 데이터셋, 모델, 파라미터 및 프롬프트를 탐구한다. |
개발 환경 | • GPU : NVIDIA Tesla V100 32GB 서버 4개 • Tool : VS Code, Jupyter Notebook |
협업 환경 | • Zoom : 실시간 비대면 회의 • Github : 코드, 데이터 공유 및 버전 관리 • Notion : 역할 분담, 실험 가설 설정 및 경과 공유 |
📂code
┣ 📜requirements.txt
┣ 📜config.json
┣ 📜make_train_dataset.ipynb
┣ 📜data_processing.py
┣ 📜utils.py
┣ 📜train.py
┗ 📜test.py
📂data
┣ 📜aug_gemini.csv
┣ 📜aug_gpt.csv
┣ 📜classified_train_raw.csv
┣ 📜classified_train_processed.csv
┣ 📜classified_train_processed_filtered.csv
┣ 📜train_augmented.csv
┗ 📜train_final.csv
📂prompts
┣ 📜prompt_no_question_plus.txt
┗ 📜prompt_question_plus.txt
효율적인 협업을 위해 매일 아침 ZOOM 화상 회의를 통해 각자의 진행 상황과 당일 실험 계획을 공유하였으며, 오후 4시부터 7시까지 다시 ZOOM 회의를 통해 실험 결과를 실시간으로 공유하고 피드백을 주고받았다.
Server
: 모든 서버를 Git으로 연동해 버전 관리, 유휴 상태의 서버에서 실험 진행Git
: 개인별 branch에 작업한 코드 및 데이터 공유Notion
: 가설, 구현 및 실험 결과를 기록해 진행 상황 공유Submission
: 리더보드 마감 5일 전까지 자유롭게 제출, 이후 인당 1일 2회 제출
2024.11.11.(월)-11.28.(목) (17일간)
- 1~5 일차: 강의 수강, Baseline Code 분석 및 데이터 EDA
- 6~12 일차: 모델 탐색 및 실험, 데이터 정제
- 13~17 일차: 데이터 증강, 파라미터 및 프롬프트 실험
pip3 install -r requirements.txt
make_train_dataset.ipynb
python3 train.py
python3 test.py