{
  "id": 275343,
  "title": "6th place solution",
  "url": "/competitions/g2net-gravitational-wave-detection/discussion/275343",
  "author_name": "outrunner",
  "post_date": "2021-09-30T02:30:10.422000",
  "votes": 30,
  "comment_count": 8,
  "views": 0,
  "content": "<h1>model architecture</h1>\n<p>wave -&gt; dct -&gt; trainable bp filter -&gt; idct -&gt; 1dcnn/cwt -&gt; 1dcnn/2dcnn/resnet/effnetv2/lstm</p>\n<p>best single model：4096x3 -&gt; 1dcnn -&gt; 512x256x3 -&gt; resnet34<br>\n(private LB 0.8810, single fold with TTA)</p>\n<h1>augmentation</h1>\n<ul>\n<li>random shift wave separately, up to 1/32 second</li>\n<li>random change phase</li>\n</ul>\n<h1>others</h1>\n<p>fine tune on cropped wave (ex. [1536:-256]) for more model blending</p>",
  "messages": [
    {
      "id": 1528872,
      "postDate": "2021-09-30T02:30:10.423Z",
      "content": "<h1>model architecture</h1>\n<p>wave -&gt; dct -&gt; trainable bp filter -&gt; idct -&gt; 1dcnn/cwt -&gt; 1dcnn/2dcnn/resnet/effnetv2/lstm</p>\n<p>best single model：4096x3 -&gt; 1dcnn -&gt; 512x256x3 -&gt; resnet34<br>\n(private LB 0.8810, single fold with TTA)</p>\n<h1>augmentation</h1>\n<ul>\n<li>random shift wave separately, up to 1/32 second</li>\n<li>random change phase</li>\n</ul>\n<h1>others</h1>\n<p>fine tune on cropped wave (ex. [1536:-256]) for more model blending</p>",
      "rawMarkdown": "# model architecture\nwave -> dct -> trainable bp filter -> idct -> 1dcnn/cwt -> 1dcnn/2dcnn/resnet/effnetv2/lstm\n\nbest single model：4096x3 -> 1dcnn -> 512x256x3 -> resnet34\n(private LB 0.8810, single fold with TTA)\n\n# augmentation\n- random shift wave separately, up to 1/32 second\n- random change phase\n\n# others\nfine tune on cropped wave (ex. [1536:-256]) for more model blending",
      "votes": 29
    },
    {
      "id": 1529196,
      "postDate": "2021-09-30T08:11:36.120Z",
      "content": "<p>Wow, I tried DCT once but did not pursue.  Great work!</p>",
      "rawMarkdown": "Wow, I tried DCT once but did not pursue.  Great work!",
      "votes": 1,
      "replies": [
        {
          "id": 1530311,
          "postDate": "2021-10-01T05:09:55.620Z",
          "rawMarkdown": "",
          "isDeleted": true
        },
        {
          "id": 1530395,
          "postDate": "2021-10-01T06:22:04.320Z",
          "content": "<p>Thank you. 😃</p>",
          "rawMarkdown": "Thank you. 😃"
        }
      ]
    },
    {
      "id": 1528908,
      "postDate": "2021-09-30T03:06:32.007Z",
      "content": "<p>thanks for the writeup and congrats on the good work!!</p>\n<p>i am interested in the trainable bp filter.</p>\n<p>you have an  MLP on the FFT coefficients for the whole wave? or are you using short-time STFFT (on frames/sections/windows of the wave)?</p>",
      "rawMarkdown": "thanks for the writeup and congrats on the good work!!\n\ni am interested in the trainable bp filter.\n\nyou have an  MLP on the FFT coefficients for the whole wave? or are you using short-time STFFT (on frames/sections/windows of the wave)?\n ",
      "votes": 2,
      "replies": [
        {
          "id": 1528936,
          "postDate": "2021-09-30T03:34:58.660Z",
          "content": "<p>tf.keras code：</p>\n<pre><code>inputs = Input((3,4096))\nx = tf.signal.dct(inputs)\nw = x[:1,:1,:1]*0+1\nw1 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int1, use_bias=False)(w)\nw2 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int2, use_bias=False)(w)\nw3 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int2, use_bias=False)(w)\nw = Concatenate(axis=1)([w1,w2,w3])\nx = Multiply()([x,w])\nx = tf.signal.idct(x)/8192.\nx = Permute((2,1))(x)\n</code></pre>",
          "rawMarkdown": "tf.keras code：\n```\ninputs = Input((3,4096))\nx = tf.signal.dct(inputs)\nw = x[:1,:1,:1]*0+1\nw1 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int1, use_bias=False)(w)\nw2 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int2, use_bias=False)(w)\nw3 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int2, use_bias=False)(w)\nw = Concatenate(axis=1)([w1,w2,w3])\nx = Multiply()([x,w])\nx = tf.signal.idct(x)/8192.\nx = Permute((2,1))(x)\n```",
          "votes": 3
        },
        {
          "id": 1528940,
          "postDate": "2021-09-30T03:40:41.917Z",
          "content": "<p>thanks. I will try!</p>\n<p>i will visualize the waveform/power spectrum before and after the bandpass.<br>\ni think this also do whitening, etc?</p>",
          "rawMarkdown": "thanks. I will try!\n\ni will visualize the waveform/power spectrum before and after the bandpass.\ni think this also do whitening, etc?\n\n"
        },
        {
          "id": 1528948,
          "postDate": "2021-09-30T03:52:42.907Z",
          "content": "<p>I think so, the trained filter:<br>\n<img src=\"https://i.imgur.com/bUCF7ye.gif\" alt=\"\"></p>",
          "rawMarkdown": "I think so, the trained filter:\n![](https://i.imgur.com/bUCF7ye.gif)",
          "votes": 3
        }
      ]
    },
    {
      "id": 1559896,
      "postDate": "2021-10-27T08:06:54.007Z",
      "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"
    }
  ],
  "comments": [
    {
      "id": 1529196,
      "author_name": "CPMP",
      "author_url": "",
      "post_date": "2021-09-30T08:11:36.120000",
      "content": "<p>Wow, I tried DCT once but did not pursue.  Great work!</p>",
      "votes": 1,
      "replies": [
        {
          "id": 1530311,
          "author_name": "",
          "author_url": "",
          "post_date": "2021-10-01T05:09:55.620000",
          "content": "",
          "votes": 0,
          "replies": []
        },
        {
          "id": 1530395,
          "author_name": "outrunner",
          "author_url": "",
          "post_date": "2021-10-01T06:22:04.320000",
          "content": "<p>Thank you. 😃</p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 1528908,
      "author_name": "hengck23",
      "author_url": "",
      "post_date": "2021-09-30T03:06:32.007000",
      "content": "<p>thanks for the writeup and congrats on the good work!!</p>\n<p>i am interested in the trainable bp filter.</p>\n<p>you have an  MLP on the FFT coefficients for the whole wave? or are you using short-time STFFT (on frames/sections/windows of the wave)?</p>",
      "votes": 2,
      "replies": [
        {
          "id": 1528936,
          "author_name": "outrunner",
          "author_url": "",
          "post_date": "2021-09-30T03:34:58.660000",
          "content": "<p>tf.keras code：</p>\n<pre><code>inputs = Input((3,4096))\nx = tf.signal.dct(inputs)\nw = x[:1,:1,:1]*0+1\nw1 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int1, use_bias=False)(w)\nw2 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int2, use_bias=False)(w)\nw3 = Conv1D(4096, 1, activation='sigmoid', kernel_initializer=custom_int2, use_bias=False)(w)\nw = Concatenate(axis=1)([w1,w2,w3])\nx = Multiply()([x,w])\nx = tf.signal.idct(x)/8192.\nx = Permute((2,1))(x)\n</code></pre>",
          "votes": 3,
          "replies": []
        },
        {
          "id": 1528940,
          "author_name": "hengck23",
          "author_url": "",
          "post_date": "2021-09-30T03:40:41.917000",
          "content": "<p>thanks. I will try!</p>\n<p>i will visualize the waveform/power spectrum before and after the bandpass.<br>\ni think this also do whitening, etc?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 1528948,
          "author_name": "outrunner",
          "author_url": "",
          "post_date": "2021-09-30T03:52:42.907000",
          "content": "<p>I think so, the trained filter:<br>\n<img src=\"https://i.imgur.com/bUCF7ye.gif\" alt=\"\"></p>",
          "votes": 3,
          "replies": []
        }
      ]
    },
    {
      "id": 1559896,
      "author_name": "ChristopherZerafa",
      "author_url": "",
      "post_date": "2021-10-27T08:06:54.007000",
      "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": 0,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1528872": "# model architecture\nwave -> dct -> trainable bp filter -> idct -> 1dcnn/cwt -> 1dcnn/2dcnn/resnet/effnetv2/lstm\n\nbest single model：4096x3 -> 1dcnn -> 512x256x3 -> resnet34\n(private LB 0.8810, single fold with TTA)\n\n# augmentation\n- random shift wave separately, up to 1/32 second\n- random change phase\n\n# others\nfine tune on cropped wave (ex. [1536:-256]) for more model blending",
    "1529196": "Wow, I tried DCT once but did not pursue.  Great work!",
    "1528908": "thanks for the writeup and congrats on the good work!!\n\ni am interested in the trainable bp filter.\n\nyou have an  MLP on the FFT coefficients for the whole wave? or are you using short-time STFFT (on frames/sections/windows of the wave)?\n ",
    "1559896": "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"
  }
}