Content

  • How-to
  • Push-to-Repo
  • Possible Errors

How-to

  • Link to download a dataset: https://ieee-dataport.org/competitions/deepverse-6g-machine-learning-challenge

  • unzip .zip folder and move wireless RBG_images radar folders and dataset_train.csv dataset_test.csv dataset.csv files to the same directory that contains python files from this repository!

  • This program was tested on Python 3.10.0 and torch version 2.1.0+cu118

  • use pip install requirements.txt to install all necessary packages!

  • Note! You should install PYTORCH on your own. Visit this link: https://pytorch.org/get-started/locally/

  • Note! You should install git lfs https://git-lfs.com/

  • run a code using

    1. If you want to share results via email. First and foremost, learn how to generate a Gmail account password in the section Possible Errors
    2. e.g: python main.py --TASK task1 --f task1.html --GPS True --CAMERAS False --RADAR False --SHARE True --num_epochs 5, see that --SHARE is set to True
    3. e.g: python main.py --TASK task1 --f mytest.html --GPS False --CAMERAS True --RADAR False --SHARE False --USE_PRESET False --lr 0.001 --num_epochs 2 --patience 15 --reduction 8 --expansion 20 --batch_size 200 --accumulation_steps 20
    4. e.g: gitpush.sh will push Results and models to github repo
  • For option number ii. You will train a model exclusively using GPS data and receive the performance metrics via email. Follow the steps prompted by the program, including filling in your email address and other required information.

  • For option number iii. You will train a model exclusively using Images. Model Performance will be recorded, and the model itself will be saved.

  • Other available arguments:

# Parse input arguments
parser = argparse.ArgumentParser(description='Deepverse Challenge', formatter_class=argparse.ArgumentDefaultsHelpFormatter)

# Task specific arguments
parser.add_argument('--TASK',type=str, default='task1', help='task name')
parser.add_argument('--GPS', type=str2bool, default=True, help='GPS')
parser.add_argument('--CAMERAS', type=str2bool, default=True, help='CAMERAS')
parser.add_argument('--RADAR', type=str2bool, default=True, help='RADAR')
parser.add_argument('--USE_PRESET', type=str2bool, default=False, help='USE_PRESET')
parser.add_argument('--f', type=str, default='task1.html', help='Html file of a plot')

# Training arguments
parser.add_argument('--lr', type=float, default=0.001, help='learning rate')
parser.add_argument('--num_epochs', type=int, default=100, help='number of epochs')
parser.add_argument('--patience', type=int, default=15, help='patience')
parser.add_argument('--reduction', type=int, default=8, help='reduction')
parser.add_argument('--expansion', type=int, default=20, help='expansion')
parser.add_argument('--batch_size', type=int, default=200, help='batch size')
parser.add_argument('--accumulation_steps', type=int, default=20, help='accumulation steps')

# Arguments related to sharing via email
parser.add_argument('--SHARE', type=str2bool, default=False, help='Do you want to share results via email [True/False]')

Push-to-Repo

Possible Errors

The email sending encountered an issue, and potential errors include:

The error can occur during data loading:

  • Your local machine should have sufficient amount of RAM memory (in my case the program uses 55GB of RAM, I use linux ubuntu)