This repository contains the advanced machine learning pipeline developed for the GCI World Cup 2026 In-Class Competition hosted by the University of Tokyo.
The solution implements a highly robust, stabilized ensemble designed to handle tabular noise and prevent leaderboard overfitting:
- Advanced Feature Engineering: Custom mass-to-motion formulas (
SpeedScore,ExplosionScore,StrengthScore) along with positional normalization via Z-Score and historical cross-interactions ({col}_x_Year). - Robust Categorical Encoding: 5-fold internal Target Encoding paired with native frequency mapping.
- Validation Strategy: Strict 10-Fold Stratified Cross-Validation to ensure local stability.
- Base Models: Optimized instances of LightGBM, CatBoost (GPU), and XGBoost (GPU/CUDA).
- Within-Fold Rank Scaling: Converts raw probabilities to normalized ranks partition by partition to neutralize calibration scale mismatches.
- Hyperplane Optimization: A SciPy
minimizeblock using Powell's method to dynamically search for the optimal soft-maxed combination weights based on global Out-of-Fold (OOF) ROC AUC.
├── data_structure.py # Initial data structure and baseline experimentation
├── model.py # Main architecture: High-Accuracy GPU Ensemble (v5.6 Pro)
├── .gitignore # Cleans repository from local logs, IDE configurations, and datasets
└── README.md # Project documentation
🛠️ Requirements & Environment
The code is optimized to run on a cloud environment with a CUDA-capable GPU (such as Google Colab).
The main dependencies are:
-
pandas
-
numpy
-
scikit-learn
-
scipy
-
lightgbm
-
catboost
-
xgboost
🏃 How to Run
Ensure the dataset (train.csv and test.csv) is available in the relative path data/
Run the main model script:
Bash
python model.py
The script will automatically execute the 10-fold cross-validation loop, search for the best rank-blending weights using Powell's optimization, and export the optimized predictions to submission_advanced_ensemble.csv.