아이펠 DLthon 프로젝트
프로젝트 기간: 2024.06.24 ~ 2024.06.27
실험 결과 확인(wandb) :
김성연 | 이얼 | 이은경 |
---|---|---|
@seongyeon1 | @L3earl | @ek0111 |
데이터 전처리, EDA, 모델링 | 실험 설계, 시스템 디자인, 모델링 | 데이터 전처리, 데이터 증강, 모델링 |
한국어 위협 대화 분류 (NLU : Natural Language Understanding)
- 데이터 EDA와 데이터 전처리가 적절하게 이뤄졌는가?
- Task에 알맞게 적절한 모델을 찾아보고 선정했는가?
- 성능 향상을 위해 논리적으로 접근했는가?
- 결과 도출을 위해 여러가지 시도를 진행했는가?
- 도출된 결론에 충분한 설득력이 있는가?
- 적절한 metric을 설정하고 그 사용 근거 및 결과를 분석하였는가?
- 발표가 매끄럽게 진행되었고 발표 시간을 준수하였는지?
- 효과적인 협업을 위해 노션을 활용했다
- 첫 번째 회의 시간에 규칙을 정하고 정기 회의 시간을 정한 뒤 역할을 나눠서 진행했다
Task Board | To-Do-List |
---|---|
![]() |
![]() |
---
- wandb를 통한 실험 결과 추적 및 비교를 용이하게 할 수 있었다
- 성능 평가를 좀 더 체계적으로 하기 위한 방법을 고안하였다
- 각자 모델링을 해보고 이에 따른 성능 비교를 할 수 있는 구조를 활용하였다.
- 각자 아이디어로 실험 > 전처리, 모델 모듈화 > 반복 수행 > 결과 비교로 인사이트 획득, 개선 점 토론 > 반복하는 구조로 실험을 진행하였다.
- 각 클래스별 워드 클라우드 및 자세한 내용은 ppt 폴더의 발표자료 참고
- 아이펠 학습에서 사용했던 모델들과 최신 모델들을 활용해서 모델링을 진행했다
- 사용 모델
Baseline Model
: LSTM, 1D CNNModel from Scratch
: Transformer (Encoder), GPTPre-trained Model
: koBert, koElectra, koRoberta
- 사용 모델
- 나온 결과들의 앙상블을 통해 성능을 최대화 하였다
- 전처리 측면에서 맞춤법 교정을 추가하면 좋을 것
- 단순 내용, 단어들 만으로 분류하는 것은 좋은 성능 내기 어려울 것으로 보임
- 맥락, 대화 상대와의 관계까지 고려할 수 있는 모델 설계가 필요함
- multi level task, auxiliary task 추가하면 좋은 성능 낼 것으로 기대
├── README.md
├── data : 데이터 셋
├── data_paring : 추가 일반 데이터 수집 및 전처리 코드
│ ├── ai_hub_parsing.ipynb : ai_hub 데이터를 사용하기 좋은 형태로 전처리 하는 코드
│ └── corpus_normal_data_paring.py : 국립국어원 말뭉치 데이터 전처리 코드
├── models: fine-tuning 한 모델들이 담긴 폴더 (용량문제로 삭제)
│ ├── koelectra_multilabel
│ └── train.py
├── pred : submission 형태로 저장하는 위치
├── utils : 전처리 및 불용어 관련 코드
├── ppt : 발표자료
└── notebook : 실험을 위한 jupyter notebook 파일들
├── EDA & Visualization.ipynb : EDA(형태소 분석) 및 시각화 (wordcloud, histogram)
├── Modeling_~~ : 모델링 코드
└── Modeling_bert.ipynb