Last active
September 24, 2023 10:15
-
-
Save sayakpaul/f179fb8150c064f27c8a84a3a0cdefa0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# SSDLite with MobileDet-DSP feature extractor. | |
# Reference: Xiong & Liu et al., https://arxiv.org/abs/2004.14525 | |
# Trained on COCO, initialized from scratch. | |
# | |
# 2.82B MulAdds, 7.16M Parameters. Latency is 12.3ms on Pixel 4 DSP. | |
# Achieves 28.9 mAP on COCO14 minival dataset. | |
# Achieves 28.4 mAP on COCO17 val dataset. | |
# | |
# This config is TPU compatible. | |
model { | |
ssd { | |
inplace_batchnorm_update: true | |
freeze_batchnorm: false | |
num_classes: 11 | |
box_coder { | |
faster_rcnn_box_coder { | |
y_scale: 10.0 | |
x_scale: 10.0 | |
height_scale: 5.0 | |
width_scale: 5.0 | |
} | |
} | |
matcher { | |
argmax_matcher { | |
matched_threshold: 0.5 | |
unmatched_threshold: 0.5 | |
ignore_thresholds: false | |
negatives_lower_than_unmatched: true | |
force_match_for_each_row: true | |
use_matmul_gather: true | |
} | |
} | |
similarity_calculator { | |
iou_similarity { | |
} | |
} | |
encode_background_as_zeros: true | |
anchor_generator { | |
ssd_anchor_generator { | |
num_layers: 6 | |
min_scale: 0.2 | |
max_scale: 0.95 | |
aspect_ratios: 1.0 | |
aspect_ratios: 2.0 | |
aspect_ratios: 0.5 | |
aspect_ratios: 3.0 | |
aspect_ratios: 0.3333 | |
} | |
} | |
image_resizer { | |
fixed_shape_resizer { | |
height: 320 | |
width: 320 | |
} | |
} | |
box_predictor { | |
convolutional_box_predictor { | |
min_depth: 0 | |
max_depth: 0 | |
num_layers_before_predictor: 0 | |
use_dropout: false | |
dropout_keep_probability: 0.8 | |
kernel_size: 3 | |
use_depthwise: true | |
box_code_size: 4 | |
apply_sigmoid_to_scores: false | |
class_prediction_bias_init: -4.6 | |
conv_hyperparams { | |
activation: RELU_6, | |
regularizer { | |
l2_regularizer { | |
weight: 0.00004 | |
} | |
} | |
initializer { | |
random_normal_initializer { | |
stddev: 0.03 | |
mean: 0.0 | |
} | |
} | |
batch_norm { | |
train: true, | |
scale: true, | |
center: true, | |
decay: 0.97, | |
epsilon: 0.001, | |
} | |
} | |
} | |
} | |
feature_extractor { | |
type: 'ssd_mobiledet_dsp' | |
min_depth: 16 | |
depth_multiplier: 1.0 | |
use_depthwise: true | |
conv_hyperparams { | |
activation: RELU_6, | |
regularizer { | |
l2_regularizer { | |
weight: 0.00004 | |
} | |
} | |
initializer { | |
truncated_normal_initializer { | |
stddev: 0.03 | |
mean: 0.0 | |
} | |
} | |
batch_norm { | |
train: true, | |
scale: true, | |
center: true, | |
decay: 0.97, | |
epsilon: 0.001, | |
} | |
} | |
override_base_feature_extractor_hyperparams: false | |
} | |
loss { | |
classification_loss { | |
weighted_sigmoid_focal { | |
alpha: 0.75, | |
gamma: 2.0 | |
} | |
} | |
localization_loss { | |
weighted_smooth_l1 { | |
delta: 1.0 | |
} | |
} | |
classification_weight: 1.0 | |
localization_weight: 1.0 | |
} | |
normalize_loss_by_num_matches: true | |
normalize_loc_loss_by_codesize: true | |
post_processing { | |
batch_non_max_suppression { | |
score_threshold: 1e-8 | |
iou_threshold: 0.6 | |
max_detections_per_class: 100 | |
max_total_detections: 100 | |
use_static_shapes: true | |
} | |
score_converter: SIGMOID | |
} | |
} | |
} | |
train_config: { | |
batch_size: 8 | |
sync_replicas: true | |
startup_delay_steps: 0 | |
replicas_to_aggregate: 1 | |
num_steps: 10000 | |
data_augmentation_options { | |
random_horizontal_flip { | |
} | |
} | |
data_augmentation_options { | |
ssd_random_crop { | |
} | |
} | |
optimizer { | |
momentum_optimizer: { | |
learning_rate: { | |
cosine_decay_learning_rate { | |
learning_rate_base: 0.8 | |
total_steps: 10000 | |
warmup_learning_rate: 0.13333 | |
warmup_steps: 1500 | |
} | |
} | |
momentum_optimizer_value: 0.9 | |
} | |
use_moving_average: false | |
} | |
max_number_of_boxes: 100 | |
unpad_groundtruth_tensors: false | |
} | |
train_input_reader: { | |
label_map_path: "/content/label_map.pbtxt" | |
tf_record_input_reader { | |
input_path: "/content/train.record" | |
} | |
} | |
eval_config: { | |
metrics_set: "coco_detection_metrics" | |
use_moving_averages: false | |
num_examples: 71 | |
} | |
eval_input_reader: { | |
label_map_path: "/content/label_map.pbtxt" | |
shuffle: false | |
num_epochs: 1 | |
tf_record_input_reader { | |
input_path: "/content/test.record" | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment