对象检测训练错误:“ TypeError:merge_external_params_with_configs()得到了意外的关键字参数'train_steps'”

时间:2018-10-22 20:06:16

标签: tensorflow ubuntu-16.04 python-3.6 object-detection-api

系统信息

我是否编写了自定义代码(与使用TensorFlow提供的股票示例脚本相对):否

OS平台和发行版(例如Linux Ubuntu 16.04):Ubuntu 16.04

从:conda(虚拟环境)安装的TensorFlow

TensorFlow版本:1.9

Python版本:3.6.6

CUDA / cuDNN版本:CUDA 9 / cuDNN 7。

GPU型号和内存:Tesla K80,11GB

说明 我尝试训练模型(带有Inception v2的Faster R-CNN),但是出现错误消息“ TypeError:merge_external_params_with_configs()得到了意外的关键字参数'train_steps'” 在跟踪问题时,我已经打印了train_steps并且不等于200,000。 train_steps的输出:

train_steps
200000
<class 'int'>

我的命令是:

PIPELINE_CONFIG_PATH=/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/train/pipeline_od.config
MODEL_DIR=/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/train/models/model
NUM_TRAIN_STEPS=200000
SAMPLE_1_OF_N_EVAL_EXAMPLES=1
python object_detection/model_main.py 
--pipeline_config_path=${PIPELINE_CONFIG_PATH} 
--model_dir=${MODEL_DIR} 
--num_train_steps=${NUM_TRAIN_STEPS} 
--sample_1_of_n_eval_examples=$SAMPLE_1_OF_N_EVAL_EXAMPLES 
--alsologtostderr

错误消息:

Traceback (most recent call last):
File "object_detection/model_main.py", line 101, in 
tf.app.run()
File "/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/python/platform/app.py", line 125, in run
_sys.exit(main(argv))
File "object_detection/model_main.py", line 62, in main
eval_steps=FLAGS.num_eval_steps)
File "/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/model_lib.py", line 509, in create_estimator_and_inputs
retain_original_images_in_eval=False if use_tpu else True)
TypeError: merge_external_params_with_configs() got an unexpected keyword argument 'train_steps'

我的配置文件:

Faster R-CNN with Inception v2, configuration for MSCOCO Dataset.
Users should configure the fine_tune_checkpoint field in the train config as
well as the label_map_path and input_path fields in the train_input_reader and
eval_input_reader. Search for "PATH_TO_BE_CONFIGURED" to find the fields that
should be configured.

model {
faster_rcnn {
num_classes: 9
image_resizer {
keep_aspect_ratio_resizer {
min_dimension: 600
max_dimension: 1024
}
}
feature_extractor {
type: 'faster_rcnn_inception_v2'
first_stage_features_stride: 16
}
first_stage_anchor_generator {
grid_anchor_generator {
scales: [0.25, 0.5, 1.0, 2.0]
aspect_ratios: [0.5, 1.0, 2.0]
height_stride: 16
width_stride: 16
}
}
first_stage_box_predictor_conv_hyperparams {
op: CONV
regularizer {
l2_regularizer {
weight: 0.0
}
}
initializer {
truncated_normal_initializer {
stddev: 0.01
}
}
}
first_stage_nms_score_threshold: 0.0
first_stage_nms_iou_threshold: 0.7
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 {
use_dropout: false
dropout_keep_probability: 1.0
fc_hyperparams {
op: FC
regularizer {
l2_regularizer {
weight: 0.0
}
}
initializer {
variance_scaling_initializer {
factor: 1.0
uniform: true
mode: FAN_AVG
}
}
}
}
}
second_stage_post_processing {
batch_non_max_suppression {
score_threshold: 0.0
iou_threshold: 0.6
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
}
}

train_config: {
batch_size: 32
optimizer {
momentum_optimizer: {
learning_rate: {
manual_step_learning_rate {
initial_learning_rate: 0.0002
schedule {
step: 900000
learning_rate: .00002
}
schedule {
step: 1200000
learning_rate: .000002
}
}
}
momentum_optimizer_value: 0.9
}
use_moving_average: false
}
gradient_clipping_by_norm: 10.0
fine_tune_checkpoint: "/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/train/faster_rcnn_inception_v2_coco_2018_01_28/model.ckpt"
from_detection_checkpoint: true
Note: The below line limits the training process to 200K steps, which we
empirically found to be sufficient enough to train the COCO dataset. This
effectively bypasses the learning rate schedule (the learning rate will
never decay). Remove the below line to train indefinitely.
num_steps: 200000
data_augmentation_options {
random_horizontal_flip {
}
}
}

train_input_reader: {
tf_record_input_reader {
input_path: "/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/train/data/train.record"
}
label_map_path: "/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/train/data/mscoco_label_map_dataturk.pbtxt"
}

eval_config: {
num_examples: 83
Note: The below line limits the evaluation process to 10 evaluations.
Remove the below line to evaluate indefinitely.
max_evals: 10
}

eval_input_reader: {
tf_record_input_reader {
input_path: "/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/train/data/eval.record"
}
label_map_path: "/home/dabastany_gmail_com/miniconda3/envs/od/lib/python3.6/site-packages/tensorflow/models/research/object_detection/train/data/mscoco_label_map_dataturk.pbtxt"
shuffle: false
num_readers: 1
}

0 个答案:

没有答案