Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

在COCOTrain2017数据集训练,Val2017测试的AP是27.00,为什么这么低呢? #103

Open
1032697379 opened this issue Dec 8, 2022 · 4 comments

Comments

@1032697379
Copy link

您好,您的工作我很喜欢,做的非常好。所以我想重新运行程序,复现结果。我只有一张GPU,batchsize=8, learning rate =0.00005, 使用sparse_inst_r50_giam.yaml配置,其余都没有更改,为什么结果这么低呢(您给的结果是33.4AP,我重新训练运行结果却只有27.00AP)。很期待您的回复,谢谢。

@wondervictor
Copy link
Member

您好,非常感谢对SparseInst的关注这个主要原因是因为batch size太小了,我们默认的batch size=64,如果降低到batch size=8的话,性能会大幅下降,目前的话,我们有FP16的支持,如果您使用的是3090这样显存较大的GPU(>=24G),您可以采用单卡batch size=32,应该可以获得和batch size=64相当的性能,或者使用较低显存的GPU(<=16G) 可以尝试batch size=16。

@cici-999
Copy link

@wondervictor 您好,我是使用的3090的GPU,采用单卡batch size=16,其他地方都没有更改,得到的结果只有30.39AP,请问怎样可以获得跟你论文中一样的指标(33.4AP)呢?期待您的回复,谢谢。

@wondervictor
Copy link
Member

@wondervictor 您好,我是使用的3090的GPU,采用单卡batch size=16,其他地方都没有更改,得到的结果只有30.39AP,请问怎样可以获得跟你论文中一样的指标(33.4AP)呢?期待您的回复,谢谢。

我们默认采用batch=64,如果batch size=16,性能下降会比较明显,如果使用3090 GPU,可以尝试打开FP16采用batch size=32训练。或者保持batch size=16然后延长迭代并相应调整学习率。

@cici-999
Copy link

@wondervictor 您好,我是使用的3090的GPU,采用单卡batch size=16,其他地方都没有更改,得到的结果只有30.39AP,请问怎样可以获得跟你论文中一样的指标(33.4AP)呢?期待您的回复,谢谢。

我们默认采用batch=64,如果batch size=16,性能下降会比较明显,如果使用3090 GPU,可以尝试打开FP16采用batch size=32训练。或者保持batch size=16然后延长迭代并相应调整学习率。

您好,我按照您说的,尝试打开FP16采用batch size=32训练,会出现以下警告,请问这个要怎么解决呀?期待您的回复,谢谢。Command Line Args: Namespace(config_file='configs/sparse_inst_r50_giam_fp16.yaml', dist_url='tcp://127.0.0.1:49153', eval_only=False, machine_rank=0, num_gpus=1, num_machines=1, opts=['MODEL.WEIGHTS', 'pretrained_models/R-50.pkl', 'SOLVER.AMP.ENABLED', 'True'], resume=False)
[02/20 12:07:06 detectron2]: Rank of current process: 0. World size: 1
[02/20 12:07:07 detectron2]: Environment info:


sys.platform win32
Python 3.8.13 | packaged by conda-forge | (default, Mar 25 2022, 05:59:00) [MSC v.1929 64 bit (AMD64)]
numpy 1.23.3
detectron2 0.6 @d:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\detectron2\detectron2
Compiler MSVC 192930137
CUDA compiler CUDA 11.3
detectron2 arch flags D:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\detectron2\detectron2_C.cp38-win_amd64.pyd; cannot find cuobjdump
DETECTRON2_ENV_MODULE
PyTorch 1.10.0 @d:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\torch
PyTorch debug build False
GPU available Yes
GPU 0 NVIDIA GeForce RTX 3090 (arch=8.6)
Driver version 516.40
CUDA_HOME D:\CUDA\v11.3\bin\nvcc.exe
D:\CUDA\v10.1\bin\nvcc.exe
D:\CUDA\v9.0\bin\nvcc.exe
D:\CUDA\v10.2 - invalid!
Pillow 9.2.0
torchvision 0.11.0 @d:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\torchvision
torchvision arch flags D:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\torchvision_C.pyd; cannot find cuobjdump
fvcore 0.1.5.post20220512
iopath 0.1.9
cv2 4.6.0


