{
  "id": 108414,
  "title": "Why are there so high LB scores?",
  "url": "/competitions/recursion-cellular-image-classification/discussion/108414",
  "author_name": "",
  "post_date": "2019-09-11T11:27:38.151705500Z",
  "votes": 10,
  "comment_count": 29,
  "views": 0,
  "content": "<p>This is the second competition I have attended, and currently I am at LB .35 with raw classification. It seems to me that despite all the metric learning and finetuning it is quite impossible to achieve .99 accuracy on this problem. Excuse me for the stupid question, but how are people getting .99 LB?</p>",
  "messages": [
    {
      "id": "623882",
      "postDate": "09/11/2019 11:27:38",
      "content": "<p>This is the second competition I have attended, and currently I am at LB .35 with raw classification. It seems to me that despite all the metric learning and finetuning it is quite impossible to achieve .99 accuracy on this problem. Excuse me for the stupid question, but how are people getting .99 LB?</p>",
      "rawMarkdown": "This is the second competition I have attended, and currently I am at LB .35 with raw classification. It seems to me that despite all the metric learning and finetuning it is quite impossible to achieve .99 accuracy on this problem. Excuse me for the stupid question, but how are people getting .99 LB?",
      "votes": null
    },
    {
      "id": "623883",
      "postDate": "09/11/2019 11:28:42",
      "content": "<p>I have just heard of pseudo-labeling, with which public tests are given predictions as labels then trained on these data. I wonder how does model benefit from pseudo-labeling at all?</p>",
      "rawMarkdown": "I have just heard of pseudo-labeling, with which public tests are given predictions as labels then trained on these data. I wonder how does model benefit from pseudo-labeling at all?",
      "votes": null
    },
    {
      "id": "623914",
      "postDate": "09/11/2019 12:10:05",
      "content": "<p>In some competitions I have the same feeling as you, but not this one. We currently have score 0.972 and the first place scores 0.993 but I am quite confident that we can get there by just polishing our existing model and approaches, so I don't suspect that the first place holds some magic knowledge. And we don't use anything too special as well, no overfitting to LB, no additional leaks besides the reported one. So I guess my advise is just keep trying more and different approaches. </p>",
      "rawMarkdown": "In some competitions I have the same feeling as you, but not this one. We currently have score 0.972 and the first place scores 0.993 but I am quite confident that we can get there by just polishing our existing model and approaches, so I don't suspect that the first place holds some magic knowledge. And we don't use anything too special as well, no overfitting to LB, no additional leaks besides the reported one. So I guess my advise is just keep trying more and different approaches.",
      "votes": null
    },
    {
      "id": "623923",
      "postDate": "09/11/2019 12:17:59",
      "content": "<p>Each sample is an <code>(X,y)</code> pair. And that is true, you don't have any new information in <code>y</code> for the test images. But <code>X</code> is still full of information. The model can learn to encode features from it, which makes it overall better.</p>",
      "rawMarkdown": "Each sample is an `(X,y)` pair. And that is true, you don't have any new information in `y` for the test images. But `X` is still full of information. The model can learn to encode features from it, which makes it overall better.",
      "votes": null
    },
    {
      "id": "623929",
      "postDate": "09/11/2019 12:25:49",
      "content": "<p>Assuming the pseudo-labels are correct (or more of them are correct than not - some label noise can be ok), the samples from test can provide additional information about the target distribution that may not have been available in train. But even if it was, just increasing the size of the training set will be helpful.</p>",
      "rawMarkdown": "Assuming the pseudo-labels are correct (or more of them are correct than not - some label noise can be ok), the samples from test can provide additional information about the target distribution that may not have been available in train. But even if it was, just increasing the size of the training set will be helpful.",
      "votes": null
    },
    {
      "id": "624016",
      "postDate": "09/11/2019 14:06:53",
      "content": "<p>Thanks! This has really given me confidence:-) I have a lot of ideas in mind (arcface, using leak, trying different architectures &amp; resolutions) but the LB has just been daunting. Now it seems what I lack is just patience</p>",
      "rawMarkdown": "Thanks! This has really given me confidence:-) I have a lot of ideas in mind (arcface, using leak, trying different architectures &amp; resolutions) but the LB has just been daunting. Now it seems what I lack is just patience",
      "votes": null
    },
    {
      "id": "624091",
      "postDate": "09/11/2019 16:45:24",
      "content": "<p>I shared the same frustration as you. This competition is a good learning opportunity for me for establishing Pytorch framework, exploring architectures, most importantly, understanding how metric learning works. I look forward to learning more from all of you. </p>",
      "rawMarkdown": "I shared the same frustration as you. This competition is a good learning opportunity for me for establishing Pytorch framework, exploring architectures, most importantly, understanding how metric learning works. I look forward to learning more from all of you.",
      "votes": null
    },
    {
      "id": "624113",
      "postDate": "09/11/2019 17:17:12",
      "content": "<p>You can reach 0.9+ with a classification model. ​</p>",
      "rawMarkdown": "You can reach 0.9+ with a classification model. ​",
      "votes": null
    },
    {
      "id": "624262",
      "postDate": "09/11/2019 21:51:49",
      "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> you said model, is it kfold or just a single image inference? How long it takes to train? Oleg said he uses kernels only. Is this also trained in kernels? If it's not to much to disclose.</p>",
      "rawMarkdown": "igorkrashenyi you said model, is it kfold or just a single image inference? How long it takes to train? Oleg said he uses kernels only. Is this also trained in kernels? If it's not to much to disclose.",
      "votes": null
    },
    {
      "id": "624380",
      "postDate": "09/12/2019 03:01:07",
      "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> \nCurrently my best classification model is trained on all experiments (except separate validation ones) using 512 resolution and achieves .64CV and .44LB. I expect that 1) stage2 training on separate cells 2) CV and 3) using leak might boost the score. It  is encouraging that classification might reach .9. Is it convenient for you to disclose some directions for me to work on? </p>",
      "rawMarkdown": "igorkrashenyi \nCurrently my best classification model is trained on all experiments (except separate validation ones) using 512 resolution and achieves .64CV and .44LB. I expect that 1) stage2 training on separate cells 2) CV and 3) using leak might boost the score. It  is encouraging that classification might reach .9. Is it convenient for you to disclose some directions for me to work on?",
      "votes": null
    },
    {
      "id": "624384",
      "postDate": "09/12/2019 03:03:10",
      "content": "<p>I am expecting my LB after these modifications to be around .6, but nowhere around .9. Am I missing some ways to use the controls?</p>",
      "rawMarkdown": "I am expecting my LB after these modifications to be around .6, but nowhere around .9. Am I missing some ways to use the controls?",
      "votes": null
    },
    {
      "id": "624429",
      "postDate": "09/12/2019 04:37:40",
      "content": "<p>Single model. Training time is about 2-3 days using 4 1080ti.</p>",
      "rawMarkdown": "Single model. Training time is about 2-3 days using 4 1080ti.",
      "votes": null
    },
    {
      "id": "624518",
      "postDate": "09/12/2019 06:49:06",
      "content": "<p>Thanks! The explanation of increasing training size convinces me! I will report any results:)</p>",
      "rawMarkdown": "Thanks! The explanation of increasing training size convinces me! I will report any results:)",
      "votes": null
    },
    {
      "id": "624524",
      "postDate": "09/12/2019 06:55:12",
      "content": "<p>Thank you, with the newest kernel GPU limit set to 30  h/week this would take me ~3 weeks. Well, bye bye kaggle...</p>",
      "rawMarkdown": "Thank you, with the newest kernel GPU limit set to 30  h/week this would take me ~3 weeks. Well, bye bye kaggle...",
      "votes": null
    },
    {
      "id": "624651",
      "postDate": "09/12/2019 08:50:11",
      "content": "<p><a href=\"/valanm\">@valanm</a> We are using multistep schedule for LR and SGD as an optimizer. I think if you to use Radam or Lookahead optimizers it is possible to train faster :) but it's just a guess. ​</p>\n\n<p>Unfortunately, we don't have so much hardware to make these experiments and to test other optimizers and schemes for LR. ​ ​​</p>",
      "rawMarkdown": "valanm We are using multistep schedule for LR and SGD as an optimizer. I think if you to use Radam or Lookahead optimizers it is possible to train faster :) but it's just a guess. ​\n\nUnfortunately, we don't have so much hardware to make these experiments and to test other optimizers and schemes for LR. ​ ​​",
      "votes": null
    },
    {
      "id": "624672",
      "postDate": "09/12/2019 09:07:43",
      "content": "<p><a href=\"/valanm\">@valanm</a> , I don't think you are fair to Kaggle here, this competition was known to be computationally expensive from the beginning (753,060 grey-scale images), and they distributed 300$ GCP credit and free TPUs to help you out. </p>",
      "rawMarkdown": "valanm , I don't think you are fair to Kaggle here, this competition was known to be computationally expensive from the beginning (753,060 grey-scale images), and they distributed 300$ GCP credit and free TPUs to help you out.",
      "votes": null
    },
    {
      "id": "624747",
      "postDate": "09/12/2019 10:50:29",
      "content": "<p><a href=\"/roguekk007\">@roguekk007</a> I guess the correct usage of the control subset is a key to get good model performan​ce. ​​</p>",
      "rawMarkdown": "roguekk007 I guess the correct usage of the control subset is a key to get good model performan​ce. ​​",
      "votes": null
    },
    {
      "id": "624794",
      "postDate": "09/12/2019 11:05:29",
      "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> you said it's possible to reach 0.9+ by using classification only. If it's not too much to disclose, can you please tell is it a classification model with plain softmax loss or some metric learning methods are required? </p>",
      "rawMarkdown": "igorkrashenyi you said it's possible to reach 0.9+ by using classification only. If it's not too much to disclose, can you please tell is it a classification model with plain softmax loss or some metric learning methods are required?",
      "votes": null
    },
    {
      "id": "624796",
      "postDate": "09/12/2019 11:11:39",
      "content": "<p><a href=\"/udaykamal\">@udaykamal</a> softmax </p>",
      "rawMarkdown": "udaykamal softmax",
      "votes": null
    },
    {
      "id": "624798",
      "postDate": "09/12/2019 11:14:50",
      "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> wow! that's amazing! I guess i need to be more patient! :(</p>",
      "rawMarkdown": "igorkrashenyi wow! that's amazing! I guess i need to be more patient! :(",
      "votes": null
    },
    {
      "id": "624845",
      "postDate": "09/12/2019 12:38:17",
      "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> Charming! I was just planning to spend some time on trying Arcface out. Also, I am wondering about how stage-2 training (separate training on experiments for different cells) really helps; my model heavily overfitting from stage1 training (.99 train, .64 validation), stage2 training seems only to make the problem more serious. Btw, Ranger and multi step cosineannralingLR does help me out;-)</p>",
      "rawMarkdown": "igorkrashenyi Charming! I was just planning to spend some time on trying Arcface out. Also, I am wondering about how stage-2 training (separate training on experiments for different cells) really helps; my model heavily overfitting from stage1 training (.99 train, .64 validation), stage2 training seems only to make the problem more serious. Btw, Ranger and multi step cosineannralingLR does help me out;-)",
      "votes": null
    },
    {
      "id": "625539",
      "postDate": "09/13/2019 07:13:27",
      "content": "<p>I wonder if you all use some tricky way to normalize your data, or maybe some peculiar training algorithms/architectures, because I cannot get even beyond <code>0.1</code> overall accuracy score :|</p>",
      "rawMarkdown": "I wonder if you all use some tricky way to normalize your data, or maybe some peculiar training algorithms/architectures, because I cannot get even beyond `0.1` overall accuracy score :|",
      "votes": null
    },
    {
      "id": "625549",
      "postDate": "09/13/2019 07:22:52",
      "content": "<p>Data normalization is very important, but even if you will use data \"as it is\" you should be able to overcome 0.1 of overall accuracy. </p>",
      "rawMarkdown": "Data normalization is very important, but even if you will use data \"as it is\" you should be able to overcome 0.1 of overall accuracy.",
      "votes": null
    },
    {
      "id": "625579",
      "postDate": "09/13/2019 07:39:16",
      "content": "<p><a href=\"/zaharch\">@zaharch</a> i understand your point. I didn't mean to be rude. My sincere apology and appreciation for kaggle's gratefulness</p>",
      "rawMarkdown": "zaharch i understand your point. I didn't mean to be rude. My sincere apology and appreciation for kaggle's gratefulness",
      "votes": null
    },
    {
      "id": "625627",
      "postDate": "09/13/2019 08:32:06",
      "content": "<p>Could you please point us to some direction with normalizing the data? Even the smallest cues will be greatly appreciated </p>",
      "rawMarkdown": "Could you please point us to some direction with normalizing the data? Even the smallest cues will be greatly appreciated",
      "votes": null
    },
    {
      "id": "625647",
      "postDate": "09/13/2019 08:52:08",
      "content": "<p>I'm using a very simple normalization just based on each image (my score is not at all high, though)</p>\n\n<p><code>\nidx = img[2, ] &gt; 4  # \"land\"; the other area is \"sea,\" -- area with no cells. \nfor ch in range(6):\n    m = np.mean(img[ch, ][idx])  # mean value on \"land\"\n    img[ch, ] /= m\n</code></p>\n\n<p>where <code>img.shape =&gt; [6, 512, 512]</code></p>\n\n<p>High-score teams: Are you using negative/positive controls, or plate/experiment-wide statistics for normalization?</p>",
      "rawMarkdown": "I'm using a very simple normalization just based on each image (my score is not at all high, though)\n\n```\nidx = img[2, ] &gt; 4  # \"land\"; the other area is \"sea,\" -- area with no cells. \nfor ch in range(6):\n    m = np.mean(img[ch, ][idx])  # mean value on \"land\"\n    img[ch, ] /= m\n```\n\nwhere `img.shape =&gt; [6, 512, 512]`\n\nHigh-score teams: Are you using negative/positive controls, or plate/experiment-wide statistics for normalization?",
      "votes": null
    },
    {
      "id": "625703",
      "postDate": "09/13/2019 10:52:18",
      "content": "<p><a href=\"/cateek\">@cateek</a> you can use pixel_stats.csv to normalize the data.  </p>",
      "rawMarkdown": "cateek you can use pixel_stats.csv to normalize the data.",
      "votes": null
    },
    {
      "id": "627688",
      "postDate": "09/16/2019 08:59:27",
      "content": "<p>Hi <a href=\"/roguekk007\">@roguekk007</a> \nHave you fixed stage-2 overfitting issue?\nI also have a tragedy overfitting on stage-2 ...</p>",
      "rawMarkdown": "Hi @roguekk007 \nHave you fixed stage-2 overfitting issue?\nI also have a tragedy overfitting on stage-2 ...",
      "votes": null
    },
    {
      "id": "627735",
      "postDate": "09/16/2019 10:04:02",
      "content": "<p>I have serious overfitting too, both on validation and LB experiments. Stage1 training+leak yields my position on LB now (hint: try greater resolution). Struggling to improve by using control subset</p>",
      "rawMarkdown": "I have serious overfitting too, both on validation and LB experiments. Stage1 training+leak yields my position on LB now (hint: try greater resolution). Struggling to improve by using control subset",
      "votes": null
    },
    {
      "id": "629264",
      "postDate": "09/18/2019 15:27:50",
      "content": "<p>I think my score difference between .6ish and teams with a .8 and up score is due to U2OS-04 alone. My model got almost all of them from U2OS-04 wrong. </p>",
      "rawMarkdown": "I think my score difference between .6ish and teams with a .8 and up score is due to U2OS-04 alone. My model got almost all of them from U2OS-04 wrong.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 623883,
      "author_name": "roguekk007",
      "author_url": "",
      "post_date": "09/11/2019 11:28:42",
      "content": "<p>I have just heard of pseudo-labeling, with which public tests are given predictions as labels then trained on these data. I wonder how does model benefit from pseudo-labeling at all?</p>",
      "votes": null,
      "replies": [
        {
          "id": 623923,
          "author_name": "zaharch",
          "author_url": "",
          "post_date": "09/11/2019 12:17:59",
          "content": "<p>Each sample is an <code>(X,y)</code> pair. And that is true, you don't have any new information in <code>y</code> for the test images. But <code>X</code> is still full of information. The model can learn to encode features from it, which makes it overall better.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 623929,
          "author_name": "interneuron",
          "author_url": "",
          "post_date": "09/11/2019 12:25:49",
          "content": "<p>Assuming the pseudo-labels are correct (or more of them are correct than not - some label noise can be ok), the samples from test can provide additional information about the target distribution that may not have been available in train. But even if it was, just increasing the size of the training set will be helpful.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624518,
          "author_name": "roguekk007",
          "author_url": "",
          "post_date": "09/12/2019 06:49:06",
          "content": "<p>Thanks! The explanation of increasing training size convinces me! I will report any results:)</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 623914,
      "author_name": "zaharch",
      "author_url": "",
      "post_date": "09/11/2019 12:10:05",
      "content": "<p>In some competitions I have the same feeling as you, but not this one. We currently have score 0.972 and the first place scores 0.993 but I am quite confident that we can get there by just polishing our existing model and approaches, so I don't suspect that the first place holds some magic knowledge. And we don't use anything too special as well, no overfitting to LB, no additional leaks besides the reported one. So I guess my advise is just keep trying more and different approaches. </p>",
      "votes": null,
      "replies": [
        {
          "id": 624016,
          "author_name": "roguekk007",
          "author_url": "",
          "post_date": "09/11/2019 14:06:53",
          "content": "<p>Thanks! This has really given me confidence:-) I have a lot of ideas in mind (arcface, using leak, trying different architectures &amp; resolutions) but the LB has just been daunting. Now it seems what I lack is just patience</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624091,
          "author_name": "pukkinming",
          "author_url": "",
          "post_date": "09/11/2019 16:45:24",
          "content": "<p>I shared the same frustration as you. This competition is a good learning opportunity for me for establishing Pytorch framework, exploring architectures, most importantly, understanding how metric learning works. I look forward to learning more from all of you. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624113,
          "author_name": "igorkrashenyi",
          "author_url": "",
          "post_date": "09/11/2019 17:17:12",
          "content": "<p>You can reach 0.9+ with a classification model. ​</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624262,
          "author_name": "valanm",
          "author_url": "",
          "post_date": "09/11/2019 21:51:49",
          "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> you said model, is it kfold or just a single image inference? How long it takes to train? Oleg said he uses kernels only. Is this also trained in kernels? If it's not to much to disclose.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624380,
          "author_name": "roguekk007",
          "author_url": "",
          "post_date": "09/12/2019 03:01:07",
          "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> \nCurrently my best classification model is trained on all experiments (except separate validation ones) using 512 resolution and achieves .64CV and .44LB. I expect that 1) stage2 training on separate cells 2) CV and 3) using leak might boost the score. It  is encouraging that classification might reach .9. Is it convenient for you to disclose some directions for me to work on? </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624384,
          "author_name": "roguekk007",
          "author_url": "",
          "post_date": "09/12/2019 03:03:10",
          "content": "<p>I am expecting my LB after these modifications to be around .6, but nowhere around .9. Am I missing some ways to use the controls?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624429,
          "author_name": "igorkrashenyi",
          "author_url": "",
          "post_date": "09/12/2019 04:37:40",
          "content": "<p>Single model. Training time is about 2-3 days using 4 1080ti.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624524,
          "author_name": "valanm",
          "author_url": "",
          "post_date": "09/12/2019 06:55:12",
          "content": "<p>Thank you, with the newest kernel GPU limit set to 30  h/week this would take me ~3 weeks. Well, bye bye kaggle...</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624651,
          "author_name": "igorkrashenyi",
          "author_url": "",
          "post_date": "09/12/2019 08:50:11",
          "content": "<p><a href=\"/valanm\">@valanm</a> We are using multistep schedule for LR and SGD as an optimizer. I think if you to use Radam or Lookahead optimizers it is possible to train faster :) but it's just a guess. ​</p>\n\n<p>Unfortunately, we don't have so much hardware to make these experiments and to test other optimizers and schemes for LR. ​ ​​</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624672,
          "author_name": "zaharch",
          "author_url": "",
          "post_date": "09/12/2019 09:07:43",
          "content": "<p><a href=\"/valanm\">@valanm</a> , I don't think you are fair to Kaggle here, this competition was known to be computationally expensive from the beginning (753,060 grey-scale images), and they distributed 300$ GCP credit and free TPUs to help you out. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624747,
          "author_name": "igorkrashenyi",
          "author_url": "",
          "post_date": "09/12/2019 10:50:29",
          "content": "<p><a href=\"/roguekk007\">@roguekk007</a> I guess the correct usage of the control subset is a key to get good model performan​ce. ​​</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624794,
          "author_name": "udaykamal",
          "author_url": "",
          "post_date": "09/12/2019 11:05:29",
          "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> you said it's possible to reach 0.9+ by using classification only. If it's not too much to disclose, can you please tell is it a classification model with plain softmax loss or some metric learning methods are required? </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624796,
          "author_name": "igorkrashenyi",
          "author_url": "",
          "post_date": "09/12/2019 11:11:39",
          "content": "<p><a href=\"/udaykamal\">@udaykamal</a> softmax </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624798,
          "author_name": "udaykamal",
          "author_url": "",
          "post_date": "09/12/2019 11:14:50",
          "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> wow! that's amazing! I guess i need to be more patient! :(</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 624845,
          "author_name": "roguekk007",
          "author_url": "",
          "post_date": "09/12/2019 12:38:17",
          "content": "<p><a href=\"/igorkrashenyi\">@igorkrashenyi</a> Charming! I was just planning to spend some time on trying Arcface out. Also, I am wondering about how stage-2 training (separate training on experiments for different cells) really helps; my model heavily overfitting from stage1 training (.99 train, .64 validation), stage2 training seems only to make the problem more serious. Btw, Ranger and multi step cosineannralingLR does help me out;-)</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 625579,
          "author_name": "valanm",
          "author_url": "",
          "post_date": "09/13/2019 07:39:16",
          "content": "<p><a href=\"/zaharch\">@zaharch</a> i understand your point. I didn't mean to be rude. My sincere apology and appreciation for kaggle's gratefulness</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 627688,
          "author_name": "super13579",
          "author_url": "",
          "post_date": "09/16/2019 08:59:27",
          "content": "<p>Hi <a href=\"/roguekk007\">@roguekk007</a> \nHave you fixed stage-2 overfitting issue?\nI also have a tragedy overfitting on stage-2 ...</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 627735,
          "author_name": "roguekk007",
          "author_url": "",
          "post_date": "09/16/2019 10:04:02",
          "content": "<p>I have serious overfitting too, both on validation and LB experiments. Stage1 training+leak yields my position on LB now (hint: try greater resolution). Struggling to improve by using control subset</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 625539,
      "author_name": "purplejester",
      "author_url": "",
      "post_date": "09/13/2019 07:13:27",
      "content": "<p>I wonder if you all use some tricky way to normalize your data, or maybe some peculiar training algorithms/architectures, because I cannot get even beyond <code>0.1</code> overall accuracy score :|</p>",
      "votes": null,
      "replies": [
        {
          "id": 625549,
          "author_name": "igorkrashenyi",
          "author_url": "",
          "post_date": "09/13/2019 07:22:52",
          "content": "<p>Data normalization is very important, but even if you will use data \"as it is\" you should be able to overcome 0.1 of overall accuracy. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 625627,
          "author_name": "cateek",
          "author_url": "",
          "post_date": "09/13/2019 08:32:06",
          "content": "<p>Could you please point us to some direction with normalizing the data? Even the smallest cues will be greatly appreciated </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 625647,
          "author_name": "junkoda",
          "author_url": "",
          "post_date": "09/13/2019 08:52:08",
          "content": "<p>I'm using a very simple normalization just based on each image (my score is not at all high, though)</p>\n\n<p><code>\nidx = img[2, ] &gt; 4  # \"land\"; the other area is \"sea,\" -- area with no cells. \nfor ch in range(6):\n    m = np.mean(img[ch, ][idx])  # mean value on \"land\"\n    img[ch, ] /= m\n</code></p>\n\n<p>where <code>img.shape =&gt; [6, 512, 512]</code></p>\n\n<p>High-score teams: Are you using negative/positive controls, or plate/experiment-wide statistics for normalization?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 625703,
          "author_name": "igorkrashenyi",
          "author_url": "",
          "post_date": "09/13/2019 10:52:18",
          "content": "<p><a href=\"/cateek\">@cateek</a> you can use pixel_stats.csv to normalize the data.  </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 629264,
      "author_name": "ryanzhang",
      "author_url": "",
      "post_date": "09/18/2019 15:27:50",
      "content": "<p>I think my score difference between .6ish and teams with a .8 and up score is due to U2OS-04 alone. My model got almost all of them from U2OS-04 wrong. </p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "623882": "This is the second competition I have attended, and currently I am at LB .35 with raw classification. It seems to me that despite all the metric learning and finetuning it is quite impossible to achieve .99 accuracy on this problem. Excuse me for the stupid question, but how are people getting .99 LB?",
    "623883": "I have just heard of pseudo-labeling, with which public tests are given predictions as labels then trained on these data. I wonder how does model benefit from pseudo-labeling at all?",
    "623914": "In some competitions I have the same feeling as you, but not this one. We currently have score 0.972 and the first place scores 0.993 but I am quite confident that we can get there by just polishing our existing model and approaches, so I don't suspect that the first place holds some magic knowledge. And we don't use anything too special as well, no overfitting to LB, no additional leaks besides the reported one. So I guess my advise is just keep trying more and different approaches.",
    "623923": "Each sample is an `(X,y)` pair. And that is true, you don't have any new information in `y` for the test images. But `X` is still full of information. The model can learn to encode features from it, which makes it overall better.",
    "623929": "Assuming the pseudo-labels are correct (or more of them are correct than not - some label noise can be ok), the samples from test can provide additional information about the target distribution that may not have been available in train. But even if it was, just increasing the size of the training set will be helpful.",
    "624016": "Thanks! This has really given me confidence:-) I have a lot of ideas in mind (arcface, using leak, trying different architectures &amp; resolutions) but the LB has just been daunting. Now it seems what I lack is just patience",
    "624091": "I shared the same frustration as you. This competition is a good learning opportunity for me for establishing Pytorch framework, exploring architectures, most importantly, understanding how metric learning works. I look forward to learning more from all of you.",
    "624113": "You can reach 0.9+ with a classification model. ​",
    "624262": "igorkrashenyi you said model, is it kfold or just a single image inference? How long it takes to train? Oleg said he uses kernels only. Is this also trained in kernels? If it's not to much to disclose.",
    "624380": "igorkrashenyi \nCurrently my best classification model is trained on all experiments (except separate validation ones) using 512 resolution and achieves .64CV and .44LB. I expect that 1) stage2 training on separate cells 2) CV and 3) using leak might boost the score. It  is encouraging that classification might reach .9. Is it convenient for you to disclose some directions for me to work on?",
    "624384": "I am expecting my LB after these modifications to be around .6, but nowhere around .9. Am I missing some ways to use the controls?",
    "624429": "Single model. Training time is about 2-3 days using 4 1080ti.",
    "624518": "Thanks! The explanation of increasing training size convinces me! I will report any results:)",
    "624524": "Thank you, with the newest kernel GPU limit set to 30  h/week this would take me ~3 weeks. Well, bye bye kaggle...",
    "624651": "valanm We are using multistep schedule for LR and SGD as an optimizer. I think if you to use Radam or Lookahead optimizers it is possible to train faster :) but it's just a guess. ​\n\nUnfortunately, we don't have so much hardware to make these experiments and to test other optimizers and schemes for LR. ​ ​​",
    "624672": "valanm , I don't think you are fair to Kaggle here, this competition was known to be computationally expensive from the beginning (753,060 grey-scale images), and they distributed 300$ GCP credit and free TPUs to help you out.",
    "624747": "roguekk007 I guess the correct usage of the control subset is a key to get good model performan​ce. ​​",
    "624794": "igorkrashenyi you said it's possible to reach 0.9+ by using classification only. If it's not too much to disclose, can you please tell is it a classification model with plain softmax loss or some metric learning methods are required?",
    "624796": "udaykamal softmax",
    "624798": "igorkrashenyi wow! that's amazing! I guess i need to be more patient! :(",
    "624845": "igorkrashenyi Charming! I was just planning to spend some time on trying Arcface out. Also, I am wondering about how stage-2 training (separate training on experiments for different cells) really helps; my model heavily overfitting from stage1 training (.99 train, .64 validation), stage2 training seems only to make the problem more serious. Btw, Ranger and multi step cosineannralingLR does help me out;-)",
    "625539": "I wonder if you all use some tricky way to normalize your data, or maybe some peculiar training algorithms/architectures, because I cannot get even beyond `0.1` overall accuracy score :|",
    "625549": "Data normalization is very important, but even if you will use data \"as it is\" you should be able to overcome 0.1 of overall accuracy.",
    "625579": "zaharch i understand your point. I didn't mean to be rude. My sincere apology and appreciation for kaggle's gratefulness",
    "625627": "Could you please point us to some direction with normalizing the data? Even the smallest cues will be greatly appreciated",
    "625647": "I'm using a very simple normalization just based on each image (my score is not at all high, though)\n\n```\nidx = img[2, ] &gt; 4  # \"land\"; the other area is \"sea,\" -- area with no cells. \nfor ch in range(6):\n    m = np.mean(img[ch, ][idx])  # mean value on \"land\"\n    img[ch, ] /= m\n```\n\nwhere `img.shape =&gt; [6, 512, 512]`\n\nHigh-score teams: Are you using negative/positive controls, or plate/experiment-wide statistics for normalization?",
    "625703": "cateek you can use pixel_stats.csv to normalize the data.",
    "627688": "Hi @roguekk007 \nHave you fixed stage-2 overfitting issue?\nI also have a tragedy overfitting on stage-2 ...",
    "627735": "I have serious overfitting too, both on validation and LB experiments. Stage1 training+leak yields my position on LB now (hint: try greater resolution). Struggling to improve by using control subset",
    "629264": "I think my score difference between .6ish and teams with a .8 and up score is due to U2OS-04 alone. My model got almost all of them from U2OS-04 wrong."
  },
  "source": "meta"
}