{
  "id": 243231,
  "title": "Good luck to every competitor",
  "url": "/competitions/birdclef-2021/discussion/243231",
  "author_name": "",
  "post_date": "2021-06-01T17:07:36.300755900Z",
  "votes": 8,
  "comment_count": 3,
  "views": 0,
  "content": "<p>Near the end of this competition, I wish the best of luck to every competitor, and may you have a wonderful score and rank eventually!</p>",
  "messages": [
    {
      "id": "1331730",
      "postDate": "06/01/2021 17:07:36",
      "content": "<p>Near the end of this competition, I wish the best of luck to every competitor, and may you have a wonderful score and rank eventually!</p>",
      "rawMarkdown": "Near the end of this competition, I wish the best of luck to every competitor, and may you have a wonderful score and rank eventually!",
      "votes": null
    },
    {
      "id": "1331809",
      "postDate": "06/01/2021 18:25:53",
      "content": "<p>Good luck all! </p>\n<p>I \"joined\" in the last 6 days and I have been training a simple classifier model which gets ~0.89 accuracy on the ~400 primary labels but when I run CV on the soundstage directory I just get garbage predictions. Initially I thought it was a noob inference-only bug but I have not been able to find it (it may be related to padding at edges/repeats of spectograms but I am not sure). Anyway good luck all!</p>",
      "rawMarkdown": "Good luck all! \n\nI \"joined\" in the last 6 days and I have been training a simple classifier model which gets ~0.89 accuracy on the ~400 primary labels but when I run CV on the soundstage directory I just get garbage predictions. Initially I thought it was a noob inference-only bug but I have not been able to find it (it may be related to padding at edges/repeats of spectograms but I am not sure). Anyway good luck all!",
      "votes": null
    },
    {
      "id": "1331973",
      "postDate": "06/01/2021 20:40:24",
      "content": "<blockquote>\n  <p>~0.89 accuracy on the ~400 primary labels</p>\n</blockquote>\n<p>What do you mean?  How do you compute that?</p>\n<p>PS. It would have been nice to see you compete more in this one.</p>",
      "rawMarkdown": ">  ~0.89 accuracy on the ~400 primary labels\n\nWhat do you mean?  How do you compute that?\n\nPS. It would have been nice to see you compete more in this one.",
      "votes": null
    },
    {
      "id": "1331994",
      "postDate": "06/01/2021 20:54:54",
      "content": "<p>My approach was going to be something like:</p>\n<ol>\n<li>train a backbone on either spectrogram or mel-spectrogram on the short segments, take the backbone features, concat w/ some extra data (lat/long and seasonality embeddings) and supervise it on 4 tasks (heads): <br>\na) primary labels (cross-entropy), <br>\nb) secondary labels  (either BCE  or since they are spare and only have 3 max have 3 sub-labels and use Crossentropy w/ hungarian algorithm to minimize combined loss to get label order invariance, <br>\nc) same as b) but w/ all primary and secondary labels (using hungarian algorithm). <br>\nd) type of bird call label (cross-entropy)</li>\n</ol>\n<p>I trained 1)a) and got 0.89 accuracy on short segments (segments where expanded w/ repeats to have 40 seconds all).</p>\n<ol>\n<li><p>With the backbone above frozen, discard all heads except 1)c) and train a call/nocall classifier with the train soundstages data and just call/nocall label. (just a small MLP connected to the backbone features).</p></li>\n<li><p>The output of the soundstage would be given by call/nocall classifier and if call, then output 1)c) predictions.</p></li>\n</ol>\n<p>Sounded like a nice plan except the first step didnt work.</p>",
      "rawMarkdown": "My approach was going to be something like:\n\n1. train a backbone on either spectrogram or mel-spectrogram on the short segments, take the backbone features, concat w/ some extra data (lat/long and seasonality embeddings) and supervise it on 4 tasks (heads): \na) primary labels (cross-entropy), \nb) secondary labels  (either BCE  or since they are spare and only have 3 max have 3 sub-labels and use Crossentropy w/ hungarian algorithm to minimize combined loss to get label order invariance, \nc) same as b) but w/ all primary and secondary labels (using hungarian algorithm). \nd) type of bird call label (cross-entropy)\n\nI trained 1)a) and got 0.89 accuracy on short segments (segments where expanded w/ repeats to have 40 seconds all).\n\n2. With the backbone above frozen, discard all heads except 1)c) and train a call/nocall classifier with the train soundstages data and just call/nocall label. (just a small MLP connected to the backbone features).\n\n3. The output of the soundstage would be given by call/nocall classifier and if call, then output 1)c) predictions.\n\nSounded like a nice plan except the first step didnt work.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1331809,
      "author_name": "antorsae",
      "author_url": "",
      "post_date": "06/01/2021 18:25:53",
      "content": "<p>Good luck all! </p>\n<p>I \"joined\" in the last 6 days and I have been training a simple classifier model which gets ~0.89 accuracy on the ~400 primary labels but when I run CV on the soundstage directory I just get garbage predictions. Initially I thought it was a noob inference-only bug but I have not been able to find it (it may be related to padding at edges/repeats of spectograms but I am not sure). Anyway good luck all!</p>",
      "votes": null,
      "replies": [
        {
          "id": 1331973,
          "author_name": "cpmpml",
          "author_url": "",
          "post_date": "06/01/2021 20:40:24",
          "content": "<blockquote>\n  <p>~0.89 accuracy on the ~400 primary labels</p>\n</blockquote>\n<p>What do you mean?  How do you compute that?</p>\n<p>PS. It would have been nice to see you compete more in this one.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1331994,
          "author_name": "antorsae",
          "author_url": "",
          "post_date": "06/01/2021 20:54:54",
          "content": "<p>My approach was going to be something like:</p>\n<ol>\n<li>train a backbone on either spectrogram or mel-spectrogram on the short segments, take the backbone features, concat w/ some extra data (lat/long and seasonality embeddings) and supervise it on 4 tasks (heads): <br>\na) primary labels (cross-entropy), <br>\nb) secondary labels  (either BCE  or since they are spare and only have 3 max have 3 sub-labels and use Crossentropy w/ hungarian algorithm to minimize combined loss to get label order invariance, <br>\nc) same as b) but w/ all primary and secondary labels (using hungarian algorithm). <br>\nd) type of bird call label (cross-entropy)</li>\n</ol>\n<p>I trained 1)a) and got 0.89 accuracy on short segments (segments where expanded w/ repeats to have 40 seconds all).</p>\n<ol>\n<li><p>With the backbone above frozen, discard all heads except 1)c) and train a call/nocall classifier with the train soundstages data and just call/nocall label. (just a small MLP connected to the backbone features).</p></li>\n<li><p>The output of the soundstage would be given by call/nocall classifier and if call, then output 1)c) predictions.</p></li>\n</ol>\n<p>Sounded like a nice plan except the first step didnt work.</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "1331730": "Near the end of this competition, I wish the best of luck to every competitor, and may you have a wonderful score and rank eventually!",
    "1331809": "Good luck all! \n\nI \"joined\" in the last 6 days and I have been training a simple classifier model which gets ~0.89 accuracy on the ~400 primary labels but when I run CV on the soundstage directory I just get garbage predictions. Initially I thought it was a noob inference-only bug but I have not been able to find it (it may be related to padding at edges/repeats of spectograms but I am not sure). Anyway good luck all!",
    "1331973": ">  ~0.89 accuracy on the ~400 primary labels\n\nWhat do you mean?  How do you compute that?\n\nPS. It would have been nice to see you compete more in this one.",
    "1331994": "My approach was going to be something like:\n\n1. train a backbone on either spectrogram or mel-spectrogram on the short segments, take the backbone features, concat w/ some extra data (lat/long and seasonality embeddings) and supervise it on 4 tasks (heads): \na) primary labels (cross-entropy), \nb) secondary labels  (either BCE  or since they are spare and only have 3 max have 3 sub-labels and use Crossentropy w/ hungarian algorithm to minimize combined loss to get label order invariance, \nc) same as b) but w/ all primary and secondary labels (using hungarian algorithm). \nd) type of bird call label (cross-entropy)\n\nI trained 1)a) and got 0.89 accuracy on short segments (segments where expanded w/ repeats to have 40 seconds all).\n\n2. With the backbone above frozen, discard all heads except 1)c) and train a call/nocall classifier with the train soundstages data and just call/nocall label. (just a small MLP connected to the backbone features).\n\n3. The output of the soundstage would be given by call/nocall classifier and if call, then output 1)c) predictions.\n\nSounded like a nice plan except the first step didnt work."
  },
  "source": "meta"
}