PyTorch built with:

  • C++ Version: 199711
  • MSVC 192829337
  • Intel(R) Math Kernel Library Version 2020.0.2 Product Build 20200624 for Intel(R) 64 architecture applications
  • Intel(R) MKL-DNN v2.2.3 (Git Hash 7336ca9f055cf1bfa13efb658fe15dc9b41f0740)
  • OpenMP 2019
  • LAPACK is enabled (usually provided by MKL)
  • CPU capability usage: AVX512
  • CUDA Runtime 11.3
  • NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_61,code=sm_6
    1;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86;-gencode;arch=compute_37,code=compute_37
  • CuDNN 8.2
  • Magma 2.5.4
  • Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=11.3, CUDNN_VERSION=8.2.0, CXX_COMPILER=C:/cb/pytorch_1000000000000/work/tmp_bin/sccache-cl.exe, CXX_FL
    AGS=/DWIN32 /D_WINDOWS /GR /EHsc /w /bigobj -DUSE_PTHREADPOOL -openmp:experimental -IC:/cb/pytorch_1000000000000/work/mkl/include -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOCUPTI
    -DUSE_FBGEMM -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -DEDGE_PROFILER_USE_KINETO, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VER
    SION=1.10.0, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=OFF, USE_NNPACK=OFF, USE_OPENMP=ON,

