conditional-detr_r50_8xb2-50e_coco.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. _base_ = ['../detr/detr_r50_8xb2-150e_coco.py']
  2. model = dict(
  3. type='ConditionalDETR',
  4. num_queries=300,
  5. decoder=dict(
  6. num_layers=6,
  7. layer_cfg=dict(
  8. self_attn_cfg=dict(
  9. _delete_=True,
  10. embed_dims=256,
  11. num_heads=8,
  12. attn_drop=0.1,
  13. cross_attn=False),
  14. cross_attn_cfg=dict(
  15. _delete_=True,
  16. embed_dims=256,
  17. num_heads=8,
  18. attn_drop=0.1,
  19. cross_attn=True))),
  20. bbox_head=dict(
  21. type='ConditionalDETRHead',
  22. loss_cls=dict(
  23. _delete_=True,
  24. type='FocalLoss',
  25. use_sigmoid=True,
  26. gamma=2.0,
  27. alpha=0.25,
  28. loss_weight=2.0)),
  29. # training and testing settings
  30. train_cfg=dict(
  31. assigner=dict(
  32. type='HungarianAssigner',
  33. match_costs=[
  34. dict(type='FocalLossCost', weight=2.0),
  35. dict(type='BBoxL1Cost', weight=5.0, box_format='xywh'),
  36. dict(type='IoUCost', iou_mode='giou', weight=2.0)
  37. ])))
  38. # learning policy
  39. train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=50, val_interval=1)
  40. param_scheduler = [dict(type='MultiStepLR', end=50, milestones=[40])]