Skip to content

Latest commit

 

History

History
140 lines (121 loc) · 8.45 KB

README.md

File metadata and controls

140 lines (121 loc) · 8.45 KB

level2-dkt-level2-recsys-10

메인로고

❗ 주제 설명

  • 개인 맞춤화 교육을 위해 사용자의 "지식 상태"를 추적하는 딥러닝 방법론인 DKT(Deep Knowledge Tracing) 모델을 구축하고, 사용자가 푼 최종 문제의 정답 여부를 예측

📁 데이터

데이터 데이터설명
UserID 사용자의 고유 번호
assessmentItemID 사용자가 푼 문항의 일련 번호
testId 사용자가 푼 문항이 포함된 시험지의 일련 번호
answerCode 사용자가 푼 문항의 정답 여부를 담고 있는 이진(0/1) 데이터 (Target Label)
Timestamp 사용자가 문항을 푼 시간 정보
KnowledgeTag 사용자가 푼 문항의 고유 태그
  • Iscream-Edu 데이터셋 / CC BY 2.0
  • train/test 합쳐서 총 7,442명의 사용자가 존재
  • 총 9,454개의 고유 문항, 1,537개의 시험지, 912개의 태그(중분류)가 존재

🏆 평가지표

  • 주어진 마지막 문제를 맞았는지 틀렸는지로 분류하는 이진 분류 문제이므로, 본 대회에서는 AUROC(주평가지표)와 Accuracy(참고 평가지표)를 사용함

👋 팀원 소개

신민철 유승태 이동석 이아현 임경태
Avatar Avatar Avatar Avatar Avatar

⚙ 프로젝트 수행 절차 및 방법

구조도

  • Research | 대회와 관련된 기술 탐색 및 학습 진행
  • EDA | 주어진 데이터에 대한 파악
  • 실험 환경 구축 | 모델 간 성능 비교의 객관화를 위한 실험 환경 구축
  • Feature Engineering | 모델의 성능 상승을 위한 새로운 Feature 탐색 및 생성
  • Modeling | 목적에 부합하는 모델 선정 및 개발
  • 실험 및 평가 | 개발한 모델 또는 새로운 Feature에 대한 성능 평가

🔨 Installation & Training

  • 각 폴더의 requirements.txt, README.md 참고

🏢 Structure

level2-dkt-level2-recsys-10
├── README.md
├── input
│   └── code
│       ├── dkt
│       │   ├── README.md
│       │   ├── args.py
│       │   ├── config.py
│       │   ├── dkt
│       │   │   ├── criterion.py
│       │   │   ├── dataloader.py
│       │   │   ├── metric.py
│       │   │   ├── model.py
│       │   │   ├── module.py
│       │   │   ├── optimizer.py
│       │   │   ├── scheduler.py
│       │   │   ├── trainer.py
│       │   │   └── utils.py
│       │   ├── inference.py
│       │   ├── requirements.txt
│       │   └── train.py
│       ├── lightgcn
│       │   ├── README.md
│       │   ├── config.py
│       │   ├── inference.py
│       │   ├── lightgcn
│       │   │   ├── datasets.py
│       │   │   ├── models.py
│       │   │   └── utils.py
│       │   ├── requirements.txt
│       │   └── train.py
│       ├── modified_lightgcn
│       │   ├── README.md
│       │   ├── config.py
│       │   ├── inference.py
│       │   ├── lightgcn
│       │   │   ├── datasets.py
│       │   │   ├── models.py
│       │   │   └── utils.py
│       │   ├── requirements.txt
│       │   └── train.py
│       └── tabular
│           ├── README.md
│           ├── args.py
│           ├── config.py
│           ├── fi_split1.png
│           ├── inference.py
│           ├── requirements.txt
│           ├── tabular
│           │   ├── dataloader.py
│           │   ├── trainer.py
│           │   └── utils.py
│           └── train.py
└── references
    ├── modified_lightgcn_embeddingLookUpTableStructure.png
    └── validation_strategy.png

✨ WRAP-UP REPORT

👨‍👩‍👧‍👧 Collaborate Working

  • Git Flow 브랜치 전략

Git Flow

  • Github Issues 기반 작업 진행

Git Issues

  • Github Projects의 칸반 보드를 통한 일정 관리

Git Projects

  • Github Pull requests를 통해 Merge 전 request 검토 & 코드 리뷰

Git Pull requests

  • Weights & Biases를 통한 실험 관리

WandB

  • Notion을 활용한 실험 기록 정리

Notion

📜 Reference