Feedback Prize - English Language Learning

MSMoon·2025년 4월 24일

kaggle 학습

목록 보기
8/18
post-thumbnail

1. 대회 설명

  • 목표: 영어 학습자의 글쓰기 결과에 대해, 평가자의 채점 기준(6가지 척도)에 따라 점수를 예측하는 자동 채점 모델을 개발
  • 문제 유형: 6개의 타겟 점수(cohesion, syntax, vocabulary, phraseology, grammar, conventions)를 예측하는 다중 회귀(Multi-Target Regression)
  • 데이터 배경
    -> 미국 내 중고등학교 학생들의 에세이를 기반으로, 각 텍스트에 대해 평가자가 채점한 6가지 평가 지표가 포함된 데이터셋
    -> 각 글은 text_id, full_text, prompt_id, grade, language 등의 메타 정보가 포함

2. 성능 평가 방식 이해

  • MCRMSE (Mean Columnwise Root Mean Squared Error)
    -> 타겟 각각의 RMSE를 계산한 뒤, 그 평균값을 최종 평가 지표로 사용
    -> 회귀 모델의 다중 타겟 성능을 종합적으로 측정하는 데 적합

3. 데이터 전처리

3-1) EDA

  • full_text 길이 분포 및 타겟 간 상관관계 확인
  • grade/prompt/language 별 분포 시각화
  • 일부 샘플에 문법적 오류가 포함되어 있는 것 확인

3-2) Data Cleansing

  • 특수한 전처리 없이 원문 그대로 활용
  • tokenizer에서 처리할 수 있도록 [BR] 토큰 추가

3-3) Feature Engineering

  • 학습에 사용된 주요 피처는 full_text 하나이며, 다른 메타 정보는 별도로 활용되지 않음
  • tokenizer는 [BR]이라는 특별 토큰을 추가하고, 최대 512 토큰으로 자름

4. 모델링

4-1) 모델

  • 사전학습 언어모델: microsoft/deberta-v3-xsmall
  • HuggingFace 기반의 AutoModel로 불러온 후, 마지막 출력에 FC Layer를 붙여서 6개 회귀 값을 출력함
  • Dropout 및 LayerNorm 등은 config를 통해 직접 조정 가능

4-2) 데이터 분할

  • 총 5-Fold Cross Validation
  • 기본적으로 학습 데이터 전체를 fold 0~fold 4로 나누어 학습/검증

4-3) 하이퍼파라미터 튜닝

  • batch_size: 1
  • max_len: 512
  • learning_rate: 2e-5
  • dropout 계수: 0.0 (기본 설정)
  • Scheduler: Cosine Annealing
  • Early Stopping 적용

4-4) 최종 성능

  • DeBERTa의 소형 모델임에도 불구하고 좋은 성능을 보임
  • 필사 환경(Colab)에서는 fold 0 모델을 기반으로 추론을 수행했으며, 사전 학습된 모델 가중치를 사용하지 않고 학습 없이 바로 추론을 수행하였기에, 실제 성능 평가 수치는 존재하지 않음
  • 향후 학습부터 수행하거나 기존 가중치를 업로드하여 성능 확인이 필요

5. 정리(Lesson & Learned)

  • 텍스트 기반의 다중 회귀 문제 구조를 명확히 이해할 수 있었고, 실제로 자연어처리(NLP) 모델이 교육 평가와 같은 도메인에 적용되는 방식에 대해 통찰을 얻을 수 있음
  • 사전학습된 Transformer 계열 모델(deberta-v3-xsmall)을 활용하여 간단한 구조만으로도 높은 성능을 낼 수 있다는 점에 대해 알 수 있었음
  • 필사 중 Google Colab 환경의 특성상 다음과 같은 환경 차이로 인한 실습 수정이 필요했는데, 이를 통해 실무에서 오픈소스 코드를 어떻게 자신의 환경에 맞게 적용해야 하는지 학습할 수 있었음
  • config.pth 및 fold별 학습된 .pth 파일 없이도 전체 구조와 흐름을 재현할 수 있었고, 추론을 위한 데이터 로딩, tokenizer 처리, submission 생성까지의 워크플로우를 완전하게 재현할 수 있었음
  • 평가 지표인 MCRMSE(Mean Columnwise RMSE) 계산 방식이 실제 모델 평가에 어떻게 반영되는지를 코드 레벨에서 확인하면서, 다양한 회귀 문제에 적용되는 metric 설계에 대한 감각을 높일 수 있었음

Feedback Prize - English Language Learning

0개의 댓글