B1001101 2021. 5. 24. 23:02

강의 복습

1. DKT 이해 및 DKT Trend 소개

1) DKT Task 이해

  • DKT(Deep Knowledge Tracing): 딥러닝을 이용해서 하는 지식 상태 추적
  • 원리: 문제 풀이 정보를 통해 지식 상태 예측 → 지식 상태를 기반으로 다음 문제를 맞출지 예측
  • 데이터가 많아질수록 지식 상태 예측 더욱 정밀해짐
    데이터가 적을수록 오버피팅 현상이 쉽게 일어남
  • DKT 대회에서는 지식상태보다는 주어진 문제를 맞췄는지 틀렸는지에 집중

2) Metric 이해

  • Confusion Matrix

  • AUC (Area Under the ROC Curve): 넓을수록 모형 성능 높아짐
    • 범위: 0~1
    • 이상적인 이유: 척도 불편, 분류 임계값 불변

3) DKT History 및 Trend

  • Sequence Data를 다루기 때문에 자연어 처리 분야의 발전에 많은 영향을 받아왔음
  • BKT(1994): Machine Learning
    DKT(2015): Deep Learning
    SAKT(2019): Transformer
    GKT(2019): GNN

4) Sequence Data

  • RNN: 순환신경망, 긴 문장 학습 어려움
  • LSTM: 장단기 메모리
  • seq2seq: Encoder & Decoder, 긴 문장을 한개의 Context Vector로 표현하는데에 있어 한계가 있음
  • Attention: 학습 속도 한계
  • Transformer: 병렬 처리, Positional Encoding으로 어순 정보 해결

2. DKT data EDA

1) 기본적인 내용 파악

2) 기술 통계량 분석

  • 데이터 자체의 정보를 수치로 요약, 단순화하는 것을 목적으로 함
  • 평균, 중앙값, 최대/최소와 같은 값들을 뽑아내고, 이들을 유의미하게 시각화
  • 최종 목표인 정답률과 연관 지어 분석하는것이 유리

3) 일반적인 EDA

  • 문항을 더 많이 푼 학생이 문제를 더 잘 맞추는가?
  • 더 많이 노출된 태그가 정답률이 더 높은가?
  • 문항을 풀수록 실력이 늘어나는가?
  • 문항을 푸는 데 걸린 시간과 정답률 사이의 관계는?
  • 더 많이 노출된 시험지는 정답률이 높을까?
  • 같은 시험지의 내용이나 같은 태그의 내용을 연달아 풀면, 정답률이 오를까?
  • 정답을 특별히 잘 맞추는 시간대가 있을까?

 


프로젝트 회고

오늘은 본격적으로 실험을 시작하기에 앞서 EDA를 진행했다. 문항을 더 많이 푼 학생이 정답률도 더 높았으며, 많이 노출된 태그일수록 정답률이 높았다. 그리고 문항을 푸는데 걸리는 시간이 너무 짧으면 정답률이 낮고, 특정시간에서 정점을 찍으며 시간이 더 걸릴수록 전반적으로 떨어지는 것을 확인할 수 있었다.

시험지 노출 횟수와 정답률의 상관관계를 확인해봤다. 더 많이 노출된 시험지의 정답률이 높을 것으로 예상했지만 오히려 낮았다.

시간대별 정답률을 비교해봤더니 낮에 가장 높았고 저녁때 가장 낮았다. 저녁때에는 집중력이 떨어져서 정답률이 낮은 것으로 추측한다. 그런데 오밤중이랑 새벽에는 오히려 저녁보다 정답률이 높아서 의외였다. 아마 밤늦게까지 열심히 공부하는 학생들이라서 평균 점수가 높은 것이 아닌가 싶다.