khurramHashmi / FeatEnHancer

[ICCV 2023] FeatEnHancer: Enhancing Hierarchical Features for Object Detection and Beyond Under Low-Light Vision
https://khurramhashmi.github.io/FeatEnHancer/
Other
18 stars 1 forks source link

About solver config #13

Closed 225ceV closed 1 month ago

225ceV commented 2 months ago

Thank you for your patience and assistance. While comparing FQ R-CNN, I encountered a new issue. I trained both FQ R-CNN and featenhancer+FQ R-CNN on an exdark dataset with different partitioning of training and test sets from https://github.com/cuiziteng/ICCV_MAET, using the same solver configuration. However, I found that the accuracy of the two models is very close. The configuration details are as follows:

SOLVER:
  AMP:
    ENABLED: false
  BACKBONE_MULTIPLIER: 1.0
  BASE_LR: 2.5e-06
  BASE_LR_END: 0.0
  BIAS_LR_FACTOR: 1.0
  CHECKPOINT_PERIOD: 5000
  CLIP_GRADIENTS:
    CLIP_TYPE: full_model
    CLIP_VALUE: 1.0
    ENABLED: true
    NORM_TYPE: 2.0
  GAMMA: 0.1

  # batch size
  IMS_PER_BATCH: 1
  LR_SCHEDULER_NAME: WarmupMultiStepLR
  MAX_ITER: 50000
  MOMENTUM: 0.9
  NESTEROV: false
  NUM_DECAYS: 3
  OPTIMIZER: ADAMW
  REFERENCE_WORLD_SIZE: 0
  RESCALE_INTERVAL: false
  STEPS:
  - 42000
  - 47000
  WARMUP_FACTOR: 0.01
  WARMUP_ITERS: 1000
  WARMUP_METHOD: linear
  WEIGHT_DECAY: 0.0001
  WEIGHT_DECAY_BIAS: null
  WEIGHT_DECAY_NORM: 0.0

I think the featenhaner part is contain in https://github.com/khurramHashmi/FeatEnHancer/blob/33da74366d95ebb9b9a94ca85db99ea94f844308/low-light-object-detection-detectron2/queryrcnn/detector.py#L172

so i test FQ R-CNN in different project cloned from https://github.com/hustvl/Featurized-QueryRCNN. but they shared a similar config file when training(i kept Featurized-QueryRCNN's MODEL part)

result:

with featenhaner
{"bbox/AP": 52.53054561823591, "bbox/AP-bicycle": 55.60259086672564, "bbox/AP-boat": 45.743182977295625, "bbox/AP-bottle": 50.22017040664261, "bbox/AP-bus": 77.02453729937041, "bbox/AP-car": 58.43270065158658, "bbox/AP-cat": 49.29044282114153, "bbox/AP-chair": 46.3484178888368, "bbox/AP-cup": 53.925313790400764, "bbox/AP-dining table": 40.141973795164695, "bbox/AP-dog": 56.32446690411162, "bbox/AP-motorcycle": 46.2676739566681, "bbox/AP-person": 51.04507606088663, "bbox/AP50": 81.51711738361045, "bbox/AP75": 58.05245841083272, "bbox/APl": 59.74708471318176, "bbox/APm": 41.10229970000033, "bbox/APs": 14.776018263619003, "iteration": 50000}

without featenhaner
{"bbox/AP": 52.00824840934456, "bbox/AP-bicycle": 55.64780083617665, "bbox/AP-boat": 44.62704841206179, "bbox/AP-bottle": 48.44416421492211, "bbox/AP-bus": 76.49049907626319, "bbox/AP-car": 58.964925286301096, "bbox/AP-cat": 47.929252741001896, "bbox/AP-chair": 46.04053253887865, "bbox/AP-cup": 53.15243419346582, "bbox/AP-dining table": 39.62968835904925, "bbox/AP-dog": 56.46208801636754, "bbox/AP-motorcycle": 45.92280466010041, "bbox/AP-person": 50.78774257754635, "bbox/AP50": 81.12029339996903, "bbox/AP75": 57.65130580263261, "bbox/APl": 59.240512336751515, "bbox/APm": 40.55028404461523, "bbox/APs": 16.60758248236078, "iteration": 50000}

I suspect I didn't train enough and didn't tune the parameters correctly. I would appreciate it if you could give me some suggestions.

