TPU RetinaNet - TypeError

TPU RetinaNet - TypeError

我创建了我的数据集并转换为 COCO。 RetinaNet 已经安装在 TPU 中(官方)。我想用这个 RetinaNet 用我自己的数据集训练一个模型,但总是得到同样的错误。

export MODEL_DIR=${STORAGE_BUCKET}/retinanet-train-eval; \
export RESNET_CHECKPOINT=gs://cloud-tpu-artifacts/resnet/resnet-nhwc-2018-10-14/model.ckpt-112602; \
export TRAIN_FILE_PATTERN=${STORAGE_BUCKET}/coco/coco_train*; \
export EVAL_FILE_PATTERN=${STORAGE_BUCKET}/coco/coco_val*; \
export VAL_JSON_FILE=${STORAGE_BUCKET}/coco/instances_val.json; \
export EVAL_SAMPLES=613 \
export NUM_STEPS_PER_EVAL=868

python /usr/share/tpu/models/official/detection/main.py \
--use_tpu=True \
--tpu="${TPU_NAME?}" \
--num_cores=8 \
--model_dir="${MODEL_DIR?}" \
--mode="train_and_eval" \
--params_override="{
  type: retinanet,
  train: {
    checkpoint: {
      path: $ {
        RESNET_CHECKPOINT ?
      },
      prefix: resnet50 /
    },
    train_file_pattern: $ {
      TRAIN_FILE_PATTERN ?
    }
  },
  eval: {
    val_json_file: $ {
      VAL_JSON_FILE ?
    },
    eval_file_pattern: $ {
      EVAL_FILE_PATTERN ?
    },
    eval_samples: $ {
      EVAL_SAMPLES ?
    },
    num_steps_per_eval: $ {
      NUM_STEPS_PER_EVAL ?
    }
  }
}"

使用这些设置我得到这个错误...

这不是一条非常明确的错误信息,但一个可能的原因是您的 TPU 名称不正确。请验证您的 TPU 名称是否有效。

使用最新的Tensorflow2.xRetinanet模型应该可以解决这个问题,如果仍然报错,请尝试并评论: https://cloud.google.com/tpu/docs/tutorials/retinanet-2.x