[02/20 12:07:07 detectron2]: Command line arguments: Namespace(config_file='configs/sparse_inst_r50_giam_fp16.yaml', dist_url='tcp://127.0.0.1:49153', eval_only=False, machine_rank=0, num_gpus=1, num_machines=1, opts=['MODEL.WEIGHTS', 'pretrained_models/R-50.pkl', 'SOLVER.AMP.ENABLED', 'True'], resume=False)
[02/20 12:07:07 detectron2]: Contents of args.config_file=configs/sparse_inst_r50_giam_fp16.yaml:
BASE: "Base-SparseInst.yaml"
MODEL:
WEIGHTS: "pretrained_models/R-50.pkl"
SOLVER:
AMP:
ENABLED: True
OUTPUT_DIR: "output/sparse_inst_r50_giam_fp16"
[02/20 12:07:07 detectron2]: Running with full config:
CUDNN_BENCHMARK: false
DATALOADER:
ASPECT_RATIO_GROUPING: true
FILTER_EMPTY_ANNOTATIONS: true
NUM_WORKERS: 6
REPEAT_THRESHOLD: 0.0
SAMPLER_TRAIN: TrainingSampler
DATASETS:
PRECOMPUTED_PROPOSAL_TOPK_TEST: 1000
PRECOMPUTED_PROPOSAL_TOPK_TRAIN: 2000
PROPOSAL_FILES_TEST: []
PROPOSAL_FILES_TRAIN: []
TEST:

  • coco_2017_val
    TRAIN:
  • coco_2017_train
    GLOBAL:
    HACK: 1.0
    INPUT:
    CROP:
    ENABLED: false
    SIZE:
    • 0.9
    • 0.9
      TYPE: relative_range
      FORMAT: RGB
      MASK_FORMAT: bitmask
      MAX_SIZE_TEST: 853
      MAX_SIZE_TRAIN: 853
      MIN_SIZE_TEST: 640
      MIN_SIZE_TRAIN:
  • 416
  • 448
  • 480
  • 512
  • 544
  • 576
  • 608
  • 640
    MIN_SIZE_TRAIN_SAMPLING: choice
    RANDOM_FLIP: horizontal
    MODEL:
    ANCHOR_GENERATOR:
    ANGLES:
      • -90
      • 0
      • 90
        ASPECT_RATIOS:
      • 0.5
      • 1.0
      • 2.0
        NAME: DefaultAnchorGenerator
        OFFSET: 0.0
        SIZES:
      • 32
      • 64
      • 128
      • 256
      • 512
        BACKBONE:
        FREEZE_AT: 0
        NAME: build_resnet_backbone
        CSPNET:
        NAME: darknet53
        NORM: ''
        OUT_FEATURES:
    • csp1
    • csp2
    • csp3
    • csp4
      DEVICE: cuda
      FPN:
      FUSE_TYPE: sum
      IN_FEATURES: []
      NORM: ''
      OUT_CHANNELS: 256
      KEYPOINT_ON: false
      LOAD_PROPOSALS: false
      MASK_ON: true
      META_ARCHITECTURE: SparseInst
      PANOPTIC_FPN:
      COMBINE:
      ENABLED: true
      INSTANCES_CONFIDENCE_THRESH: 0.5
      OVERLAP_THRESH: 0.5
      STUFF_AREA_LIMIT: 4096
      INSTANCE_LOSS_WEIGHT: 1.0
      PIXEL_MEAN:
  • 123.675
  • 116.28
  • 103.53
    PIXEL_STD:
  • 58.395
  • 57.12
  • 57.375
    PROPOSAL_GENERATOR:
    MIN_SIZE: 0
    NAME: RPN
    PVT:
    LINEAR: false
    NAME: b1
    OUT_FEATURES:
    • p2
    • p3
    • p4
      RESNETS:
      DEFORM_MODULATED: false
      DEFORM_NUM_GROUPS: 1
      DEFORM_ON_PER_STAGE:
    • false
    • false
    • false
    • false
      DEPTH: 50
      NORM: FrozenBN
      NUM_GROUPS: 1
      OUT_FEATURES:
    • res3
    • res4
    • res5
      RES2_OUT_CHANNELS: 256
      RES5_DILATION: 1
      STEM_OUT_CHANNELS: 64
      STRIDE_IN_1X1: false
      WIDTH_PER_GROUP: 64
      RETINANET:
      BBOX_REG_LOSS_TYPE: smooth_l1
      BBOX_REG_WEIGHTS: &id002
    • 1.0
    • 1.0
    • 1.0
    • 1.0
      FOCAL_LOSS_ALPHA: 0.25
      FOCAL_LOSS_GAMMA: 2.0
      IN_FEATURES:
    • p3
    • p4
    • p5
    • p6
    • p7
      IOU_LABELS:
    • 0
    • -1
    • 1
      IOU_THRESHOLDS:
    • 0.4
    • 0.5
      NMS_THRESH_TEST: 0.5
      NORM: ''
      NUM_CLASSES: 80
      NUM_CONVS: 4
      PRIOR_PROB: 0.01
      SCORE_THRESH_TEST: 0.05
      SMOOTH_L1_LOSS_BETA: 0.1
      TOPK_CANDIDATES_TEST: 1000
      ROI_BOX_CASCADE_HEAD:
      BBOX_REG_WEIGHTS:
    • &id001
      • 10.0
      • 10.0
      • 5.0
      • 5.0
      • 20.0
      • 20.0
      • 10.0
      • 10.0
      • 30.0
      • 30.0
      • 15.0
      • 15.0
        IOUS:
    • 0.5
    • 0.6
    • 0.7
      ROI_BOX_HEAD:
      BBOX_REG_LOSS_TYPE: smooth_l1
      BBOX_REG_LOSS_WEIGHT: 1.0
      BBOX_REG_WEIGHTS: *id001
      CLS_AGNOSTIC_BBOX_REG: false
      CONV_DIM: 256
      FC_DIM: 1024
      NAME: ''
      NORM: ''
      NUM_CONV: 0
      NUM_FC: 0
      POOLER_RESOLUTION: 14
      POOLER_SAMPLING_RATIO: 0
      POOLER_TYPE: ROIAlignV2
      SMOOTH_L1_BETA: 0.0
      TRAIN_ON_PRED_BOXES: false
      ROI_HEADS:
      BATCH_SIZE_PER_IMAGE: 512
      IN_FEATURES:
    • res4
      IOU_LABELS:
    • 0
    • 1
      IOU_THRESHOLDS:
    • 0.5
      NAME: Res5ROIHeads
      NMS_THRESH_TEST: 0.5
      NUM_CLASSES: 80
      POSITIVE_FRACTION: 0.25
      PROPOSAL_APPEND_GT: true
      SCORE_THRESH_TEST: 0.05
      ROI_KEYPOINT_HEAD:
      CONV_DIMS:
    • 512
    • 512
    • 512
    • 512
    • 512
    • 512
    • 512
    • 512
      LOSS_WEIGHT: 1.0
      MIN_KEYPOINTS_PER_IMAGE: 1
      NAME: KRCNNConvDeconvUpsampleHead
      NORMALIZE_LOSS_BY_VISIBLE_KEYPOINTS: true
      NUM_KEYPOINTS: 17
      POOLER_RESOLUTION: 14
      POOLER_SAMPLING_RATIO: 0
      POOLER_TYPE: ROIAlignV2
      ROI_MASK_HEAD:
      CLS_AGNOSTIC_MASK: false
      CONV_DIM: 256
      NAME: MaskRCNNConvUpsampleHead
      NORM: ''
      NUM_CONV: 0
      POOLER_RESOLUTION: 14
      POOLER_SAMPLING_RATIO: 0
      POOLER_TYPE: ROIAlignV2
      RPN:
      BATCH_SIZE_PER_IMAGE: 256
      BBOX_REG_LOSS_TYPE: smooth_l1
      BBOX_REG_LOSS_WEIGHT: 1.0
      BBOX_REG_WEIGHTS: *id002
      BOUNDARY_THRESH: -1
      CONV_DIMS:
    • -1
      HEAD_NAME: StandardRPNHead
      IN_FEATURES:
    • res4
      IOU_LABELS:
    • 0
    • -1
    • 1
      IOU_THRESHOLDS:
    • 0.3
    • 0.7
      LOSS_WEIGHT: 1.0
      NMS_THRESH: 0.7
      POSITIVE_FRACTION: 0.5
      POST_NMS_TOPK_TEST: 1000
      POST_NMS_TOPK_TRAIN: 2000
      PRE_NMS_TOPK_TEST: 6000
      PRE_NMS_TOPK_TRAIN: 12000
      SMOOTH_L1_BETA: 0.0
      SEM_SEG_HEAD:
      COMMON_STRIDE: 4
      CONVS_DIM: 128
      IGNORE_VALUE: 255
      IN_FEATURES:
    • p2
    • p3
    • p4
    • p5
      LOSS_WEIGHT: 1.0
      NAME: SemSegFPNHead
      NORM: GN
      NUM_CLASSES: 54
      SPARSE_INST:
      CLS_THRESHOLD: 0.005
      DATASET_MAPPER: SparseInstDatasetMapper
      DECODER:
      GROUPS: 4
      INST:
      CONVS: 6
      DIM: 256
      KERNEL_DIM: 128
      MASK:
      CONVS: 6
      DIM: 256
      NAME: GroupIAMDecoder
      NUM_CLASSES: 80
      NUM_MASKS: 100
      OUTPUT_IAM: false
      SCALE_FACTOR: 2.0
      ENCODER:
      IN_FEATURES:
      • res3
      • res4
      • res5
        NAME: InstanceContextEncoder
        NORM: ''
        NUM_CHANNELS: 256
        LOSS:
        CLASS_WEIGHT: 2.0
        ITEMS:
      • labels
      • masks
        MASK_DICE_WEIGHT: 2.0
        MASK_PIXEL_WEIGHT: 5.0
        NAME: SparseInstCriterion
        OBJECTNESS_WEIGHT: 1.0
        MASK_THRESHOLD: 0.45
        MATCHER:
        ALPHA: 0.8
        BETA: 0.2
        NAME: SparseInstMatcher
        MAX_DETECTIONS: 100
        WEIGHTS: pretrained_models/R-50.pkl
        OUTPUT_DIR: output/sparse_inst_r50_giam_fp16
        SEED: -1
        SOLVER:
        AMP:
        ENABLED: true
        AMSGRAD: false
        BACKBONE_MULTIPLIER: 1.0
        BASE_LR: 5.0e-05
        BIAS_LR_FACTOR: 1.0
        CHECKPOINT_PERIOD: 5000
        CLIP_GRADIENTS:
        CLIP_TYPE: value
        CLIP_VALUE: 1.0
        ENABLED: false
        NORM_TYPE: 2.0
        GAMMA: 0.1
        IMS_PER_BATCH: 32
        LR_SCHEDULER_NAME: WarmupMultiStepLR
        MAX_ITER: 270000
        MOMENTUM: 0.9
        NESTEROV: false
        OPTIMIZER: ADAMW
        REFERENCE_WORLD_SIZE: 0
        STEPS:
  • 210000
  • 250000
    WARMUP_FACTOR: 0.001
    WARMUP_ITERS: 1000
    WARMUP_METHOD: linear
    WEIGHT_DECAY: 0.05
    WEIGHT_DECAY_BIAS: null
    WEIGHT_DECAY_NORM: 0.0
    TEST:
    AUG:
    ENABLED: false
    FLIP: true
    MAX_SIZE: 4000
    MIN_SIZES:
    • 400
    • 500
    • 600
    • 700
    • 800
    • 900
    • 1000
    • 1100
    • 1200
      DETECTIONS_PER_IMAGE: 100
      EVAL_PERIOD: 7330
      EXPECTED_RESULTS: []
      KEYPOINT_OKS_SIGMAS: []
      PRECISE_BN:
      ENABLED: false
      NUM_ITER: 200
      VERSION: 2
      VIS_PERIOD: 0