MidsummerHi commented 2 months ago

Thank you for your patience and assistance. While comparing FQ R-CNN, I encountered a new issue. I trained both FQ R-CNN and featenhancer+FQ R-CNN on an exdark dataset with different partitioning of training and test sets from https://github.com/cuiziteng/ICCV_MAET, using the same solver configuration. However, I found that the accuracy of the two models is very close. The configuration details are as follows:

SOLVER:
  AMP:
    ENABLED: false
  BACKBONE_MULTIPLIER: 1.0
  BASE_LR: 2.5e-06
  BASE_LR_END: 0.0
  BIAS_LR_FACTOR: 1.0
  CHECKPOINT_PERIOD: 5000
  CLIP_GRADIENTS:
    CLIP_TYPE: full_model
    CLIP_VALUE: 1.0
    ENABLED: true
    NORM_TYPE: 2.0
  GAMMA: 0.1

  # batch size
  IMS_PER_BATCH: 1
  LR_SCHEDULER_NAME: WarmupMultiStepLR
  MAX_ITER: 50000
  MOMENTUM: 0.9
  NESTEROV: false
  NUM_DECAYS: 3
  OPTIMIZER: ADAMW
  REFERENCE_WORLD_SIZE: 0
  RESCALE_INTERVAL: false
  STEPS:
  - 42000
  - 47000
  WARMUP_FACTOR: 0.01
  WARMUP_ITERS: 1000
  WARMUP_METHOD: linear
  WEIGHT_DECAY: 0.0001
  WEIGHT_DECAY_BIAS: null
  WEIGHT_DECAY_NORM: 0.0

I think the featenhaner part is contain in

https://github.com/khurramHashmi/FeatEnHancer/blob/33da74366d95ebb9b9a94ca85db99ea94f844308/low-light-object-detection-detectron2/queryrcnn/detector.py#L172

so i test FQ R-CNN in different project cloned from https://github.com/hustvl/Featurized-QueryRCNN. but they shared a similar config file when training(i kept Featurized-QueryRCNN's MODEL part)

result:

with featenhaner
{"bbox/AP": 52.53054561823591, "bbox/AP-bicycle": 55.60259086672564, "bbox/AP-boat": 45.743182977295625, "bbox/AP-bottle": 50.22017040664261, "bbox/AP-bus": 77.02453729937041, "bbox/AP-car": 58.43270065158658, "bbox/AP-cat": 49.29044282114153, "bbox/AP-chair": 46.3484178888368, "bbox/AP-cup": 53.925313790400764, "bbox/AP-dining table": 40.141973795164695, "bbox/AP-dog": 56.32446690411162, "bbox/AP-motorcycle": 46.2676739566681, "bbox/AP-person": 51.04507606088663, "bbox/AP50": 81.51711738361045, "bbox/AP75": 58.05245841083272, "bbox/APl": 59.74708471318176, "bbox/APm": 41.10229970000033, "bbox/APs": 14.776018263619003, "iteration": 50000}

without featenhaner
{"bbox/AP": 52.00824840934456, "bbox/AP-bicycle": 55.64780083617665, "bbox/AP-boat": 44.62704841206179, "bbox/AP-bottle": 48.44416421492211, "bbox/AP-bus": 76.49049907626319, "bbox/AP-car": 58.964925286301096, "bbox/AP-cat": 47.929252741001896, "bbox/AP-chair": 46.04053253887865, "bbox/AP-cup": 53.15243419346582, "bbox/AP-dining table": 39.62968835904925, "bbox/AP-dog": 56.46208801636754, "bbox/AP-motorcycle": 45.92280466010041, "bbox/AP-person": 50.78774257754635, "bbox/AP50": 81.12029339996903, "bbox/AP75": 57.65130580263261, "bbox/APl": 59.240512336751515, "bbox/APm": 40.55028404461523, "bbox/APs": 16.60758248236078, "iteration": 50000}

I suspect I didn't train enough and didn't tune the parameters correctly. I would appreciate it if you could give me some suggestions.

bro, I also met that prob. When I trained completely on exdark dataset, only got the 81.4 mAP50. I cant reproduce the performance author provided.

have you solved this prob?Can we exchange from each other through email: pengcaiping0912@gmail.com

