Skip to content

Neural architecture search for object detectors using non dominated sorting genetic algorithm and surrogate optimization

Notifications You must be signed in to change notification settings

anuragGUPTA2235/NASODnsgaSO-NET

Repository files navigation

Dedicated to cosmos

NASODnsgaSO-NET

Neural Architecture Search for Object Detectors using NSGA2 by Surrogates Optimization

Genetic Integer Encoding

image image image image

Novel Genomes

image

Run Search

# GENERATE INITIAL POPULATION
python3 popu_generator.py
# GENERATE ARCHIVE
# SINGLE GPU TRAINING
CUDA_VISIBLE_DEVICES=0 python3 detectorcube/code/archive.py
# MULTI GPU TRAINING
CUDA_VISIBLE_DEVICES=0,1,2,3 python3 detectorcube/code/archive.py
# FIT SURROGATES
# SINGLE GPU TRAINING
CUDA_VISIBLE_DEVICES=0 python3 surrrogates_fit.py
# MULTI GPU TRAINING
CUDA_VISIBLE_DEVICES=0,1,2,3 python3 surrogates_fit.py
# RUN SEARCh
# SINGLE GPU TRAINING
CUDA_VISIBLE_DEVICES=0 python3 nasod_gen_search.py
# MULTI GPU TRAINING
CUDA_VISIBLE_DEVICES=0,1,2,3 python3 nasod_gen_search.py
# TRAIN GENOMES
# SINGLE GPU TRAINING
CUDA_VISIBLE_DEVICES=0 python3 train_nasod.py
# MULTI GPU TRAINING
CUDA_VISIBLE_DEVICES=0,1,2,3 python3 train_nasod.py

Screenshot 2024-03-15 103425

# GET MEAN AVERAGE PRECISION
# SINGLE GPU TRAINING
CUDA_VISIBLE_DEVICES=0 python3 evaluate.py
# MULTI GPU TRAINING
CUDA_VISIBLE_DEVICES=0,1,2,3 python3 evaluate.py
# PLOT BBOX
# SINGLE GPU TRAINING
CUDA_VISIBLE_DEVICES=0 python3 plot_prediction.py
# MULTI GPU TRAINING
CUDA_VISIBLE_DEVICES=0,1,2,3 python3 plot_prediction.py

Genetic Pareto-front

image

Dimension reduction of Genomes using AUTOENCODERS

In an effort to efficiently map surrogate values to genomic data, I utilized an autoencoder to compress 18-bit genomic sequences into a single-bit representation. Initially, I trained the autoencoder on the task of reconstructing 18-bit genomic sequences, ensuring that the encoder and decoder learned to effectively compress and decompress the data. After achieving satisfactory reconstruction accuracy, I removed the decoder, retaining only the encoder. This encoder now serves as a tool to transform the 18-bit genomic sequences into a more manageable 1-bit format, facilitating the fitting of surrogates against the mapped values. This dimensionality reduction not only simplifies the data but also maintains the essential genetic information needed for accurate surrogate modeling.
image

image

Surrogate Models on Archive

pySOT

image

Ancestors taken from different parts of Search Space

image

Node Operation

image

PASCAL-VOC 20 Class

image

MS-COCO 91 Class

image

Summary

image

All models are present in release

image

Archive

Screenshot 2024-06-13 012808

image

See BBOX

image

About

Neural architecture search for object detectors using non dominated sorting genetic algorithm and surrogate optimization

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages