# Context R-CNN unit test configuration using sequence example sample data with # context_features created from the Snapshot Serengeti Dataset and stored in # snapshot_serengeti_sequence_examples.record. # This model uses attention into contextual features within the Faster R-CNN # object detection framework to improve object detection performance. # See https://arxiv.org/abs/1912.03538 for more information. model { faster_rcnn { num_classes: 48 image_resizer { fixed_shape_resizer { height: 640 width: 640 } } feature_extractor { type: "faster_rcnn_resnet101" first_stage_features_stride: 16 batch_norm_trainable: true } first_stage_anchor_generator { grid_anchor_generator { height_stride: 16 width_stride: 16 scales: 0.25 scales: 0.5 scales: 1.0 scales: 2.0 aspect_ratios: 0.5 aspect_ratios: 1.0 aspect_ratios: 2.0 } } first_stage_box_predictor_conv_hyperparams { op: CONV regularizer { l2_regularizer { weight: 0.0 } } initializer { truncated_normal_initializer { stddev: 0.00999999977648 } } } first_stage_nms_score_threshold: 0.0 first_stage_nms_iou_threshold: 0.699999988079 first_stage_max_proposals: 300 first_stage_localization_loss_weight: 2.0 first_stage_objectness_loss_weight: 1.0 initial_crop_size: 14 maxpool_kernel_size: 2 maxpool_stride: 2 second_stage_box_predictor { mask_rcnn_box_predictor { fc_hyperparams { op: FC regularizer { l2_regularizer { weight: 0.0 } } initializer { variance_scaling_initializer { factor: 1.0 uniform: true mode: FAN_AVG } } } use_dropout: false dropout_keep_probability: 1.0 share_box_across_classes: true } } second_stage_post_processing { batch_non_max_suppression { score_threshold: 0.0 iou_threshold: 0.600000023842 max_detections_per_class: 100 max_total_detections: 300 } score_converter: SOFTMAX } second_stage_localization_loss_weight: 2.0 second_stage_classification_loss_weight: 1.0 use_matmul_crop_and_resize: true clip_anchors_to_image: true use_matmul_gather_in_matcher: true use_static_balanced_label_sampler: true use_static_shapes: true context_config { max_num_context_features: 2000 context_feature_length: 2057 } } } train_config { batch_size: 1 data_augmentation_options { random_horizontal_flip { } } sync_replicas: true optimizer { momentum_optimizer { learning_rate { manual_step_learning_rate { initial_learning_rate: 0.0 schedule { step: 2000 learning_rate: 0.00200000009499 } schedule { step: 200000 learning_rate: 0.000199999994948 } schedule { step: 300000 learning_rate: 1.99999994948e-05 } warmup: true } } momentum_optimizer_value: 0.899999976158 } use_moving_average: false } gradient_clipping_by_norm: 10.0 num_steps: 500000 replicas_to_aggregate: 8 max_number_of_boxes: 100 unpad_groundtruth_tensors: false } train_input_reader { label_map_path: "" tf_record_input_reader { input_path: "" } load_context_features: true input_type: TF_SEQUENCE_EXAMPLE } eval_config { max_evals: 50 metrics_set: "coco_detection_metrics" use_moving_averages: false batch_size: 1 } eval_input_reader { label_map_path: "" shuffle: false num_epochs: 1 tf_record_input_reader { input_path: "" } load_context_features: true input_type: TF_SEQUENCE_EXAMPLE }