Dhs2004 commented 23 hours ago

感谢您的耐心等待和帮助。在比较 FQ R-CNN 时,我遇到了一个新问题。我使用相同的求解器配置,在 exdark 数据集上训练了 FQ R-CNN 和 featenhancer+FQ R-CNN,该数据集的训练集和测试集与 https://github.com/cuiziteng/ICCV_MAET 具有不同的分区。但是,我发现这两个模型的准确性非常接近。配置详情如下:

SOLVER:
  AMP:
    ENABLED: false
  BACKBONE_MULTIPLIER: 1.0
  BASE_LR: 2.5e-06
  BASE_LR_END: 0.0
  BIAS_LR_FACTOR: 1.0
  CHECKPOINT_PERIOD: 5000
  CLIP_GRADIENTS:
    CLIP_TYPE: full_model
    CLIP_VALUE: 1.0
    ENABLED: true
    NORM_TYPE: 2.0
  GAMMA: 0.1

  # batch size
  IMS_PER_BATCH: 1
  LR_SCHEDULER_NAME: WarmupMultiStepLR
  MAX_ITER: 50000
  MOMENTUM: 0.9
  NESTEROV: false
  NUM_DECAYS: 3
  OPTIMIZER: ADAMW
  REFERENCE_WORLD_SIZE: 0
  RESCALE_INTERVAL: false
  STEPS:
  - 42000
  - 47000
  WARMUP_FACTOR: 0.01
  WARMUP_ITERS: 1000
  WARMUP_METHOD: linear
  WEIGHT_DECAY: 0.0001
  WEIGHT_DECAY_BIAS: null
  WEIGHT_DECAY_NORM: 0.0

我认为 featenhaner 部分包含在 https://github.com/khurramHashmi/FeatEnHancer/blob/33da74366d95ebb9b9a94ca85db99ea94f844308/low-light-object-detection-detectron2/queryrcnn/detector.py#L172

因此,我在从 https://github.com/hustvl/Featurized-QueryRCNN 克隆的不同项目中测试 FQ R-CNN。但是他们在训练时共享了一个类似的配置文件(我保留了 Featurized-QueryRCNN 的 MODEL 部分) 结果:

with featenhaner
{"bbox/AP": 52.53054561823591, "bbox/AP-bicycle": 55.60259086672564, "bbox/AP-boat": 45.743182977295625, "bbox/AP-bottle": 50.22017040664261, "bbox/AP-bus": 77.02453729937041, "bbox/AP-car": 58.43270065158658, "bbox/AP-cat": 49.29044282114153, "bbox/AP-chair": 46.3484178888368, "bbox/AP-cup": 53.925313790400764, "bbox/AP-dining table": 40.141973795164695, "bbox/AP-dog": 56.32446690411162, "bbox/AP-motorcycle": 46.2676739566681, "bbox/AP-person": 51.04507606088663, "bbox/AP50": 81.51711738361045, "bbox/AP75": 58.05245841083272, "bbox/APl": 59.74708471318176, "bbox/APm": 41.10229970000033, "bbox/APs": 14.776018263619003, "iteration": 50000}

without featenhaner
{"bbox/AP": 52.00824840934456, "bbox/AP-bicycle": 55.64780083617665, "bbox/AP-boat": 44.62704841206179, "bbox/AP-bottle": 48.44416421492211, "bbox/AP-bus": 76.49049907626319, "bbox/AP-car": 58.964925286301096, "bbox/AP-cat": 47.929252741001896, "bbox/AP-chair": 46.04053253887865, "bbox/AP-cup": 53.15243419346582, "bbox/AP-dining table": 39.62968835904925, "bbox/AP-dog": 56.46208801636754, "bbox/AP-motorcycle": 45.92280466010041, "bbox/AP-person": 50.78774257754635, "bbox/AP50": 81.12029339996903, "bbox/AP75": 57.65130580263261, "bbox/APl": 59.240512336751515, "bbox/APm": 40.55028404461523, "bbox/APs": 16.60758248236078, "iteration": 50000}

我怀疑我没有进行足够的训练,也没有正确调整参数。如果您能给我一些建议,我将不胜感激。

兄弟,我也遇到了那个问题。当我完全在 exdark 数据集上训练时,只得到了 81.4 mAP50。我无法复制作者提供的性能。

