ITU AI/ML 5G Energy Prediction Challenge

Author: Applied Research Date: 19/10/2023

All codes and data is contained in this folder.

Data: There are data files in 3 categories: given data, processed input data, and output data.

  • All data given by the challenge authors are inside "/data" folder. (these are the original datasets)
  • All data generated by us for training the models is inside "data/processed" folder. (these are obtained only using the given original datasets)
  • All output files (submit predictions and predictions for all datapoints) are inside "data/predictions" folder.

Features:

  • In the data processing step, we engineer some features such as lagged values of some KPIs (loads, ESModes) (1h, 2h, 3h) and lagged values of energy consumption (1h, 2h, 1day) and the rolling average of the energy consumption for that base-station.
  • In model training some features are dropped due to low-correlation with the energy consumption, these features are: ESMode3,4,5 and Mode

Notebooks: There are 2 types of Notebooks. They are explained below with their order to be run.

  • Data processing and feature engineering:

    1. dataset_preparation_lag.ipynb (estimated runtime: ~3mins): To combine the given datasets, and apply feature-engineering on them. Finally generates training and prediction datasets for models
    2. close_bs_preprocess.ipynb (estimated runtime: ~2mins): To find close BS to a given BS. This data is used while predicting the energy consumption of a BS which is not seen before, we use the base-stations which have similar static configurations and similar load, ESMode profile to further train the NN model to make predictions on that BS.
  • Model training, plotting and submit file generation: 3) nn_with_further_training_and_xgb (estimated runtime: ~90mins): This notebook contains all the model training, plotting, and the submit file generation.There are three different models trained for the prediction: i) NN with temporal features ii) NN without temporal features iii) XGBoost without temporal features

    while making the final prediction, we further train the NN models on either the BS's own data (if available), or on the data of close BS (for the BS without the previous information). So, running this notebook takes a little long.

Note: Python version should be 3.9