본문 바로가기

Dev/AI 인공지능

[RecSys] DKT(Deep Knowledge Tracing) | Confusion Matrix | precision | recall | AUC | AOC

728x90
반응형

DKT(Deep Knowledge Tracing)

딥러닝을 이용해 학생의 학습 상태를 추적하는 것으로, 풀이 데이터가 많아질 수록 상태 예측은 정밀해진다!

 

DKT를 이용해서 할 수 있는것?

  • 학습 상태가 취약한 부분을 파악하여, 해당 파트를 더 공부하도록 제안할 수 있다
  • 학습 상태가 충분한 부분에 대해서는 다른 파트를 공부하도록 제안할 수 있다.
  • 시중 서비스 예시: 산타토익 등

 

DKT 대회

  • 일반적인 대회에서는 학습 상태 추적보다는 다음 문제를 맞출지, 틀릴지 예측하는 것에 더 중점이 맞춰져있다
  • binary classification prediction

 

기본 평가 지표 이해

  • precision (Positive Prediction Value) : 모델이 정답으로 예측한 것 중 진짜로 정답인 것
    ⟶ 적게 예측할 수록 점수가 잘나옴
  • recall (True Positive Rate, Sensitivity) : 진짜로 정답인 것 중에 모델이 맞춘 것
    ⟶ 많이 예측할 수록 점수가 잘나옴
  • F1-score: precision과 recall은 서로 상반된 관계에 있음. 따라서 이를 적절히 조합하여 예측하는 것이 F1-score

 

AUC & ROC metric for DKT

https://bioinformaticsandme.tistory.com/328

  • ROC(Receiver Operating Characteristic Curve: 다양한 임계값에서 모델의 성능을 보여주는 그래프(곡선)
  • AUC(Area Under the ROC Curve): ROC curve의 면적을 의미! 이게 넓어질수록 모델 성능이 높다고 판단
    ⟶ 최소한 0.5는 넘어야 하며, 0.5도 좋은 성능의 모델이라고 할 수 없음
    ⟶ 척도 불변, 분류 임계값 불변 이라는 사용하기 이상적인 2가지 이유가 있음
  • 참고: https://bioinformaticsandme.tistory.com/328

 

하지만, AUC도 단점이 존재하는데?!

  • 잘 보정된 확률 결과가 필요할 떄  척도 불변이 항상 이상적이지 않다
  • 허위 음성(FN)과 허위 양성(FP)을 동일하게 평가하기 때문에, 이 둘의 비중을 다르게 두고 싶을 때 적합하지 않음
  • 하지만 그래도 imbalance data여도 테스트 데이터를 동일하게 유지하면, binary classification 모델의 상대적 성능 비교 가능!

 

DKT with Sequence Model

  • RNN
  • LSTM
  • Seq2Seq
  • Attention
  • Transformer:

 

 

728x90
반응형