你解决了这个问题吗?我们可以通过电子邮件相互交流吗:pengcaiping0912@gmail.com

me too!me too!

Dhs2004 commented 23 hours ago

感谢您的耐心等待和帮助。在比较 FQ R-CNN 时,我遇到了一个新问题。我使用相同的求解器配置,在 exdark 数据集上训练了 FQ R-CNN 和 featenhancer+FQ R-CNN,该数据集的训练集和测试集与 https://github.com/cuiziteng/ICCV_MAET 具有不同的分区。但是,我发现这两个模型的准确性非常接近。配置详情如下:

SOLVER:
  AMP:
    ENABLED: false
  BACKBONE_MULTIPLIER: 1.0
  BASE_LR: 2.5e-06
  BASE_LR_END: 0.0
  BIAS_LR_FACTOR: 1.0
  CHECKPOINT_PERIOD: 5000
  CLIP_GRADIENTS:
    CLIP_TYPE: full_model
    CLIP_VALUE: 1.0
    ENABLED: true
    NORM_TYPE: 2.0
  GAMMA: 0.1

  # batch size
  IMS_PER_BATCH: 1
  LR_SCHEDULER_NAME: WarmupMultiStepLR
  MAX_ITER: 50000
  MOMENTUM: 0.9
  NESTEROV: false
  NUM_DECAYS: 3
  OPTIMIZER: ADAMW
  REFERENCE_WORLD_SIZE: 0
  RESCALE_INTERVAL: false
  STEPS:
  - 42000
  - 47000
  WARMUP_FACTOR: 0.01
  WARMUP_ITERS: 1000
  WARMUP_METHOD: linear
  WEIGHT_DECAY: 0.0001
  WEIGHT_DECAY_BIAS: null
  WEIGHT_DECAY_NORM: 0.0

我认为 featenhaner 部分包含在

https://github.com/khurramHashmi/FeatEnHancer/blob/33da74366d95ebb9b9a94ca85db99ea94f844308/low-light-object-detection-detectron2/queryrcnn/detector.py#L172

因此,我在从 https://github.com/hustvl/Featurized-QueryRCNN 克隆的不同项目中测试 FQ R-CNN。但是他们在训练时共享了一个类似的配置文件(我保留了 Featurized-QueryRCNN 的 MODEL 部分)

结果:

with featenhaner
{"bbox/AP": 52.53054561823591, "bbox/AP-bicycle": 55.60259086672564, "bbox/AP-boat": 45.743182977295625, "bbox/AP-bottle": 50.22017040664261, "bbox/AP-bus": 77.02453729937041, "bbox/AP-car": 58.43270065158658, "bbox/AP-cat": 49.29044282114153, "bbox/AP-chair": 46.3484178888368, "bbox/AP-cup": 53.925313790400764, "bbox/AP-dining table": 40.141973795164695, "bbox/AP-dog": 56.32446690411162, "bbox/AP-motorcycle": 46.2676739566681, "bbox/AP-person": 51.04507606088663, "bbox/AP50": 81.51711738361045, "bbox/AP75": 58.05245841083272, "bbox/APl": 59.74708471318176, "bbox/APm": 41.10229970000033, "bbox/APs": 14.776018263619003, "iteration": 50000}

without featenhaner
{"bbox/AP": 52.00824840934456, "bbox/AP-bicycle": 55.64780083617665, "bbox/AP-boat": 44.62704841206179, "bbox/AP-bottle": 48.44416421492211, "bbox/AP-bus": 76.49049907626319, "bbox/AP-car": 58.964925286301096, "bbox/AP-cat": 47.929252741001896, "bbox/AP-chair": 46.04053253887865, "bbox/AP-cup": 53.15243419346582, "bbox/AP-dining table": 39.62968835904925, "bbox/AP-dog": 56.46208801636754, "bbox/AP-motorcycle": 45.92280466010041, "bbox/AP-person": 50.78774257754635, "bbox/AP50": 81.12029339996903, "bbox/AP75": 57.65130580263261, "bbox/APl": 59.240512336751515, "bbox/APm": 40.55028404461523, "bbox/APs": 16.60758248236078, "iteration": 50000}

我怀疑我没有进行足够的训练,也没有正确调整参数。如果您能给我一些建议,我将不胜感激。

me too!,have you tackled that?