{
  "id": 226559,
  "title": "140th place solution ",
  "url": "/competitions/ranzcr-clip-catheter-line-classification/writeups/ktm-140th-place-solution",
  "author_name": "",
  "post_date": "2021-03-17T00:08:37.818002300Z",
  "votes": 15,
  "comment_count": 9,
  "views": 0,
  "content": "<p>First of all, thanks to <strong>Royal Australian &amp; NZ College of Radiologists</strong> and <strong>kaggle</strong> for organizing this competition. </p>\n<h1>Summary</h1>\n<p>Private LB: 0.970</p>\n<p><img src=\"https://user-images.githubusercontent.com/66665933/111384982-7ef09800-86ed-11eb-89cd-5848b0b41f8c.png\" alt=\"input_pipeline (1)\"></p>\n<table>\n<thead>\n<tr>\n<th>Model</th>\n<th>Note</th>\n<th>CV</th>\n<th>LB</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ResNet200D</td>\n<td></td>\n<td>0.9566</td>\n<td>0.965</td>\n</tr>\n<tr>\n<td>Multi-Head ResNet200D</td>\n<td><a href=\"https://www.kaggle.com/ttahara\" target=\"_blank\">@ttahara</a>'s multi-head approach</td>\n<td>0.9639</td>\n<td>0.963</td>\n</tr>\n<tr>\n<td>EfficientNet B5</td>\n<td></td>\n<td>0.9570</td>\n<td>0.96</td>\n</tr>\n<tr>\n<td>Resnet200D</td>\n<td>pseudo labelling test</td>\n<td>0.9628</td>\n<td>0.965</td>\n</tr>\n<tr>\n<td>Weight Average of these models</td>\n<td></td>\n<td>0.9673</td>\n<td>0.967</td>\n</tr>\n<tr>\n<td>Stacking(sub1)</td>\n<td>powered average with weights</td>\n<td>0.9681</td>\n<td>0.968</td>\n</tr>\n<tr>\n<td>Stacking(sub2)</td>\n<td>powered average with weights</td>\n<td>0.9676</td>\n<td>0.968</td>\n</tr>\n</tbody>\n</table>\n<ul>\n<li>StratifiedGroupKFolds(k=5)</li>\n<li><a href=\"https://www.kaggle.com/ammarali32\" target=\"_blank\">@ammarali32</a>’s pretrained weights </li>\n<li>heavy augmentation</li>\n<li>Adam+OneCycleR</li>\n<li>2×TTA(Horizontal Flip)</li>\n<li>weight average</li>\n<li>stacking of 4 models</li>\n</ul>\n<p>Let me know if you have any questions. Thank you:). </p>",
  "messages": [
    {
      "id": "1241196",
      "postDate": "03/17/2021 00:08:37",
      "content": "<p>First of all, thanks to <strong>Royal Australian &amp; NZ College of Radiologists</strong> and <strong>kaggle</strong> for organizing this competition. </p>\n<h1>Summary</h1>\n<p>Private LB: 0.970</p>\n<p><img src=\"https://user-images.githubusercontent.com/66665933/111384982-7ef09800-86ed-11eb-89cd-5848b0b41f8c.png\" alt=\"input_pipeline (1)\"></p>\n<table>\n<thead>\n<tr>\n<th>Model</th>\n<th>Note</th>\n<th>CV</th>\n<th>LB</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ResNet200D</td>\n<td></td>\n<td>0.9566</td>\n<td>0.965</td>\n</tr>\n<tr>\n<td>Multi-Head ResNet200D</td>\n<td><a href=\"https://www.kaggle.com/ttahara\" target=\"_blank\">@ttahara</a>'s multi-head approach</td>\n<td>0.9639</td>\n<td>0.963</td>\n</tr>\n<tr>\n<td>EfficientNet B5</td>\n<td></td>\n<td>0.9570</td>\n<td>0.96</td>\n</tr>\n<tr>\n<td>Resnet200D</td>\n<td>pseudo labelling test</td>\n<td>0.9628</td>\n<td>0.965</td>\n</tr>\n<tr>\n<td>Weight Average of these models</td>\n<td></td>\n<td>0.9673</td>\n<td>0.967</td>\n</tr>\n<tr>\n<td>Stacking(sub1)</td>\n<td>powered average with weights</td>\n<td>0.9681</td>\n<td>0.968</td>\n</tr>\n<tr>\n<td>Stacking(sub2)</td>\n<td>powered average with weights</td>\n<td>0.9676</td>\n<td>0.968</td>\n</tr>\n</tbody>\n</table>\n<ul>\n<li>StratifiedGroupKFolds(k=5)</li>\n<li><a href=\"https://www.kaggle.com/ammarali32\" target=\"_blank\">@ammarali32</a>’s pretrained weights </li>\n<li>heavy augmentation</li>\n<li>Adam+OneCycleR</li>\n<li>2×TTA(Horizontal Flip)</li>\n<li>weight average</li>\n<li>stacking of 4 models</li>\n</ul>\n<p>Let me know if you have any questions. Thank you:). </p>",
      "rawMarkdown": "First of all, thanks to **Royal Australian & NZ College of Radiologists** and **kaggle** for organizing this competition. \n\n# Summary\nPrivate LB: 0.970\n\n![input_pipeline (1)](https://user-images.githubusercontent.com/66665933/111384982-7ef09800-86ed-11eb-89cd-5848b0b41f8c.png)\n\n\n| Model                          | Note                           | CV     | LB    | \n| ------------------------------ | ------------------------------ | ------ | ----- | \n| ResNet200D                     |                                | 0.9566 | 0.965 | \n| Multi-Head ResNet200D          | @ttahara's multi-head approach | 0.9639 | 0.963 | \n| EfficientNet B5                |                                | 0.9570 | 0.96  | \n| Resnet200D                     | pseudo labelling test          | 0.9628 | 0.965 | \n| Weight Average of these models |                                | 0.9673 | 0.967 | \n| Stacking(sub1)                 | powered average with weights   | 0.9681 | 0.968 | \n| Stacking(sub2)                 | powered average with weights   | 0.9676 | 0.968 | \n\n\n\n\n* StratifiedGroupKFolds(k=5)\n*  @ammarali32’s pretrained weights \n* heavy augmentation\n* Adam+OneCycleR\n* 2×TTA(Horizontal Flip)\n* weight average\n* stacking of 4 models\n\nLet me know if you have any questions. Thank you:).",
      "votes": null
    },
    {
      "id": "1241201",
      "postDate": "03/17/2021 00:14:10",
      "content": "<p>What I don't get is I never could get the public resnet200d model to cv&gt;.96 lb 0.965, when everyone seems to be able to do it….</p>",
      "rawMarkdown": "What I don't get is I never could get the public resnet200d model to cv>.96 lb 0.965, when everyone seems to be able to do it....",
      "votes": null
    },
    {
      "id": "1241231",
      "postDate": "03/17/2021 00:43:45",
      "content": "<p><a href=\"https://www.kaggle.com/ammarali32\" target=\"_blank\">@ammarali32</a>’s pretrained weights are the key to get CV&gt;.96, which boosted the CV and LB.</p>",
      "rawMarkdown": "ammarali32’s pretrained weights are the key to get CV>.96, which boosted the CV and LB.",
      "votes": null
    },
    {
      "id": "1241364",
      "postDate": "03/17/2021 02:34:56",
      "content": "<p><a href=\"https://www.kaggle.com/tmhrkt\" target=\"_blank\">@tmhrkt</a> Congralutations on Bronze Finish . Thanks so much for the writeup</p>",
      "rawMarkdown": "tmhrkt Congralutations on Bronze Finish . Thanks so much for the writeup",
      "votes": null
    },
    {
      "id": "1241492",
      "postDate": "03/17/2021 04:23:44",
      "content": "<p>congrats glad to hear that it helped ))</p>",
      "rawMarkdown": "congrats glad to hear that it helped ))",
      "votes": null
    },
    {
      "id": "1241506",
      "postDate": "03/17/2021 04:33:31",
      "content": "<p>Thank you:)</p>",
      "rawMarkdown": "Thank you:)",
      "votes": null
    },
    {
      "id": "1241509",
      "postDate": "03/17/2021 04:34:32",
      "content": "<p>Thank you👍🏻</p>",
      "rawMarkdown": "Thank you👍🏻",
      "votes": null
    },
    {
      "id": "1244512",
      "postDate": "03/19/2021 03:11:40",
      "content": "<p>Congratulations on the bronze medal and thanks for great writeup!<br>\nCould you teach me about the detail of process of \"to image\"(N<em>1</em>4*11)?<br>\nWhat is done in the process?</p>",
      "rawMarkdown": "Congratulations on the bronze medal and thanks for great writeup!\nCould you teach me about the detail of process of \"to image\"(N*1*4*11)?\nWhat is done in the process?",
      "votes": null
    },
    {
      "id": "1245116",
      "postDate": "03/19/2021 13:24:11",
      "content": "<p>Here is the code for converting to image.</p>\n<pre><code>submissions = [sub1, sub2, sub3, sub4]\nsubmissions = [sub.loc[:, :1].values for sub in submissions]\nx = np.array(submissions)  # 4xNx11\nx = np.transpose(x, (1, 0, 2))  # Nx4x11\nx = np.expand_dims(x, axis=1) # Nx1x4x11\n</code></pre>",
      "rawMarkdown": "Here is the code for converting to image.\n```\nsubmissions = [sub1, sub2, sub3, sub4]\nsubmissions = [sub.loc[:, :1].values for sub in submissions]\nx = np.array(submissions)  # 4xNx11\nx = np.transpose(x, (1, 0, 2))  # Nx4x11\nx = np.expand_dims(x, axis=1) # Nx1x4x11\n```",
      "votes": null
    },
    {
      "id": "1245175",
      "postDate": "03/19/2021 14:38:42",
      "content": "<p>I got it! Thanks!</p>",
      "rawMarkdown": "I got it! Thanks!",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1241201,
      "author_name": "yl1202",
      "author_url": "",
      "post_date": "03/17/2021 00:14:10",
      "content": "<p>What I don't get is I never could get the public resnet200d model to cv&gt;.96 lb 0.965, when everyone seems to be able to do it….</p>",
      "votes": null,
      "replies": [
        {
          "id": 1241231,
          "author_name": "tmhrkt",
          "author_url": "",
          "post_date": "03/17/2021 00:43:45",
          "content": "<p><a href=\"https://www.kaggle.com/ammarali32\" target=\"_blank\">@ammarali32</a>’s pretrained weights are the key to get CV&gt;.96, which boosted the CV and LB.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1241364,
      "author_name": "usharengaraju",
      "author_url": "",
      "post_date": "03/17/2021 02:34:56",
      "content": "<p><a href=\"https://www.kaggle.com/tmhrkt\" target=\"_blank\">@tmhrkt</a> Congralutations on Bronze Finish . Thanks so much for the writeup</p>",
      "votes": null,
      "replies": [
        {
          "id": 1241509,
          "author_name": "tmhrkt",
          "author_url": "",
          "post_date": "03/17/2021 04:34:32",
          "content": "<p>Thank you👍🏻</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1241492,
      "author_name": "ammarali32",
      "author_url": "",
      "post_date": "03/17/2021 04:23:44",
      "content": "<p>congrats glad to hear that it helped ))</p>",
      "votes": null,
      "replies": [
        {
          "id": 1241506,
          "author_name": "tmhrkt",
          "author_url": "",
          "post_date": "03/17/2021 04:33:31",
          "content": "<p>Thank you:)</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1244512,
      "author_name": "tt0721",
      "author_url": "",
      "post_date": "03/19/2021 03:11:40",
      "content": "<p>Congratulations on the bronze medal and thanks for great writeup!<br>\nCould you teach me about the detail of process of \"to image\"(N<em>1</em>4*11)?<br>\nWhat is done in the process?</p>",
      "votes": null,
      "replies": [
        {
          "id": 1245116,
          "author_name": "tmhrkt",
          "author_url": "",
          "post_date": "03/19/2021 13:24:11",
          "content": "<p>Here is the code for converting to image.</p>\n<pre><code>submissions = [sub1, sub2, sub3, sub4]\nsubmissions = [sub.loc[:, :1].values for sub in submissions]\nx = np.array(submissions)  # 4xNx11\nx = np.transpose(x, (1, 0, 2))  # Nx4x11\nx = np.expand_dims(x, axis=1) # Nx1x4x11\n</code></pre>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1245175,
          "author_name": "tt0721",
          "author_url": "",
          "post_date": "03/19/2021 14:38:42",
          "content": "<p>I got it! Thanks!</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "1241196": "First of all, thanks to **Royal Australian & NZ College of Radiologists** and **kaggle** for organizing this competition. \n\n# Summary\nPrivate LB: 0.970\n\n![input_pipeline (1)](https://user-images.githubusercontent.com/66665933/111384982-7ef09800-86ed-11eb-89cd-5848b0b41f8c.png)\n\n\n| Model                          | Note                           | CV     | LB    | \n| ------------------------------ | ------------------------------ | ------ | ----- | \n| ResNet200D                     |                                | 0.9566 | 0.965 | \n| Multi-Head ResNet200D          | @ttahara's multi-head approach | 0.9639 | 0.963 | \n| EfficientNet B5                |                                | 0.9570 | 0.96  | \n| Resnet200D                     | pseudo labelling test          | 0.9628 | 0.965 | \n| Weight Average of these models |                                | 0.9673 | 0.967 | \n| Stacking(sub1)                 | powered average with weights   | 0.9681 | 0.968 | \n| Stacking(sub2)                 | powered average with weights   | 0.9676 | 0.968 | \n\n\n\n\n* StratifiedGroupKFolds(k=5)\n*  @ammarali32’s pretrained weights \n* heavy augmentation\n* Adam+OneCycleR\n* 2×TTA(Horizontal Flip)\n* weight average\n* stacking of 4 models\n\nLet me know if you have any questions. Thank you:).",
    "1241201": "What I don't get is I never could get the public resnet200d model to cv>.96 lb 0.965, when everyone seems to be able to do it....",
    "1241231": "ammarali32’s pretrained weights are the key to get CV>.96, which boosted the CV and LB.",
    "1241364": "tmhrkt Congralutations on Bronze Finish . Thanks so much for the writeup",
    "1241492": "congrats glad to hear that it helped ))",
    "1241506": "Thank you:)",
    "1241509": "Thank you👍🏻",
    "1244512": "Congratulations on the bronze medal and thanks for great writeup!\nCould you teach me about the detail of process of \"to image\"(N*1*4*11)?\nWhat is done in the process?",
    "1245116": "Here is the code for converting to image.\n```\nsubmissions = [sub1, sub2, sub3, sub4]\nsubmissions = [sub.loc[:, :1].values for sub in submissions]\nx = np.array(submissions)  # 4xNx11\nx = np.transpose(x, (1, 0, 2))  # Nx4x11\nx = np.expand_dims(x, axis=1) # Nx1x4x11\n```",
    "1245175": "I got it! Thanks!"
  },
  "source": "meta"
}