{
  "id": 275364,
  "title": "A technique that worked for me (~0.001-0.002 improvement) that none of the posted (so far) solution used",
  "url": "/competitions/g2net-gravitational-wave-detection/writeups/brachester-a-technique-that-worked-for-me-0-001-0-",
  "author_name": "",
  "post_date": "2021-09-30T05:28:07.507Z",
  "votes": 9,
  "comment_count": 4,
  "views": 0,
  "content": "<p>That is making sure that each batch has some high and low SNR sample (I designed each batch so that 30% of each batch has low SNR). This help preventing bad gradients from overfitting the solution.</p>\n<p>Since the host didn't include other parameters and SNR information, I decided to use a simple model's output as an indicator of SNR. Basically just get any model that has at least 0.87 AUC, get its prediction on training model, and then decide a cutoff confidence score and compute abs(pred-label). SNR = high if abs(pred-label) &lt; cutoff else low (I used 0.5 as my cutoff).</p>\n<p>This technique improved my 1D from 0.8738 to 0.8760 and my B0 from 0.8749 to 0.8757. Although curiously enough, it degraded my best single model B3 of 0.8783 to 0.8777. That said, I discovered this like 2 days ago so I didn't have time to tune it properly.</p>\n<p>P.S. If you train your model on decreasing order of SNR, your model will overfit to oblivion within the first epoch.<br>\nP.S.S. Can anyone point me toward the notebook that <a href=\"https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275316\" target=\"_blank\">https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275316</a> is complaining about?</p>",
  "messages": [
    {
      "id": "1529026",
      "postDate": "09/30/2021 05:22:49",
      "content": "<p>That is making sure that each batch has some high and low SNR sample (I designed each batch so that 30% of each batch has low SNR). This help preventing bad gradients from overfitting the solution.</p>\n<p>Since the host didn't include other parameters and SNR information, I decided to use a simple model's output as an indicator of SNR. Basically just get any model that has at least 0.87 AUC, get its prediction on training model, and then decide a cutoff confidence score and compute abs(pred-label). SNR = high if abs(pred-label) &lt; cutoff else low (I used 0.5 as my cutoff).</p>\n<p>This technique improved my 1D from 0.8738 to 0.8760 and my B0 from 0.8749 to 0.8757. Although curiously enough, it degraded my best single model B3 of 0.8783 to 0.8777. That said, I discovered this like 2 days ago so I didn't have time to tune it properly.</p>\n<p>P.S. If you train your model on decreasing order of SNR, your model will overfit to oblivion within the first epoch.<br>\nP.S.S. Can anyone point me toward the notebook that <a href=\"https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275316\" target=\"_blank\">https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275316</a> is complaining about?</p>",
      "rawMarkdown": "That is making sure that each batch has some high and low SNR sample (I designed each batch so that 30% of each batch has low SNR). This help preventing bad gradients from overfitting the solution.\n\nSince the host didn't include other parameters and SNR information, I decided to use a simple model's output as an indicator of SNR. Basically just get any model that has at least 0.87 AUC, get its prediction on training model, and then decide a cutoff confidence score and compute abs(pred-label). SNR = high if abs(pred-label) < cutoff else low (I used 0.5 as my cutoff).\n\nThis technique improved my 1D from 0.8738 to 0.8760 and my B0 from 0.8749 to 0.8757. Although curiously enough, it degraded my best single model B3 of 0.8783 to 0.8777. That said, I discovered this like 2 days ago so I didn't have time to tune it properly.\n\nP.S. If you train your model on decreasing order of SNR, your model will overfit to oblivion within the first epoch.\nP.S.S. Can anyone point me toward the notebook that https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275316 is complaining about?",
      "votes": null
    },
    {
      "id": "1529228",
      "postDate": "09/30/2021 08:33:45",
      "content": "<p>Hey <a href=\"https://www.kaggle.com/brachester\" target=\"_blank\">@brachester</a> <br>\nI don't know if you had a chance to read the comments, but it is immediately removed after my discussion, because it was an accident from their side. They were not aware of it until then.</p>\n<p>Other than this, interesting approach to configure each batch. I liked the idea 👍 I am also wondering the reason behind the decrease for your best model</p>",
      "rawMarkdown": "Hey @brachester \nI don't know if you had a chance to read the comments, but it is immediately removed after my discussion, because it was an accident from their side. They were not aware of it until then.\n\nOther than this, interesting approach to configure each batch. I liked the idea 👍 I am also wondering the reason behind the decrease for your best model",
      "votes": null
    },
    {
      "id": "1529533",
      "postDate": "09/30/2021 13:19:47",
      "content": "<p>Interesting idea,.  We used another way. If you use a log transform of images then the difference between high and low snr input gets small.  I think it is why we got good results.</p>",
      "rawMarkdown": "Interesting idea,.  We used another way. If you use a log transform of images then the difference between high and low snr input gets small.  I think it is why we got good results.",
      "votes": null
    },
    {
      "id": "1530207",
      "postDate": "10/01/2021 03:01:42",
      "content": "<p>nice ! easy but effective. I wonder why it didn't work for larger models. </p>",
      "rawMarkdown": "nice ! easy but effective. I wonder why it didn't work for larger models.",
      "votes": null
    },
    {
      "id": "1559893",
      "postDate": "10/27/2021 08:06:39",
      "content": "<p>Hey All,</p>\n<p>Thank you all for taking part in our competition. The participation has been overwhelmingly positive. We are currently conducting a survey to gauge the demographic and outreach achieved. Kindly spare 2min and fill in this survey <a href=\"https://forms.gle/QP9L16niPexozyhu5\" target=\"_blank\">https://forms.gle/QP9L16niPexozyhu5</a>.</p>\n<p>Thank you all,</p>\n<p>Regards,<br>\nChris</p>",
      "rawMarkdown": "Hey All,\n\nThank you all for taking part in our competition. The participation has been overwhelmingly positive. We are currently conducting a survey to gauge the demographic and outreach achieved. Kindly spare 2min and fill in this survey https://forms.gle/QP9L16niPexozyhu5.\n\nThank you all,\n\nRegards,\nChris",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1529228,
      "author_name": "snnclsr",
      "author_url": "",
      "post_date": "09/30/2021 08:33:45",
      "content": "<p>Hey <a href=\"https://www.kaggle.com/brachester\" target=\"_blank\">@brachester</a> <br>\nI don't know if you had a chance to read the comments, but it is immediately removed after my discussion, because it was an accident from their side. They were not aware of it until then.</p>\n<p>Other than this, interesting approach to configure each batch. I liked the idea 👍 I am also wondering the reason behind the decrease for your best model</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1529533,
      "author_name": "cpmpml",
      "author_url": "",
      "post_date": "09/30/2021 13:19:47",
      "content": "<p>Interesting idea,.  We used another way. If you use a log transform of images then the difference between high and low snr input gets small.  I think it is why we got good results.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1530207,
      "author_name": "zarif98sjs",
      "author_url": "",
      "post_date": "10/01/2021 03:01:42",
      "content": "<p>nice ! easy but effective. I wonder why it didn't work for larger models. </p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1559893,
      "author_name": "zerafachris",
      "author_url": "",
      "post_date": "10/27/2021 08:06:39",
      "content": "<p>Hey All,</p>\n<p>Thank you all for taking part in our competition. The participation has been overwhelmingly positive. We are currently conducting a survey to gauge the demographic and outreach achieved. Kindly spare 2min and fill in this survey <a href=\"https://forms.gle/QP9L16niPexozyhu5\" target=\"_blank\">https://forms.gle/QP9L16niPexozyhu5</a>.</p>\n<p>Thank you all,</p>\n<p>Regards,<br>\nChris</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1529026": "That is making sure that each batch has some high and low SNR sample (I designed each batch so that 30% of each batch has low SNR). This help preventing bad gradients from overfitting the solution.\n\nSince the host didn't include other parameters and SNR information, I decided to use a simple model's output as an indicator of SNR. Basically just get any model that has at least 0.87 AUC, get its prediction on training model, and then decide a cutoff confidence score and compute abs(pred-label). SNR = high if abs(pred-label) < cutoff else low (I used 0.5 as my cutoff).\n\nThis technique improved my 1D from 0.8738 to 0.8760 and my B0 from 0.8749 to 0.8757. Although curiously enough, it degraded my best single model B3 of 0.8783 to 0.8777. That said, I discovered this like 2 days ago so I didn't have time to tune it properly.\n\nP.S. If you train your model on decreasing order of SNR, your model will overfit to oblivion within the first epoch.\nP.S.S. Can anyone point me toward the notebook that https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275316 is complaining about?",
    "1529228": "Hey @brachester \nI don't know if you had a chance to read the comments, but it is immediately removed after my discussion, because it was an accident from their side. They were not aware of it until then.\n\nOther than this, interesting approach to configure each batch. I liked the idea 👍 I am also wondering the reason behind the decrease for your best model",
    "1529533": "Interesting idea,.  We used another way. If you use a log transform of images then the difference between high and low snr input gets small.  I think it is why we got good results.",
    "1530207": "nice ! easy but effective. I wonder why it didn't work for larger models.",
    "1559893": "Hey All,\n\nThank you all for taking part in our competition. The participation has been overwhelmingly positive. We are currently conducting a survey to gauge the demographic and outreach achieved. Kindly spare 2min and fill in this survey https://forms.gle/QP9L16niPexozyhu5.\n\nThank you all,\n\nRegards,\nChris"
  },
  "source": "meta"
}