YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

Thundernet

Thundernet is a semantic segmentation model that processes RGB input using convolutional networks to extract key features.

USE OF THE REPOSITORY - TRAINING

To execute the train file: python train_config.py

You can change the parameters adding them as flags in the previous command or changing them directly in the Thundernet_config.py file The parameters that you can include (that are relevant for training) are:

  • train_path (str): path to the train data (default: "C:/Users/user/Documents/pruned_training/training/")
  • val_path (str): path to the val data (default: "C:/Users/user/Documents/pruned_training/val/")
  • model_dir (str): path to save the trained model (default: "C:/Users/user/Documents/Thundernet/pruebas_modelos/" )
  • model_weights (str): NOT APPLICABLE FOR TRAINING path to the trained weights (default: "C:/Users/user/Documents/Thundernet/pruebas_modelos/32_ppm/BS4_lossBCE_weights_lr_0.00013713842558297858_reg-1.1743577101671763e-05-ep-13-val_loss0.11463435739278793-train_loss0.053004469722509384-val_iou0.8959722518920898-train_iou0.9606077075004578.hdf5")
  • batch_size (int): batch size (default: 4)
  • loss (str): type of loss to use (default: "BCE")
  • classes (int): number of classes (default: 2). The original purpose of the code was to segment egocentric bodies, so two classes were involved (body and background)
  • pretrained (bool): start from a pretrained model (default: False)
  • pretrained_weights (str): path to the pretrained model (default: None)
  • lr (float): learning rate (default: 1e-4)
  • epochs (int): number of epochs (default: 15)
  • resolution (str): resolution of input images (defualt: 640x480)
  • kernel_regularizer (float): kernel regularizer (default: 2e-4)

Note: there are more parameters in the file, but they are no use for training

USE OF THE REPOSITORY - EVALUATION

To execute the evaluation, you can execute: python inference_config.py

You can change the parameters adding them as flags in the previous command or changing them directly in the Thundernet_config2.py file (that are relevant for evaluation) are:

  • model_weights (str): NOT APPLICABLE FOR TRAINING path to the trained weights (default: "C:/Users/user/Documents/Thundernet/pruebas_modelos/32_ppm/BS4_lossBCE_weights_lr_0.00013713842558297858_reg-1.1743577101671763e-05-ep-13-val_loss0.11463435739278793-train_loss0.053004469722509384-val_iou0.8959722518920898-train_iou0.9606077075004578.hdf5")
  • batch_size (int): batch size (default: 4)
  • resolution (str): resolution of input images (defualt: 640x480)

Note: there are more parameters in the file, but they are no use for evaluation

In the inference_config.py file you can execute the main with a "show=True" to display some predictions. However, you will have to close the image after every prediction.

DATA PREPARATION

The data must be stored in a path with the following structure:

- data
    + images (folder with RGB images in a .jpg format)
        -- example1.jpg
    + labels (folder with label images in a .png format)
        -- example1.png

The name for the files should be the same for the image and it's corresponding label.

OPTIMIZE HYPERPARAMETERS

To find the best hyperparameters for training, you can execute the train_optuna.py file. This file will find the optimal values for batch_size, learning_rate and kernel_regularizer. The rest of the hyperparameters values will be obtained from the "thundernet_config.py" file.

Compare models

To compare if two models are the same (the weights are equal), the file "compare_models.py" can be executed. The path to the model's weights should be changed in the "weights_path1" and "weights_path2" variables.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support