์ง์ ๊ตฌ์ฑ ์์์ ์ง์ ์ํ๋ฅผ ์ด์ฉํ์ฌ, ๋ณํํ๋ ์ง์ ์ํ๋ฅผ ์ง์์ ์ผ๋ก ์ถ์ ํ๋ task ์ด๋ค. ์ฌ์ฉ์๊ฐ ํผ ์ผ๋ จ์ ๋ฌธ์ ๋ฅผ ํตํด ๋ค์ ๋ฌธํญ์ ๋ธ ๋ต์ด ์ ๋ต์ผ์ง ์ค๋ต์ผ์ง ๋ง์ถ๋ ๊ฒ์ ๋ชฉํ๋ก ํ๋ค.
2022.11.14 ~ 2022.12.08(4์ฃผ)
- ๊ฐ๋ฐํ๊ฒฝ : VScode, PyTorch, Jupyter, Ubuntu 18.04.5 LTS, GPU Tesla V100-PCIE-32GB
- ํ์ Tool : GitHub, Notion
- ์๊ฐํ : WandB
|-- boosting
| |-- XGBoptuna.ipynb
| |-- boosting_baseline.py
| |-- src
| |-- train.py
|-- dkt
| |-- README.md
| |-- args.py
| |-- inference.py
| |-- requirements.txt
| |-- src
| |-- sweep.yaml
| |-- train.py
| |-- tuning.py
| |-- wandb_train.py
|-- ensembles
| |-- ensembles.py
|-- lgbm
| |-- lgbm.ipynb
| |-- lgbm_baseline.py
| |-- lgbm_group_kfold.ipynb
|-- lightgcn
| |-- README.md
| |-- config.py
| |-- inference.py
| |-- install.sh
| |-- lightgcn
| |-- train.py
|-- lightgcn_custom
| |-- README.md
| |-- config.py
| |-- inference.py
| |-- install.sh
| |-- lightgcn
| |-- requirements_lightgcn_custom.txt
| |-- train.py
- (1) boosting folder
- LGBM, XGBoost, CatBoost baseline code
- (2) dkt folder
- LSTM ๊ณ์ด ๋ชจ๋ธ์ baseline code
- (3) ensembles
- Weighted, voting, mix ๋ฐฉ์์ ensemble code
- (4) lgbm
- LGBM baseline code
- (5) lightgcn
- lightgcn baseline code
- (6) lightgcn_custom
- lightgcn + BERT , lightgcn + feature representation code
userID
์ฌ์ฉ์์ ๊ณ ์ ๋ฒํธtestId
์ํ์ง์ ๊ณ ์ ๋ฒํธassessmentItemID
๋ฌธํญ์ ๊ณ ์ ๋ฒํธanswerCode
์ฌ์ฉ์๊ฐ ํด๋น ๋ฌธํญ์ ๋ง์ท๋์ง ์ฌ๋ถ์ ๋ํ ์ด์ง ๋ฐ์ดํฐTimestamp
์ฌ์ฉ์๊ฐ ํด๋น๋ฌธํญ์ ํ๊ธฐ ์์ํ ์์ KnowledgeTag
๋ฌธํญ ๋น ํ๋์ฉ ๋ฐฐ์ ๋๋ ํ๊ทธ
- AUROC(Area Under the ROC curve)์ Accuracy
๊ตฌํ์ธ | ๊ถ์์ฑ | ๋ฐ๊ฑด์ | ์ฅํ์ฐ | ์ ํํธ | ํ์ ์ง |
---|---|---|---|---|---|
* ๋ฐ์ดํฐ EDA * BERT ๋ชจ๋ธ ์งํ |
* ๋ฐ์ดํฐ EDA * XGB ๋ชจ๋ธ ์งํ |
* ๋ฐ์ดํฐ EDA * Last Query ๋ชจ๋ธ ์งํ |
* ๋ฐ์ดํฐ EDA * LSTM+Attention ๋ชจ๋ธ ์งํ |
* ๋ฐ์ดํฐ EDA * LightGBM ๋ชจ๋ธ ์งํ |
* ๋ฐ์ดํฐ EDA * LightGCN ๋ชจ๋ธ ์งํ |
- 22.11.10(๋ชฉ): DKT ํ๋ก์ ํธ ์ ์คํ๋ผ์ธ ๋ฏธํ
- 22.11.14(์): ๋ชจ๋ธ ์ธ๋ฏธ๋
- ์ผ์ ์๋ฆฝ
- 22.11.14(์) ~ 22.11.20(์ผ) : EDA
- 22.11.14(์) ~ 22.12.02(๊ธ) : Feature Engineering
- 22.11.23(์) ~ 22.12.02(๊ธ) : Modeling
- 22.12.03(ํ ) ~ 22.12.09(๊ธ) : ์ต์ ํ
โ ๊ฒฐ๊ณผ ( AUROC Score ์์ 4 ๊ฐ) : Private 7์
LSTMAttention | BERT | LastQuery | XGBoost | LightGBM | LightGCN |
---|---|---|---|---|---|
0.7594 | 0.7791 | 0.8063 | 0.8114 | 0.8210 | 0.7823 |
์ต์ข ์ ํ ์ฌ๋ถ | ๋ชจ๋ธ (Ensemble ๋น์จ) | public auroc | private auroc |
---|---|---|---|
O | LightGBM LightGCN LastQuery (0.65, 0.1, 0.25) | 0.8253 | 0.8479 |
O | LightGBM LightGCN LastQuery (0.7, 0.1, 0.2) | 0.8252 | 0.8476 |
X | LightGBM LastQuery XGBoost LightGCNx3 (hard voting) - LightGCN , LightGCN + feature representation , LightGCN + Bert |
0.8094 | 0.8531 |
X | LightGBM LightGCN LastQuery (0.65, 0.15, 0.2) | 0.8232 | 0.8506 |
-
- Transformer ๊ณ์ด ๋ชจ๋ธ
-
- LSTM + Attention
-
- BERT
-
- LastQuery
-
- Boosting ๊ณ์ด ๋ชจ๋ธ
-
- LightGBM
-
- XGBoost
-
- Graph ๋ชจ๋ธ
-
- LightGBM
- ๋ฒ ์ด์ค๋ผ์ธ ์ฝ๋
- LightGBM
- ๊ธฐ๋ณธ์ ์ผ๋ก ์ฃผ์ด์ง ์ปฌ๋ผ์ด ๊ต์ฅํ ์ ๊ณ ๋ง๋ค์ด๋ด์ผ ํ๋ ์ํฉ์ด๋ค. ๋ฐ๋ผ์assessmentItemID, testId, KnowledgeTag ๋ฑ ๋๋ถ๋ถ์ด ๋ฒ์ฃผํ์ผ๋ก ์ฃผ์ด์ก์ง๋ง Feature๋ก ํต๊ณ๊ฐ์ ๋ง์ด ์ฌ์ฉํ ๊ฑฐ๋ผ ์์ํ์ฌ CatBoost ์ฌ์ฉ์ ๋ฏธ๋ฃจ๊ธฐ๋ก ํ๋ค. ๋ํ ์ฃผ์ด์ง ๋ฐ์ดํฐ ์์ด ์ ์ง ์์ผ๋ฏ๋ก XGBoost๋ณด๋ค LGBM์ด ํจ์จ์ ์ด๋ผ ์๊ฐํ๋ค.
- LightGBM
- ์ถ๊ฐ์ ์ธ ๋ชจ๋ธ ์ ํ
- LastQuery
- Riid ๋ํ์์ 1๋ฑ์ ๊ธฐ๋กํ ๋ชจ๋ธ๋ก, sequence ๊ธธ์ด์ ๋ฐ๋ผ ํฅ์๋ ์ฑ๋ฅ์ ๋ณด์์ผ๋ฉฐ ๋ค๋ฅธ transformer ๊ณ์ด ๋ชจ๋ธ์ ๋นํด feature engineering์ด ์ ๊ฒ ํ์ํ์ฌ ๋ชจ๋ธ๋ง ์์์๊ฐ๊ณผ ์ฑ๋ฅ ์ธก๋ฉด์์ ์ฅ์ ์ ๋ณด์๊ธฐ ๋๋ฌธ์ ์ ํํ๋ค.
- XGBoost
- LightGBM ๋ชจ๋ธ์ด ์ฑ๋ฅ์ด ์ ๋์ ๋น์ทํ CART(Classification and regression tree) ์์๋ธ ๋ชจ๋ธ์ด๋ฉด์ ๋ค์ํ ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ฅผ ์กฐ์ ํด ๋ณผ ์ ์์ด LightGBM๊ณผ ๋น๊ต๋ฅผ ์ํด ์ถ๊ฐ์ ์ผ๋ก ์ฌ์ฉํ๊ฒ ๋์๋ค.
- LastQuery
- Hyperparameter tuning(Wandb, Sweep, Optuna)
- K-fold
- Ensemble