{
  "id": 175575,
  "title": "7th Place Solution(Short ver.)",
  "url": "/competitions/siim-isic-melanoma-classification/discussion/175575",
  "author_name": "",
  "post_date": "2020-08-18T16:43:52.178527500Z",
  "votes": 18,
  "comment_count": 10,
  "views": 0,
  "content": "<p>Congrats to all winners! Thank you to the organisers and Kaggle for hosting this competition.</p>\n<h1>SIIM-ISIC MELANOMA CLASSIFICATION GOLD-MEDAL APPROACH</h1>\n<h3>BRIEF INTRODUCTION</h3>\n<pre><code>In this competition, you’ll identify melanoma in images of skin lesions. In particular, you’ll use images within the same patient and determine which are likely to represent a melanoma. Using patient-level contextual information may help the development of image analysis tools, which could better support clinical dermatologists.\n\nMelanoma is a deadly disease, but if caught early, most melanomas can be cured with minor surgery. Image analysis tools that automate the diagnosis of melanoma will improve dermatologists' diagnostic accuracy. Better detection of melanoma has the opportunity to positively impact millions of people.\n</code></pre>\n<h3>WHAT I HAVE TRIED</h3>\n<ul>\n<li>Initially  tried working on tabular data classification using CatBoost,XGBoost,LGBM using features('sex','anatom_site','age_approx')</li>\n<li>Mainly relied on efficientnets[B0-B5]</li>\n<li>Split on the basis of StratifiedKFold ,GroupKFold and TFrecords.The major stability of CV and LB was found on <em>Chriss Deotte</em> TFrecords</li>\n<li>Augmentations-<br>\n 1.)AutoAugment<br>\n 2.)Cutmix<br>\n 3.)Cutouts(Num_holes=8,max_h_size=64,max_w_size=64)<br>\n 4.)Flip,Shear-2.0,Rotate-180 degree, CenterCrop , RandomResizedCrop, RandomRotate90</li>\n<li>Have also used Catalyst Balance Sampler(mode='Downsampling')</li>\n<li>SWA ,Snapshot-ensembling</li>\n<li>Trained with freezed batchnorm(Finetune) </li>\n<li>Used Public TPU notebooks(Thanks to <em>chriss deotte</em>)</li>\n<li>Tried different optimizers (Ranger, Ralamb, RangerLars,AdamW) and schedulers(CosineAnnealing,ReduceLROnPlateau and Custom Scheduler)</li>\n<li>Loss function(Focal Loss,Balanced Focal Loss, BCEWithLogitsLoss, Label Smoothing NLL Loss )</li>\n<li>Trained model (CNN+META_DATA(Feature_concatenated))</li>\n<li>25 and 15 TTA used augments (similar to Train )</li>\n</ul>\n<h3>WHAT WORKED OUT</h3>\n<ul>\n<li>AutoAugment gave boost(+0.01%)</li>\n<li>SnapshotEnsemble(boost=1%)</li>\n<li>Progressive learning</li>\n<li>Only BCEwithlogitsloss gave significant boost</li>\n<li>Cutmix (+0.01%)</li>\n<li>Random_Resized_Crop(+0.05%)</li>\n<li>TTA(boost=0.005%)</li>\n<li>Ensemble</li>\n<li>Highly uncorrelated predication ensemble(boost=0.001%)</li>\n<li>Gradual Warmup</li>\n</ul>\n<h3>WHAT DIDN'T WORKED</h3>\n<ul>\n<li>Balance Sampler</li>\n<li>SWA</li>\n<li>Weighted Focal loss</li>\n<li>Freezed Batchnormalisation layer</li>\n<li>Gradient Accumulation</li>\n<li>Hair Augmentation</li>\n<li>2019 dataset</li>\n</ul>\n<h3>ENSEMBLE TECHNIQUES( Rescaling between(0-1))</h3>\n<ul>\n<li>Weighted ensemble(GRID SEARCH ON CV)</li>\n<li>Trim ensemble</li>\n<li>Min-max-ensemble</li>\n<li>Post processing technique(JIGSAW Competition)</li>\n<li>Weighted ensemble of meta-model and Image model(GRID SEARCH ON CV)</li>\n<li>Weighted Ensemble of model trained on 2019 dataset and combined 2020 and 2018 dataset(GRID SEARCH ON CV)</li>\n<li>Average ensemble</li>\n</ul>\n<h3>NOTEWORTHY</h3>\n<p>Trained model on image-size(384) and when validated on different image-sizes(384,456,512) and found out surprising result , the model which was actually trained on 384 gave better val roc-auc on 456 and 512 image size.Then  ensemble them which gave better results.</p>\n<ul>\n<li>Trained on 384 validated on different sizes<br>\n<img src=\"https://drive.google.com/uc?export=view&amp;id=15kj9adOhOVnFiH0Mssq4nYkkcB7LigAy\" alt=\"image\"> </li>\n</ul>\n<h3>MY MODEL FOR BLENDING CNN AND META DATA</h3>\n<p><img src=\"https://drive.google.com/uc?export=view&amp;id=1bLKU9LUZ_0ahr2VNiiPiOtTe0SbYcTvD\" alt=\"image\"></p>\n<h3>Special Thanks:</h3>\n<ul>\n<li><a href=\"https://www.kaggle.com/cdeotte\" target=\"_blank\">@cdeotte</a>, <a href=\"https://www.kaggle.com/shonenkov\" target=\"_blank\">@shonenkov</a> , <a href=\"https://www.kaggle.com/nroman\" target=\"_blank\">@nroman</a>, <a href=\"https://www.kaggle.com/khoongweihao\" target=\"_blank\">@khoongweihao</a></li>\n</ul>",
  "messages": [
    {
      "id": "976130",
      "postDate": "08/18/2020 16:43:52",
      "content": "<p>Congrats to all winners! Thank you to the organisers and Kaggle for hosting this competition.</p>\n<h1>SIIM-ISIC MELANOMA CLASSIFICATION GOLD-MEDAL APPROACH</h1>\n<h3>BRIEF INTRODUCTION</h3>\n<pre><code>In this competition, you’ll identify melanoma in images of skin lesions. In particular, you’ll use images within the same patient and determine which are likely to represent a melanoma. Using patient-level contextual information may help the development of image analysis tools, which could better support clinical dermatologists.\n\nMelanoma is a deadly disease, but if caught early, most melanomas can be cured with minor surgery. Image analysis tools that automate the diagnosis of melanoma will improve dermatologists' diagnostic accuracy. Better detection of melanoma has the opportunity to positively impact millions of people.\n</code></pre>\n<h3>WHAT I HAVE TRIED</h3>\n<ul>\n<li>Initially  tried working on tabular data classification using CatBoost,XGBoost,LGBM using features('sex','anatom_site','age_approx')</li>\n<li>Mainly relied on efficientnets[B0-B5]</li>\n<li>Split on the basis of StratifiedKFold ,GroupKFold and TFrecords.The major stability of CV and LB was found on <em>Chriss Deotte</em> TFrecords</li>\n<li>Augmentations-<br>\n 1.)AutoAugment<br>\n 2.)Cutmix<br>\n 3.)Cutouts(Num_holes=8,max_h_size=64,max_w_size=64)<br>\n 4.)Flip,Shear-2.0,Rotate-180 degree, CenterCrop , RandomResizedCrop, RandomRotate90</li>\n<li>Have also used Catalyst Balance Sampler(mode='Downsampling')</li>\n<li>SWA ,Snapshot-ensembling</li>\n<li>Trained with freezed batchnorm(Finetune) </li>\n<li>Used Public TPU notebooks(Thanks to <em>chriss deotte</em>)</li>\n<li>Tried different optimizers (Ranger, Ralamb, RangerLars,AdamW) and schedulers(CosineAnnealing,ReduceLROnPlateau and Custom Scheduler)</li>\n<li>Loss function(Focal Loss,Balanced Focal Loss, BCEWithLogitsLoss, Label Smoothing NLL Loss )</li>\n<li>Trained model (CNN+META_DATA(Feature_concatenated))</li>\n<li>25 and 15 TTA used augments (similar to Train )</li>\n</ul>\n<h3>WHAT WORKED OUT</h3>\n<ul>\n<li>AutoAugment gave boost(+0.01%)</li>\n<li>SnapshotEnsemble(boost=1%)</li>\n<li>Progressive learning</li>\n<li>Only BCEwithlogitsloss gave significant boost</li>\n<li>Cutmix (+0.01%)</li>\n<li>Random_Resized_Crop(+0.05%)</li>\n<li>TTA(boost=0.005%)</li>\n<li>Ensemble</li>\n<li>Highly uncorrelated predication ensemble(boost=0.001%)</li>\n<li>Gradual Warmup</li>\n</ul>\n<h3>WHAT DIDN'T WORKED</h3>\n<ul>\n<li>Balance Sampler</li>\n<li>SWA</li>\n<li>Weighted Focal loss</li>\n<li>Freezed Batchnormalisation layer</li>\n<li>Gradient Accumulation</li>\n<li>Hair Augmentation</li>\n<li>2019 dataset</li>\n</ul>\n<h3>ENSEMBLE TECHNIQUES( Rescaling between(0-1))</h3>\n<ul>\n<li>Weighted ensemble(GRID SEARCH ON CV)</li>\n<li>Trim ensemble</li>\n<li>Min-max-ensemble</li>\n<li>Post processing technique(JIGSAW Competition)</li>\n<li>Weighted ensemble of meta-model and Image model(GRID SEARCH ON CV)</li>\n<li>Weighted Ensemble of model trained on 2019 dataset and combined 2020 and 2018 dataset(GRID SEARCH ON CV)</li>\n<li>Average ensemble</li>\n</ul>\n<h3>NOTEWORTHY</h3>\n<p>Trained model on image-size(384) and when validated on different image-sizes(384,456,512) and found out surprising result , the model which was actually trained on 384 gave better val roc-auc on 456 and 512 image size.Then  ensemble them which gave better results.</p>\n<ul>\n<li>Trained on 384 validated on different sizes<br>\n<img src=\"https://drive.google.com/uc?export=view&amp;id=15kj9adOhOVnFiH0Mssq4nYkkcB7LigAy\" alt=\"image\"> </li>\n</ul>\n<h3>MY MODEL FOR BLENDING CNN AND META DATA</h3>\n<p><img src=\"https://drive.google.com/uc?export=view&amp;id=1bLKU9LUZ_0ahr2VNiiPiOtTe0SbYcTvD\" alt=\"image\"></p>\n<h3>Special Thanks:</h3>\n<ul>\n<li><a href=\"https://www.kaggle.com/cdeotte\" target=\"_blank\">@cdeotte</a>, <a href=\"https://www.kaggle.com/shonenkov\" target=\"_blank\">@shonenkov</a> , <a href=\"https://www.kaggle.com/nroman\" target=\"_blank\">@nroman</a>, <a href=\"https://www.kaggle.com/khoongweihao\" target=\"_blank\">@khoongweihao</a></li>\n</ul>",
      "rawMarkdown": "Congrats to all winners! Thank you to the organisers and Kaggle for hosting this competition.\n# SIIM-ISIC MELANOMA CLASSIFICATION GOLD-MEDAL APPROACH\n### BRIEF INTRODUCTION\n    In this competition, you’ll identify melanoma in images of skin lesions. In particular, you’ll use images within the same patient and determine which are likely to represent a melanoma. Using patient-level contextual information may help the development of image analysis tools, which could better support clinical dermatologists.\n\n    Melanoma is a deadly disease, but if caught early, most melanomas can be cured with minor surgery. Image analysis tools that automate the diagnosis of melanoma will improve dermatologists' diagnostic accuracy. Better detection of melanoma has the opportunity to positively impact millions of people.\n\n### WHAT I HAVE TRIED \n  - Initially  tried working on tabular data classification using CatBoost,XGBoost,LGBM using features('sex','anatom_site','age_approx')\n  - Mainly relied on efficientnets[B0-B5]\n  - Split on the basis of StratifiedKFold ,GroupKFold and TFrecords.The major stability of CV and LB was found on *Chriss Deotte* TFrecords\n  -  Augmentations-\n     1.)AutoAugment\n     2.)Cutmix\n     3.)Cutouts(Num_holes=8,max_h_size=64,max_w_size=64)\n     4.)Flip,Shear-2.0,Rotate-180 degree, CenterCrop , RandomResizedCrop, RandomRotate90\n  - Have also used Catalyst Balance Sampler(mode='Downsampling')\n  - SWA ,Snapshot-ensembling\n  - Trained with freezed batchnorm(Finetune) \n  - Used Public TPU notebooks(Thanks to *chriss deotte*)\n  - Tried different optimizers (Ranger, Ralamb, RangerLars,AdamW) and schedulers(CosineAnnealing,ReduceLROnPlateau and Custom Scheduler)\n  - Loss function(Focal Loss,Balanced Focal Loss, BCEWithLogitsLoss, Label Smoothing NLL Loss )\n  - Trained model (CNN+META_DATA(Feature_concatenated))\n  - 25 and 15 TTA used augments (similar to Train )\n\n### WHAT WORKED OUT \n\n  - AutoAugment gave boost(+0.01%)\n  - SnapshotEnsemble(boost=1%)\n  - Progressive learning\n  - Only BCEwithlogitsloss gave significant boost\n  - Cutmix (+0.01%)\n  - Random_Resized_Crop(+0.05%)\n  - TTA(boost=0.005%)\n  - Ensemble\n  - Highly uncorrelated predication ensemble(boost=0.001%)\n  - Gradual Warmup\n\n### WHAT DIDN'T WORKED\n  - Balance Sampler\n  - SWA\n  - Weighted Focal loss\n  - Freezed Batchnormalisation layer\n  - Gradient Accumulation\n  - Hair Augmentation\n  - 2019 dataset\n\n### ENSEMBLE TECHNIQUES( Rescaling between(0-1))\n  - Weighted ensemble(GRID SEARCH ON CV)\n  - Trim ensemble\n  - Min-max-ensemble\n  - Post processing technique(JIGSAW Competition)\n  - Weighted ensemble of meta-model and Image model(GRID SEARCH ON CV)\n  - Weighted Ensemble of model trained on 2019 dataset and combined 2020 and 2018 dataset(GRID SEARCH ON CV)\n  - Average ensemble\n\n### NOTEWORTHY\n Trained model on image-size(384) and when validated on different image-sizes(384,456,512) and found out surprising result , the model which was actually trained on 384 gave better val roc-auc on 456 and 512 image size.Then  ensemble them which gave better results.\n- Trained on 384 validated on different sizes\n![image](https://drive.google.com/uc?export=view&id=15kj9adOhOVnFiH0Mssq4nYkkcB7LigAy) \n\n### MY MODEL FOR BLENDING CNN AND META DATA\n![image](https://drive.google.com/uc?export=view&id=1bLKU9LUZ_0ahr2VNiiPiOtTe0SbYcTvD)\n\n\n### Special Thanks:\n- @cdeotte, @shonenkov , @nroman, @khoongweihao",
      "votes": null
    },
    {
      "id": "976180",
      "postDate": "08/18/2020 17:38:11",
      "content": "<p>Thanks for sharing your approach <a href=\"https://www.kaggle.com/tg1234yfy\" target=\"_blank\">@tg1234yfy</a> , will be looking forward to your solution. And congratulations now you are at 7th instead of 10th position on private LB.</p>",
      "rawMarkdown": "Thanks for sharing your approach @tg1234yfy , will be looking forward to your solution. And congratulations now you are at 7th instead of 10th position on private LB.",
      "votes": null
    },
    {
      "id": "976886",
      "postDate": "08/19/2020 06:43:30",
      "content": "<p>Thanks <a href=\"https://www.kaggle.com/karrak3256\" target=\"_blank\">@karrak3256</a>.</p>",
      "rawMarkdown": "Thanks @karrak3256.",
      "votes": null
    },
    {
      "id": "976972",
      "postDate": "08/19/2020 07:53:49",
      "content": "<blockquote>\n  <p>WHAT DIDN'T WORKED<br>\n  …<br>\n  Gradient Accumulation</p>\n</blockquote>\n<p>And a guy from the first place says that gradient accumulation worked for him. What a magic competition.</p>",
      "rawMarkdown": "> WHAT DIDN'T WORKED\n> ...\n> Gradient Accumulation\n\nAnd a guy from the first place says that gradient accumulation worked for him. What a magic competition.",
      "votes": null
    },
    {
      "id": "977738",
      "postDate": "08/19/2020 17:18:27",
      "content": "<p>First of all Thanks for your great Kernel <a href=\"https://www.kaggle.com/nroman\" target=\"_blank\">@nroman</a> .I tried it only once but it didn't gave boost,maybe I haven't optimized the model correctly.</p>",
      "rawMarkdown": "First of all Thanks for your great Kernel @nroman .I tried it only once but it didn't gave boost,maybe I haven't optimized the model correctly.",
      "votes": null
    },
    {
      "id": "980192",
      "postDate": "08/21/2020 11:41:23",
      "content": "<p>Thanks for sharing write up and congrats on gold!<br>\nIn What Worked Out section, does x%boost mean CV auc gets + 0.0x? or 0.000x?</p>",
      "rawMarkdown": "Thanks for sharing write up and congrats on gold!\nIn What Worked Out section, does x%boost mean CV auc gets + 0.0x? or 0.000x?",
      "votes": null
    },
    {
      "id": "980195",
      "postDate": "08/21/2020 11:45:19",
      "content": "<p>Thanks for sharing and congrats on your result.  Your finding that models perform better on larger test images looks related to this: <a href=\"https://papers.nips.cc/paper/9035-fixing-the-train-test-resolution-discrepancy.pdf\" target=\"_blank\">https://papers.nips.cc/paper/9035-fixing-the-train-test-resolution-discrepancy.pdf</a></p>",
      "rawMarkdown": "Thanks for sharing and congrats on your result.  Your finding that models perform better on larger test images looks related to this: https://papers.nips.cc/paper/9035-fixing-the-train-test-resolution-discrepancy.pdf",
      "votes": null
    },
    {
      "id": "980210",
      "postDate": "08/21/2020 12:11:41",
      "content": "<p>Thanks <a href=\"https://www.kaggle.com/cpmpml\" target=\"_blank\">@cpmpml</a> and yes my intuition is similar to this paper but I had tried with adaptive average pooling and it gave good performance</p>",
      "rawMarkdown": "Thanks @cpmpml and yes my intuition is similar to this paper but I had tried with adaptive average pooling and it gave good performance",
      "votes": null
    },
    {
      "id": "980217",
      "postDate": "08/21/2020 12:19:23",
      "content": "<p>Thanks <a href=\"https://www.kaggle.com/ajtryt2\" target=\"_blank\">@ajtryt2</a>  and  x%boost mean CV auc gets + 0.0x</p>",
      "rawMarkdown": "Thanks @ajtryt2  and  x%boost mean CV auc gets + 0.0x",
      "votes": null
    },
    {
      "id": "980222",
      "postDate": "08/21/2020 12:20:47",
      "content": "<p>Your way is certainly very easy to try, I'll keep it in mind&gt;</p>",
      "rawMarkdown": "Your way is certainly very easy to try, I'll keep it in mind>",
      "votes": null
    },
    {
      "id": "980226",
      "postDate": "08/21/2020 12:23:29",
      "content": "<p>Sure,Thanks a lot</p>",
      "rawMarkdown": "Sure,Thanks a lot",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 976180,
      "author_name": "karrak3256",
      "author_url": "",
      "post_date": "08/18/2020 17:38:11",
      "content": "<p>Thanks for sharing your approach <a href=\"https://www.kaggle.com/tg1234yfy\" target=\"_blank\">@tg1234yfy</a> , will be looking forward to your solution. And congratulations now you are at 7th instead of 10th position on private LB.</p>",
      "votes": null,
      "replies": [
        {
          "id": 976886,
          "author_name": "",
          "author_url": "",
          "post_date": "08/19/2020 06:43:30",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/karrak3256\" target=\"_blank\">@karrak3256</a>.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 976972,
      "author_name": "nroman",
      "author_url": "",
      "post_date": "08/19/2020 07:53:49",
      "content": "<blockquote>\n  <p>WHAT DIDN'T WORKED<br>\n  …<br>\n  Gradient Accumulation</p>\n</blockquote>\n<p>And a guy from the first place says that gradient accumulation worked for him. What a magic competition.</p>",
      "votes": null,
      "replies": [
        {
          "id": 977738,
          "author_name": "",
          "author_url": "",
          "post_date": "08/19/2020 17:18:27",
          "content": "<p>First of all Thanks for your great Kernel <a href=\"https://www.kaggle.com/nroman\" target=\"_blank\">@nroman</a> .I tried it only once but it didn't gave boost,maybe I haven't optimized the model correctly.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 980192,
      "author_name": "ajtryt2",
      "author_url": "",
      "post_date": "08/21/2020 11:41:23",
      "content": "<p>Thanks for sharing write up and congrats on gold!<br>\nIn What Worked Out section, does x%boost mean CV auc gets + 0.0x? or 0.000x?</p>",
      "votes": null,
      "replies": [
        {
          "id": 980217,
          "author_name": "",
          "author_url": "",
          "post_date": "08/21/2020 12:19:23",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/ajtryt2\" target=\"_blank\">@ajtryt2</a>  and  x%boost mean CV auc gets + 0.0x</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 980195,
      "author_name": "cpmpml",
      "author_url": "",
      "post_date": "08/21/2020 11:45:19",
      "content": "<p>Thanks for sharing and congrats on your result.  Your finding that models perform better on larger test images looks related to this: <a href=\"https://papers.nips.cc/paper/9035-fixing-the-train-test-resolution-discrepancy.pdf\" target=\"_blank\">https://papers.nips.cc/paper/9035-fixing-the-train-test-resolution-discrepancy.pdf</a></p>",
      "votes": null,
      "replies": [
        {
          "id": 980210,
          "author_name": "",
          "author_url": "",
          "post_date": "08/21/2020 12:11:41",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/cpmpml\" target=\"_blank\">@cpmpml</a> and yes my intuition is similar to this paper but I had tried with adaptive average pooling and it gave good performance</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 980222,
          "author_name": "cpmpml",
          "author_url": "",
          "post_date": "08/21/2020 12:20:47",
          "content": "<p>Your way is certainly very easy to try, I'll keep it in mind&gt;</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 980226,
          "author_name": "",
          "author_url": "",
          "post_date": "08/21/2020 12:23:29",
          "content": "<p>Sure,Thanks a lot</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "976130": "Congrats to all winners! Thank you to the organisers and Kaggle for hosting this competition.\n# SIIM-ISIC MELANOMA CLASSIFICATION GOLD-MEDAL APPROACH\n### BRIEF INTRODUCTION\n    In this competition, you’ll identify melanoma in images of skin lesions. In particular, you’ll use images within the same patient and determine which are likely to represent a melanoma. Using patient-level contextual information may help the development of image analysis tools, which could better support clinical dermatologists.\n\n    Melanoma is a deadly disease, but if caught early, most melanomas can be cured with minor surgery. Image analysis tools that automate the diagnosis of melanoma will improve dermatologists' diagnostic accuracy. Better detection of melanoma has the opportunity to positively impact millions of people.\n\n### WHAT I HAVE TRIED \n  - Initially  tried working on tabular data classification using CatBoost,XGBoost,LGBM using features('sex','anatom_site','age_approx')\n  - Mainly relied on efficientnets[B0-B5]\n  - Split on the basis of StratifiedKFold ,GroupKFold and TFrecords.The major stability of CV and LB was found on *Chriss Deotte* TFrecords\n  -  Augmentations-\n     1.)AutoAugment\n     2.)Cutmix\n     3.)Cutouts(Num_holes=8,max_h_size=64,max_w_size=64)\n     4.)Flip,Shear-2.0,Rotate-180 degree, CenterCrop , RandomResizedCrop, RandomRotate90\n  - Have also used Catalyst Balance Sampler(mode='Downsampling')\n  - SWA ,Snapshot-ensembling\n  - Trained with freezed batchnorm(Finetune) \n  - Used Public TPU notebooks(Thanks to *chriss deotte*)\n  - Tried different optimizers (Ranger, Ralamb, RangerLars,AdamW) and schedulers(CosineAnnealing,ReduceLROnPlateau and Custom Scheduler)\n  - Loss function(Focal Loss,Balanced Focal Loss, BCEWithLogitsLoss, Label Smoothing NLL Loss )\n  - Trained model (CNN+META_DATA(Feature_concatenated))\n  - 25 and 15 TTA used augments (similar to Train )\n\n### WHAT WORKED OUT \n\n  - AutoAugment gave boost(+0.01%)\n  - SnapshotEnsemble(boost=1%)\n  - Progressive learning\n  - Only BCEwithlogitsloss gave significant boost\n  - Cutmix (+0.01%)\n  - Random_Resized_Crop(+0.05%)\n  - TTA(boost=0.005%)\n  - Ensemble\n  - Highly uncorrelated predication ensemble(boost=0.001%)\n  - Gradual Warmup\n\n### WHAT DIDN'T WORKED\n  - Balance Sampler\n  - SWA\n  - Weighted Focal loss\n  - Freezed Batchnormalisation layer\n  - Gradient Accumulation\n  - Hair Augmentation\n  - 2019 dataset\n\n### ENSEMBLE TECHNIQUES( Rescaling between(0-1))\n  - Weighted ensemble(GRID SEARCH ON CV)\n  - Trim ensemble\n  - Min-max-ensemble\n  - Post processing technique(JIGSAW Competition)\n  - Weighted ensemble of meta-model and Image model(GRID SEARCH ON CV)\n  - Weighted Ensemble of model trained on 2019 dataset and combined 2020 and 2018 dataset(GRID SEARCH ON CV)\n  - Average ensemble\n\n### NOTEWORTHY\n Trained model on image-size(384) and when validated on different image-sizes(384,456,512) and found out surprising result , the model which was actually trained on 384 gave better val roc-auc on 456 and 512 image size.Then  ensemble them which gave better results.\n- Trained on 384 validated on different sizes\n![image](https://drive.google.com/uc?export=view&id=15kj9adOhOVnFiH0Mssq4nYkkcB7LigAy) \n\n### MY MODEL FOR BLENDING CNN AND META DATA\n![image](https://drive.google.com/uc?export=view&id=1bLKU9LUZ_0ahr2VNiiPiOtTe0SbYcTvD)\n\n\n### Special Thanks:\n- @cdeotte, @shonenkov , @nroman, @khoongweihao",
    "976180": "Thanks for sharing your approach @tg1234yfy , will be looking forward to your solution. And congratulations now you are at 7th instead of 10th position on private LB.",
    "976886": "Thanks @karrak3256.",
    "976972": "> WHAT DIDN'T WORKED\n> ...\n> Gradient Accumulation\n\nAnd a guy from the first place says that gradient accumulation worked for him. What a magic competition.",
    "977738": "First of all Thanks for your great Kernel @nroman .I tried it only once but it didn't gave boost,maybe I haven't optimized the model correctly.",
    "980192": "Thanks for sharing write up and congrats on gold!\nIn What Worked Out section, does x%boost mean CV auc gets + 0.0x? or 0.000x?",
    "980195": "Thanks for sharing and congrats on your result.  Your finding that models perform better on larger test images looks related to this: https://papers.nips.cc/paper/9035-fixing-the-train-test-resolution-discrepancy.pdf",
    "980210": "Thanks @cpmpml and yes my intuition is similar to this paper but I had tried with adaptive average pooling and it gave good performance",
    "980217": "Thanks @ajtryt2  and  x%boost mean CV auc gets + 0.0x",
    "980222": "Your way is certainly very easy to try, I'll keep it in mind>",
    "980226": "Sure,Thanks a lot"
  },
  "source": "meta"
}