{
  "id": 284357,
  "title": "Ensembling Semantic Segmentation models",
  "url": "/competitions/sartorius-cell-instance-segmentation/discussion/284357",
  "author_name": "",
  "post_date": "2021-10-31T11:58:01.639489800Z",
  "votes": 14,
  "comment_count": 3,
  "views": 0,
  "content": "<p>Hi all, <br>\nSince ensembling multiple models is a good way to get high/accurate score. I'm not sure how to ensmble semantic segmentation models. Does WBF/NMS works for ensembling? Is there an algorithm to ensemble these models easily? </p>\n<p>Thanks.</p>",
  "messages": [
    {
      "id": "1566096",
      "postDate": "10/31/2021 11:58:01",
      "content": "<p>Hi all, <br>\nSince ensembling multiple models is a good way to get high/accurate score. I'm not sure how to ensmble semantic segmentation models. Does WBF/NMS works for ensembling? Is there an algorithm to ensemble these models easily? </p>\n<p>Thanks.</p>",
      "rawMarkdown": "Hi all, \nSince ensembling multiple models is a good way to get high/accurate score. I'm not sure how to ensmble semantic segmentation models. Does WBF/NMS works for ensembling? Is there an algorithm to ensemble these models easily? \n\nThanks.",
      "votes": null
    },
    {
      "id": "1566098",
      "postDate": "10/31/2021 12:00:19",
      "content": "<p>You can try to take a majority vote I mean on each pixel of the mask if majority says 1 then that pixel is 1 and if 0 then that pixel is 0 however mean is what i prefer simple average of masks with different probabilities</p>",
      "rawMarkdown": "You can try to take a majority vote I mean on each pixel of the mask if majority says 1 then that pixel is 1 and if 0 then that pixel is 0 however mean is what i prefer simple average of masks with different probabilities",
      "votes": null
    },
    {
      "id": "1566213",
      "postDate": "10/31/2021 14:14:35",
      "content": "<p><code>(1 + A) * (1 + B)</code><br>\n:) simple and pretty good, because kinda preserves distributions of A and B<br>\nLet's say, A typically output scores in range 0..0.7, B output scores in range 0..0.4, so if take avg of them than we lose all sense of them. I. e. (0.5 + 0.4) / 2 = 0.45,  (0.7 + 0.2) / 2 = 0.45, but 1.5 * 1.4 = 2.1, 1.7 * 1.2 = 2.04….. peaks leads to higher  peaks :) even without normalization </p>",
      "rawMarkdown": "`(1 + A) * (1 + B)`\n:) simple and pretty good, because kinda preserves distributions of A and B\nLet's say, A typically output scores in range 0..0.7, B output scores in range 0..0.4, so if take avg of them than we lose all sense of them. I. e. (0.5 + 0.4) / 2 = 0.45,  (0.7 + 0.2) / 2 = 0.45, but 1.5 * 1.4 = 2.1, 1.7 * 1.2 = 2.04..... peaks leads to higher  peaks :) even without normalization",
      "votes": null
    },
    {
      "id": "1588788",
      "postDate": "11/19/2021 16:22:45",
      "content": "<p>Isn't this a Instance Segmentation game? 😂 Do you use Semantic Segmentation net like Unet instead of Instance Segmentation Net?</p>",
      "rawMarkdown": "Isn't this a Instance Segmentation game? 😂 Do you use Semantic Segmentation net like Unet instead of Instance Segmentation Net?",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1566098,
      "author_name": "swaralipibose",
      "author_url": "",
      "post_date": "10/31/2021 12:00:19",
      "content": "<p>You can try to take a majority vote I mean on each pixel of the mask if majority says 1 then that pixel is 1 and if 0 then that pixel is 0 however mean is what i prefer simple average of masks with different probabilities</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1566213,
      "author_name": "greenwizard",
      "author_url": "",
      "post_date": "10/31/2021 14:14:35",
      "content": "<p><code>(1 + A) * (1 + B)</code><br>\n:) simple and pretty good, because kinda preserves distributions of A and B<br>\nLet's say, A typically output scores in range 0..0.7, B output scores in range 0..0.4, so if take avg of them than we lose all sense of them. I. e. (0.5 + 0.4) / 2 = 0.45,  (0.7 + 0.2) / 2 = 0.45, but 1.5 * 1.4 = 2.1, 1.7 * 1.2 = 2.04….. peaks leads to higher  peaks :) even without normalization </p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1588788,
      "author_name": "forcewithme",
      "author_url": "",
      "post_date": "11/19/2021 16:22:45",
      "content": "<p>Isn't this a Instance Segmentation game? 😂 Do you use Semantic Segmentation net like Unet instead of Instance Segmentation Net?</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1566096": "Hi all, \nSince ensembling multiple models is a good way to get high/accurate score. I'm not sure how to ensmble semantic segmentation models. Does WBF/NMS works for ensembling? Is there an algorithm to ensemble these models easily? \n\nThanks.",
    "1566098": "You can try to take a majority vote I mean on each pixel of the mask if majority says 1 then that pixel is 1 and if 0 then that pixel is 0 however mean is what i prefer simple average of masks with different probabilities",
    "1566213": "`(1 + A) * (1 + B)`\n:) simple and pretty good, because kinda preserves distributions of A and B\nLet's say, A typically output scores in range 0..0.7, B output scores in range 0..0.4, so if take avg of them than we lose all sense of them. I. e. (0.5 + 0.4) / 2 = 0.45,  (0.7 + 0.2) / 2 = 0.45, but 1.5 * 1.4 = 2.1, 1.7 * 1.2 = 2.04..... peaks leads to higher  peaks :) even without normalization",
    "1588788": "Isn't this a Instance Segmentation game? 😂 Do you use Semantic Segmentation net like Unet instead of Instance Segmentation Net?"
  },
  "source": "meta"
}