{
  "id": 153687,
  "title": "Stuck with Regression at 0.79",
  "url": "/competitions/prostate-cancer-grade-assessment/discussion/153687",
  "author_name": "Claudio Fanconi",
  "post_date": "2020-05-25T23:31:26.464000",
  "votes": 4,
  "comment_count": 14,
  "views": 0,
  "content": "<p>Hi there :)</p>\n\n<p>I am currently using an EfficientNetB0 as backbone, and a regression appended. My model is currently yielding a CV of 0.79 and an LB of 0.76. I track the MSE valid loss for about 30 epochs... It's mostly inspired by iafoss tile model (big thanks, man!) </p>\n\n<p>After reading the \"best single model\" discussion, I see very high results and CV.</p>\n\n<p>Therefore, I wanted to ask you, what additional methods gave significant CV improvements? Obviously, I don't want to know your super-secret-garden-gnome-magic-optimizer, but I am thankful for every hint! </p>",
  "messages": [
    {
      "id": 861173,
      "postDate": "2020-05-25T23:31:26.463Z",
      "content": "<p>Hi there :)</p>\n\n<p>I am currently using an EfficientNetB0 as backbone, and a regression appended. My model is currently yielding a CV of 0.79 and an LB of 0.76. I track the MSE valid loss for about 30 epochs... It's mostly inspired by iafoss tile model (big thanks, man!) </p>\n\n<p>After reading the \"best single model\" discussion, I see very high results and CV.</p>\n\n<p>Therefore, I wanted to ask you, what additional methods gave significant CV improvements? Obviously, I don't want to know your super-secret-garden-gnome-magic-optimizer, but I am thankful for every hint! </p>",
      "rawMarkdown": "Hi there :)\n\nI am currently using an EfficientNetB0 as backbone, and a regression appended. My model is currently yielding a CV of 0.79 and an LB of 0.76. I track the MSE valid loss for about 30 epochs... It's mostly inspired by iafoss tile model (big thanks, man!) \n\nAfter reading the \"best single model\" discussion, I see very high results and CV.\n\nTherefore, I wanted to ask you, what additional methods gave significant CV improvements? Obviously, I don't want to know your super-secret-garden-gnome-magic-optimizer, but I am thankful for every hint! ",
      "votes": 4
    },
    {
      "id": 862066,
      "postDate": "2020-05-26T11:55:59.440Z",
      "content": "<p>Hi <a href=\"/fanconic\">@fanconic</a>  - not sure if I've interpreted something wrong, but in your public notebook you seem to be predicting just 5 classes of isup_grade (0, 1, 2, 3, 4)? There are 6 classes (0 -&gt; 5). Was this intentional? Not sure if you're doing the same thing for your other submissions, and it's impacting your scores.</p>",
      "rawMarkdown": "Hi @fanconic  - not sure if I've interpreted something wrong, but in your public notebook you seem to be predicting just 5 classes of isup_grade (0, 1, 2, 3, 4)? There are 6 classes (0 -&gt; 5). Was this intentional? Not sure if you're doing the same thing for your other submissions, and it's impacting your scores.",
      "votes": 1,
      "replies": [
        {
          "id": 862078,
          "postDate": "2020-05-26T12:01:59.693Z",
          "content": "<p>Yes, thank you for pointing this out! I realized it myself today - I cannot believe my own stupidity sometimes. The mistake happened because I took it from the APTOS challenge last year.\nAnyways, I have corrected it now and hoping for better results :)</p>",
          "rawMarkdown": "Yes, thank you for pointing this out! I realized it myself today - I cannot believe my own stupidity sometimes. The mistake happened because I took it from the APTOS challenge last year.\nAnyways, I have corrected it now and hoping for better results :)",
          "votes": 1
        },
        {
          "id": 862088,
          "postDate": "2020-05-26T12:11:48.970Z",
          "content": "<p>Don't worry, we've all been there..... </p>",
          "rawMarkdown": "Don't worry, we've all been there..... ",
          "votes": 1
        },
        {
          "id": 862104,
          "postDate": "2020-05-26T12:24:16.553Z",
          "content": "<p>BTW: a question regarding EfficientNets - are you using a list of images each f 224x224 (like iafoss), or are you creating one large square image of all the tiles (such as 512x512)?</p>",
          "rawMarkdown": "BTW: a question regarding EfficientNets - are you using a list of images each f 224x224 (like iafoss), or are you creating one large square image of all the tiles (such as 512x512)?"
        },
        {
          "id": 862118,
          "postDate": "2020-05-26T12:33:19.193Z",
          "content": "<p>I use a list of images, but I'm dealing with the tiles slightly differently to iafoss. I'm planning on trying out using one large square, but haven't got to it yet.</p>",
          "rawMarkdown": "I use a list of images, but I'm dealing with the tiles slightly differently to iafoss. I'm planning on trying out using one large square, but haven't got to it yet.",
          "votes": 1
        }
      ]
    },
    {
      "id": 861189,
      "postDate": "2020-05-26T00:01:27.060Z",
      "content": "<p>Try different resolution with different values for tile size and/or number of tiles.</p>\n\n<p>Also make sure you actually submit your trained models... CV is highly unreliable for most people.</p>",
      "rawMarkdown": "Try different resolution with different values for tile size and/or number of tiles.\n\nAlso make sure you actually submit your trained models... CV is highly unreliable for most people.",
      "votes": 1,
      "replies": [
        {
          "id": 861583,
          "postDate": "2020-05-26T05:51:12.393Z",
          "content": "<p>Thank you for your answer! It seems to be general consensus so far in this discussion. Definitely will have a look at it!</p>\n\n<p>Yes, I always get to my submission maximum a day. Just didn't see any significant increase of CV and LB recently. </p>",
          "rawMarkdown": "Thank you for your answer! It seems to be general consensus so far in this discussion. Definitely will have a look at it!\n\nYes, I always get to my submission maximum a day. Just didn't see any significant increase of CV and LB recently. \n"
        }
      ]
    },
    {
      "id": 861377,
      "postDate": "2020-05-26T02:32:20.460Z",
      "content": "<p>To see any improvement by using the intermediate resolution, you have to increase to overall resolution of the concatenated tiles. If you concatenate the tiles from the lowest resolution at 16 128 by 128 tiles, you end up with a 512 by 512 image. If you try the intermediate resolution at 16 256 by 256 tiles and resize the concatenated image back to 512 by 512,  it will be almost no different than using the lowest resolution at 16 128 by 128 tiles.</p>",
      "rawMarkdown": "To see any improvement by using the intermediate resolution, you have to increase to overall resolution of the concatenated tiles. If you concatenate the tiles from the lowest resolution at 16 128 by 128 tiles, you end up with a 512 by 512 image. If you try the intermediate resolution at 16 256 by 256 tiles and resize the concatenated image back to 512 by 512,  it will be almost no different than using the lowest resolution at 16 128 by 128 tiles.",
      "votes": 2,
      "replies": [
        {
          "id": 861582,
          "postDate": "2020-05-26T05:50:05.063Z",
          "content": "<p>Thank you for sharing!</p>\n\n<p>I will have a further look into that. So you mean, in the preprocessing step take a higher resolution of the image and split it into more tiles of the same size as before. Now you can use N_2 &gt; N_1 tiles with SIZExSIZE still the same? </p>",
          "rawMarkdown": "Thank you for sharing!\n\nI will have a further look into that. So you mean, in the preprocessing step take a higher resolution of the image and split it into more tiles of the same size as before. Now you can use N_2 &gt; N_1 tiles with SIZExSIZE still the same? "
        },
        {
          "id": 862844,
          "postDate": "2020-05-26T21:45:25.603Z",
          "content": "<p>Yeah, something like that.</p>",
          "rawMarkdown": "Yeah, something like that."
        }
      ]
    },
    {
      "id": 861176,
      "postDate": "2020-05-25T23:38:32.353Z",
      "content": "<p>I guess the key is to use the intermediate resolution.\nI tried it tonight but I couldn't get any better results, I may have missed something.\nEdit: I got a good boost on my cv (from 0.76 to 0.84).</p>",
      "rawMarkdown": "I guess the key is to use the intermediate resolution.\nI tried it tonight but I couldn't get any better results, I may have missed something.\nEdit: I got a good boost on my cv (from 0.76 to 0.84).",
      "votes": 2
    },
    {
      "id": 874256,
      "postDate": "2020-06-04T18:49:23.140Z",
      "content": "<p><a href=\"/fanconic\">@fanconic</a> , regression means logistic regression model making it mutlilable. How are you do it using ordinal or binning.\nThanks .</p>",
      "rawMarkdown": "@fanconic , regression means logistic regression model making it mutlilable. How are you do it using ordinal or binning.\nThanks .",
      "replies": [
        {
          "id": 874261,
          "postDate": "2020-06-04T18:57:45.363Z",
          "content": "<p>I am using a linear regression at the NN output and then optimize the binning :)</p>",
          "rawMarkdown": "I am using a linear regression at the NN output and then optimize the binning :)"
        },
        {
          "id": 874297,
          "postDate": "2020-06-04T19:51:31.997Z",
          "content": "<p>It sounds interesting , never tried. \nDid you try to convert it into multilabel like for \n3+4 as [0, 0, 0, 1, 1, 0 ]\n4+ 5 as [0, 0, 0, 0, 1, 1 ] etc.\nUsing log_loss.</p>",
          "rawMarkdown": "It sounds interesting , never tried. \nDid you try to convert it into multilabel like for \n3+4 as [0, 0, 0, 1, 1, 0 ]\n4+ 5 as [0, 0, 0, 0, 1, 1 ] etc.\nUsing log_loss."
        }
      ]
    }
  ],
  "comments": [
    {
      "id": 862066,
      "author_name": "fergusoci",
      "author_url": "",
      "post_date": "2020-05-26T11:55:59.440000",
      "content": "<p>Hi <a href=\"/fanconic\">@fanconic</a>  - not sure if I've interpreted something wrong, but in your public notebook you seem to be predicting just 5 classes of isup_grade (0, 1, 2, 3, 4)? There are 6 classes (0 -&gt; 5). Was this intentional? Not sure if you're doing the same thing for your other submissions, and it's impacting your scores.</p>",
      "votes": 1,
      "replies": [
        {
          "id": 862078,
          "author_name": "Claudio Fanconi",
          "author_url": "",
          "post_date": "2020-05-26T12:01:59.693000",
          "content": "<p>Yes, thank you for pointing this out! I realized it myself today - I cannot believe my own stupidity sometimes. The mistake happened because I took it from the APTOS challenge last year.\nAnyways, I have corrected it now and hoping for better results :)</p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 862088,
          "author_name": "fergusoci",
          "author_url": "",
          "post_date": "2020-05-26T12:11:48.970000",
          "content": "<p>Don't worry, we've all been there..... </p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 862104,
          "author_name": "Claudio Fanconi",
          "author_url": "",
          "post_date": "2020-05-26T12:24:16.553000",
          "content": "<p>BTW: a question regarding EfficientNets - are you using a list of images each f 224x224 (like iafoss), or are you creating one large square image of all the tiles (such as 512x512)?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 862118,
          "author_name": "fergusoci",
          "author_url": "",
          "post_date": "2020-05-26T12:33:19.193000",
          "content": "<p>I use a list of images, but I'm dealing with the tiles slightly differently to iafoss. I'm planning on trying out using one large square, but haven't got to it yet.</p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 861189,
      "author_name": "Arnaud Roussel",
      "author_url": "",
      "post_date": "2020-05-26T00:01:27.060000",
      "content": "<p>Try different resolution with different values for tile size and/or number of tiles.</p>\n\n<p>Also make sure you actually submit your trained models... CV is highly unreliable for most people.</p>",
      "votes": 1,
      "replies": [
        {
          "id": 861583,
          "author_name": "Claudio Fanconi",
          "author_url": "",
          "post_date": "2020-05-26T05:51:12.393000",
          "content": "<p>Thank you for your answer! It seems to be general consensus so far in this discussion. Definitely will have a look at it!</p>\n\n<p>Yes, I always get to my submission maximum a day. Just didn't see any significant increase of CV and LB recently. </p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 861377,
      "author_name": "Richard Xiao",
      "author_url": "",
      "post_date": "2020-05-26T02:32:20.460000",
      "content": "<p>To see any improvement by using the intermediate resolution, you have to increase to overall resolution of the concatenated tiles. If you concatenate the tiles from the lowest resolution at 16 128 by 128 tiles, you end up with a 512 by 512 image. If you try the intermediate resolution at 16 256 by 256 tiles and resize the concatenated image back to 512 by 512,  it will be almost no different than using the lowest resolution at 16 128 by 128 tiles.</p>",
      "votes": 2,
      "replies": [
        {
          "id": 861582,
          "author_name": "Claudio Fanconi",
          "author_url": "",
          "post_date": "2020-05-26T05:50:05.063000",
          "content": "<p>Thank you for sharing!</p>\n\n<p>I will have a further look into that. So you mean, in the preprocessing step take a higher resolution of the image and split it into more tiles of the same size as before. Now you can use N_2 &gt; N_1 tiles with SIZExSIZE still the same? </p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 862844,
          "author_name": "Richard Xiao",
          "author_url": "",
          "post_date": "2020-05-26T21:45:25.603000",
          "content": "<p>Yeah, something like that.</p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 861176,
      "author_name": "Adil Zouitine",
      "author_url": "",
      "post_date": "2020-05-25T23:38:32.353000",
      "content": "<p>I guess the key is to use the intermediate resolution.\nI tried it tonight but I couldn't get any better results, I may have missed something.\nEdit: I got a good boost on my cv (from 0.76 to 0.84).</p>",
      "votes": 2,
      "replies": []
    },
    {
      "id": 874256,
      "author_name": "Rajnish Chauhan",
      "author_url": "",
      "post_date": "2020-06-04T18:49:23.140000",
      "content": "<p><a href=\"/fanconic\">@fanconic</a> , regression means logistic regression model making it mutlilable. How are you do it using ordinal or binning.\nThanks .</p>",
      "votes": 0,
      "replies": [
        {
          "id": 874261,
          "author_name": "Claudio Fanconi",
          "author_url": "",
          "post_date": "2020-06-04T18:57:45.363000",
          "content": "<p>I am using a linear regression at the NN output and then optimize the binning :)</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 874297,
          "author_name": "Rajnish Chauhan",
          "author_url": "",
          "post_date": "2020-06-04T19:51:31.997000",
          "content": "<p>It sounds interesting , never tried. \nDid you try to convert it into multilabel like for \n3+4 as [0, 0, 0, 1, 1, 0 ]\n4+ 5 as [0, 0, 0, 0, 1, 1 ] etc.\nUsing log_loss.</p>",
          "votes": 0,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "861173": "Hi there :)\n\nI am currently using an EfficientNetB0 as backbone, and a regression appended. My model is currently yielding a CV of 0.79 and an LB of 0.76. I track the MSE valid loss for about 30 epochs... It's mostly inspired by iafoss tile model (big thanks, man!) \n\nAfter reading the \"best single model\" discussion, I see very high results and CV.\n\nTherefore, I wanted to ask you, what additional methods gave significant CV improvements? Obviously, I don't want to know your super-secret-garden-gnome-magic-optimizer, but I am thankful for every hint! ",
    "862066": "Hi @fanconic  - not sure if I've interpreted something wrong, but in your public notebook you seem to be predicting just 5 classes of isup_grade (0, 1, 2, 3, 4)? There are 6 classes (0 -&gt; 5). Was this intentional? Not sure if you're doing the same thing for your other submissions, and it's impacting your scores.",
    "861189": "Try different resolution with different values for tile size and/or number of tiles.\n\nAlso make sure you actually submit your trained models... CV is highly unreliable for most people.",
    "861377": "To see any improvement by using the intermediate resolution, you have to increase to overall resolution of the concatenated tiles. If you concatenate the tiles from the lowest resolution at 16 128 by 128 tiles, you end up with a 512 by 512 image. If you try the intermediate resolution at 16 256 by 256 tiles and resize the concatenated image back to 512 by 512,  it will be almost no different than using the lowest resolution at 16 128 by 128 tiles.",
    "861176": "I guess the key is to use the intermediate resolution.\nI tried it tonight but I couldn't get any better results, I may have missed something.\nEdit: I got a good boost on my cv (from 0.76 to 0.84).",
    "874256": "@fanconic , regression means logistic regression model making it mutlilable. How are you do it using ordinal or binning.\nThanks ."
  }
}