{
  "id": 422261,
  "title": "YOLOV7 appears NAN in the trainning",
  "url": "/competitions/hubmap-hacking-the-human-vasculature/discussion/422261",
  "author_name": "13125201334lH",
  "post_date": "2023-07-09T05:28:58.679000",
  "votes": 0,
  "comment_count": 0,
  "views": 0,
  "content": "<p>When I use ConvNext Block to improve YOLOV7, I encounter NAN during the training,even when I decrease the learning rate.</p>\n<p>For example:</p>\n<h1>YOLOv7 🚀, GPL-3.0 license</h1>\n<h1>parameters</h1>\n<p>nc: 80  # number of classes<br>\ndepth_multiple: 0.33  # model depth multiple<br>\nwidth_multiple: 1.0  # layer channel multiple</p>\n<h1>anchors</h1>\n<p>anchors:</p>\n<ul>\n<li>[12,16, 19,36, 40,28]  # P3/8</li>\n<li>[36,75, 76,55, 72,146]  # P4/16</li>\n<li>[142,110, 192,243, 459,401]  # P5/32</li>\n</ul>\n<h1>yolov7 backbone</h1>\n<p>backbone:<br>\n  # [from, number, module, args]<br>\n  [[-1, 1, Conv, [32, 3, 1]],  # 0<br>\n   [-1, 1, Conv, [64, 3, 2]],  # 1-P1/2<br>\n   [-1, 1, Conv, [64, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 2]],  # 3-P2/4 <br>\n   [-1, 1, CNeB, [128]], <br>\n   [-1, 1, Conv, [256, 3, 2]], <br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-3, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, Conv, [128, 3, 2]],<br>\n   [[-1, -3], 1, Concat, [1]],  # 16-P3/8<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-2, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [[-1, -3, -5, -6], 1, Concat, [1]],<br>\n   [-1, 1, Conv, [512, 1, 1]],<br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-3, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, Conv, [256, 3, 2]],<br>\n   [[-1, -3], 1, Concat, [1]],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-2, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [[-1, -3, -5, -6], 1, Concat, [1]],<br>\n   [-1, 1, Conv, [1024, 1, 1]],          <br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [512, 1, 1]],<br>\n   [-3, 1, Conv, [512, 1, 1]],<br>\n   [-1, 1, Conv, [512, 3, 2]],<br>\n   [[-1, -3], 1, Concat, [1]],<br>\n   [-1, 1, CNeB, [1024]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n  ]</p>\n<h1>yolov7 head by yoloair</h1>\n<p>head:<br>\n  [[-1, 1, SPPCSPC, [512]],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],<br>\n   [31, 1, Conv, [256, 1, 1]],<br>\n   [[-1, -2], 1, Concat, [1]],<br>\n   [-1, 1, C3STR, [128]],<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],<br>\n   [18, 1, Conv, [128, 1, 1]],<br>\n   [[-1, -2], 1, Concat, [1]],<br>\n   [-1, 1, C3STR, [128]],<br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-3, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, Conv, [128, 3, 2]],<br>\n   [[-1, -3, 44], 1, Concat, [1]],<br>\n   [-1, 1, C3STR, [256]], <br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-3, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, Conv, [256, 3, 2]], <br>\n   [[-1, -3, 39], 1, Concat, [1]],<br>\n   [-1, 3, C3STR, [512]],</p>\n<h1>检测头 -----------------------------</h1>\n<p>[49, 1, Conv, [256, 3, 1]],<br>\n   [55, 1, Conv, [512, 3, 1]],<br>\n   [61, 1, Conv, [1024, 3, 1]],</p>\n<p>[[62,63,64], 1, ISegment, [nc, anchors, 32, 256]],   # Detect(P3, P4, P5)<br>\n  ]</p>",
  "messages": [
    {
      "id": 2336090,
      "postDate": "2023-07-09T05:28:58.680Z",
      "content": "<p>When I use ConvNext Block to improve YOLOV7, I encounter NAN during the training,even when I decrease the learning rate.</p>\n<p>For example:</p>\n<h1>YOLOv7 🚀, GPL-3.0 license</h1>\n<h1>parameters</h1>\n<p>nc: 80  # number of classes<br>\ndepth_multiple: 0.33  # model depth multiple<br>\nwidth_multiple: 1.0  # layer channel multiple</p>\n<h1>anchors</h1>\n<p>anchors:</p>\n<ul>\n<li>[12,16, 19,36, 40,28]  # P3/8</li>\n<li>[36,75, 76,55, 72,146]  # P4/16</li>\n<li>[142,110, 192,243, 459,401]  # P5/32</li>\n</ul>\n<h1>yolov7 backbone</h1>\n<p>backbone:<br>\n  # [from, number, module, args]<br>\n  [[-1, 1, Conv, [32, 3, 1]],  # 0<br>\n   [-1, 1, Conv, [64, 3, 2]],  # 1-P1/2<br>\n   [-1, 1, Conv, [64, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 2]],  # 3-P2/4 <br>\n   [-1, 1, CNeB, [128]], <br>\n   [-1, 1, Conv, [256, 3, 2]], <br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-3, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, Conv, [128, 3, 2]],<br>\n   [[-1, -3], 1, Concat, [1]],  # 16-P3/8<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-2, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [-1, 1, Conv, [128, 3, 1]],<br>\n   [[-1, -3, -5, -6], 1, Concat, [1]],<br>\n   [-1, 1, Conv, [512, 1, 1]],<br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-3, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, Conv, [256, 3, 2]],<br>\n   [[-1, -3], 1, Concat, [1]],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-2, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n   [[-1, -3, -5, -6], 1, Concat, [1]],<br>\n   [-1, 1, Conv, [1024, 1, 1]],          <br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [512, 1, 1]],<br>\n   [-3, 1, Conv, [512, 1, 1]],<br>\n   [-1, 1, Conv, [512, 3, 2]],<br>\n   [[-1, -3], 1, Concat, [1]],<br>\n   [-1, 1, CNeB, [1024]],<br>\n   [-1, 1, Conv, [256, 3, 1]],<br>\n  ]</p>\n<h1>yolov7 head by yoloair</h1>\n<p>head:<br>\n  [[-1, 1, SPPCSPC, [512]],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],<br>\n   [31, 1, Conv, [256, 1, 1]],<br>\n   [[-1, -2], 1, Concat, [1]],<br>\n   [-1, 1, C3STR, [128]],<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],<br>\n   [18, 1, Conv, [128, 1, 1]],<br>\n   [[-1, -2], 1, Concat, [1]],<br>\n   [-1, 1, C3STR, [128]],<br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [128, 1, 1]],<br>\n   [-3, 1, Conv, [128, 1, 1]],<br>\n   [-1, 1, Conv, [128, 3, 2]],<br>\n   [[-1, -3, 44], 1, Concat, [1]],<br>\n   [-1, 1, C3STR, [256]], <br>\n   [-1, 1, MP, []],<br>\n   [-1, 1, Conv, [256, 1, 1]],<br>\n   [-3, 1, Conv, [256, 1, 1]],<br>\n   [-1, 1, Conv, [256, 3, 2]], <br>\n   [[-1, -3, 39], 1, Concat, [1]],<br>\n   [-1, 3, C3STR, [512]],</p>\n<h1>检测头 -----------------------------</h1>\n<p>[49, 1, Conv, [256, 3, 1]],<br>\n   [55, 1, Conv, [512, 3, 1]],<br>\n   [61, 1, Conv, [1024, 3, 1]],</p>\n<p>[[62,63,64], 1, ISegment, [nc, anchors, 32, 256]],   # Detect(P3, P4, P5)<br>\n  ]</p>",
      "rawMarkdown": "When I use ConvNext Block to improve YOLOV7, I encounter NAN during the training,even when I decrease the learning rate.\n\nFor example:\n# YOLOv7 🚀, GPL-3.0 license\n# parameters\nnc: 80  # number of classes\ndepth_multiple: 0.33  # model depth multiple\nwidth_multiple: 1.0  # layer channel multiple\n\n# anchors\nanchors:\n  - [12,16, 19,36, 40,28]  # P3/8\n  - [36,75, 76,55, 72,146]  # P4/16\n  - [142,110, 192,243, 459,401]  # P5/32\n\n# yolov7 backbone \nbackbone:\n  # [from, number, module, args]\n  [[-1, 1, Conv, [32, 3, 1]],  # 0\n   [-1, 1, Conv, [64, 3, 2]],  # 1-P1/2\n   [-1, 1, Conv, [64, 3, 1]],\n   [-1, 1, Conv, [128, 3, 2]],  # 3-P2/4 \n   [-1, 1, CNeB, [128]], \n   [-1, 1, Conv, [256, 3, 2]], \n   [-1, 1, MP, []],\n   [-1, 1, Conv, [128, 1, 1]],\n   [-3, 1, Conv, [128, 1, 1]],\n   [-1, 1, Conv, [128, 3, 2]],\n   [[-1, -3], 1, Concat, [1]],  # 16-P3/8\n   [-1, 1, Conv, [128, 1, 1]],\n   [-2, 1, Conv, [128, 1, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [[-1, -3, -5, -6], 1, Concat, [1]],\n   [-1, 1, Conv, [512, 1, 1]],\n   [-1, 1, MP, []],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-3, 1, Conv, [256, 1, 1]],\n   [-1, 1, Conv, [256, 3, 2]],\n   [[-1, -3], 1, Concat, [1]],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-2, 1, Conv, [256, 1, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [[-1, -3, -5, -6], 1, Concat, [1]],\n   [-1, 1, Conv, [1024, 1, 1]],          \n   [-1, 1, MP, []],\n   [-1, 1, Conv, [512, 1, 1]],\n   [-3, 1, Conv, [512, 1, 1]],\n   [-1, 1, Conv, [512, 3, 2]],\n   [[-1, -3], 1, Concat, [1]],\n   [-1, 1, CNeB, [1024]],\n   [-1, 1, Conv, [256, 3, 1]],\n  ]\n\n# yolov7 head by yoloair\nhead:\n  [[-1, 1, SPPCSPC, [512]],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [31, 1, Conv, [256, 1, 1]],\n   [[-1, -2], 1, Concat, [1]],\n   [-1, 1, C3STR, [128]],\n   [-1, 1, Conv, [128, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [18, 1, Conv, [128, 1, 1]],\n   [[-1, -2], 1, Concat, [1]],\n   [-1, 1, C3STR, [128]],\n   [-1, 1, MP, []],\n   [-1, 1, Conv, [128, 1, 1]],\n   [-3, 1, Conv, [128, 1, 1]],\n   [-1, 1, Conv, [128, 3, 2]],\n   [[-1, -3, 44], 1, Concat, [1]],\n   [-1, 1, C3STR, [256]], \n   [-1, 1, MP, []],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-3, 1, Conv, [256, 1, 1]],\n   [-1, 1, Conv, [256, 3, 2]], \n   [[-1, -3, 39], 1, Concat, [1]],\n   [-1, 3, C3STR, [512]],\n\n# 检测头 -----------------------------\n   [49, 1, Conv, [256, 3, 1]],\n   [55, 1, Conv, [512, 3, 1]],\n   [61, 1, Conv, [1024, 3, 1]],\n\n   [[62,63,64], 1, ISegment, [nc, anchors, 32, 256]],   # Detect(P3, P4, P5)\n  ]"
    }
  ],
  "comments": [],
  "raw_markdown_by_id": {
    "2336090": "When I use ConvNext Block to improve YOLOV7, I encounter NAN during the training,even when I decrease the learning rate.\n\nFor example:\n# YOLOv7 🚀, GPL-3.0 license\n# parameters\nnc: 80  # number of classes\ndepth_multiple: 0.33  # model depth multiple\nwidth_multiple: 1.0  # layer channel multiple\n\n# anchors\nanchors:\n  - [12,16, 19,36, 40,28]  # P3/8\n  - [36,75, 76,55, 72,146]  # P4/16\n  - [142,110, 192,243, 459,401]  # P5/32\n\n# yolov7 backbone \nbackbone:\n  # [from, number, module, args]\n  [[-1, 1, Conv, [32, 3, 1]],  # 0\n   [-1, 1, Conv, [64, 3, 2]],  # 1-P1/2\n   [-1, 1, Conv, [64, 3, 1]],\n   [-1, 1, Conv, [128, 3, 2]],  # 3-P2/4 \n   [-1, 1, CNeB, [128]], \n   [-1, 1, Conv, [256, 3, 2]], \n   [-1, 1, MP, []],\n   [-1, 1, Conv, [128, 1, 1]],\n   [-3, 1, Conv, [128, 1, 1]],\n   [-1, 1, Conv, [128, 3, 2]],\n   [[-1, -3], 1, Concat, [1]],  # 16-P3/8\n   [-1, 1, Conv, [128, 1, 1]],\n   [-2, 1, Conv, [128, 1, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [-1, 1, Conv, [128, 3, 1]],\n   [[-1, -3, -5, -6], 1, Concat, [1]],\n   [-1, 1, Conv, [512, 1, 1]],\n   [-1, 1, MP, []],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-3, 1, Conv, [256, 1, 1]],\n   [-1, 1, Conv, [256, 3, 2]],\n   [[-1, -3], 1, Concat, [1]],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-2, 1, Conv, [256, 1, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [-1, 1, Conv, [256, 3, 1]],\n   [[-1, -3, -5, -6], 1, Concat, [1]],\n   [-1, 1, Conv, [1024, 1, 1]],          \n   [-1, 1, MP, []],\n   [-1, 1, Conv, [512, 1, 1]],\n   [-3, 1, Conv, [512, 1, 1]],\n   [-1, 1, Conv, [512, 3, 2]],\n   [[-1, -3], 1, Concat, [1]],\n   [-1, 1, CNeB, [1024]],\n   [-1, 1, Conv, [256, 3, 1]],\n  ]\n\n# yolov7 head by yoloair\nhead:\n  [[-1, 1, SPPCSPC, [512]],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [31, 1, Conv, [256, 1, 1]],\n   [[-1, -2], 1, Concat, [1]],\n   [-1, 1, C3STR, [128]],\n   [-1, 1, Conv, [128, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [18, 1, Conv, [128, 1, 1]],\n   [[-1, -2], 1, Concat, [1]],\n   [-1, 1, C3STR, [128]],\n   [-1, 1, MP, []],\n   [-1, 1, Conv, [128, 1, 1]],\n   [-3, 1, Conv, [128, 1, 1]],\n   [-1, 1, Conv, [128, 3, 2]],\n   [[-1, -3, 44], 1, Concat, [1]],\n   [-1, 1, C3STR, [256]], \n   [-1, 1, MP, []],\n   [-1, 1, Conv, [256, 1, 1]],\n   [-3, 1, Conv, [256, 1, 1]],\n   [-1, 1, Conv, [256, 3, 2]], \n   [[-1, -3, 39], 1, Concat, [1]],\n   [-1, 3, C3STR, [512]],\n\n# 检测头 -----------------------------\n   [49, 1, Conv, [256, 3, 1]],\n   [55, 1, Conv, [512, 3, 1]],\n   [61, 1, Conv, [1024, 3, 1]],\n\n   [[62,63,64], 1, ISegment, [nc, anchors, 32, 256]],   # Detect(P3, P4, P5)\n  ]"
  }
}