{
  "id": 53284,
  "title": "Across three stages in Mask-RCNN, how many epochs do we need actually for this competition?",
  "url": "/competitions/data-science-bowl-2018/discussion/53284",
  "author_name": "",
  "post_date": "2018-03-29T00:40:20.546201Z",
  "votes": null,
  "comment_count": 25,
  "views": 0,
  "content": "",
  "messages": [
    {
      "id": "305500",
      "postDate": "03/29/2018 00:40:20",
      "content": "",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "305698",
      "postDate": "03/29/2018 09:38:24",
      "content": "<p>20+20+70 for me</p>",
      "rawMarkdown": "20+20+70 for me",
      "votes": null
    },
    {
      "id": "305701",
      "postDate": "03/29/2018 09:42:27",
      "content": "<p>60 (heads with 0.0001), 40 (all with 0.0001), 40 (all with 0.00001) for me. @xiapidan: do you use sgd or adam? The second \"20\" is all or 4+?</p>",
      "rawMarkdown": "60 (heads with 0.0001), 40 (all with 0.0001), 40 (all with 0.00001) for me. @xiapidan: do you use sgd or adam? The second \"20\" is all or 4+?",
      "votes": null
    },
    {
      "id": "306074",
      "postDate": "03/29/2018 20:25:41",
      "content": "<p>Thanks</p>",
      "rawMarkdown": "Thanks",
      "votes": null
    },
    {
      "id": "306166",
      "postDate": "03/30/2018 01:34:42",
      "content": "<p>sdg,4+</p>",
      "rawMarkdown": "sdg,4+",
      "votes": null
    },
    {
      "id": "306183",
      "postDate": "03/30/2018 02:06:01",
      "content": "<p>thanks xianpidan and @john1231983! I wanted to check if you used any image normalization strategy ? I used this \n        mean = np.mean(img)\n        std  = np.std(img)\n        img  = (img-mean)/std\nI did this since I use MEAN_PIXEL = [0., 0., 0.,] the original mean_pixel values are for ImageNet; thus i think we need some image normalization for generalization to our domain. \nAlso tried just img =* 255 ; another idea is to convert to gray and use CLAHE method \n<a href=\"http://scikit-image.org/docs/dev/auto_examples/color_exposure/plot_equalize.html\">http://scikit-image.org/docs/dev/auto_examples/color_exposure/plot_equalize.html</a>\ngray = exposure.equalize_adapthist(gray, nbins=256)</p>",
      "rawMarkdown": "thanks xianpidan and @john1231983! I wanted to check if you used any image normalization strategy ? I used this \n        mean = np.mean(img)\n        std  = np.std(img)\n        img  = (img-mean)/std\nI did this since I use MEAN_PIXEL = [0., 0., 0.,] the original mean_pixel values are for ImageNet; thus i think we need some image normalization for generalization to our domain. \nAlso tried just img =* 255 ; another idea is to convert to gray and use CLAHE method \nhttp://scikit-image.org/docs/dev/auto_examples/color_exposure/plot_equalize.html\ngray = exposure.equalize_adapthist(gray, nbins=256)",
      "votes": null
    },
    {
      "id": "306246",
      "postDate": "03/30/2018 05:22:25",
      "content": "<p>same with img = (img-mean)/std </p>",
      "rawMarkdown": "same with img = (img-mean)/std",
      "votes": null
    },
    {
      "id": "306477",
      "postDate": "03/30/2018 13:21:07",
      "content": "<p>Sorry for reply late dueto server down. I not normalize image because the pretrain weight of keras is converted from caffe. Hence, i have to follow the way caffe did as matterport. Do you find  improvement using the normalization?\n@xiapian: amazing. You can got 0.52+ with this schedule, right?</p>",
      "rawMarkdown": "Sorry for reply late dueto server down. I not normalize image because the pretrain weight of keras is converted from caffe. Hence, i have to follow the way caffe did as matterport. Do you find  improvement using the normalization?\n@xiapian: amazing. You can got 0.52+ with this schedule, right?",
      "votes": null
    },
    {
      "id": "306925",
      "postDate": "03/31/2018 10:43:38",
      "content": "<p>what do you mean by 4+ ?</p>",
      "rawMarkdown": "what do you mean by 4+ ?",
      "votes": null
    },
    {
      "id": "307336",
      "postDate": "04/01/2018 12:01:51",
      "content": "<p>In <code>model.train()</code> function there are 5 kind of layers for <code>layers</code>:</p>\n\n<pre><code>layers: Allows selecting wich layers to train. It can be:\n        - A regular expression to match layer names to train\n        - One of these predefined values:\n          heaads: The RPN, classifier and mask heads of the network\n          all: All the layers\n          3+: Train Resnet stage 3 and up\n          4+: Train Resnet stage 4 and up\n          5+: Train Resnet stage 5 and up\n</code></pre>",
      "rawMarkdown": "In `model.train()` function there are 5 kind of layers for `layers`:\n\n    layers: Allows selecting wich layers to train. It can be:\n            - A regular expression to match layer names to train\n            - One of these predefined values:\n              heaads: The RPN, classifier and mask heads of the network\n              all: All the layers\n              3+: Train Resnet stage 3 and up\n              4+: Train Resnet stage 4 and up\n              5+: Train Resnet stage 5 and up",
      "votes": null
    },
    {
      "id": "307409",
      "postDate": "04/01/2018 14:51:16",
      "content": "<p>Hi @xiapidan , You mean you train the model through: 20 epochs ”heads” + 20 epochs ”4+” + 70 epochs \"all\" ,right? </p>",
      "rawMarkdown": "Hi @xiapidan , You mean you train the model through: 20 epochs ”heads” + 20 epochs ”4+” + 70 epochs \"all\" ,right?",
      "votes": null
    },
    {
      "id": "307453",
      "postDate": "04/01/2018 16:23:38",
      "content": "<p>@john1231983, which image size did you choose 512*512?\nI trained 20+50+70 and use resnet50 and Adam in 512*512 but I got around 0.38</p>",
      "rawMarkdown": "john1231983, which image size did you choose 512*512?\nI trained 20+50+70 and use resnet50 and Adam in 512*512 but I got around 0.38",
      "votes": null
    },
    {
      "id": "307512",
      "postDate": "04/01/2018 22:21:46",
      "content": "<p>@Mehul Sampat, I actually tried CLAHE preprocessing and get worse results, not sure exactly why. Did you have any success with it?</p>",
      "rawMarkdown": "Mehul Sampat, I actually tried CLAHE preprocessing and get worse results, not sure exactly why. Did you have any success with it?",
      "votes": null
    },
    {
      "id": "308269",
      "postDate": "04/03/2018 08:37:01",
      "content": "<p>yes @Caibimiao</p>",
      "rawMarkdown": "yes @Caibimiao",
      "votes": null
    },
    {
      "id": "309296",
      "postDate": "04/05/2018 01:44:23",
      "content": "<p>@RLstat sorry fro the late reply. Nope no sucess with CLAHE pre-processing either. Also adding rotations makes performance worse for me. Did image augmentation with rotations help you ? </p>",
      "rawMarkdown": "RLstat sorry fro the late reply. Nope no sucess with CLAHE pre-processing either. Also adding rotations makes performance worse for me. Did image augmentation with rotations help you ?",
      "votes": null
    },
    {
      "id": "309303",
      "postDate": "04/05/2018 02:07:40",
      "content": "<p>@Mehul Sampat, I am now using random flip (left right, up down) and random crop (only for image larger than 512x512), seems doing OK. </p>",
      "rawMarkdown": "Mehul Sampat, I am now using random flip (left right, up down) and random crop (only for image larger than 512x512), seems doing OK.",
      "votes": null
    },
    {
      "id": "309732",
      "postDate": "04/05/2018 21:50:53",
      "content": "<p>@RLstat, thanks for the information. Btw did you use imgaug for augmentation. \n<a href=\"https://github.com/aleju/imgaug\">https://github.com/aleju/imgaug</a>\nI did this with imgaug: </p>\n\n<p>augmentation = imgaug.augmenters.OneOf([\nimgaug.augmenters.Fliplr(1.0),\nimgaug.augmenters.Affine(rotate=(-10,10)),\nimgaug.augmenters.Flipud(1.0)\n])</p>\n\n<p>I will remove the rotate replace it with a crop function now. </p>",
      "rawMarkdown": "RLstat, thanks for the information. Btw did you use imgaug for augmentation. \nhttps://github.com/aleju/imgaug\nI did this with imgaug: \n\naugmentation = imgaug.augmenters.OneOf([\nimgaug.augmenters.Fliplr(1.0),\nimgaug.augmenters.Affine(rotate=(-10,10)),\nimgaug.augmenters.Flipud(1.0)\n])\n\nI will remove the rotate replace it with a crop function now.",
      "votes": null
    },
    {
      "id": "309806",
      "postDate": "04/06/2018 02:20:03",
      "content": "<p>@Mehul Sampat, no I've not used that repository. I remember I've seen some other post that excessive augmentation won't really help.  I am kind of keeping it simple for now. I think post processing is probably more important. </p>",
      "rawMarkdown": "Mehul Sampat, no I've not used that repository. I remember I've seen some other post that excessive augmentation won't really help.  I am kind of keeping it simple for now. I think post processing is probably more important.",
      "votes": null
    },
    {
      "id": "309920",
      "postDate": "04/06/2018 07:37:35",
      "content": "<p>@RLstat\nMay I know your LB score without post processing? </p>",
      "rawMarkdown": "RLstat\nMay I know your LB score without post processing?",
      "votes": null
    },
    {
      "id": "310025",
      "postDate": "04/06/2018 12:28:57",
      "content": "<p>Hi, RLstat. I am using flip too. But when I use random_crop, It hurt my performance.  Does it work for you? How do you do that? Can you give us some hints about this?</p>",
      "rawMarkdown": "Hi, RLstat. I am using flip too. But when I use random_crop, It hurt my performance.  Does it work for you? How do you do that? Can you give us some hints about this?",
      "votes": null
    },
    {
      "id": "310108",
      "postDate": "04/06/2018 16:21:44",
      "content": "<p>@Caibimiao, about 0.43 to 0.45. </p>",
      "rawMarkdown": "Caibimiao, about 0.43 to 0.45.",
      "votes": null
    },
    {
      "id": "310115",
      "postDate": "04/06/2018 16:35:42",
      "content": "<p>Hi, @Zheng Li, giving the credit to @john1231983 at this discussion thread: <a href=\"https://www.kaggle.com/c/data-science-bowl-2018/discussion/52989\">https://www.kaggle.com/c/data-science-bowl-2018/discussion/52989</a>. </p>\n\n<p>I pretty much followed his methods for random cropping, i.e, just crop images with both height and width larger than 512. Perform resizing with other images. After that, I will do flipping for the resized/cropped images. </p>\n\n<p>Also, I just realized this discussion: <a href=\"https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798\">https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798</a>.  It mentioned the potential problem with the resizing in matterport's implementation and how it might affect the performance if mixing resizing with cropping. I will look into more detail of it. </p>",
      "rawMarkdown": "Hi, @Zheng Li, giving the credit to @john1231983 at this discussion thread: https://www.kaggle.com/c/data-science-bowl-2018/discussion/52989. \n\nI pretty much followed his methods for random cropping, i.e, just crop images with both height and width larger than 512. Perform resizing with other images. After that, I will do flipping for the resized/cropped images. \n\nAlso, I just realized this discussion: https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798.  It mentioned the potential problem with the resizing in matterport's implementation and how it might affect the performance if mixing resizing with cropping. I will look into more detail of it.",
      "votes": null
    },
    {
      "id": "310125",
      "postDate": "04/06/2018 16:54:52",
      "content": "<p>@RLstat yup agree with the credit to @john1231983 for the great discussion thread.\nAlso regarding the issue in: <a href=\"https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798\">https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798</a>\nthis is fixed in the main repo. you can git clone <a href=\"https://github.com/matterport/Mask_RCNN.git\">https://github.com/matterport/Mask_RCNN.git</a> to get the latest code. </p>",
      "rawMarkdown": "RLstat yup agree with the credit to @john1231983 for the great discussion thread.\nAlso regarding the issue in: https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798\nthis is fixed in the main repo. you can git clone https://github.com/matterport/Mask_RCNN.git to get the latest code.",
      "votes": null
    },
    {
      "id": "310455",
      "postDate": "04/07/2018 15:39:55",
      "content": "<p>Hi, RLstat. I have changed my code according to the new update but it still work badly. Can you give me some tips about learning schedule and learning rate?</p>",
      "rawMarkdown": "Hi, RLstat. I have changed my code according to the new update but it still work badly. Can you give me some tips about learning schedule and learning rate?",
      "votes": null
    },
    {
      "id": "310545",
      "postDate": "04/07/2018 22:38:17",
      "content": "<p>@Zheng Li, well, I am trying out the scheduling mentioned by @john1231983 and @xiapidan\nearly in this thread , and I am using adam. I've not achieved score better than 0.45 yet with just Mask-RCNN, and rank lower than you on LB. So I am not sure whether my training scheduling will really help you. </p>",
      "rawMarkdown": "Zheng Li, well, I am trying out the scheduling mentioned by @john1231983 and @xiapidan\nearly in this thread , and I am using adam. I've not achieved score better than 0.45 yet with just Mask-RCNN, and rank lower than you on LB. So I am not sure whether my training scheduling will really help you.",
      "votes": null
    },
    {
      "id": "310604",
      "postDate": "04/08/2018 04:38:05",
      "content": "<p>Hi RLstat. I have tried many methods to make this function work, but none of them really improve the result. But this should theoretically improve the accuracy. To be honest, I am very curious about this. I really want to know why this function doesn’t work for me. So can you leave your email address or any contact methods? My email is  mdlszhengli@gmail.com. Really want to have a discuss with you and I will share you my experiments. Thanks Zheng </p>",
      "rawMarkdown": "Hi RLstat. I have tried many methods to make this function work, but none of them really improve the result. But this should theoretically improve the accuracy. To be honest, I am very curious about this. I really want to know why this function doesn’t work for me. So can you leave your email address or any contact methods? My email is  mdlszhengli@gmail.com. Really want to have a discuss with you and I will share you my experiments. Thanks Zheng",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 305698,
      "author_name": "xhqlcwq",
      "author_url": "",
      "post_date": "03/29/2018 09:38:24",
      "content": "<p>20+20+70 for me</p>",
      "votes": null,
      "replies": [
        {
          "id": 305701,
          "author_name": "john1231983",
          "author_url": "",
          "post_date": "03/29/2018 09:42:27",
          "content": "<p>60 (heads with 0.0001), 40 (all with 0.0001), 40 (all with 0.00001) for me. @xiapidan: do you use sgd or adam? The second \"20\" is all or 4+?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 306074,
          "author_name": "mingcong18",
          "author_url": "",
          "post_date": "03/29/2018 20:25:41",
          "content": "<p>Thanks</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 306166,
          "author_name": "xhqlcwq",
          "author_url": "",
          "post_date": "03/30/2018 01:34:42",
          "content": "<p>sdg,4+</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 306183,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "03/30/2018 02:06:01",
          "content": "<p>thanks xianpidan and @john1231983! I wanted to check if you used any image normalization strategy ? I used this \n        mean = np.mean(img)\n        std  = np.std(img)\n        img  = (img-mean)/std\nI did this since I use MEAN_PIXEL = [0., 0., 0.,] the original mean_pixel values are for ImageNet; thus i think we need some image normalization for generalization to our domain. \nAlso tried just img =* 255 ; another idea is to convert to gray and use CLAHE method \n<a href=\"http://scikit-image.org/docs/dev/auto_examples/color_exposure/plot_equalize.html\">http://scikit-image.org/docs/dev/auto_examples/color_exposure/plot_equalize.html</a>\ngray = exposure.equalize_adapthist(gray, nbins=256)</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 306246,
          "author_name": "xhqlcwq",
          "author_url": "",
          "post_date": "03/30/2018 05:22:25",
          "content": "<p>same with img = (img-mean)/std </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 306477,
          "author_name": "john1231983",
          "author_url": "",
          "post_date": "03/30/2018 13:21:07",
          "content": "<p>Sorry for reply late dueto server down. I not normalize image because the pretrain weight of keras is converted from caffe. Hence, i have to follow the way caffe did as matterport. Do you find  improvement using the normalization?\n@xiapian: amazing. You can got 0.52+ with this schedule, right?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 306925,
          "author_name": "kesjien",
          "author_url": "",
          "post_date": "03/31/2018 10:43:38",
          "content": "<p>what do you mean by 4+ ?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 307336,
          "author_name": "bintan",
          "author_url": "",
          "post_date": "04/01/2018 12:01:51",
          "content": "<p>In <code>model.train()</code> function there are 5 kind of layers for <code>layers</code>:</p>\n\n<pre><code>layers: Allows selecting wich layers to train. It can be:\n        - A regular expression to match layer names to train\n        - One of these predefined values:\n          heaads: The RPN, classifier and mask heads of the network\n          all: All the layers\n          3+: Train Resnet stage 3 and up\n          4+: Train Resnet stage 4 and up\n          5+: Train Resnet stage 5 and up\n</code></pre>",
          "votes": null,
          "replies": []
        },
        {
          "id": 307409,
          "author_name": "ermiao",
          "author_url": "",
          "post_date": "04/01/2018 14:51:16",
          "content": "<p>Hi @xiapidan , You mean you train the model through: 20 epochs ”heads” + 20 epochs ”4+” + 70 epochs \"all\" ,right? </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 307453,
          "author_name": "chiaosun",
          "author_url": "",
          "post_date": "04/01/2018 16:23:38",
          "content": "<p>@john1231983, which image size did you choose 512*512?\nI trained 20+50+70 and use resnet50 and Adam in 512*512 but I got around 0.38</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 307512,
          "author_name": "ruiforecasting",
          "author_url": "",
          "post_date": "04/01/2018 22:21:46",
          "content": "<p>@Mehul Sampat, I actually tried CLAHE preprocessing and get worse results, not sure exactly why. Did you have any success with it?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 308269,
          "author_name": "xhqlcwq",
          "author_url": "",
          "post_date": "04/03/2018 08:37:01",
          "content": "<p>yes @Caibimiao</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 309296,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "04/05/2018 01:44:23",
          "content": "<p>@RLstat sorry fro the late reply. Nope no sucess with CLAHE pre-processing either. Also adding rotations makes performance worse for me. Did image augmentation with rotations help you ? </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 309303,
          "author_name": "ruiforecasting",
          "author_url": "",
          "post_date": "04/05/2018 02:07:40",
          "content": "<p>@Mehul Sampat, I am now using random flip (left right, up down) and random crop (only for image larger than 512x512), seems doing OK. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 309732,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "04/05/2018 21:50:53",
          "content": "<p>@RLstat, thanks for the information. Btw did you use imgaug for augmentation. \n<a href=\"https://github.com/aleju/imgaug\">https://github.com/aleju/imgaug</a>\nI did this with imgaug: </p>\n\n<p>augmentation = imgaug.augmenters.OneOf([\nimgaug.augmenters.Fliplr(1.0),\nimgaug.augmenters.Affine(rotate=(-10,10)),\nimgaug.augmenters.Flipud(1.0)\n])</p>\n\n<p>I will remove the rotate replace it with a crop function now. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 309806,
          "author_name": "ruiforecasting",
          "author_url": "",
          "post_date": "04/06/2018 02:20:03",
          "content": "<p>@Mehul Sampat, no I've not used that repository. I remember I've seen some other post that excessive augmentation won't really help.  I am kind of keeping it simple for now. I think post processing is probably more important. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 309920,
          "author_name": "ermiao",
          "author_url": "",
          "post_date": "04/06/2018 07:37:35",
          "content": "<p>@RLstat\nMay I know your LB score without post processing? </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310025,
          "author_name": "mdlszhengli",
          "author_url": "",
          "post_date": "04/06/2018 12:28:57",
          "content": "<p>Hi, RLstat. I am using flip too. But when I use random_crop, It hurt my performance.  Does it work for you? How do you do that? Can you give us some hints about this?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310108,
          "author_name": "ruiforecasting",
          "author_url": "",
          "post_date": "04/06/2018 16:21:44",
          "content": "<p>@Caibimiao, about 0.43 to 0.45. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310115,
          "author_name": "ruiforecasting",
          "author_url": "",
          "post_date": "04/06/2018 16:35:42",
          "content": "<p>Hi, @Zheng Li, giving the credit to @john1231983 at this discussion thread: <a href=\"https://www.kaggle.com/c/data-science-bowl-2018/discussion/52989\">https://www.kaggle.com/c/data-science-bowl-2018/discussion/52989</a>. </p>\n\n<p>I pretty much followed his methods for random cropping, i.e, just crop images with both height and width larger than 512. Perform resizing with other images. After that, I will do flipping for the resized/cropped images. </p>\n\n<p>Also, I just realized this discussion: <a href=\"https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798\">https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798</a>.  It mentioned the potential problem with the resizing in matterport's implementation and how it might affect the performance if mixing resizing with cropping. I will look into more detail of it. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310125,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "04/06/2018 16:54:52",
          "content": "<p>@RLstat yup agree with the credit to @john1231983 for the great discussion thread.\nAlso regarding the issue in: <a href=\"https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798\">https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798</a>\nthis is fixed in the main repo. you can git clone <a href=\"https://github.com/matterport/Mask_RCNN.git\">https://github.com/matterport/Mask_RCNN.git</a> to get the latest code. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310455,
          "author_name": "mdlszhengli",
          "author_url": "",
          "post_date": "04/07/2018 15:39:55",
          "content": "<p>Hi, RLstat. I have changed my code according to the new update but it still work badly. Can you give me some tips about learning schedule and learning rate?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310545,
          "author_name": "ruiforecasting",
          "author_url": "",
          "post_date": "04/07/2018 22:38:17",
          "content": "<p>@Zheng Li, well, I am trying out the scheduling mentioned by @john1231983 and @xiapidan\nearly in this thread , and I am using adam. I've not achieved score better than 0.45 yet with just Mask-RCNN, and rank lower than you on LB. So I am not sure whether my training scheduling will really help you. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310604,
          "author_name": "mdlszhengli",
          "author_url": "",
          "post_date": "04/08/2018 04:38:05",
          "content": "<p>Hi RLstat. I have tried many methods to make this function work, but none of them really improve the result. But this should theoretically improve the accuracy. To be honest, I am very curious about this. I really want to know why this function doesn’t work for me. So can you leave your email address or any contact methods? My email is  mdlszhengli@gmail.com. Really want to have a discuss with you and I will share you my experiments. Thanks Zheng </p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "305500": "",
    "305698": "20+20+70 for me",
    "305701": "60 (heads with 0.0001), 40 (all with 0.0001), 40 (all with 0.00001) for me. @xiapidan: do you use sgd or adam? The second \"20\" is all or 4+?",
    "306074": "Thanks",
    "306166": "sdg,4+",
    "306183": "thanks xianpidan and @john1231983! I wanted to check if you used any image normalization strategy ? I used this \n        mean = np.mean(img)\n        std  = np.std(img)\n        img  = (img-mean)/std\nI did this since I use MEAN_PIXEL = [0., 0., 0.,] the original mean_pixel values are for ImageNet; thus i think we need some image normalization for generalization to our domain. \nAlso tried just img =* 255 ; another idea is to convert to gray and use CLAHE method \nhttp://scikit-image.org/docs/dev/auto_examples/color_exposure/plot_equalize.html\ngray = exposure.equalize_adapthist(gray, nbins=256)",
    "306246": "same with img = (img-mean)/std",
    "306477": "Sorry for reply late dueto server down. I not normalize image because the pretrain weight of keras is converted from caffe. Hence, i have to follow the way caffe did as matterport. Do you find  improvement using the normalization?\n@xiapian: amazing. You can got 0.52+ with this schedule, right?",
    "306925": "what do you mean by 4+ ?",
    "307336": "In `model.train()` function there are 5 kind of layers for `layers`:\n\n    layers: Allows selecting wich layers to train. It can be:\n            - A regular expression to match layer names to train\n            - One of these predefined values:\n              heaads: The RPN, classifier and mask heads of the network\n              all: All the layers\n              3+: Train Resnet stage 3 and up\n              4+: Train Resnet stage 4 and up\n              5+: Train Resnet stage 5 and up",
    "307409": "Hi @xiapidan , You mean you train the model through: 20 epochs ”heads” + 20 epochs ”4+” + 70 epochs \"all\" ,right?",
    "307453": "john1231983, which image size did you choose 512*512?\nI trained 20+50+70 and use resnet50 and Adam in 512*512 but I got around 0.38",
    "307512": "Mehul Sampat, I actually tried CLAHE preprocessing and get worse results, not sure exactly why. Did you have any success with it?",
    "308269": "yes @Caibimiao",
    "309296": "RLstat sorry fro the late reply. Nope no sucess with CLAHE pre-processing either. Also adding rotations makes performance worse for me. Did image augmentation with rotations help you ?",
    "309303": "Mehul Sampat, I am now using random flip (left right, up down) and random crop (only for image larger than 512x512), seems doing OK.",
    "309732": "RLstat, thanks for the information. Btw did you use imgaug for augmentation. \nhttps://github.com/aleju/imgaug\nI did this with imgaug: \n\naugmentation = imgaug.augmenters.OneOf([\nimgaug.augmenters.Fliplr(1.0),\nimgaug.augmenters.Affine(rotate=(-10,10)),\nimgaug.augmenters.Flipud(1.0)\n])\n\nI will remove the rotate replace it with a crop function now.",
    "309806": "Mehul Sampat, no I've not used that repository. I remember I've seen some other post that excessive augmentation won't really help.  I am kind of keeping it simple for now. I think post processing is probably more important.",
    "309920": "RLstat\nMay I know your LB score without post processing?",
    "310025": "Hi, RLstat. I am using flip too. But when I use random_crop, It hurt my performance.  Does it work for you? How do you do that? Can you give us some hints about this?",
    "310108": "Caibimiao, about 0.43 to 0.45.",
    "310115": "Hi, @Zheng Li, giving the credit to @john1231983 at this discussion thread: https://www.kaggle.com/c/data-science-bowl-2018/discussion/52989. \n\nI pretty much followed his methods for random cropping, i.e, just crop images with both height and width larger than 512. Perform resizing with other images. After that, I will do flipping for the resized/cropped images. \n\nAlso, I just realized this discussion: https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798.  It mentioned the potential problem with the resizing in matterport's implementation and how it might affect the performance if mixing resizing with cropping. I will look into more detail of it.",
    "310125": "RLstat yup agree with the credit to @john1231983 for the great discussion thread.\nAlso regarding the issue in: https://www.kaggle.com/c/data-science-bowl-2018/discussion/53798\nthis is fixed in the main repo. you can git clone https://github.com/matterport/Mask_RCNN.git to get the latest code.",
    "310455": "Hi, RLstat. I have changed my code according to the new update but it still work badly. Can you give me some tips about learning schedule and learning rate?",
    "310545": "Zheng Li, well, I am trying out the scheduling mentioned by @john1231983 and @xiapidan\nearly in this thread , and I am using adam. I've not achieved score better than 0.45 yet with just Mask-RCNN, and rank lower than you on LB. So I am not sure whether my training scheduling will really help you.",
    "310604": "Hi RLstat. I have tried many methods to make this function work, but none of them really improve the result. But this should theoretically improve the accuracy. To be honest, I am very curious about this. I really want to know why this function doesn’t work for me. So can you leave your email address or any contact methods? My email is  mdlszhengli@gmail.com. Really want to have a discuss with you and I will share you my experiments. Thanks Zheng"
  },
  "source": "meta"
}