标签: tensorflow-model-garden

tf-models:official.vision.detection Mask-RCNN 无效参数:indices[1,63] = [1, -1] 没有索引到参数形状 [2,100,112,112]

我正在尝试根据此处提供的官方 MaskRCNN 模型训练 Mask RCNN 模型:tensorflow/models

以下是我遵循的步骤:

  1. 为训练和验证创建了一个 tfrecord。我已经检查了 tfrecords 的编码和解码,它工作正常。
  2. 设置配置文件如下:
    # my_maskrcnn.yaml
    train:
        train_file_pattern: "data/<dataset_name>/train/tfrecords/train.tfrecord-*"
        batch_size: 2
    eval:
        eval_file_pattern: "data/<data_set_name>/val/tfrecords/val.tfrecord-*"
        batch_size: 2
    predict:
        batch_size: 2
    architecture:
        num_classes: 2
    maskrcnn_parser:
        output_size: [512, 512]
    
    Run Code Online (Sandbox Code Playgroud)
  3. 将模型/官方放入 PYTHONPATH。
  4. 按照文档中的建议运行单个 GPU 的命令:
    python path/to/models/official/vision/detection/main.py \
        --strategy_type=one_device \
        --model_dir=models_mask_rcnn \
        --mode=train \
        --config_file="mymaskrcnn.yaml" \
        --model=mask_rcnn
    
    Run Code Online (Sandbox Code Playgroud)

但我收到以下错误:

Traceback (most recent call last):
File ".../models/official/vision/detection/main.py", line 255, in <module>
    app.run(main)
File ".../lib/python3.7/site-packages/absl/app.py", line 299, in run
    _run_main(main, args)
File ".../lib/python3.7/site-packages/absl/app.py", line 250, in _run_main …
Run Code Online (Sandbox Code Playgroud)

python tensorflow tensorflow2.0 tensorflow-model-garden

7
推荐指数
0
解决办法
431
查看次数

在自定义数据集上训练 Faster-RCNN 模型时加载检查点

我正在尝试使用 Faster-RCNN 架构加载检查点并填充模型权重(Faster R-CNN ResNet50 V1 640x640准确地说,从这里开始。我正在尝试加载该网络的权重,类似于RetinaNet 示例笔记本中的操作方式,其中它们请执行下列操作:

fake_box_predictor = tf.compat.v2.train.Checkpoint(
    _base_tower_layers_for_heads=detection_model._box_predictor._base_tower_layers_for_heads,
    _box_prediction_head=detection_model._box_predictor._box_prediction_head,
)

fake_model = tf.compat.v2.train.Checkpoint(
          _feature_extractor=detection_model._feature_extractor,
          _box_predictor=fake_box_predictor
)

ckpt = tf.compat.v2.train.Checkpoint(model=fake_model)
ckpt.restore(checkpoint_path).expect_partial()
Run Code Online (Sandbox Code Playgroud)

我正在尝试为我想要使用的 Faster-RCNN 网络获取类似的检查点加载机制,但是 , 等属性_base_tower_layers_for_heads仅存_box_prediction_head在于示例中使用的架构,而不适用于其他任何东西。

我也找不到关于Checkpoint针对我的特定用例填充模型的哪些部分的文档。非常感谢有关如何解决此问题的任何帮助!

python tensorflow transfer-learning tensorflow-model-garden

5
推荐指数
1
解决办法
648
查看次数