{
  "id": 116675,
  "title": "Dealing with images with multiple classes",
  "url": "/competitions/understanding_cloud_organization/discussion/116675",
  "author_name": "",
  "post_date": "2019-11-10T17:18:55.543937600Z",
  "votes": 6,
  "comment_count": 13,
  "views": 0,
  "content": "<p>Hi everyone, I was inspecting some of my models' predictions and I came across this sample:</p>\n\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F1182060%2F6746e084eb0e4f713714b50e707b9a45%2FScreenshot%20from%202019-11-10%2014-12-46.png?generation=1573405996013520&amp;alt=media\" alt=\"\"></p>\n\n<p>I think will be really hard for a model to get this right, if you look at the left bottom part, the image has 3 different classes.</p>\n\n<p>I know that this is a noisy dataset, the labels are subjective and all that stuff, but what I would like to know is how are you improving model results in this kind of situation? so far I'm just hoping it can learn.</p>",
  "messages": [
    {
      "id": "669919",
      "postDate": "11/10/2019 17:18:55",
      "content": "<p>Hi everyone, I was inspecting some of my models' predictions and I came across this sample:</p>\n\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F1182060%2F6746e084eb0e4f713714b50e707b9a45%2FScreenshot%20from%202019-11-10%2014-12-46.png?generation=1573405996013520&amp;alt=media\" alt=\"\"></p>\n\n<p>I think will be really hard for a model to get this right, if you look at the left bottom part, the image has 3 different classes.</p>\n\n<p>I know that this is a noisy dataset, the labels are subjective and all that stuff, but what I would like to know is how are you improving model results in this kind of situation? so far I'm just hoping it can learn.</p>",
      "rawMarkdown": "Hi everyone, I was inspecting some of my models' predictions and I came across this sample:\n\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F1182060%2F6746e084eb0e4f713714b50e707b9a45%2FScreenshot%20from%202019-11-10%2014-12-46.png?generation=1573405996013520&amp;alt=media)\n\nI think will be really hard for a model to get this right, if you look at the left bottom part, the image has 3 different classes.\n\nI know that this is a noisy dataset, the labels are subjective and all that stuff, but what I would like to know is how are you improving model results in this kind of situation? so far I'm just hoping it can learn.",
      "votes": null
    },
    {
      "id": "670040",
      "postDate": "11/10/2019 23:30:10",
      "content": "<p>I think that using separated binary segmentation model for each class could help 😉 </p>",
      "rawMarkdown": "I think that using separated binary segmentation model for each class could help 😉",
      "votes": null
    },
    {
      "id": "670400",
      "postDate": "11/11/2019 12:26:44",
      "content": "<p>I tried separated models for each class, but it was worse, did you had more luck?</p>",
      "rawMarkdown": "I tried separated models for each class, but it was worse, did you had more luck?",
      "votes": null
    },
    {
      "id": "670533",
      "postDate": "11/11/2019 14:57:07",
      "content": "<p>No, I didn't 😂 . But I will try other architectures and, maybe, using ensemble learning on them to find out whether a separated model for each could surpass one single model for all classes.</p>",
      "rawMarkdown": "No, I didn't 😂 . But I will try other architectures and, maybe, using ensemble learning on them to find out whether a separated model for each could surpass one single model for all classes.",
      "votes": null
    },
    {
      "id": "670638",
      "postDate": "11/11/2019 17:11:47",
      "content": "<p>Yes 😄 , that's also what I'm planning to do.</p>",
      "rawMarkdown": "Yes 😄 , that's also what I'm planning to do.",
      "votes": null
    },
    {
      "id": "671352",
      "postDate": "11/12/2019 15:05:04",
      "content": "<p>Hi Dimitre, here’s my simple idea : if you have an accurate classifier, it should be able to tell you that there is some fish in the picture. After that, one non-ideal method is to use GradCAM mask from the classifier for fish prediction (like Raman’s or Chris’ methods in the other topics)</p>",
      "rawMarkdown": "Hi Dimitre, here’s my simple idea : if you have an accurate classifier, it should be able to tell you that there is some fish in the picture. After that, one non-ideal method is to use GradCAM mask from the classifier for fish prediction (like Raman’s or Chris’ methods in the other topics)",
      "votes": null
    },
    {
      "id": "671378",
      "postDate": "11/12/2019 15:42:33",
      "content": "<p>I see <a href=\"/ratthachat\">@ratthachat</a> , I think I should evaluate the my classification models together with the segmentations.</p>",
      "rawMarkdown": "I see @ratthachat , I think I should evaluate the my classification models together with the segmentations.",
      "votes": null
    },
    {
      "id": "671507",
      "postDate": "11/12/2019 20:01:24",
      "content": "<p>May be data augmentation can help you.</p>",
      "rawMarkdown": "May be data augmentation can help you.",
      "votes": null
    },
    {
      "id": "671575",
      "postDate": "11/12/2019 22:25:44",
      "content": "<p>Yes <a href=\"/shishu1421\">@shishu1421</a> , I'm also experimenting with that, but I think we should accept that some samples will be near impossible to predict right 😄 </p>",
      "rawMarkdown": "Yes @shishu1421 , I'm also experimenting with that, but I think we should accept that some samples will be near impossible to predict right 😄",
      "votes": null
    },
    {
      "id": "671741",
      "postDate": "11/13/2019 05:23:09",
      "content": "<p>Yeaahhhh! <a href=\"/dimitreoliveira\">@dimitreoliveira</a> </p>",
      "rawMarkdown": "Yeaahhhh! @dimitreoliveira",
      "votes": null
    },
    {
      "id": "672212",
      "postDate": "11/13/2019 16:24:22",
      "content": "<p>Couldn't we try fine tuning VGG to output 4 values with multiple one hot encodings, say multiple classifications??</p>",
      "rawMarkdown": "Couldn't we try fine tuning VGG to output 4 values with multiple one hot encodings, say multiple classifications??",
      "votes": null
    },
    {
      "id": "672408",
      "postDate": "11/13/2019 21:04:49",
      "content": "<p>do you mean a multi-label model? because that's what I use for the classification phase.</p>",
      "rawMarkdown": "do you mean a multi-label model? because that's what I use for the classification phase.",
      "votes": null
    },
    {
      "id": "673328",
      "postDate": "11/14/2019 20:40:43",
      "content": "<p>yes, how did that work out???</p>",
      "rawMarkdown": "yes, how did that work out???",
      "votes": null
    },
    {
      "id": "673334",
      "postDate": "11/14/2019 21:08:00",
      "content": "<p>It improved my results for sure, it seems that removing false positives has a big impact on this competition, this was also pointed by others.</p>",
      "rawMarkdown": "It improved my results for sure, it seems that removing false positives has a big impact on this competition, this was also pointed by others.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 670040,
      "author_name": "phunghieu",
      "author_url": "",
      "post_date": "11/10/2019 23:30:10",
      "content": "<p>I think that using separated binary segmentation model for each class could help 😉 </p>",
      "votes": null,
      "replies": [
        {
          "id": 670400,
          "author_name": "dimitreoliveira",
          "author_url": "",
          "post_date": "11/11/2019 12:26:44",
          "content": "<p>I tried separated models for each class, but it was worse, did you had more luck?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 670533,
          "author_name": "phunghieu",
          "author_url": "",
          "post_date": "11/11/2019 14:57:07",
          "content": "<p>No, I didn't 😂 . But I will try other architectures and, maybe, using ensemble learning on them to find out whether a separated model for each could surpass one single model for all classes.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 670638,
          "author_name": "dimitreoliveira",
          "author_url": "",
          "post_date": "11/11/2019 17:11:47",
          "content": "<p>Yes 😄 , that's also what I'm planning to do.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 671352,
      "author_name": "ratthachat",
      "author_url": "",
      "post_date": "11/12/2019 15:05:04",
      "content": "<p>Hi Dimitre, here’s my simple idea : if you have an accurate classifier, it should be able to tell you that there is some fish in the picture. After that, one non-ideal method is to use GradCAM mask from the classifier for fish prediction (like Raman’s or Chris’ methods in the other topics)</p>",
      "votes": null,
      "replies": [
        {
          "id": 671378,
          "author_name": "dimitreoliveira",
          "author_url": "",
          "post_date": "11/12/2019 15:42:33",
          "content": "<p>I see <a href=\"/ratthachat\">@ratthachat</a> , I think I should evaluate the my classification models together with the segmentations.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 671507,
      "author_name": "shishu1421",
      "author_url": "",
      "post_date": "11/12/2019 20:01:24",
      "content": "<p>May be data augmentation can help you.</p>",
      "votes": null,
      "replies": [
        {
          "id": 671575,
          "author_name": "dimitreoliveira",
          "author_url": "",
          "post_date": "11/12/2019 22:25:44",
          "content": "<p>Yes <a href=\"/shishu1421\">@shishu1421</a> , I'm also experimenting with that, but I think we should accept that some samples will be near impossible to predict right 😄 </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 671741,
          "author_name": "shishu1421",
          "author_url": "",
          "post_date": "11/13/2019 05:23:09",
          "content": "<p>Yeaahhhh! <a href=\"/dimitreoliveira\">@dimitreoliveira</a> </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 672212,
      "author_name": "dynamite2055",
      "author_url": "",
      "post_date": "11/13/2019 16:24:22",
      "content": "<p>Couldn't we try fine tuning VGG to output 4 values with multiple one hot encodings, say multiple classifications??</p>",
      "votes": null,
      "replies": [
        {
          "id": 672408,
          "author_name": "dimitreoliveira",
          "author_url": "",
          "post_date": "11/13/2019 21:04:49",
          "content": "<p>do you mean a multi-label model? because that's what I use for the classification phase.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 673328,
          "author_name": "dynamite2055",
          "author_url": "",
          "post_date": "11/14/2019 20:40:43",
          "content": "<p>yes, how did that work out???</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 673334,
          "author_name": "dimitreoliveira",
          "author_url": "",
          "post_date": "11/14/2019 21:08:00",
          "content": "<p>It improved my results for sure, it seems that removing false positives has a big impact on this competition, this was also pointed by others.</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "669919": "Hi everyone, I was inspecting some of my models' predictions and I came across this sample:\n\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F1182060%2F6746e084eb0e4f713714b50e707b9a45%2FScreenshot%20from%202019-11-10%2014-12-46.png?generation=1573405996013520&amp;alt=media)\n\nI think will be really hard for a model to get this right, if you look at the left bottom part, the image has 3 different classes.\n\nI know that this is a noisy dataset, the labels are subjective and all that stuff, but what I would like to know is how are you improving model results in this kind of situation? so far I'm just hoping it can learn.",
    "670040": "I think that using separated binary segmentation model for each class could help 😉",
    "670400": "I tried separated models for each class, but it was worse, did you had more luck?",
    "670533": "No, I didn't 😂 . But I will try other architectures and, maybe, using ensemble learning on them to find out whether a separated model for each could surpass one single model for all classes.",
    "670638": "Yes 😄 , that's also what I'm planning to do.",
    "671352": "Hi Dimitre, here’s my simple idea : if you have an accurate classifier, it should be able to tell you that there is some fish in the picture. After that, one non-ideal method is to use GradCAM mask from the classifier for fish prediction (like Raman’s or Chris’ methods in the other topics)",
    "671378": "I see @ratthachat , I think I should evaluate the my classification models together with the segmentations.",
    "671507": "May be data augmentation can help you.",
    "671575": "Yes @shishu1421 , I'm also experimenting with that, but I think we should accept that some samples will be near impossible to predict right 😄",
    "671741": "Yeaahhhh! @dimitreoliveira",
    "672212": "Couldn't we try fine tuning VGG to output 4 values with multiple one hot encodings, say multiple classifications??",
    "672408": "do you mean a multi-label model? because that's what I use for the classification phase.",
    "673328": "yes, how did that work out???",
    "673334": "It improved my results for sure, it seems that removing false positives has a big impact on this competition, this was also pointed by others."
  },
  "source": "meta"
}