[02/20 12:07:07 detectron2]: Full config saved to output/sparse_inst_r50_giam_fp16\config.yaml
[02/20 12:07:07 d2.utils.env]: Using a generated random seed 7587500
[02/20 12:07:08 d2.engine.defaults]: Model:
SparseInst(
(backbone): ResNet(
(stem): BasicStem(
(conv1): Conv2d(
3, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False
(norm): FrozenBatchNorm2d(num_features=64, eps=1e-05)
)
)
(res2): Sequential(
(0): BottleneckBlock(
(shortcut): Conv2d(
64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv1): Conv2d(
64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=64, eps=1e-05)
)
(conv2): Conv2d(
64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=64, eps=1e-05)
)
(conv3): Conv2d(
64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
)
(1): BottleneckBlock(
(conv1): Conv2d(
256, 64, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=64, eps=1e-05)
)
(conv2): Conv2d(
64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=64, eps=1e-05)
)
(conv3): Conv2d(
64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
)
(2): BottleneckBlock(
(conv1): Conv2d(
256, 64, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=64, eps=1e-05)
)
(conv2): Conv2d(
64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=64, eps=1e-05)
)
(conv3): Conv2d(
64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
)
)
(res3): Sequential(
(0): BottleneckBlock(
(shortcut): Conv2d(
256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
(conv1): Conv2d(
256, 128, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv2): Conv2d(
128, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv3): Conv2d(
128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
)
(1): BottleneckBlock(
(conv1): Conv2d(
512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv2): Conv2d(
128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv3): Conv2d(
128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
)
(2): BottleneckBlock(
(conv1): Conv2d(
512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv2): Conv2d(
128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv3): Conv2d(
128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
)
(3): BottleneckBlock(
(conv1): Conv2d(
512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv2): Conv2d(
128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=128, eps=1e-05)
)
(conv3): Conv2d(
128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
)
)
(res4): Sequential(
(0): BottleneckBlock(
(shortcut): Conv2d(
512, 1024, kernel_size=(1, 1), stride=(2, 2), bias=False
(norm): FrozenBatchNorm2d(num_features=1024, eps=1e-05)
)
(conv1): Conv2d(
512, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv2): Conv2d(
256, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv3): Conv2d(
256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=1024, eps=1e-05)
)
)
(1): BottleneckBlock(
(conv1): Conv2d(
1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv2): Conv2d(
256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv3): Conv2d(
256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=1024, eps=1e-05)
)
)
(2): BottleneckBlock(
(conv1): Conv2d(
1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv2): Conv2d(
256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv3): Conv2d(
256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=1024, eps=1e-05)
)
)
(3): BottleneckBlock(
(conv1): Conv2d(
1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv2): Conv2d(
256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv3): Conv2d(
256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=1024, eps=1e-05)
)
)
(4): BottleneckBlock(
(conv1): Conv2d(
1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv2): Conv2d(
256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv3): Conv2d(
256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=1024, eps=1e-05)
)
)
(5): BottleneckBlock(
(conv1): Conv2d(
1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv2): Conv2d(
256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=256, eps=1e-05)
)
(conv3): Conv2d(
256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=1024, eps=1e-05)
)
)
)
(res5): Sequential(
(0): BottleneckBlock(
(shortcut): Conv2d(
1024, 2048, kernel_size=(1, 1), stride=(2, 2), bias=False
(norm): FrozenBatchNorm2d(num_features=2048, eps=1e-05)
)
(conv1): Conv2d(
1024, 512, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
(conv2): Conv2d(
512, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
(conv3): Conv2d(
512, 2048, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=2048, eps=1e-05)
)
)
(1): BottleneckBlock(
(conv1): Conv2d(
2048, 512, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
(conv2): Conv2d(
512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
(conv3): Conv2d(
512, 2048, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=2048, eps=1e-05)
)
)
(2): BottleneckBlock(
(conv1): Conv2d(
2048, 512, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
(conv2): Conv2d(
512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=512, eps=1e-05)
)
(conv3): Conv2d(
512, 2048, kernel_size=(1, 1), stride=(1, 1), bias=False
(norm): FrozenBatchNorm2d(num_features=2048, eps=1e-05)
)
)
)
)
(encoder): InstanceContextEncoder(
(fpn_laterals): ModuleList(
(0): Conv2d(2048, 256, kernel_size=(1, 1), stride=(1, 1))
(1): Conv2d(1024, 256, kernel_size=(1, 1), stride=(1, 1))
(2): Conv2d(512, 256, kernel_size=(1, 1), stride=(1, 1))
)
(fpn_outputs): ModuleList(
(0): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
)
(ppm): PyramidPoolingModule(
(stages): ModuleList(
(0): Sequential(
(0): AdaptiveAvgPool2d(output_size=(1, 1))
(1): Conv2d(256, 64, kernel_size=(1, 1), stride=(1, 1))
)
(1): Sequential(
(0): AdaptiveAvgPool2d(output_size=(2, 2))
(1): Conv2d(256, 64, kernel_size=(1, 1), stride=(1, 1))
)
(2): Sequential(
(0): AdaptiveAvgPool2d(output_size=(3, 3))
(1): Conv2d(256, 64, kernel_size=(1, 1), stride=(1, 1))
)
(3): Sequential(
(0): AdaptiveAvgPool2d(output_size=(6, 6))
(1): Conv2d(256, 64, kernel_size=(1, 1), stride=(1, 1))
)
)
(bottleneck): Conv2d(512, 256, kernel_size=(1, 1), stride=(1, 1))
)
(fusion): Conv2d(768, 256, kernel_size=(1, 1), stride=(1, 1))
)
(decoder): GroupIAMDecoder(
(inst_branch): GroupInstanceBranch(
(inst_convs): Sequential(
(0): Conv2d(258, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(1): ReLU(inplace=True)
(2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(3): ReLU(inplace=True)
(4): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(5): ReLU(inplace=True)
(6): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(7): ReLU(inplace=True)
(8): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(9): ReLU(inplace=True)
(10): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(11): ReLU(inplace=True)
)
(iam_conv): Conv2d(256, 400, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=4)
(fc): Linear(in_features=1024, out_features=1024, bias=True)
(cls_score): Linear(in_features=1024, out_features=80, bias=True)
(mask_kernel): Linear(in_features=1024, out_features=128, bias=True)
(objectness): Linear(in_features=1024, out_features=1, bias=True)
)
(mask_branch): MaskBranch(
(mask_convs): Sequential(
(0): Conv2d(258, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(1): ReLU(inplace=True)
(2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(3): ReLU(inplace=True)
(4): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(5): ReLU(inplace=True)
(6): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(7): ReLU(inplace=True)
(8): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(9): ReLU(inplace=True)
(10): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
(11): ReLU(inplace=True)
)
(projection): Conv2d(256, 128, kernel_size=(1, 1), stride=(1, 1))
)
)
(criterion): SparseInstCriterion(
(matcher): SparseInstMatcher()
)
)
[02/20 12:07:08 sparseinst.dataset_mapper]: [DatasetMapper] Augmentations used in training: [RandomFlip(), ResizeShortestEdge(short_edge_length=(416, 448, 480, 512, 544, 576, 608, 640), max_size=853, sample_style='choice')]
[02/20 12:07:26 d2.data.datasets.coco]: Loading datasets\coco/annotations/instances_train2017.json takes 18.47 seconds.
[02/20 12:07:27 d2.data.datasets.coco]: Loaded 118287 images in COCO format from datasets\coco/annotations/instances_train2017.json
[02/20 12:07:35 d2.data.build]: Removed 1021 images with no usable annotations. 117266 images left.
[02/20 12:07:40 d2.data.build]: Distribution of instances among all 80 categories:

category #instances category #instances category #instances
person 257253 bicycle 7056 car 43533
motorcycle 8654 airplane 5129 bus 6061
train 4570 truck 9970 boat 10576
traffic light 12842 fire hydrant 1865 stop sign 1983
parking meter 1283 bench 9820 bird 10542
cat 4766 dog 5500 horse 6567
sheep 9223 cow 8014 elephant 5484
bear 1294 zebra 5269 giraffe 5128
backpack 8714 umbrella 11265 handbag 12342
tie 6448 suitcase 6112 frisbee 2681
skis 6623 snowboard 2681 sports ball 6299
kite 8802 baseball bat 3273 baseball gl.. 3747
skateboard 5536 surfboard 6095 tennis racket 4807
bottle 24070 wine glass 7839 cup 20574
fork 5474 knife 7760 spoon 6159
bowl 14323 banana 9195 apple 5776
sandwich 4356 orange 6302 broccoli 7261
carrot 7758 hot dog 2884 pizza 5807
donut 7005 cake 6296 chair 38073
couch 5779 potted plant 8631 bed 4192
dining table 15695 toilet 4149 tv 5803
laptop 4960 mouse 2261 remote 5700
keyboard 2854 cell phone 6422 microwave 1672
oven 3334 toaster 225 sink 5609
refrigerator 2634 book 24077 clock 6320
vase 6577 scissors 1464 teddy bear 4729
hair drier 198 toothbrush 1945
total 849949
[02/20 12:07:40 d2.data.build]: Using training sampler TrainingSampler
[02/20 12:07:40 d2.data.common]: Serializing 117266 elements to byte tensors and concatenating them all ...
[02/20 12:07:43 d2.data.common]: Serialized dataset takes 451.21 MiB
[02/20 12:07:46 fvcore.common.checkpoint]: [Checkpointer] Loading from pretrained_models/R-50.pkl ...
[02/20 12:07:46 fvcore.common.checkpoint]: Reading a file from 'torchvision'
[02/20 12:07:46 d2.checkpoint.c2_model_loading]: Following weights matched with submodule backbone:
Names in Model Names in Checkpoint Shapes
:------------------ :---------------------------------------------------------------------------------- :------------------------------------------------
res2.0.conv1.* res2.0.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (64,) (64,) (64,) (64,) (64,64,1,1)
res2.0.conv2.* res2.0.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (64,) (64,) (64,) (64,) (64,64,3,3)
res2.0.conv3.* res2.0.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,64,1,1)
res2.0.shortcut.* res2.0.shortcut.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,64,1,1)
res2.1.conv1.* res2.1.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (64,) (64,) (64,) (64,) (64,256,1,1)
res2.1.conv2.* res2.1.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (64,) (64,) (64,) (64,) (64,64,3,3)
res2.1.conv3.* res2.1.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,64,1,1)
res2.2.conv1.* res2.2.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (64,) (64,) (64,) (64,) (64,256,1,1)
res2.2.conv2.* res2.2.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (64,) (64,) (64,) (64,) (64,64,3,3)
res2.2.conv3.* res2.2.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,64,1,1)
res3.0.conv1.* res3.0.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,256,1,1)
res3.0.conv2.* res3.0.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,128,3,3)
res3.0.conv3.* res3.0.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,128,1,1)
res3.0.shortcut.* res3.0.shortcut.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,256,1,1)
res3.1.conv1.* res3.1.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,512,1,1)
res3.1.conv2.* res3.1.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,128,3,3)
res3.1.conv3.* res3.1.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,128,1,1)
res3.2.conv1.* res3.2.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,512,1,1)
res3.2.conv2.* res3.2.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,128,3,3)
res3.2.conv3.* res3.2.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,128,1,1)
res3.3.conv1.* res3.3.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,512,1,1)
res3.3.conv2.* res3.3.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (128,) (128,) (128,) (128,) (128,128,3,3)
res3.3.conv3.* res3.3.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,128,1,1)
res4.0.conv1.* res4.0.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,512,1,1)
res4.0.conv2.* res4.0.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,256,3,3)
res4.0.conv3.* res4.0.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (1024,) (1024,) (1024,) (1024,) (1024,256,1,1)
res4.0.shortcut.* res4.0.shortcut.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (1024,) (1024,) (1024,) (1024,) (1024,512,1,1)
res4.1.conv1.* res4.1.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,1024,1,1)
res4.1.conv2.* res4.1.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,256,3,3)
res4.1.conv3.* res4.1.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (1024,) (1024,) (1024,) (1024,) (1024,256,1,1)
res4.2.conv1.* res4.2.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,1024,1,1)
res4.2.conv2.* res4.2.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,256,3,3)
res4.2.conv3.* res4.2.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (1024,) (1024,) (1024,) (1024,) (1024,256,1,1)
res4.3.conv1.* res4.3.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,1024,1,1)
res4.3.conv2.* res4.3.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,256,3,3)
res4.3.conv3.* res4.3.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (1024,) (1024,) (1024,) (1024,) (1024,256,1,1)
res4.4.conv1.* res4.4.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,1024,1,1)
res4.4.conv2.* res4.4.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,256,3,3)
res4.4.conv3.* res4.4.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (1024,) (1024,) (1024,) (1024,) (1024,256,1,1)
res4.5.conv1.* res4.5.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,1024,1,1)
res4.5.conv2.* res4.5.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (256,) (256,) (256,) (256,) (256,256,3,3)
res4.5.conv3.* res4.5.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (1024,) (1024,) (1024,) (1024,) (1024,256,1,1)
res5.0.conv1.* res5.0.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,1024,1,1)
res5.0.conv2.* res5.0.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,512,3,3)
res5.0.conv3.* res5.0.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (2048,) (2048,) (2048,) (2048,) (2048,512,1,1)
res5.0.shortcut.* res5.0.shortcut.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (2048,) (2048,) (2048,) (2048,) (2048,1024,1,1)
res5.1.conv1.* res5.1.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,2048,1,1)
res5.1.conv2.* res5.1.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,512,3,3)
res5.1.conv3.* res5.1.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (2048,) (2048,) (2048,) (2048,) (2048,512,1,1)
res5.2.conv1.* res5.2.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,2048,1,1)
res5.2.conv2.* res5.2.conv2.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (512,) (512,) (512,) (512,) (512,512,3,3)
res5.2.conv3.* res5.2.conv3.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (2048,) (2048,) (2048,) (2048,) (2048,512,1,1)
stem.conv1.* stem.conv1.{norm.bias,norm.running_mean,norm.running_var,norm.weight,weight} (64,) (64,) (64,) (64,) (64,3,7,7)
WARNING [02/20 12:07:46 fvcore.common.checkpoint]: Some model parameters or buffers are not found in the checkpoint:
decoder.inst_branch.cls_score.{bias, weight}
decoder.inst_branch.fc.{bias, weight}
decoder.inst_branch.iam_conv.{bias, weight}
decoder.inst_branch.inst_convs.0.{bias, weight}
decoder.inst_branch.inst_convs.10.{bias, weight}
decoder.inst_branch.inst_convs.2.{bias, weight}
decoder.inst_branch.inst_convs.4.{bias, weight}
decoder.inst_branch.inst_convs.6.{bias, weight}
decoder.inst_branch.inst_convs.8.{bias, weight}
decoder.inst_branch.mask_kernel.{bias, weight}
decoder.inst_branch.objectness.{bias, weight}
decoder.mask_branch.mask_convs.0.{bias, weight}
decoder.mask_branch.mask_convs.10.{bias, weight}
decoder.mask_branch.mask_convs.2.{bias, weight}
decoder.mask_branch.mask_convs.4.{bias, weight}
decoder.mask_branch.mask_convs.6.{bias, weight}
decoder.mask_branch.mask_convs.8.{bias, weight}
decoder.mask_branch.projection.{bias, weight}
encoder.fpn_laterals.0.{bias, weight}
encoder.fpn_laterals.1.{bias, weight}
encoder.fpn_laterals.2.{bias, weight}
encoder.fpn_outputs.0.{bias, weight}
encoder.fpn_outputs.1.{bias, weight}
encoder.fpn_outputs.2.{bias, weight}
encoder.fusion.{bias, weight}
encoder.ppm.bottleneck.{bias, weight}
encoder.ppm.stages.0.1.{bias, weight}
encoder.ppm.stages.1.1.{bias, weight}
encoder.ppm.stages.2.1.{bias, weight}
encoder.ppm.stages.3.1.{bias, weight}
WARNING [02/20 12:07:46 fvcore.common.checkpoint]: The checkpoint state_dict contains keys that are not used by the model:
stem.fc.{bias, weight}
[02/20 12:07:46 d2.engine.train_loop]: Starting training from iteration 0
D:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\detectron2\detectron2\structures\image_list.py:88: UserWarning: floordiv is deprecated, and its behavior wil
l change in a future version of pytorch. It currently rounds toward 0 (like the 'trunc' function NOT 'floor'). This results in incorrect rounding for negative values. To keep the current behavior, use torch.div(a, b, rounding_mode='trunc'), or for actual floor division, use torch.div(a, b, rounding_mode='floor').
max_size = (max_size + (stride - 1)) // stride * stride
D:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\torch\functional.py:445: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at ..\aten\src\ATen\native\TensorShape.cpp:2157.)
return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined]
D:\Users\Admin\miniconda3\envs\detectron\lib\site-packages\torch\optim\lr_scheduler.py:129: UserWarning: Detected call of lr_scheduler.step() before optimizer.step().
In PyTorch 1.1.0 and later, you should call them in the opposite order: optimizer.step() before lr_scheduler.step(). Failure to do this will result in PyTorch skipping the first value of the learning rate schedule. See more details at https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate
warnings.warn("Detected call of lr_scheduler.step() before optimizer.step(). "

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants