NAVER AI Tech/Deep Knowledge Tracing(6)
-
6. Matrix Factorization(SVD) for Recommend System.
user-item matrix - train data : 구매한 항목은 1, 구매하지 않은 항목은 0으로 표기 → U, sigma, V를 얻을 수 있음 - test data : 새로운 user(or 새로운 item)에 대하여 궁금한 항목을 0.5로 표기 후 train에서 얻은 sigma, V를 사용하여 U를 구함. why U? 따라서 U(=test data으로부터 유사 역행렬을 도출), sigma(=from train), V(=from train)을 활용하여 test data를 예측.
2024.01.05 -
5. Graph Neural Network for Recommend System
Graph Neural Network(GNN) 은 크게 Spectral / Spatial 분야로 나눌 수 있다. - Graph Convolution Network(GCN)이 이 둘을 이어주는 아주 중요한 역할을 한 모델임. - GCN 등장 이후 Spatial filtering 위주의 연구가 주를 이루게 됨. Graph를 표현하기 위한 데이터는 Node feature matrix, Adjacency matrix, Degree matrix, Laplacian matrix가 있다. - input으로는 Node feature matrix, Laplacian matrix(D - A) - task에 따라 Graph-level, Edge-level, Node-level 작업 수행. GCN - Adj에 이웃노드와의 연..
2024.01.05 -
4. Transformer Fine Tuning
Hyperopt, Ray 등 라이브러리를 활용해서 hyperparameter tuning을 진행해보자. Transformer의 hyperparameter 1. layer 수 2. head 수 3. embedding dim 4. sequence length Training 시 hyperparameter 1. learning rate 2. batch size 3. epochs
2024.01.04 -
3. (Kaggle) Riiid Competition Winner's Solution
EDA - 연속형 변수 : 결측치 개수 파악, 최대/최소 값 파악, 중앙값, 평균 파악, 첨도,왜도 확인, target에 따른 feature 분포 확인 - 범주형 변수 : 결측치 개수 파악, Unique 값 개수 파악, value 별 개수 count, 최빈도 값 파악, value 별 target 분포 확인 - 시간 데이터가 주어짐 : feature를 풍부하게 생성해낼 수 있다. - 해당 대회는 특정 학생이 TOEIC 시험문제를 맞출지를 예측하는 대회로 문제를 푸는데 소요시간이 길다면 틀릴 확률이 높은 인사이트를 활용하여 해당 문제의 평균 시간, 틀린 학생들의 평균 시간 등을 feature로 추가할 수 있다. - 문항별, 시험지별, 태그별 평균 정답률을 feature로 추가할 수도 있고 등장 빈도를 fea..
2024.01.04 -
2. How to make sequence data
4가지 대회의 솔루션들을 살펴보면서 알아보자. 1. Data Science Bowl - 게임을 통해 개념을 학습하고, 얼마나 학습했는지를 평가하여 특정 문제를 맞출 수 있을 것인가를 예측 - 범주형 변수 → embedding → reshape(-1,1) → Linear layer 통과 → LayerNorm → feature1 - 연속형 변수 → Linear layer 통과 → LayerNorm → feature2 - concat(feature1, feature2) → sequence data - 범주형 변수 개당 100dim으로 embedding후 1차원으로 concat (3개의 범주형 변수, 따라서 300dim 벡터) - 300dim → Linear layer 통과 → 64dim - 연속형 변수 → L..
2024.01.03 -
1. Deep Knowledge Tracing
Deep Knowledge Tracing : 딥러닝을 이용한 지식 상태 추적 - 추적 : Sequence Data 처리(RNN, LSTM, Transformer 등 시계열 모델을 사용) i-Scream Dataset 예시 - userid, 문제id, answerCode(corret or not), Timestamp, KnowledgeTag **EDA 첫 스텝 : 기술통계량(평균,중앙값, 분산, 표준편차, 최대/최소 값)부터 살펴보기 및 시각화 - 문제를 많이 푼 학생일 수록 정답률이 높나? - 더 많이 노출된 태그일수록 정답률이 높나? - 목적에 유의미한 feature를 찾기 위해 다양한 시각에서 확인 Sequence Data를 만들기 위해 사용자 별로 데이터를 생성해서 모델의 input으로 제공해야함...
2024.01.03