{
  "id": 263849,
  "title": "34th solution EffnetV2 + yolov5",
  "url": "/competitions/siim-covid19-detection/writeups/34th-solution-effnetv2-yolov5",
  "author_name": "",
  "post_date": "2021-08-10T12:36:12.973Z",
  "votes": 26,
  "comment_count": 9,
  "views": 0,
  "content": "<blockquote>\n  <p>What I learned Most in this competition is how to fight against overfitting</p>\n</blockquote>\n<h2>Model:</h2>\n<p>Efficientnetv2m + yolom tta LB 6.27 PB 6.13 <br>\nEfficientnetv2m + yolox tta LB 6.29 PB 6.15</p>\n<h2>Ensemble In finnaly submit</h2>\n<p>I use efficientnetv2m + efficientnetb3 + yolom + yolox for divierce but still LB 6.29 PB 6.15</p>\n<h2>Code:</h2>\n<p>Classify model: <a href=\"https://www.kaggle.com/drzhuzhe/covid19-classify/\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/covid19-classify/</a><br>\nDetection model: <a href=\"https://www.kaggle.com/drzhuzhe/covid19-det\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/covid19-det</a><br>\nEmsemble(Version 17): <a href=\"https://www.kaggle.com/drzhuzhe/v2-covid-submit\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/v2-covid-submit</a></p>\n<h1>Summary:</h1>\n<h2>Problem definition and analysis</h2>\n<ol>\n<li><p>In this last week of June I take a tour on discuss of this competition, I think this key in this competition is make use of multi task data to get a better performance </p></li>\n<li><p>So that what goal set to my self is customize block for make use information in object detection box to help classification , vice versa.</p></li>\n</ol>\n<h2>RoadBlock</h2>\n<ol>\n<li><p>I reproduce Hengck's code very quickly ,<br>\nBut Frustratedly, whatever I change a bit of this code , I get a very bad result <br>\nI try attach AUX head to different block , multi output , gradient accumulate <br>\nBut due to my mistake of lacking data augment, I cannot move a step in a almost whole July month</p></li>\n<li><p>This is most because In beginning I think I must be make a mistake in using TIMM , <br>\nSo I carefully read TIMM implementation of EfiicientnetV2 and compare it to original <br>\nImplementation, I go over concept and idea of NAS. this is really beneficial</p></li>\n<li><p>In the end of July I finally overcome this, with only carefully tuning data augment a bit .</p></li>\n</ol>\n<h2>Solution and Further</h2>\n<ol>\n<li><p>My solution is detailed in code commit </p></li>\n<li><p>Augment in classification and hyperparams in Yolox is far  away from tuning to the best</p></li>\n<li><p>label smooth mixup also is still waiting to be added, maybe next competition a will try it fully</p></li>\n<li><p>Next time a shall try more on unsupervised methods and different Block architectures</p></li>\n</ol>\n<h1>Thanks</h1>\n<ol>\n<li><p>When I meet the roadblock I search over many resource and make 2 posts in discuss, I 'm very appreciating for every reply and suggestion</p></li>\n<li><p>And want to give a thinks to everyone make advisors and contribute to open source , without this I can hardly learn anything</p></li>\n</ol>",
  "messages": [
    {
      "id": "1463971",
      "postDate": "08/10/2021 12:02:49",
      "content": "<blockquote>\n  <p>What I learned Most in this competition is how to fight against overfitting</p>\n</blockquote>\n<h2>Model:</h2>\n<p>Efficientnetv2m + yolom tta LB 6.27 PB 6.13 <br>\nEfficientnetv2m + yolox tta LB 6.29 PB 6.15</p>\n<h2>Ensemble In finnaly submit</h2>\n<p>I use efficientnetv2m + efficientnetb3 + yolom + yolox for divierce but still LB 6.29 PB 6.15</p>\n<h2>Code:</h2>\n<p>Classify model: <a href=\"https://www.kaggle.com/drzhuzhe/covid19-classify/\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/covid19-classify/</a><br>\nDetection model: <a href=\"https://www.kaggle.com/drzhuzhe/covid19-det\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/covid19-det</a><br>\nEmsemble(Version 17): <a href=\"https://www.kaggle.com/drzhuzhe/v2-covid-submit\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/v2-covid-submit</a></p>\n<h1>Summary:</h1>\n<h2>Problem definition and analysis</h2>\n<ol>\n<li><p>In this last week of June I take a tour on discuss of this competition, I think this key in this competition is make use of multi task data to get a better performance </p></li>\n<li><p>So that what goal set to my self is customize block for make use information in object detection box to help classification , vice versa.</p></li>\n</ol>\n<h2>RoadBlock</h2>\n<ol>\n<li><p>I reproduce Hengck's code very quickly ,<br>\nBut Frustratedly, whatever I change a bit of this code , I get a very bad result <br>\nI try attach AUX head to different block , multi output , gradient accumulate <br>\nBut due to my mistake of lacking data augment, I cannot move a step in a almost whole July month</p></li>\n<li><p>This is most because In beginning I think I must be make a mistake in using TIMM , <br>\nSo I carefully read TIMM implementation of EfiicientnetV2 and compare it to original <br>\nImplementation, I go over concept and idea of NAS. this is really beneficial</p></li>\n<li><p>In the end of July I finally overcome this, with only carefully tuning data augment a bit .</p></li>\n</ol>\n<h2>Solution and Further</h2>\n<ol>\n<li><p>My solution is detailed in code commit </p></li>\n<li><p>Augment in classification and hyperparams in Yolox is far  away from tuning to the best</p></li>\n<li><p>label smooth mixup also is still waiting to be added, maybe next competition a will try it fully</p></li>\n<li><p>Next time a shall try more on unsupervised methods and different Block architectures</p></li>\n</ol>\n<h1>Thanks</h1>\n<ol>\n<li><p>When I meet the roadblock I search over many resource and make 2 posts in discuss, I 'm very appreciating for every reply and suggestion</p></li>\n<li><p>And want to give a thinks to everyone make advisors and contribute to open source , without this I can hardly learn anything</p></li>\n</ol>",
      "rawMarkdown": "> What I learned Most in this competition is how to fight against overfitting\n\n## Model:\nEfficientnetv2m + yolom tta LB 6.27 PB 6.13 \nEfficientnetv2m + yolox tta LB 6.29 PB 6.15\n\n## Ensemble In finnaly submit \nI use efficientnetv2m + efficientnetb3 + yolom + yolox for divierce but still LB 6.29 PB 6.15\n\n## Code:\nClassify model: https://www.kaggle.com/drzhuzhe/covid19-classify/\nDetection model: https://www.kaggle.com/drzhuzhe/covid19-det\nEmsemble(Version 17): https://www.kaggle.com/drzhuzhe/v2-covid-submit\n\n# Summary:\n\n## Problem definition and analysis\n\n1. In this last week of June I take a tour on discuss of this competition, I think this key in this competition is make use of multi task data to get a better performance \n\n2. So that what goal set to my self is customize block for make use information in object detection box to help classification , vice versa.\n\n## RoadBlock \n\n1.  I reproduce Hengck's code very quickly ,\n   But Frustratedly, whatever I change a bit of this code , I get a very bad result \n   I try attach AUX head to different block , multi output , gradient accumulate \n   But due to my mistake of lacking data augment, I cannot move a step in a almost whole July month\n\n2.  This is most because In beginning I think I must be make a mistake in using TIMM , \n   So I carefully read TIMM implementation of EfiicientnetV2 and compare it to original \n   Implementation, I go over concept and idea of NAS. this is really beneficial\n\n3.  In the end of July I finally overcome this, with only carefully tuning data augment a bit .\n\n## Solution and Further\n\n1. My solution is detailed in code commit \n\n2. Augment in classification and hyperparams in Yolox is far  away from tuning to the best\n\n3. label smooth mixup also is still waiting to be added, maybe next competition a will try it fully\n\n4. Next time a shall try more on unsupervised methods and different Block architectures\n\n# Thanks\n\n1. When I meet the roadblock I search over many resource and make 2 posts in discuss, I 'm very appreciating for every reply and suggestion\n\n2. And want to give a thinks to everyone make advisors and contribute to open source , without this I can hardly learn anything",
      "votes": null
    },
    {
      "id": "1464145",
      "postDate": "08/10/2021 13:13:44",
      "content": "<p>Thanks for sharing the solution and congrats.</p>",
      "rawMarkdown": "Thanks for sharing the solution and congrats.",
      "votes": null
    },
    {
      "id": "1467550",
      "postDate": "08/12/2021 03:41:45",
      "content": "<p><a href=\"https://www.kaggle.com/drzhuzhe\" target=\"_blank\">@drzhuzhe</a> congratulations, I've learnt a lot from the notebook you shared, and finally I struggled to get a bronze medal, respect!! may I ask which company you are working for?</p>",
      "rawMarkdown": "drzhuzhe congratulations, I've learnt a lot from the notebook you shared, and finally I struggled to get a bronze medal, respect!! may I ask which company you are working for?",
      "votes": null
    },
    {
      "id": "1467990",
      "postDate": "08/12/2021 08:03:20",
      "content": "<p>Haha , I have been fired from China Tech giant, I'm an independent developer now</p>",
      "rawMarkdown": "Haha , I have been fired from China Tech giant, I'm an independent developer now",
      "votes": null
    },
    {
      "id": "1468201",
      "postDate": "08/12/2021 09:52:06",
      "content": "<p>说出你的故事 haha</p>",
      "rawMarkdown": "说出你的故事 haha",
      "votes": null
    },
    {
      "id": "1468340",
      "postDate": "08/12/2021 11:15:03",
      "content": "<p>你通过kaggle的contact发个联系方式给我吧，你要找工作吗？</p>",
      "rawMarkdown": "你通过kaggle的contact发个联系方式给我吧，你要找工作吗？",
      "votes": null
    },
    {
      "id": "1469477",
      "postDate": "08/13/2021 00:48:01",
      "content": "<p>Hi congratulations 🎉 but please can you explain to me what is effnet ?</p>",
      "rawMarkdown": "Hi congratulations 🎉 but please can you explain to me what is effnet ?",
      "votes": null
    },
    {
      "id": "1469545",
      "postDate": "08/13/2021 02:22:49",
      "content": "<p>effnet == efficientnet</p>",
      "rawMarkdown": "effnet == efficientnet",
      "votes": null
    },
    {
      "id": "1596458",
      "postDate": "11/26/2021 14:06:51",
      "content": "<p>Hello, I am trying to run your notebook <strong>v2 covid-submit</strong> in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'</p>\n<p>How can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.</p>\n<p>Please help. </p>",
      "rawMarkdown": "Hello, I am trying to run your notebook **v2 covid-submit** in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'\n\nHow can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.\n\nPlease help.",
      "votes": null
    },
    {
      "id": "1596957",
      "postDate": "11/27/2021 03:38:30",
      "content": "<blockquote>\n  <p>Hello, I am trying to run your notebook v2 covid-submit in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'</p>\n</blockquote>\n<p>This is because model checkpoint is hidden</p>\n<blockquote>\n  <p>How can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.</p>\n</blockquote>\n<p>This is because kaggle P100 is too slow to run efficientnetV2-m <br>\nit will take 5(fold) * 4 hours more than 20 hours </p>\n<p>So when I train it, I used V100 GPU in Colab Pro (rent it with 10$ per month) <br>\nit will be 5 times faster so that will only take about 4 hour 5 fold in total </p>\n<p>If you want to have a quickly reproduce check<br>\nyou can use <code>VERSION 8</code>  in <br>\n<a href=\"https://www.kaggle.com/drzhuzhe/covid19-classify\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/covid19-classify</a> <br>\nthis is a lightly version with EfficientnetB3 backbone<br>\nit will take 2 hour on Kaggle P100 GPU per single fold</p>\n<p>I used to use it to debug<br>\nIt will produce a result slightly worse than EfficientnetV2</p>\n<p>b3:   (3.76 + 3.92 + 3.85 + 3.7 + 3.6)/5 avg Map 3.766 LB: 4.44<br>\nv2m:  (0.392 + 0.392 + 0.385 + 0.381 + 0.374) avg Map  0.384  LB score 0.452</p>",
      "rawMarkdown": "> Hello, I am trying to run your notebook v2 covid-submit in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'\n\nThis is because model checkpoint is hidden\n\n> How can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.\n\nThis is because kaggle P100 is too slow to run efficientnetV2-m \nit will take 5(fold) * 4 hours more than 20 hours \n\nSo when I train it, I used V100 GPU in Colab Pro (rent it with 10$ per month) \nit will be 5 times faster so that will only take about 4 hour 5 fold in total \n\nIf you want to have a quickly reproduce check\nyou can use `VERSION 8`  in \nhttps://www.kaggle.com/drzhuzhe/covid19-classify \nthis is a lightly version with EfficientnetB3 backbone\nit will take 2 hour on Kaggle P100 GPU per single fold\n\nI used to use it to debug\nIt will produce a result slightly worse than EfficientnetV2\n\nb3:   (3.76 + 3.92 + 3.85 + 3.7 + 3.6)/5 avg Map 3.766 LB: 4.44\nv2m:  (0.392 + 0.392 + 0.385 + 0.381 + 0.374) avg Map  0.384  LB score 0.452",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1464145,
      "author_name": "furcifer",
      "author_url": "",
      "post_date": "08/10/2021 13:13:44",
      "content": "<p>Thanks for sharing the solution and congrats.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1467550,
      "author_name": "plugin1689",
      "author_url": "",
      "post_date": "08/12/2021 03:41:45",
      "content": "<p><a href=\"https://www.kaggle.com/drzhuzhe\" target=\"_blank\">@drzhuzhe</a> congratulations, I've learnt a lot from the notebook you shared, and finally I struggled to get a bronze medal, respect!! may I ask which company you are working for?</p>",
      "votes": null,
      "replies": [
        {
          "id": 1467990,
          "author_name": "drzhuzhe",
          "author_url": "",
          "post_date": "08/12/2021 08:03:20",
          "content": "<p>Haha , I have been fired from China Tech giant, I'm an independent developer now</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1468201,
          "author_name": "plugin1689",
          "author_url": "",
          "post_date": "08/12/2021 09:52:06",
          "content": "<p>说出你的故事 haha</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1468340,
          "author_name": "drzhuzhe",
          "author_url": "",
          "post_date": "08/12/2021 11:15:03",
          "content": "<p>你通过kaggle的contact发个联系方式给我吧，你要找工作吗？</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1469477,
      "author_name": "iniestamoh",
      "author_url": "",
      "post_date": "08/13/2021 00:48:01",
      "content": "<p>Hi congratulations 🎉 but please can you explain to me what is effnet ?</p>",
      "votes": null,
      "replies": [
        {
          "id": 1469545,
          "author_name": "drzhuzhe",
          "author_url": "",
          "post_date": "08/13/2021 02:22:49",
          "content": "<p>effnet == efficientnet</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1596458,
      "author_name": "awismritparida",
      "author_url": "",
      "post_date": "11/26/2021 14:06:51",
      "content": "<p>Hello, I am trying to run your notebook <strong>v2 covid-submit</strong> in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'</p>\n<p>How can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.</p>\n<p>Please help. </p>",
      "votes": null,
      "replies": [
        {
          "id": 1596957,
          "author_name": "drzhuzhe",
          "author_url": "",
          "post_date": "11/27/2021 03:38:30",
          "content": "<blockquote>\n  <p>Hello, I am trying to run your notebook v2 covid-submit in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'</p>\n</blockquote>\n<p>This is because model checkpoint is hidden</p>\n<blockquote>\n  <p>How can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.</p>\n</blockquote>\n<p>This is because kaggle P100 is too slow to run efficientnetV2-m <br>\nit will take 5(fold) * 4 hours more than 20 hours </p>\n<p>So when I train it, I used V100 GPU in Colab Pro (rent it with 10$ per month) <br>\nit will be 5 times faster so that will only take about 4 hour 5 fold in total </p>\n<p>If you want to have a quickly reproduce check<br>\nyou can use <code>VERSION 8</code>  in <br>\n<a href=\"https://www.kaggle.com/drzhuzhe/covid19-classify\" target=\"_blank\">https://www.kaggle.com/drzhuzhe/covid19-classify</a> <br>\nthis is a lightly version with EfficientnetB3 backbone<br>\nit will take 2 hour on Kaggle P100 GPU per single fold</p>\n<p>I used to use it to debug<br>\nIt will produce a result slightly worse than EfficientnetV2</p>\n<p>b3:   (3.76 + 3.92 + 3.85 + 3.7 + 3.6)/5 avg Map 3.766 LB: 4.44<br>\nv2m:  (0.392 + 0.392 + 0.385 + 0.381 + 0.374) avg Map  0.384  LB score 0.452</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "1463971": "> What I learned Most in this competition is how to fight against overfitting\n\n## Model:\nEfficientnetv2m + yolom tta LB 6.27 PB 6.13 \nEfficientnetv2m + yolox tta LB 6.29 PB 6.15\n\n## Ensemble In finnaly submit \nI use efficientnetv2m + efficientnetb3 + yolom + yolox for divierce but still LB 6.29 PB 6.15\n\n## Code:\nClassify model: https://www.kaggle.com/drzhuzhe/covid19-classify/\nDetection model: https://www.kaggle.com/drzhuzhe/covid19-det\nEmsemble(Version 17): https://www.kaggle.com/drzhuzhe/v2-covid-submit\n\n# Summary:\n\n## Problem definition and analysis\n\n1. In this last week of June I take a tour on discuss of this competition, I think this key in this competition is make use of multi task data to get a better performance \n\n2. So that what goal set to my self is customize block for make use information in object detection box to help classification , vice versa.\n\n## RoadBlock \n\n1.  I reproduce Hengck's code very quickly ,\n   But Frustratedly, whatever I change a bit of this code , I get a very bad result \n   I try attach AUX head to different block , multi output , gradient accumulate \n   But due to my mistake of lacking data augment, I cannot move a step in a almost whole July month\n\n2.  This is most because In beginning I think I must be make a mistake in using TIMM , \n   So I carefully read TIMM implementation of EfiicientnetV2 and compare it to original \n   Implementation, I go over concept and idea of NAS. this is really beneficial\n\n3.  In the end of July I finally overcome this, with only carefully tuning data augment a bit .\n\n## Solution and Further\n\n1. My solution is detailed in code commit \n\n2. Augment in classification and hyperparams in Yolox is far  away from tuning to the best\n\n3. label smooth mixup also is still waiting to be added, maybe next competition a will try it fully\n\n4. Next time a shall try more on unsupervised methods and different Block architectures\n\n# Thanks\n\n1. When I meet the roadblock I search over many resource and make 2 posts in discuss, I 'm very appreciating for every reply and suggestion\n\n2. And want to give a thinks to everyone make advisors and contribute to open source , without this I can hardly learn anything",
    "1464145": "Thanks for sharing the solution and congrats.",
    "1467550": "drzhuzhe congratulations, I've learnt a lot from the notebook you shared, and finally I struggled to get a bronze medal, respect!! may I ask which company you are working for?",
    "1467990": "Haha , I have been fired from China Tech giant, I'm an independent developer now",
    "1468201": "说出你的故事 haha",
    "1468340": "你通过kaggle的contact发个联系方式给我吧，你要找工作吗？",
    "1469477": "Hi congratulations 🎉 but please can you explain to me what is effnet ?",
    "1469545": "effnet == efficientnet",
    "1596458": "Hello, I am trying to run your notebook **v2 covid-submit** in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'\n\nHow can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.\n\nPlease help.",
    "1596957": "> Hello, I am trying to run your notebook v2 covid-submit in kaggle but stuck at some missing file error which goes like this : FileNotFoundError: [Errno 2] No such file or directory: '/kaggle/input/covidmodels/Archive/classify-ep12/f0.pth'\n\nThis is because model checkpoint is hidden\n\n> How can I get these files ? I found your discussion page and executed covid19-classify notebook (I thought this notebook will output the missing model files which I can download and upload), but here also I am hitting dead end because kaggle is closing the notebooks execution after 9 hrs automatically.\n\nThis is because kaggle P100 is too slow to run efficientnetV2-m \nit will take 5(fold) * 4 hours more than 20 hours \n\nSo when I train it, I used V100 GPU in Colab Pro (rent it with 10$ per month) \nit will be 5 times faster so that will only take about 4 hour 5 fold in total \n\nIf you want to have a quickly reproduce check\nyou can use `VERSION 8`  in \nhttps://www.kaggle.com/drzhuzhe/covid19-classify \nthis is a lightly version with EfficientnetB3 backbone\nit will take 2 hour on Kaggle P100 GPU per single fold\n\nI used to use it to debug\nIt will produce a result slightly worse than EfficientnetV2\n\nb3:   (3.76 + 3.92 + 3.85 + 3.7 + 3.6)/5 avg Map 3.766 LB: 4.44\nv2m:  (0.392 + 0.392 + 0.385 + 0.381 + 0.374) avg Map  0.384  LB score 0.452"
  },
  "source": "meta"
}