{
  "id": 47590,
  "title": "Open Solution Journal [LB 0.442]",
  "url": "/competitions/data-science-bowl-2018/discussion/47590",
  "author_name": "",
  "post_date": "2018-01-16T19:37:45.109479500Z",
  "votes": 216,
  "comment_count": 194,
  "views": 0,
  "content": "<p>Hi,</p>\n\n<p>Together with Jakub Czakon and supported by the <a href=\"https://deepsense.ai/\">deepsense.ai</a> team, we are going to propose something quite unusual to this competition. Namely, we want to open not only the code, but also the process of working on this competition. We believe that data science community may benefit from learning from one another, so we want to share our experiences. Such action can make Data Science Bowl even more interesting.</p>\n\n<p>We have two main goals:</p>\n\n<ul>\n<li>Deliver open, ready-to-use and extendable solution to this competition. This solution should - by itself - establish solid benchmark, as well as provide good base for your custom ideas and experiments.</li>\n<li>Encourage more Kagglers to start working on the Data Science Bowl, test their ideas and learn advanced data science.</li>\n</ul>\n\n<p>In this topic, you will read about open solution updates, new ideas and experiments. Feel invited to participate in building this. Let us know, if you want to add your part to it.</p>\n\n<p>Later this week, we are going to release first version of the open solution. Hence, you may want to subscribe to this topic to stay updated.</p>\n\n<p>It will be an exciting time!</p>\n\n<p>:-)</p>",
  "messages": [
    {
      "id": "269413",
      "postDate": "01/16/2018 19:37:45",
      "content": "<p>Hi,</p>\n\n<p>Together with Jakub Czakon and supported by the <a href=\"https://deepsense.ai/\">deepsense.ai</a> team, we are going to propose something quite unusual to this competition. Namely, we want to open not only the code, but also the process of working on this competition. We believe that data science community may benefit from learning from one another, so we want to share our experiences. Such action can make Data Science Bowl even more interesting.</p>\n\n<p>We have two main goals:</p>\n\n<ul>\n<li>Deliver open, ready-to-use and extendable solution to this competition. This solution should - by itself - establish solid benchmark, as well as provide good base for your custom ideas and experiments.</li>\n<li>Encourage more Kagglers to start working on the Data Science Bowl, test their ideas and learn advanced data science.</li>\n</ul>\n\n<p>In this topic, you will read about open solution updates, new ideas and experiments. Feel invited to participate in building this. Let us know, if you want to add your part to it.</p>\n\n<p>Later this week, we are going to release first version of the open solution. Hence, you may want to subscribe to this topic to stay updated.</p>\n\n<p>It will be an exciting time!</p>\n\n<p>:-)</p>",
      "rawMarkdown": "Hi,\n\nTogether with Jakub Czakon and supported by the [deepsense.ai](https://deepsense.ai) team, we are going to propose something quite unusual to this competition. Namely, we want to open not only the code, but also the process of working on this competition. We believe that data science community may benefit from learning from one another, so we want to share our experiences. Such action can make Data Science Bowl even more interesting.\n\nWe have two main goals:\n\n* Deliver open, ready-to-use and extendable solution to this competition. This solution should - by itself - establish solid benchmark, as well as provide good base for your custom ideas and experiments.\n* Encourage more Kagglers to start working on the Data Science Bowl, test their ideas and learn advanced data science.\n\nIn this topic, you will read about open solution updates, new ideas and experiments. Feel invited to participate in building this. Let us know, if you want to add your part to it.\n\nLater this week, we are going to release first version of the open solution. Hence, you may want to subscribe to this topic to stay updated.\n\nIt will be an exciting time!\n\n:-)",
      "votes": null
    },
    {
      "id": "269459",
      "postDate": "01/16/2018 21:31:19",
      "content": "<p>Thanks for the idea of open journal. I definitely love to subscribe to learn!</p>",
      "rawMarkdown": "Thanks for the idea of open journal. I definitely love to subscribe to learn!",
      "votes": null
    },
    {
      "id": "269461",
      "postDate": "01/16/2018 21:41:09",
      "content": "<p>Hi xiao,</p>\n\n<p>Thanks! Stay tuned ;-)</p>",
      "rawMarkdown": "Hi xiao,\n\nThanks! Stay tuned ;-)",
      "votes": null
    },
    {
      "id": "269467",
      "postDate": "01/16/2018 22:04:40",
      "content": "<p>Hey Kamil!</p>\n\n<p>This sounds really great - looking forward to the initial version of the notebook! Would you be so kind please and share which deep learning framework you are planning on using for this?</p>",
      "rawMarkdown": "Hey Kamil!\n\nThis sounds really great - looking forward to the initial version of the notebook! Would you be so kind please and share which deep learning framework you are planning on using for this?",
      "votes": null
    },
    {
      "id": "269516",
      "postDate": "01/17/2018 00:22:34",
      "content": "<p>Interesting proposal. I would like to tag along on this.</p>",
      "rawMarkdown": "Interesting proposal. I would like to tag along on this.",
      "votes": null
    },
    {
      "id": "269595",
      "postDate": "01/17/2018 02:43:47",
      "content": "<p>Sounds good! Let us make solution and improve it iteratively! </p>",
      "rawMarkdown": "Sounds good! Let us make solution and improve it iteratively!",
      "votes": null
    },
    {
      "id": "269609",
      "postDate": "01/17/2018 02:57:46",
      "content": "<p>OK,LIKE TO BE PART OF THIS</p>",
      "rawMarkdown": "OK,LIKE TO BE PART OF THIS",
      "votes": null
    },
    {
      "id": "269615",
      "postDate": "01/17/2018 03:02:25",
      "content": "<p>I am hesitated to join this since I am just a newbie, but with this open notebook, I decided to tag along see how far I can go / understand. Thanks for sharing the knowledge.</p>",
      "rawMarkdown": "I am hesitated to join this since I am just a newbie, but with this open notebook, I decided to tag along see how far I can go / understand. Thanks for sharing the knowledge.",
      "votes": null
    },
    {
      "id": "269722",
      "postDate": "01/17/2018 07:03:58",
      "content": "<p>Sounds really great let do it</p>",
      "rawMarkdown": "Sounds really great let do it",
      "votes": null
    },
    {
      "id": "269837",
      "postDate": "01/17/2018 11:30:09",
      "content": "<p>Hi Radek,</p>\n\n<p>We are going to use PyTorch (latest) with Python 3.5. Besides this, we will use standard data science packages (all will be listed in the requirements file).</p>",
      "rawMarkdown": "Hi Radek,\n\nWe are going to use PyTorch (latest) with Python 3.5. Besides this, we will use standard data science packages (all will be listed in the requirements file).",
      "votes": null
    },
    {
      "id": "269839",
      "postDate": "01/17/2018 11:33:22",
      "content": "<p>Hi Pip,</p>\n\n<p>Do not be worried about you experience in ML / Deep Learning. Here, we are going to build our solution iteratively, so I think that you will be able to follow.</p>",
      "rawMarkdown": "Hi Pip,\n\nDo not be worried about you experience in ML / Deep Learning. Here, we are going to build our solution iteratively, so I think that you will be able to follow.",
      "votes": null
    },
    {
      "id": "269842",
      "postDate": "01/17/2018 11:35:40",
      "content": "<p>Ah this is terrific :) PyTorch is what I want to focus predominantly on myself as well, though wouldn't mind if you said keras :) </p>\n\n<p>Either way, this is shaping up really great. Thank you for your reply and looking forward to the notebook! </p>",
      "rawMarkdown": "Ah this is terrific :) PyTorch is what I want to focus predominantly on myself as well, though wouldn't mind if you said keras :) \n\nEither way, this is shaping up really great. Thank you for your reply and looking forward to the notebook!",
      "votes": null
    },
    {
      "id": "269845",
      "postDate": "01/17/2018 11:43:57",
      "content": "<p>Just wanted to let you know that this will be entire python-based project, not only notebook. They are good for exploration / visualization purposes, however, for training neural nets, making predictions, ensembling and so on, we prefer not to do it in notebooks.</p>",
      "rawMarkdown": "Just wanted to let you know that this will be entire python-based project, not only notebook. They are good for exploration / visualization purposes, however, for training neural nets, making predictions, ensembling and so on, we prefer not to do it in notebooks.",
      "votes": null
    },
    {
      "id": "269880",
      "postDate": "01/17/2018 13:09:17",
      "content": "<p>Thank you for creating this journal. </p>",
      "rawMarkdown": "Thank you for creating this journal.",
      "votes": null
    },
    {
      "id": "269896",
      "postDate": "01/17/2018 13:47:08",
      "content": "<p>Interesting !!! Subscribed for learn</p>",
      "rawMarkdown": "Interesting !!! Subscribed for learn",
      "votes": null
    },
    {
      "id": "269908",
      "postDate": "01/17/2018 14:09:58",
      "content": "<p>Looking forward to future solutions. BTW, Is it consideration of efficiency to train with a Python-based project rather than a notebook?</p>",
      "rawMarkdown": "Looking forward to future solutions. BTW, Is it consideration of efficiency to train with a Python-based project rather than a notebook?",
      "votes": null
    },
    {
      "id": "269955",
      "postDate": "01/17/2018 15:15:25",
      "content": "<p>This really helps! Thanks for sharing.</p>",
      "rawMarkdown": "This really helps! Thanks for sharing.",
      "votes": null
    },
    {
      "id": "270000",
      "postDate": "01/17/2018 16:32:42",
      "content": "<p>Hi Taka,\nI think that Notebooks are great for exploration, visualization and rapid experimentation. You may want to use notebooks to quickly test various approaches or convince yourself about some idea. It is tool for the interactive work.\nWhen you want to run series of (controlled) experiments, it is usually better to have Python-based implementation. This is especially true at the later stage of the competition, when your solution is quite complex.</p>",
      "rawMarkdown": "Hi Taka,\nI think that Notebooks are great for exploration, visualization and rapid experimentation. You may want to use notebooks to quickly test various approaches or convince yourself about some idea. It is tool for the interactive work.\nWhen you want to run series of (controlled) experiments, it is usually better to have Python-based implementation. This is especially true at the later stage of the competition, when your solution is quite complex.",
      "votes": null
    },
    {
      "id": "270006",
      "postDate": "01/17/2018 16:41:29",
      "content": "<p>Ah, I think I know what you might be referring to Kamil :) In my case it has been basically create a monster notebook and do 'run all cells' at the end.</p>\n\n<p>Plus, it will be nice to have this version controlled - seems you have to take additional steps for notebooks to play nicely with git. </p>\n\n<p>Anyhow, I keep an open mind and really look forward to tagging along and learning.</p>\n\n<p>Thx a lot for doing this!</p>",
      "rawMarkdown": "Ah, I think I know what you might be referring to Kamil :) In my case it has been basically create a monster notebook and do 'run all cells' at the end.\n\nPlus, it will be nice to have this version controlled - seems you have to take additional steps for notebooks to play nicely with git. \n\nAnyhow, I keep an open mind and really look forward to tagging along and learning.\n\nThx a lot for doing this!",
      "votes": null
    },
    {
      "id": "270022",
      "postDate": "01/17/2018 16:57:07",
      "content": "<p>Great idea!!! Thanks for this initiative.</p>",
      "rawMarkdown": "Great idea!!! Thanks for this initiative.",
      "votes": null
    },
    {
      "id": "270171",
      "postDate": "01/17/2018 21:29:19",
      "content": "<p>Thank you very much for sharing, this is definitely great opportunity for me to learn.  </p>",
      "rawMarkdown": "Thank you very much for sharing, this is definitely great opportunity for me to learn.",
      "votes": null
    },
    {
      "id": "270269",
      "postDate": "01/18/2018 01:25:20",
      "content": "<p>@kamil I think I got it. At the later stage of the competition, we have to do it all again on the new test data, it's better to build a pipeline in advance. Thanks for your explanation.</p>",
      "rawMarkdown": "kamil I think I got it. At the later stage of the competition, we have to do it all again on the new test data, it's better to build a pipeline in advance. Thanks for your explanation.",
      "votes": null
    },
    {
      "id": "270273",
      "postDate": "01/18/2018 01:42:23",
      "content": "<p>@radek, sorry about my mistake, I'm not used to Kaggle's comments .</p>\n\n<p>I'm exactly the same case with you, several monster notebooks. For now, I just make backups for version control. I'll try git next time.</p>",
      "rawMarkdown": "radek, sorry about my mistake, I'm not used to Kaggle's comments .\n\nI'm exactly the same case with you, several monster notebooks. For now, I just make backups for version control. I'll try git next time.",
      "votes": null
    },
    {
      "id": "270376",
      "postDate": "01/18/2018 06:27:56",
      "content": "<p>Sounds good, even I would like to contribute to it. </p>",
      "rawMarkdown": "Sounds good, even I would like to contribute to it.",
      "votes": null
    },
    {
      "id": "270450",
      "postDate": "01/18/2018 08:44:40",
      "content": "<p>Hi Mani,</p>\n\n<p>I am very happy to hear that. This week we are going to release first version of the solution. Then, feel free to contact us, so that we can discuss your potential contributions!</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi Mani,\n\nI am very happy to hear that. This week we are going to release first version of the solution. Then, feel free to contact us, so that we can discuss your potential contributions!\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "270453",
      "postDate": "01/18/2018 08:53:33",
      "content": "<p>@Taka, @radek,</p>\n\n<p>Indeed, it is good practice to have version control and keep your experiments well controlled. Building analysis pipeline is - in my opinion - also beneficial because you can apply changes to the selected steps, whereas remaining parts are left unchanged.</p>",
      "rawMarkdown": "Taka, @radek,\n\nIndeed, it is good practice to have version control and keep your experiments well controlled. Building analysis pipeline is - in my opinion - also beneficial because you can apply changes to the selected steps, whereas remaining parts are left unchanged.",
      "votes": null
    },
    {
      "id": "270524",
      "postDate": "01/18/2018 12:20:33",
      "content": "<p>@kamil </p>\n\n<p>Thanks for the further explanation. I'll try it :)</p>",
      "rawMarkdown": "kamil \n\nThanks for the further explanation. I'll try it :)",
      "votes": null
    },
    {
      "id": "270605",
      "postDate": "01/18/2018 15:20:10",
      "content": "<p>Has anyone thought about using VNET for this comp?</p>",
      "rawMarkdown": "Has anyone thought about using VNET for this comp?",
      "votes": null
    },
    {
      "id": "270620",
      "postDate": "01/18/2018 15:52:45",
      "content": "<p>Thanks for sharing this. Subscribed for learn.</p>",
      "rawMarkdown": "Thanks for sharing this. Subscribed for learn.",
      "votes": null
    },
    {
      "id": "270755",
      "postDate": "01/18/2018 21:33:14",
      "content": "<p>It's a great idea. Subscribed for learn!</p>",
      "rawMarkdown": "It's a great idea. Subscribed for learn!",
      "votes": null
    },
    {
      "id": "270764",
      "postDate": "01/18/2018 21:56:07",
      "content": "<p>That is very good idea.\n@Kamil: I would like to contribute to this.</p>",
      "rawMarkdown": "That is very good idea.\n@Kamil: I would like to contribute to this.",
      "votes": null
    },
    {
      "id": "270806",
      "postDate": "01/19/2018 01:28:49",
      "content": "<p>I am interested as well .. Please include me as well </p>",
      "rawMarkdown": "I am interested as well .. Please include me as well",
      "votes": null
    },
    {
      "id": "270811",
      "postDate": "01/19/2018 01:49:30",
      "content": "<p>Subscribed! Interested to follow along. </p>",
      "rawMarkdown": "Subscribed! Interested to follow along.",
      "votes": null
    },
    {
      "id": "270968",
      "postDate": "01/19/2018 10:43:35",
      "content": "<p>Actually, I was going to focus on one competition and looking one competition. After reading your discussion, I decided to choose this competition! I will keep your update! I'm looking forward to learn many special things about deep learning and data science from this competition. Thanks for your sharing and discussion.</p>",
      "rawMarkdown": "Actually, I was going to focus on one competition and looking one competition. After reading your discussion, I decided to choose this competition! I will keep your update! I'm looking forward to learn many special things about deep learning and data science from this competition. Thanks for your sharing and discussion.",
      "votes": null
    },
    {
      "id": "271087",
      "postDate": "01/19/2018 16:44:26",
      "content": "<p>This is a great idea. Thanks for doing this.</p>",
      "rawMarkdown": "This is a great idea. Thanks for doing this.",
      "votes": null
    },
    {
      "id": "272086",
      "postDate": "01/22/2018 08:37:09",
      "content": "<p>Thanks for this and will be happy to be a part of it</p>",
      "rawMarkdown": "Thanks for this and will be happy to be a part of it",
      "votes": null
    },
    {
      "id": "272163",
      "postDate": "01/22/2018 11:50:26",
      "content": "<p>Such a great idea! Looking forward to following the advances for learning.</p>",
      "rawMarkdown": "Such a great idea! Looking forward to following the advances for learning.",
      "votes": null
    },
    {
      "id": "272317",
      "postDate": "01/22/2018 20:19:32",
      "content": "<p>Hi Kamil, this is an awesome idea. We are all here to learn. I'm personally here not to win as much as to learn from great teams like yours. This is my first competition and in fact, my early steps in deep learning. I come from OR with a decent knowledge of traditional machine learning algorithms. Looking forward to having a mutual learning exchange!\nThanks for the initiaive!\nMJ</p>",
      "rawMarkdown": "Hi Kamil, this is an awesome idea. We are all here to learn. I'm personally here not to win as much as to learn from great teams like yours. This is my first competition and in fact, my early steps in deep learning. I come from OR with a decent knowledge of traditional machine learning algorithms. Looking forward to having a mutual learning exchange!\nThanks for the initiaive!\nMJ",
      "votes": null
    },
    {
      "id": "272764",
      "postDate": "01/23/2018 16:54:39",
      "content": "<p>Hey Bill,</p>\n\n<p>Can you describe VNET in more detail?</p>",
      "rawMarkdown": "Hey Bill,\n\nCan you describe VNET in more detail?",
      "votes": null
    },
    {
      "id": "272768",
      "postDate": "01/23/2018 17:07:40",
      "content": "<p>Hey Majid,</p>\n\n<p>This is great. I really appreciate this! As soon as we will release first solution, we can discuss how you would like to contribute your piece to it. I think that there are numerous ways that might be interesting to you.</p>\n\n<p>Stay tuned!</p>\n\n<p>All the Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey Majid,\n\nThis is great. I really appreciate this! As soon as we will release first solution, we can discuss how you would like to contribute your piece to it. I think that there are numerous ways that might be interesting to you.\n\nStay tuned!\n\nAll the Best,\n\nKamil",
      "votes": null
    },
    {
      "id": "272770",
      "postDate": "01/23/2018 17:10:36",
      "content": "<p>Hi keeppace,</p>\n\n<p>Just subscribe to this topic, so that you will not miss new posts ;-)</p>",
      "rawMarkdown": "Hi keeppace,\n\nJust subscribe to this topic, so that you will not miss new posts ;-)",
      "votes": null
    },
    {
      "id": "272771",
      "postDate": "01/23/2018 17:12:44",
      "content": "<p>Hey YouHan,</p>\n\n<p>Great, I hope that you will find our Journal useful.</p>",
      "rawMarkdown": "Hey YouHan,\n\nGreat, I hope that you will find our Journal useful.",
      "votes": null
    },
    {
      "id": "272774",
      "postDate": "01/23/2018 17:16:49",
      "content": "<p>Hi MJ,</p>\n\n<p>Thanks!</p>\n\n<p>Traditional ML experience is always useful. Thanks to this you will easily learn about ideas behind deep learning. Moreover, you may want to add your piece to open solution that uses traditional ML algorithms.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi MJ,\n\nThanks!\n\nTraditional ML experience is always useful. Thanks to this you will easily learn about ideas behind deep learning. Moreover, you may want to add your piece to open solution that uses traditional ML algorithms.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "273017",
      "postDate": "01/24/2018 02:50:05",
      "content": "<p>Thanks folks.  Sounds like a great idea.</p>",
      "rawMarkdown": "Thanks folks.  Sounds like a great idea.",
      "votes": null
    },
    {
      "id": "273905",
      "postDate": "01/25/2018 13:25:29",
      "content": "<p>Wow, cool idea! Look forward to be part of this!</p>",
      "rawMarkdown": "Wow, cool idea! Look forward to be part of this!",
      "votes": null
    },
    {
      "id": "274227",
      "postDate": "01/26/2018 04:40:10",
      "content": "<p>Great...</p>",
      "rawMarkdown": "Great...",
      "votes": null
    },
    {
      "id": "274576",
      "postDate": "01/26/2018 20:09:55",
      "content": "<p>Thanks Kamal, i support your opinion its it useful for others its great.</p>",
      "rawMarkdown": "Thanks Kamal, i support your opinion its it useful for others its great.",
      "votes": null
    },
    {
      "id": "275773",
      "postDate": "01/30/2018 00:41:59",
      "content": "<p>Any ETA for the First Workbook ? </p>",
      "rawMarkdown": "Any ETA for the First Workbook ?",
      "votes": null
    },
    {
      "id": "276029",
      "postDate": "01/30/2018 14:18:58",
      "content": "<p>Hey Kamil,</p>\n\n<p>Here is the link to VNET <a href=\"https://arxiv.org/abs/1606.04797\">https://arxiv.org/abs/1606.04797</a>  </p>",
      "rawMarkdown": "Hey Kamil,\n\nHere is the link to VNET https://arxiv.org/abs/1606.04797",
      "votes": null
    },
    {
      "id": "276271",
      "postDate": "01/31/2018 04:03:00",
      "content": "<p>This is a great idea and will help people like me who are here to learn. How can we contribute and are the discussions going to be on an open kernel on kaggle or here?</p>",
      "rawMarkdown": "This is a great idea and will help people like me who are here to learn. How can we contribute and are the discussions going to be on an open kernel on kaggle or here?",
      "votes": null
    },
    {
      "id": "276566",
      "postDate": "01/31/2018 19:24:34",
      "content": "<p>Hi Jerry,</p>\n\n<p>We will host public GitHub project with the code and descriptions in GitHub's Wiki. Upon publication of the first solution, you are welcome to use this code to run experiments - we will explain how to do it. You can also suggest your ideas for improvements, such as preprocessing, postprocessing or network architectures. You can also report bugs or errors if you will find any.</p>\n\n<p>Main discussion will be here in this thread. Besides this we consider GitHub's Issues and pull requests as a good way of communication ;-)</p>",
      "rawMarkdown": "Hi Jerry,\n\nWe will host public GitHub project with the code and descriptions in GitHub's Wiki. Upon publication of the first solution, you are welcome to use this code to run experiments - we will explain how to do it. You can also suggest your ideas for improvements, such as preprocessing, postprocessing or network architectures. You can also report bugs or errors if you will find any.\n\nMain discussion will be here in this thread. Besides this we consider GitHub's Issues and pull requests as a good way of communication ;-)",
      "votes": null
    },
    {
      "id": "276567",
      "postDate": "01/31/2018 19:26:46",
      "content": "<p>Hi keeppace,</p>\n\n<p>Tomorrow we will publish first solution and description of the second one (which will be an improvement of the first solution).</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi keeppace,\n\nTomorrow we will publish first solution and description of the second one (which will be an improvement of the first solution).\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "276569",
      "postDate": "01/31/2018 19:30:34",
      "content": "<p>Hey Willam,</p>\n\n<p>It seems that this paper targets 3D (volumetric) imaging data - here we have images that sits in two dimensions.</p>\n\n<p>Do you have in mind other architectures that might be worth to try in this competition? U-Net seems to be pretty popular among participants.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey Willam,\n\nIt seems that this paper targets 3D (volumetric) imaging data - here we have images that sits in two dimensions.\n\nDo you have in mind other architectures that might be worth to try in this competition? U-Net seems to be pretty popular among participants.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "276590",
      "postDate": "01/31/2018 21:07:54",
      "content": "<p>U-Net is a good model. However, you may need multiple models to climb up the leaderboard. </p>",
      "rawMarkdown": "U-Net is a good model. However, you may need multiple models to climb up the leaderboard.",
      "votes": null
    },
    {
      "id": "276776",
      "postDate": "02/01/2018 13:33:30",
      "content": "<p>Hi Willam,</p>\n\n<p>I agree. Winning solutions are ensembles of multiple models. However, <a href=\"https://arxiv.org/abs/1505.04597\">U-Net</a> is capable to score above 0.3 in this competition, which is decent starting point for further iterations.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi Willam,\n\nI agree. Winning solutions are ensembles of multiple models. However, [U-Net](https://arxiv.org/abs/1505.04597) is capable to score above 0.3 in this competition, which is decent starting point for further iterations.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "276784",
      "postDate": "02/01/2018 13:51:44",
      "content": "<p>Agreed! </p>",
      "rawMarkdown": "Agreed!",
      "votes": null
    },
    {
      "id": "276883",
      "postDate": "02/01/2018 18:19:23",
      "content": "<p>Hi all,</p>\n\n<p>In short: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">https://github.com/neptune-ml/data-science-bowl-2018</a></p>\n\n<p>First version is end-to-end training with U-Net. Starts with raw data and ends with Kaggle submit. It is described here: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet\">https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet</a> .</p>\n\n<p>User help is here: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki\">https://github.com/neptune-ml/data-science-bowl-2018/wiki</a></p>\n\n<p>Without any parameter search and without augmentation we do LB 0.302.</p>\n\n<p><strong>next steps</strong></p>\n\n<ul>\n<li>Parameter search over U-Net architecture and training (do this too!)</li>\n<li>Add images augmentation</li>\n</ul>\n\n<p>We are very open to your feedback, comments, GitHub Issues, PRs!</p>\n\n<p>Happy training,</p>\n\n<p>Jakub &amp; Kamil</p>",
      "rawMarkdown": "Hi all,\n\nIn short: https://github.com/neptune-ml/data-science-bowl-2018\n\nFirst version is end-to-end training with U-Net. Starts with raw data and ends with Kaggle submit. It is described here: https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet .\n\nUser help is here: https://github.com/neptune-ml/data-science-bowl-2018/wiki\n\nWithout any parameter search and without augmentation we do LB 0.302.\n\n**next steps**\n\n* Parameter search over U-Net architecture and training (do this too!)\n* Add images augmentation\n\nWe are very open to your feedback, comments, GitHub Issues, PRs!\n\nHappy training,\n\nJakub &amp; Kamil",
      "votes": null
    },
    {
      "id": "277203",
      "postDate": "02/02/2018 13:46:22",
      "content": "<p>Update: We have tuned some parameters, and now we do LB 0.320. It seems that grid search works well in this context.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Update: We have tuned some parameters, and now we do LB 0.320. It seems that grid search works well in this context.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "281013",
      "postDate": "02/11/2018 17:53:30",
      "content": "<p>Hi,</p>\n\n<p><code>Solution 2</code> is ready to use on the repository: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">https://github.com/neptune-ml/data-science-bowl-2018</a>. It is multi-output U-Net, that besides segmentation learns nuclei centers and contours.</p>\n\n<p>Default experiment makes <code>LB 0.371</code> and it can be improved by appropriate parameter search. You can check the code and practical instructions on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">dsb-repo</a> and associated <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Multioutput-UNet\">dsb-wiki</a>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi,\n\n`Solution 2` is ready to use on the repository: https://github.com/neptune-ml/data-science-bowl-2018. It is multi-output U-Net, that besides segmentation learns nuclei centers and contours.\n\nDefault experiment makes `LB 0.371` and it can be improved by appropriate parameter search. You can check the code and practical instructions on our [dsb-repo](https://github.com/neptune-ml/data-science-bowl-2018) and associated [dsb-wiki](https://github.com/neptune-ml/data-science-bowl-2018/wiki/Multioutput-UNet).\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "281055",
      "postDate": "02/11/2018 20:59:59",
      "content": "<p>Thanks Kamil, great work! Any estimate on time needed to run on gcp-gpu-large/ gcp-gpu-medium?Is gcp-gpu-large essential or can we run it on gcp-gpu-medium also?</p>",
      "rawMarkdown": "Thanks Kamil, great work! Any estimate on time needed to run on gcp-gpu-large/ gcp-gpu-medium?Is gcp-gpu-large essential or can we run it on gcp-gpu-medium also?",
      "votes": null
    },
    {
      "id": "281101",
      "postDate": "02/12/2018 01:20:05",
      "content": "<p>Hi Kamil, I see your development has been mainly focused on the U-Net, are you planning on working with Mask-RCNN in the future? Or do you think this probably can be better solved using a U-Net-like architecture with advanced post processing or the custom architecture like you made?</p>",
      "rawMarkdown": "Hi Kamil, I see your development has been mainly focused on the U-Net, are you planning on working with Mask-RCNN in the future? Or do you think this probably can be better solved using a U-Net-like architecture with advanced post processing or the custom architecture like you made?",
      "votes": null
    },
    {
      "id": "281118",
      "postDate": "02/12/2018 02:58:29",
      "content": "<p>It is a nice idea. I have a question here. In testing, for each image, we have three outputs: segmentation, centers and contours. How you combine these three outputs with watershed and get the final segmentation? Thank you so much. </p>",
      "rawMarkdown": "It is a nice idea. I have a question here. In testing, for each image, we have three outputs: segmentation, centers and contours. How you combine these three outputs with watershed and get the final segmentation? Thank you so much.",
      "votes": null
    },
    {
      "id": "281360",
      "postDate": "02/12/2018 16:21:49",
      "content": "<p>Hi,</p>\n\n<p>Small update: we now do [LB 0.372] which is our new best score, generated with <code>solution 2</code>.</p>\n\n<p>EDIT 1: Our current best is [LB 0.378] using <code>solution 2</code> codebase.</p>\n\n<p>EDIT 2: Now we do [LB 0.391]. We are obtaining better and better LB score by searching parameters space.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi,\n\nSmall update: we now do [LB 0.372] which is our new best score, generated with `solution 2`.\n\nEDIT 1: Our current best is [LB 0.378] using `solution 2` codebase.\n\nEDIT 2: Now we do [LB 0.391]. We are obtaining better and better LB score by searching parameters space.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "281390",
      "postDate": "02/12/2018 17:48:14",
      "content": "<p>Hi @gavrand,</p>\n\n<p>Thank you!</p>\n\n<p>The difference between <code>gcp-gpu-medium</code> and <code>gcp-gpu-large</code> is number of vCPU: medium has 4; large has 8. GPU is the same (12GB).</p>\n\n<p>We do images augmentation, which consumes CPUs, hence the more CPUs you have the faster is your training.</p>\n\n<p>I have epoch time around 90 seconds with 6 vCPUs.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi @gavrand,\n\nThank you!\n\nThe difference between `gcp-gpu-medium` and `gcp-gpu-large` is number of vCPU: medium has 4; large has 8. GPU is the same (12GB).\n\nWe do images augmentation, which consumes CPUs, hence the more CPUs you have the faster is your training.\n\nI have epoch time around 90 seconds with 6 vCPUs.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "281403",
      "postDate": "02/12/2018 18:01:10",
      "content": "<p>Hi @LivingProgram,</p>\n\n<p>In short, we will implement Mask-RCNN in this competition :-)</p>\n\n<p>However, at this point of the competition we can improve our LB score with custom U-Net and good post-processing. We still have some ideas on how to do it. Multi-output U-Net has great potential here, so we want to spend some extra time pushing it to the limits. After that, we will move towards new ideas, that is Mask-RCNN.</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi @LivingProgram,\n\nIn short, we will implement Mask-RCNN in this competition :-)\n\nHowever, at this point of the competition we can improve our LB score with custom U-Net and good post-processing. We still have some ideas on how to do it. Multi-output U-Net has great potential here, so we want to spend some extra time pushing it to the limits. After that, we will move towards new ideas, that is Mask-RCNN.\n\nKamil",
      "votes": null
    },
    {
      "id": "281450",
      "postDate": "02/12/2018 18:53:25",
      "content": "<p>Hey @Zhen,</p>\n\n<p>In the post-processing we do not use centers. At this point it is U-Net's regularizer.</p>\n\n<p>How we calculate final segmentation?</p>\n\n<ol>\n<li><p>Subtract contours from segmentation. As a result, you have \"eroded mask\", which is binary.</p></li>\n<li><p>The non-zero elements in the eroded mask are used as watershed markers. Check <a href=\"http://scikit-image.org/docs/dev/auto_examples/segmentation/plot_marked_watershed.html\">markers for watershed transform</a> for intuition about it.</p></li>\n<li><p>Calculate distances in the eroded mask -&gt; this transformation yields distances matrix that we take with negative sign. Since eroded mask just 2D array, we calculate minimal distance of the given non-zero entry to the nearest zero.</p></li>\n<li><p>Use markers and distances matrix to run <a href=\"http://scikit-image.org/docs/dev/api/skimage.morphology.html#skimage.morphology.watershed\">watershed</a>.</p></li>\n</ol>\n\n<p>All the best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey @Zhen,\n\nIn the post-processing we do not use centers. At this point it is U-Net's regularizer.\n\nHow we calculate final segmentation?\n\n1. Subtract contours from segmentation. As a result, you have \"eroded mask\", which is binary.\n\n2. The non-zero elements in the eroded mask are used as watershed markers. Check [markers for watershed transform](http://scikit-image.org/docs/dev/auto_examples/segmentation/plot_marked_watershed.html) for intuition about it.\n\n3. Calculate distances in the eroded mask -&gt; this transformation yields distances matrix that we take with negative sign. Since eroded mask just 2D array, we calculate minimal distance of the given non-zero entry to the nearest zero.\n\n4. Use markers and distances matrix to run [watershed](http://scikit-image.org/docs/dev/api/skimage.morphology.html#skimage.morphology.watershed).\n\nAll the best,\n\nKamil",
      "votes": null
    },
    {
      "id": "281527",
      "postDate": "02/12/2018 20:34:09",
      "content": "<p>Thank you so much. Previously, I tried to use watershed directly after segmentation, but the results are very bad. Your idea is nice. </p>\n\n<p>So final segmentation only uses mask and contours. I saw your code in github, it seems you are also train to find to find centers. Then why do you train to find centers? A quick thoughts, with centers and masks, can we use k-means to split the segmentation to each center?</p>",
      "rawMarkdown": "Thank you so much. Previously, I tried to use watershed directly after segmentation, but the results are very bad. Your idea is nice. \n\nSo final segmentation only uses mask and contours. I saw your code in github, it seems you are also train to find to find centers. Then why do you train to find centers? A quick thoughts, with centers and masks, can we use k-means to split the segmentation to each center?",
      "votes": null
    },
    {
      "id": "281687",
      "postDate": "02/12/2018 23:05:41",
      "content": "<p>Hey @Zhen,</p>\n\n<p>Yes, we train to find nuclei centers, because it is another auxiliary target for the U-Net, that might be useful in the future. Also it is good for the regularization purposes, since it introduces additional difficulty.</p>\n\n<p>Can you describe your idea about k-means in more detail? It might be interesting ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey @Zhen,\n\nYes, we train to find nuclei centers, because it is another auxiliary target for the U-Net, that might be useful in the future. Also it is good for the regularization purposes, since it introduces additional difficulty.\n\nCan you describe your idea about k-means in more detail? It might be interesting ;-)\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "281757",
      "postDate": "02/13/2018 02:02:09",
      "content": "<p>Hi Kamil,</p>\n\n<p>Thanks for your ideas!</p>\n\n<p>Robinson @ dataharbor</p>",
      "rawMarkdown": "Hi Kamil,\n\nThanks for your ideas!\n\nRobinson @ dataharbor",
      "votes": null
    },
    {
      "id": "281839",
      "postDate": "02/13/2018 05:59:31",
      "content": "<p>After predicted, we have some predicted centers and masks. Assume we have N centers, then we want to split the masks into these K centers. </p>\n\n<ol>\n<li><p>For each point in masks, calculate the distance between it and N centers. </p></li>\n<li><p>The point belongs to the center which has the smallest distance.</p></li>\n</ol>\n\n<p>I did not implement it yet. Does it make sense?</p>",
      "rawMarkdown": "After predicted, we have some predicted centers and masks. Assume we have N centers, then we want to split the masks into these K centers. \n\n1. For each point in masks, calculate the distance between it and N centers. \n\n2. The point belongs to the center which has the smallest distance.\n\nI did not implement it yet. Does it make sense?",
      "votes": null
    },
    {
      "id": "282017",
      "postDate": "02/13/2018 13:40:50",
      "content": "<p>Great initiative, thank you!</p>",
      "rawMarkdown": "Great initiative, thank you!",
      "votes": null
    },
    {
      "id": "282185",
      "postDate": "02/13/2018 18:30:30",
      "content": "<p>Hey,</p>\n\n<p>I think that in principle we do something similar. It seems that your idea is to assign masked pixel to the nearest (predicted) center. If so, you do not need to run k-means - you can calculate it explicitly. Definitely, you can try this approach, however, keep in mind that it may introduce some false positives.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey,\n\nI think that in principle we do something similar. It seems that your idea is to assign masked pixel to the nearest (predicted) center. If so, you do not need to run k-means - you can calculate it explicitly. Definitely, you can try this approach, however, keep in mind that it may introduce some false positives.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "282523",
      "postDate": "02/14/2018 05:27:20",
      "content": "<p>Got it. Thank you very much.</p>\n\n<p>I have tried the mask and contour method and use your watershed_contour(image, contour) function. However, the score decreases. I wonder what loss function you use to train to the mask and contour? </p>\n\n<p>And what does this mean in the function? Thank you so much. Happy Valentine's Day.</p>\n\n<pre><code>dropped, _ = ndi.label(image - (labeled &gt; 0))\ndropped = np.where(dropped &gt; 0, dropped + nr_blobs, 0)\ncorrect_labeled = dropped + labeled\nreturn relabel(correct_labeled)\n</code></pre>",
      "rawMarkdown": "Got it. Thank you very much.\n\nI have tried the mask and contour method and use your watershed_contour(image, contour) function. However, the score decreases. I wonder what loss function you use to train to the mask and contour? \n\nAnd what does this mean in the function? Thank you so much. Happy Valentine's Day.\n\n    dropped, _ = ndi.label(image - (labeled &gt; 0))\n    dropped = np.where(dropped &gt; 0, dropped + nr_blobs, 0)\n    correct_labeled = dropped + labeled\n    return relabel(correct_labeled)",
      "votes": null
    },
    {
      "id": "282766",
      "postDate": "02/14/2018 14:48:32",
      "content": "",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "282771",
      "postDate": "02/14/2018 14:58:59",
      "content": "<p>Thanks Kamil</p>",
      "rawMarkdown": "Thanks Kamil",
      "votes": null
    },
    {
      "id": "282845",
      "postDate": "02/14/2018 17:39:28",
      "content": "<p>Thanks!</p>",
      "rawMarkdown": "Thanks!",
      "votes": null
    },
    {
      "id": "282854",
      "postDate": "02/14/2018 17:49:40",
      "content": "<p>Hey Zhen,</p>\n\n<p>Multi-output U-Net is defined here: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/models.py#L31\">https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/models.py#L31</a></p>\n\n<p>The model uses the this <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/steps/pytorch/validation.py#L19\">loss function</a> which is simply sum of <code>DiceLoss</code> and <code>BCEWithLogitsLoss</code>. The latter one is from <code>torch.nn</code> package.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey Zhen,\n\nMulti-output U-Net is defined here: https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/models.py#L31\n\nThe model uses the this [loss function](https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/steps/pytorch/validation.py#L19) which is simply sum of `DiceLoss` and `BCEWithLogitsLoss`. The latter one is from `torch.nn` package.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "282892",
      "postDate": "02/14/2018 18:35:01",
      "content": "<p>Thank you very much.</p>",
      "rawMarkdown": "Thank you very much.",
      "votes": null
    },
    {
      "id": "284124",
      "postDate": "02/16/2018 16:31:53",
      "content": "<p>Hi,</p>\n\n<p>Small improvement in <code>solution 2</code> and some experimentation (parameter space search) gave us <code>[LB 0.407]</code>. We are happy that we have crossed 0.4 threshold ;-)</p>\n\n<p>Fell free to use our code available on <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">dsb-repository</a>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi,\n\nSmall improvement in `solution 2` and some experimentation (parameter space search) gave us `[LB 0.407]`. We are happy that we have crossed 0.4 threshold ;-)\n\nFell free to use our code available on [dsb-repository](https://github.com/neptune-ml/data-science-bowl-2018).\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "284644",
      "postDate": "02/17/2018 20:46:35",
      "content": "<p>hi Kamal,</p>\n\n<p>Thanks for sharing!</p>\n\n<p>The upconv blocks in the unet paper had 2 conv2D units. Whereas, your implementation has 3 conv2D layers. Also, the input_block &amp; the classification_block in your implementation seems to be adding 2 extra conv2D layers each when compared with the unet paper.</p>\n\n<p>Can you please explain.</p>",
      "rawMarkdown": "hi Kamal,\n\nThanks for sharing!\n\nThe upconv blocks in the unet paper had 2 conv2D units. Whereas, your implementation has 3 conv2D layers. Also, the input_block &amp; the classification_block in your implementation seems to be adding 2 extra conv2D layers each when compared with the unet paper.\n\nCan you please explain.",
      "votes": null
    },
    {
      "id": "285188",
      "postDate": "02/19/2018 14:26:34",
      "content": "<p>Hey,</p>\n\n<p>We have published <code>solution 3</code> on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">open solution repo</a>, which makes <code>[LB 0.421]</code>. This solution introduces three major improvements:</p>\n\n<ol>\n<li>more image augmentations,</li>\n<li>better validation,</li>\n<li>post-processing for final segmentation purposes.</li>\n</ol>\n\n<p>Besides this, we have implemented number of small fixes. Check <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet\">Improved Multi-output U-Net</a> Wiki page for more info.</p>\n\n<p>This week, we will work towards solution 4, that will exhibit more sophisticated post-processing routines. This part might be useful for many competitors ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey,\n\nWe have published `solution 3` on our [open solution repo](https://github.com/neptune-ml/data-science-bowl-2018), which makes `[LB 0.421]`. This solution introduces three major improvements:\n\n1. more image augmentations,\n2. better validation,\n3. post-processing for final segmentation purposes.\n\nBesides this, we have implemented number of small fixes. Check [Improved Multi-output U-Net](https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet) Wiki page for more info.\n\nThis week, we will work towards solution 4, that will exhibit more sophisticated post-processing routines. This part might be useful for many competitors ;-)\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "285350",
      "postDate": "02/20/2018 02:36:34",
      "content": "<p>Hi @Kamil, I just took a look at your code and it is really good. I have one question though. What is the default training number of epochs for the score above? I saw \"epochs_nr: 1000\" in the code and it seems too large to me. Will appreciate any insights. Thanks</p>",
      "rawMarkdown": "Hi @Kamil, I just took a look at your code and it is really good. I have one question though. What is the default training number of epochs for the score above? I saw \"epochs_nr: 1000\" in the code and it seems too large to me. Will appreciate any insights. Thanks",
      "votes": null
    },
    {
      "id": "285492",
      "postDate": "02/20/2018 12:47:31",
      "content": "<p>How long time it will cost?</p>",
      "rawMarkdown": "How long time it will cost?",
      "votes": null
    },
    {
      "id": "285512",
      "postDate": "02/20/2018 13:30:20",
      "content": "<p>Good question @YangLu, I ran the script for 100 epochs and stopped it.</p>\n\n<p>@Kamil is there a way to benefit from previous incomplete  run's result. Normally the saved best weights can be used for prediction or initializing a new training session. I am using pytorch for the 1st time today so not sure the best way to do it here.</p>",
      "rawMarkdown": "Good question @YangLu, I ran the script for 100 epochs and stopped it.\n\n@Kamil is there a way to benefit from previous incomplete  run's result. Normally the saved best weights can be used for prediction or initializing a new training session. I am using pytorch for the 1st time today so not sure the best way to do it here.",
      "votes": null
    },
    {
      "id": "285516",
      "postDate": "02/20/2018 13:38:15",
      "content": "<p>Hey YaGana,</p>\n\n<p>We have set it to 1000 epochs and - at the same time - set an <code>patience</code> (a.k.a. early stopping) to 100. Please, check the config file: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L66\">neptune.yaml</a>. Thanks to this we know that we wait long enough for the model to learn. In practice, the exact experiment that gave us <code>[LB 0.421]</code> took 473 epochs. Most of my experiments ends after 200-300 epochs.</p>\n\n<p>It seems, that you can just decrease these values and you will not degrade the final performance of your model.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey YaGana,\n\nWe have set it to 1000 epochs and - at the same time - set an `patience` (a.k.a. early stopping) to 100. Please, check the config file: [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L66). Thanks to this we know that we wait long enough for the model to learn. In practice, the exact experiment that gave us `[LB 0.421]` took 473 epochs. Most of my experiments ends after 200-300 epochs.\n\nIt seems, that you can just decrease these values and you will not degrade the final performance of your model.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "285518",
      "postDate": "02/20/2018 13:43:34",
      "content": "<p>Hi Ravi,</p>\n\n<p>Thanks to this trick we have more non-linearities, hence your model has greater capacity. We consider U-Net paper (which is great btw: <a href=\"https://arxiv.org/abs/1505.04597\">here is a link to it</a>!) as an inspiration / reference and we did not want to implement it in exactly the same way. However, you suggested nice thing to try, so now it is like in the original U-Net paper.</p>\n\n<p>Thanks for this feedback!</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi Ravi,\n\nThanks to this trick we have more non-linearities, hence your model has greater capacity. We consider U-Net paper (which is great btw: [here is a link to it](https://arxiv.org/abs/1505.04597)!) as an inspiration / reference and we did not want to implement it in exactly the same way. However, you suggested nice thing to try, so now it is like in the original U-Net paper.\n\nThanks for this feedback!\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "285523",
      "postDate": "02/20/2018 13:53:20",
      "content": "<p>Hi YangLu,</p>\n\n<p>It took approximately 2-3 minutes per epochs in our <code>[LB 0.421]</code> experiment (entire end-to-end process took almost 20h).</p>\n\n<p>On other experiments, I observed epoch time around 1 minute, and usually we do training for 200-300 epochs.</p>\n\n<p>In general, it depends on multiple factors, for example:</p>\n\n<ul>\n<li>images augmentations,</li>\n<li>number of CPU cores that computes them,</li>\n<li>other processes that run on your machine,</li>\n<li>batch size,</li>\n<li>U-Net model parameters.</li>\n</ul>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi YangLu,\n\nIt took approximately 2-3 minutes per epochs in our `[LB 0.421]` experiment (entire end-to-end process took almost 20h).\n\nOn other experiments, I observed epoch time around 1 minute, and usually we do training for 200-300 epochs.\n\nIn general, it depends on multiple factors, for example:\n\n* images augmentations,\n* number of CPU cores that computes them,\n* other processes that run on your machine,\n* batch size,\n* U-Net model parameters.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "285530",
      "postDate": "02/20/2018 14:23:51",
      "content": "<p>Hey YaGana,</p>\n\n<p>In our solution each experiment has value which is literally saved to disk as best model ;-)</p>\n\n<p>We use PyTorch and we save best model after each epoch (we implemented callback for this). You can parametrize how ofter you want to checkpoint your model in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/pipeline_config.py#L79\">pipeline_config.py</a>. In this file you also specify path to the saved model</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey YaGana,\n\nIn our solution each experiment has value which is literally saved to disk as best model ;-)\n\nWe use PyTorch and we save best model after each epoch (we implemented callback for this). You can parametrize how ofter you want to checkpoint your model in the [pipeline_config.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/pipeline_config.py#L79). In this file you also specify path to the saved model\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "285804",
      "postDate": "02/21/2018 02:26:33",
      "content": "<p>Thanks Kamil,</p>\n\n<p>I ran the code to completion with only 2 parameters ( i.e. epochs_nr and lr) slightly changed from their default values. But when I submit the generated submission file, I get the following error:</p>\n\n<p>\"Failed\nEvaluation Exception: Index was outside the bounds of the array.\n\"</p>\n\n<p>I am not sure if that is Kaggle's issue or something else. Can you help?</p>",
      "rawMarkdown": "Thanks Kamil,\n\nI ran the code to completion with only 2 parameters ( i.e. epochs_nr and lr) slightly changed from their default values. But when I submit the generated submission file, I get the following error:\n\n\"Failed\nEvaluation Exception: Index was outside the bounds of the array.\n\"\n\nI am not sure if that is Kaggle's issue or something else. Can you help?",
      "votes": null
    },
    {
      "id": "285957",
      "postDate": "02/21/2018 10:59:04",
      "content": "<p>Hi YaGana,</p>\n\n<p>Yes, we have corrected this bug very recently, so first, try to update your code. You should be fine then.</p>\n\n<p>Also, in order to re-use your trained model, set <code>overwrite = 0</code> in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L41\">neptune.yaml</a>. This will enable you to use your model, and not train another one. Just make sure that directories are set as in your previous experiment.</p>\n\n<p>Best of luck,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi YaGana,\n\nYes, we have corrected this bug very recently, so first, try to update your code. You should be fine then.\n\nAlso, in order to re-use your trained model, set `overwrite = 0` in the [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L41). This will enable you to use your model, and not train another one. Just make sure that directories are set as in your previous experiment.\n\nBest of luck,\n\nKamil",
      "votes": null
    },
    {
      "id": "285966",
      "postDate": "02/21/2018 11:25:50",
      "content": "<p>Hi Kamil,</p>\n\n<p>I have a couple of questions as follows if you do not mind :-</p>\n\n<ol>\n<li><p>The version of your code I used was downloaded on Feb. 19th at 5.34pm PST. Was the bug fixed after that timeline? If so I can download it again. I have spent over $20 right now without making any submission hence trying to make sure I do not make a mistake.</p></li>\n<li><p>I sent the training to Neptune from my local directory so the files are stored on your system in the specified directories for both experiments that I ran. Given that, I am not sure I understand your instruction about setting \"overwrite = 0\" in the neptune.yaml file as long as the directories are set as in the previous experiment. Right now I see those directories for the 2 experiments when I click on each of them and they are not the same. How do I use the previous weights in this case?</p></li>\n</ol>",
      "rawMarkdown": "Hi Kamil,\n\nI have a couple of questions as follows if you do not mind :-\n\n1. The version of your code I used was downloaded on Feb. 19th at 5.34pm PST. Was the bug fixed after that timeline? If so I can download it again. I have spent over $20 right now without making any submission hence trying to make sure I do not make a mistake.\n\n2. I sent the training to Neptune from my local directory so the files are stored on your system in the specified directories for both experiments that I ran. Given that, I am not sure I understand your instruction about setting \"overwrite = 0\" in the neptune.yaml file as long as the directories are set as in the previous experiment. Right now I see those directories for the 2 experiments when I click on each of them and they are not the same. How do I use the previous weights in this case?",
      "votes": null
    },
    {
      "id": "286284",
      "postDate": "02/21/2018 23:32:11",
      "content": "<p>Hey YaGana,</p>\n\n<p>Please find my answers below:</p>\n\n<p><strong>ad 1</strong></p>\n\n<p>The latest commit to master was performed on Feb 20th, so it may be good to use the latest version. We have fix some submit issue with this commit ;-)</p>\n\n<p><strong>ad 2</strong></p>\n\n<p>It is fast fix: take your <code>submission.csv</code> and remove all lines with <code>nan</code>. We have found that this causes submission error -- it is very rare case though.</p>\n\n<p><strong>Bonus</strong></p>\n\n<p>Also, you can take a look at <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/devbook.ipynb\">devbook.ipynb</a>, where we visualize predictions and build submit file. This will give you some overview about how predictions work in our solution, as well as, decent score <code>[LB 0.407]</code>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey YaGana,\n\nPlease find my answers below:\n\n**ad 1**\n\nThe latest commit to master was performed on Feb 20th, so it may be good to use the latest version. We have fix some submit issue with this commit ;-)\n\n**ad 2**\n\nIt is fast fix: take your `submission.csv` and remove all lines with `nan`. We have found that this causes submission error -- it is very rare case though.\n\n**Bonus**\n\nAlso, you can take a look at [devbook.ipynb](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/devbook.ipynb), where we visualize predictions and build submit file. This will give you some overview about how predictions work in our solution, as well as, decent score `[LB 0.407]`.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "286318",
      "postDate": "02/22/2018 01:28:54",
      "content": "<p>Hi Kamil,</p>\n\n<p>Thanks for your prompt response. I just checked the submission file and found 32 blanks in the ImageId column. Is that what you are referring to? </p>\n\n<p>My current score is LB=0.407 as well at the moment but I will take a look at the devbook.ipynb later.</p>",
      "rawMarkdown": "Hi Kamil,\n\nThanks for your prompt response. I just checked the submission file and found 32 blanks in the ImageId column. Is that what you are referring to? \n\nMy current score is LB=0.407 as well at the moment but I will take a look at the devbook.ipynb later.",
      "votes": null
    },
    {
      "id": "286335",
      "postDate": "02/22/2018 02:05:57",
      "content": "<p>Hi Kamil,\nI ran the script for 170 epochs and stopped it. LB submission only 0.371. I haven't change any parameters.</p>",
      "rawMarkdown": "Hi Kamil,\nI ran the script for 170 epochs and stopped it. LB submission only 0.371. I haven't change any parameters.",
      "votes": null
    },
    {
      "id": "286663",
      "postDate": "02/22/2018 16:00:38",
      "content": "<p>Hey YaGana,</p>\n\n<p>I was referring to nans in the <code>EncodedPixels</code> column. It is interesting that we have blanks in the <code>ImageId</code> column... I will take a closer look at it. Thanks for letting me know! ;-)</p>\n\n<p>Meanwhile, take a look at the notebook mentioned before (<code>devbook.ipynb</code>). I think it is valuable resource, that you can re-use for your analysis.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey YaGana,\n\nI was referring to nans in the `EncodedPixels` column. It is interesting that we have blanks in the `ImageId` column... I will take a closer look at it. Thanks for letting me know! ;-)\n\nMeanwhile, take a look at the notebook mentioned before (`devbook.ipynb`). I think it is valuable resource, that you can re-use for your analysis.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "286664",
      "postDate": "02/22/2018 16:01:48",
      "content": "<p>Hi YangLu,</p>\n\n<p>I think that your training is too short. Try longer experiment ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi YangLu,\n\nI think that your training is too short. Try longer experiment ;-)\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "286844",
      "postDate": "02/22/2018 22:29:13",
      "content": "<p>@Kamil, sorry the blanks are in the \"EncodedPixels\" column not the ImageId. That was my mistaken typing above.  If it can help see below the entries in the  \"ImageId\" column that have corresponding blank entries :</p>\n\n<p>472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\nb83d1d77935b6cfd44105b54600ffc4b6bd82de57dec65571bcb117fa8398ba3</p>",
      "rawMarkdown": "Kamil, sorry the blanks are in the \"EncodedPixels\" column not the ImageId. That was my mistaken typing above.  If it can help see below the entries in the  \"ImageId\" column that have corresponding blank entries :\n\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\nb83d1d77935b6cfd44105b54600ffc4b6bd82de57dec65571bcb117fa8398ba3",
      "votes": null
    },
    {
      "id": "287014",
      "postDate": "02/23/2018 09:11:26",
      "content": "<p>delete me</p>",
      "rawMarkdown": "delete me",
      "votes": null
    },
    {
      "id": "287724",
      "postDate": "02/25/2018 19:50:56",
      "content": "<p>Hi Kamil. I have several questions.</p>\n\n<ol>\n<li><p>I found in your pipeline, you did preprocessing which split x and y . So you do the train for x and y separately? I am confused with this.</p></li>\n<li><p>I am confused with part is your training part. You just use  unet_multitask = Step(...). For the Step class I didn't not find the training operation. I don't understand Step class. Could you please explain it?</p></li>\n<li><p>For the preprocessing, you use K-means and data augmentation. What else do you do? How do you do normalization? Where did you use the augmentation. I can't find the place that you import augmentation.py :(.</p></li>\n<li><p>Do you use the standard U-net framework?</p></li>\n</ol>\n\n<p>Thank you.</p>",
      "rawMarkdown": "Hi Kamil. I have several questions.\n\n1. I found in your pipeline, you did preprocessing which split x and y . So you do the train for x and y separately? I am confused with this.\n\n2. I am confused with part is your training part. You just use  unet_multitask = Step(...). For the Step class I didn't not find the training operation. I don't understand Step class. Could you please explain it?\n\n3. For the preprocessing, you use K-means and data augmentation. What else do you do? How do you do normalization? Where did you use the augmentation. I can't find the place that you import augmentation.py :(.\n\n4. Do you use the standard U-net framework?\n\nThank you.",
      "votes": null
    },
    {
      "id": "287841",
      "postDate": "02/26/2018 03:50:31",
      "content": "<ul>\n<li><p>1 x is origin image y is mask</p></li>\n<li><p>2 training operation is in the file <code>steps/pytorch/models</code> the function 'fit' is the training function, the concept of step is abstracting  each step into a \"step\" class then put them into the pipeline and execute them one by one ,the function which step execute is the \"transformer\" part in config</p></li>\n<li><p>3 see wiki in github repo ,He import augmentation in loaders.py : <code>from augmentation import affine_seq, color_seq</code></p></li>\n<li><p>4 It is the standard U-net ,but there are only 4 down-up samples ,from 16 to 128 ,the orign U-net has 5 down-up samples ,from 64 to 1024  see steps<code>pytorch/architectures/unet.py</code> </p></li>\n</ul>\n\n<p>Try more epochs and make some enhancements， I got 0.440 in LB！ This solution is awesome,</p>\n\n<p>Good luck</p>",
      "rawMarkdown": "1 x is origin image y is mask\n\n- 2 training operation is in the file `steps/pytorch/models` the function 'fit' is the training function, the concept of step is abstracting  each step into a \"step\" class then put them into the pipeline and execute them one by one ,the function which step execute is the \"transformer\" part in config\n\n- 3 see wiki in github repo ,He import augmentation in loaders.py : `from augmentation import affine_seq, color_seq`\n\n- 4 It is the standard U-net ,but there are only 4 down-up samples ,from 16 to 128 ,the orign U-net has 5 down-up samples ,from 64 to 1024  see steps`pytorch/architectures/unet.py` \n\nTry more epochs and make some enhancements， I got 0.440 in LB！ This solution is awesome,\n\nGood luck",
      "votes": null
    },
    {
      "id": "287914",
      "postDate": "02/26/2018 07:59:00",
      "content": "<p>@Kamil, Great job ! The code is very beautiful .</p>\n\n<p>I read your great code and I have to say the conception of pipeline is wonderfull</p>\n\n<p>but I still have some questions:</p>\n\n<ul>\n<li>You use max-pooling to down-sample the image,but this method is a little bit  outdated ,I thick use the dilated convolution replace it maybe get better result</li>\n<li><p>I found that you use VGG16 to get features and clustering them by\nk-means for validation ,what is the feature?  and why do you use them\nfor  validation , we usually choose 10% data randomly and set them as\nverification sets , I read the wiki <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet\">here </a> but Still confused</p></li>\n<li><p>You initial the model by this function: <code>def _initialize_model_weights(self)</code> , Since the verification set used VGG ,why don't you use  VGG16 as the encoder(like <a href=\"http://blog.kaggle.com/2017/12/22/carvana-image-masking-first-place-interview/\">this</a>) which was pre-trained on Imagenet dataset ?</p></li>\n<li><p>In devbook.ipynb there is a line:</p>\n\n<p><code>labels_train   =   joblib.load(os.path.join(DATA_DIR,'ground_truth','train','labels.pkl'))</code>  </p>\n\n<p>where is the \n<code>'ground_truth',</code>and <code>'labels.pkl'</code> ?</p></li>\n</ul>\n\n<p>Thanks again!</p>",
      "rawMarkdown": "Kamil, Great job ! The code is very beautiful .\n\nI read your great code and I have to say the conception of pipeline is wonderfull\n \nbut I still have some questions:\n\n - You use max-pooling to down-sample the image,but this method is a little bit  outdated ,I thick use the dilated convolution replace it maybe get better result\n - I found that you use VGG16 to get features and clustering them by\n   k-means for validation ,what is the feature?  and why do you use them\n   for  validation , we usually choose 10% data randomly and set them as\n   verification sets , I read the wiki [here ][1] but Still confused\n   \n - You initial the model by this function: `def _initialize_model_weights(self)` , Since the verification set used VGG ,why don't you use  VGG16 as the encoder(like [this][2]) which was pre-trained on Imagenet dataset ?\n -  In devbook.ipynb there is a line:\n\n   ` labels_train   =   joblib.load(os.path.join(DATA_DIR,'ground_truth','train','labels.pkl'))  `  \n\n where is the \n    `'ground_truth',`and `'labels.pkl'` ?\n\nThanks again!\n\n\n  [1]: https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet\n  [2]: http://blog.kaggle.com/2017/12/22/carvana-image-masking-first-place-interview/",
      "votes": null
    },
    {
      "id": "287975",
      "postDate": "02/26/2018 11:22:36",
      "content": "<p>Hey YaGana,</p>\n\n<p>Thank you for the info! I can see that we have two different IDs -&gt; I will take a closer look at them in order to check what is on the images.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey YaGana,\n\nThank you for the info! I can see that we have two different IDs -&gt; I will take a closer look at them in order to check what is on the images.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "287986",
      "postDate": "02/26/2018 12:07:14",
      "content": "<p>Hey bintan_FDU,</p>\n\n<p>Thank you!</p>\n\n<p>In your case it seems better to train locally via <code>neptune run ...</code>. At this point we do not support multi-GPU training, but - since you raised this point - I strongly encourage you to submit an issue on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">repository</a> with this feature request. We will implement it :-) I think that broader community may benefit from it as well.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey bintan_FDU,\n\nThank you!\n\nIn your case it seems better to train locally via `neptune run ...`. At this point we do not support multi-GPU training, but - since you raised this point - I strongly encourage you to submit an issue on our [repository](https://github.com/neptune-ml/data-science-bowl-2018) with this feature request. We will implement it :-) I think that broader community may benefit from it as well.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "288663",
      "postDate": "02/28/2018 01:12:06",
      "content": "<p>Thanks for answering. Your ideas are really nice. </p>\n\n<p>I checked the loader.py,  you have <br>\nself.image_augment_with_target = ImgAug(affine_seq)\nself.image_augment = ImgAug(color_seq)\na very stupid question is when training, do you use 670 original images + 670 image_augment_with_target + 670 image_augment? Besides, I found your normalize are based on mean=[0.5, 0.5, 0.5] and std=[0.2, 0.2, 0.2]). How do you get the mean and std?</p>\n\n<p>Another question is the same with @bintan_FDU. You use VGG16 to get features and clustering them by k-means for validation ,what is the feature? The category is only for validation, so you don't train different networks for different categories, right? All the testing part uses only one trained network plus some pre and post processing? That is amazing. </p>\n\n<p>Hope you can break 0.5!</p>",
      "rawMarkdown": "Thanks for answering. Your ideas are really nice. \n\nI checked the loader.py,  you have     \nself.image_augment_with_target = ImgAug(affine_seq)\nself.image_augment = ImgAug(color_seq)\na very stupid question is when training, do you use 670 original images + 670 image_augment_with_target + 670 image_augment? Besides, I found your normalize are based on mean=[0.5, 0.5, 0.5] and std=[0.2, 0.2, 0.2]). How do you get the mean and std?\n\nAnother question is the same with @bintan_FDU. You use VGG16 to get features and clustering them by k-means for validation ,what is the feature? The category is only for validation, so you don't train different networks for different categories, right? All the testing part uses only one trained network plus some pre and post processing? That is amazing. \n\nHope you can break 0.5!",
      "votes": null
    },
    {
      "id": "288876",
      "postDate": "02/28/2018 12:15:28",
      "content": "<ul>\n<li><p>1 In my opinion the mean and std is just because He normalized the image by <code>image = image / 255</code></p></li>\n<li><p>2 This question I have thought for a moment , And It may be  because he want improve the model's generalization</p></li>\n<li>3 the one who answered  your first question is me ... So it may be not the correct answer :-)</li>\n</ul>",
      "rawMarkdown": "1 In my opinion the mean and std is just because He normalized the image by `image = image / 255`\n\n- 2 This question I have thought for a moment , And It may be  because he want improve the model's generalization\n- 3 the one who answered  your first question is me ... So it may be not the correct answer :-)",
      "votes": null
    },
    {
      "id": "288879",
      "postDate": "02/28/2018 12:21:06",
      "content": "<p>Hi, I have a problem with the line in predict_pipeline:</p>\n\n<p>output = pipeline.transform(data)</p>\n\n<p>I get the following error:</p>\n\n<p>2018-02-28 12-13-48 steps &gt;&gt;&gt; step output adapting inputs\nTraceback (most recent call last):\n  File \"\", line 1, in \n  File \"/home/ubuntu/data-science-bowl-2018/steps/base.py\", line 144, in transform\n    step_inputs = self.adapt(step_inputs)\n  File \"/home/ubuntu/data-science-bowl-2018/steps/base.py\", line 181, in adapt\n    raw_inputs = [step_inputs[step_name][step_var] for step_name, step_var in step_mapping]\n  File \"/home/ubuntu/data-science-bowl-2018/steps/base.py\", line 181, in \n    raw_inputs = [step_inputs[step_name][step_var] for step_name, step_var in step_mapping]\nKeyError: 'labels'</p>\n\n<blockquote>\n  <blockquote>\n    <blockquote>\n      \n    </blockquote>\n  </blockquote>\n</blockquote>\n\n<p>What i can do to fix this?\nThanks</p>",
      "rawMarkdown": "Hi, I have a problem with the line in predict_pipeline:\n\n   output = pipeline.transform(data)\n\nI get the following error:\n \n2018-02-28 12-13-48 steps &gt;&gt;&gt; step output adapting inputs\nTraceback (most recent call last):\n  File \"",
      "votes": null
    },
    {
      "id": "292138",
      "postDate": "03/07/2018 14:27:35",
      "content": "<p>Hey guys,</p>\n\n<p>Check out the <a href=\"https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic_webinar\">Webinar about Toxic Comment Classification Challenge</a> that Jakub Czakon and me will host  tomorrow.</p>\n\n<p>We want to show you our open solution to <a href=\"https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge\">Toxic Comment Challenge</a>, answer some questions and have good time talking about deep learning :-)</p>\n\n<p>Feel free to join if you like.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey guys,\n\nCheck out the [Webinar about Toxic Comment Classification Challenge](https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic_webinar) that Jakub Czakon and me will host  tomorrow.\n\nWe want to show you our open solution to [Toxic Comment Challenge](https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge), answer some questions and have good time talking about deep learning :-)\n\nFeel free to join if you like.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "292245",
      "postDate": "03/07/2018 17:31:29",
      "content": "<p>Hi,</p>\n\n<p><a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">Solution-4</a> has just arrived. Run it as it is, to get approximately [LB 0.428]. Major improvements are:</p>\n\n<ol>\n<li>multi-output U-Net with weighted loss,</li>\n<li>morphological post-processing -&gt; later this week we are going to publish kernel with this post-processing routine,</li>\n<li>contour touching as new auxiliary signal.</li>\n</ol>\n\n<p>More details can be found on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet-with-weighted-loss-and-morphological-postprocessing\">repository Wiki</a>.\nNow, we are going to attack [LB 0.5] with a couple of new ideas that we have in mind.</p>\n\n<p>Happy training,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi,\n\n[Solution-4](https://github.com/neptune-ml/data-science-bowl-2018) has just arrived. Run it as it is, to get approximately [LB 0.428]. Major improvements are:\n\n1. multi-output U-Net with weighted loss,\n2. morphological post-processing -&gt; later this week we are going to publish kernel with this post-processing routine,\n3. contour touching as new auxiliary signal.\n\nMore details can be found on our [repository Wiki](https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet-with-weighted-loss-and-morphological-postprocessing).\nNow, we are going to attack [LB 0.5] with a couple of new ideas that we have in mind.\n\nHappy training,\n\nKamil",
      "votes": null
    },
    {
      "id": "295955",
      "postDate": "03/14/2018 13:24:29",
      "content": "<p><a href=\"https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook\">In our repo</a> on branch mask_rcnn_notebook You can find notebook based on matterport Mask RCNN implementation scoring 0.439 LB with full instruction how to run it. </p>",
      "rawMarkdown": "[In our repo][1] on branch mask_rcnn_notebook You can find notebook based on matterport Mask RCNN implementation scoring 0.439 LB with full instruction how to run it. \n\n\n  [1]: https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook",
      "votes": null
    },
    {
      "id": "296125",
      "postDate": "03/14/2018 18:50:55",
      "content": "<p>Hi Krzysztof! \nThanks for creating and sharing this awesome  notebook! It will help a lot of us. One question\nDo you use the matterport Mask_RCNN <a href=\"https://github.com/matterport/Mask_RCNN\">https://github.com/matterport/Mask_RCNN</a> or the fork made by Yan Wang <a href=\"https://github.com/YanWang2014/Mask_RCNN\">https://github.com/YanWang2014/Mask_RCNN</a> that a lot of us have been using ? \nThanks\nMehul</p>",
      "rawMarkdown": "Hi Krzysztof! \nThanks for creating and sharing this awesome  notebook! It will help a lot of us. One question\nDo you use the matterport Mask_RCNN https://github.com/matterport/Mask_RCNN or the fork made by Yan Wang https://github.com/YanWang2014/Mask_RCNN that a lot of us have been using ? \nThanks\nMehul",
      "votes": null
    },
    {
      "id": "296135",
      "postDate": "03/14/2018 19:13:23",
      "content": "<p>Hi Krystov,</p>\n\n<p>Thanks for sharing. After downloading the above repo, when I try to upload mask RCNN code with the command \" neptune data upload Mask_RCNN\" , I get the following error on a windows 10 machine :-</p>\n\n<p>INFO: Could not find files for the given pattern(s).\nCurrent project: SAN\nCannot upload, because folder 'Mask_RCNN' is not empty. Use -r/--recursive flag to upload</p>\n\n<hr>\n\n<p>Then using the recursive flag as indicated above, gives a whole bunch of errors. Please help.</p>",
      "rawMarkdown": "Hi Krystov,\n\nThanks for sharing. After downloading the above repo, when I try to upload mask RCNN code with the command \" neptune data upload Mask_RCNN\" , I get the following error on a windows 10 machine :-\n\nINFO: Could not find files for the given pattern(s).\nCurrent project: SAN\nCannot upload, because folder 'Mask_RCNN' is not empty. Use -r/--recursive flag to upload\n\n*****\nThen using the recursive flag as indicated above, gives a whole bunch of errors. Please help.",
      "votes": null
    },
    {
      "id": "296169",
      "postDate": "03/14/2018 20:47:56",
      "content": "<p>nevermind i see you must the answer in the Readme file before. </p>",
      "rawMarkdown": "nevermind i see you must the answer in the Readme file before.",
      "votes": null
    },
    {
      "id": "296190",
      "postDate": "03/14/2018 21:52:40",
      "content": "<p>Hey guys,</p>\n\n<p>Together with Kuba we will host a <a href=\"https://neptune.ml/webinar/\">webinar</a> about our Open Solution. If you want to hear more about our work, plans for the future or ask questions directly, please join us tomorrow at 12-1pm PDT (3-4pm EDT, 8-9pm CET).</p>\n\n<p>Here is a <a href=\"https://neptune.ml/webinar/\">link to the registration page</a>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey guys,\n\nTogether with Kuba we will host a [webinar](https://neptune.ml/webinar/) about our Open Solution. If you want to hear more about our work, plans for the future or ask questions directly, please join us tomorrow at 12-1pm PDT (3-4pm EDT, 8-9pm CET).\n\nHere is a [link to the registration page](https://neptune.ml/webinar/).\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "296425",
      "postDate": "03/15/2018 07:38:34",
      "content": "<p>Thanks for sharing. Good to hear your experiments using mask-rcnn. Could the experiments be conducted in local machine?</p>",
      "rawMarkdown": "Thanks for sharing. Good to hear your experiments using mask-rcnn. Could the experiments be conducted in local machine?",
      "votes": null
    },
    {
      "id": "296556",
      "postDate": "03/15/2018 12:33:12",
      "content": "<p>@ YaGana Sheriff-Hussaini\nyou should first create a project Data Science Bowl (that would give you a key <code>DSB</code>) and then run:</p>\n\n<p><code>neptune data upload Mask_RCNN --recursive --project-key DSB</code></p>\n\n<p>@HAOYU-LI\nOf course you can run it locally just make sure to have tensorflow 1.3+ </p>",
      "rawMarkdown": "YaGana Sheriff-Hussaini\nyou should first create a project Data Science Bowl (that would give you a key `DSB`) and then run:\n\n`neptune data upload Mask_RCNN --recursive --project-key DSB`\n\n@HAOYU-LI\nOf course you can run it locally just make sure to have tensorflow 1.3+",
      "votes": null
    },
    {
      "id": "296568",
      "postDate": "03/15/2018 12:57:09",
      "content": "<p>Hey Zhen,</p>\n\n<p><strong>ad. 1</strong>: <code>X</code> is data, <code>y</code> is label. In this competition it is mask. It is also crucial, to keep in mind that we do affine transformations (linear mapping methods) in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py\">augmentations</a>, for example rotation or flipping. Affine transformations must be applied to <code>X</code> and <code>y</code>.</p>\n\n<p><strong>ad. 2</strong>: @bintan_FDU covered your questions very well. I just wanted to add that our goal in software design is to distinguish pipeline definition and pipeline execution. Thanks to this you can modify pipelines by adding / modifying <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/base.py#L15\">Steps</a>. Steps implement <code>fit</code> and <code>transform</code> methods that are executed during pipeline execution.</p>\n\n<p><strong>ad. 3</strong>: We use K-means for validation. That is, we take pretrained VGG to obtain features, and we cluster them into <code>K=10</code> clusters. Then - through some experimentation - we determined clusters that should go to the validation set. The goal is to make sure that various image types are represented in the validation set. Now, out validation score reflects LB score pretty closely.</p>\n\n<p>We use augmentations defined in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py\">augmentation.py</a> and we use them in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/loaders.py#L211\">loaders.py</a>.</p>\n\n<p><strong>ad. 4</strong>: We use U-Net that is parametrized in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml\">neptune.yaml</a>. Network is implemented in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/architectures/unet.py\">unet.py</a></p>\n\n<p><strong>Finally</strong>, please note that our <code>master</code> branch is moving forward very quickly, so make sure that you have the latest version all the time.</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
      "rawMarkdown": "Hey Zhen,\n\n**ad. 1**: `X` is data, `y` is label. In this competition it is mask. It is also crucial, to keep in mind that we do affine transformations (linear mapping methods) in the [augmentations](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py), for example rotation or flipping. Affine transformations must be applied to `X` and `y`.\n\n**ad. 2**: @bintan_FDU covered your questions very well. I just wanted to add that our goal in software design is to distinguish pipeline definition and pipeline execution. Thanks to this you can modify pipelines by adding / modifying [Steps](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/base.py#L15). Steps implement `fit` and `transform` methods that are executed during pipeline execution.\n\n**ad. 3**: We use K-means for validation. That is, we take pretrained VGG to obtain features, and we cluster them into `K=10` clusters. Then - through some experimentation - we determined clusters that should go to the validation set. The goal is to make sure that various image types are represented in the validation set. Now, out validation score reflects LB score pretty closely.\n\nWe use augmentations defined in the [augmentation.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py) and we use them in the [loaders.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/loaders.py#L211).\n\n**ad. 4**: We use U-Net that is parametrized in the [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml). Network is implemented in the [unet.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/architectures/unet.py)\n\n**Finally**, please note that our `master` branch is moving forward very quickly, so make sure that you have the latest version all the time.\n\nBest,\n\nKK",
      "votes": null
    },
    {
      "id": "296570",
      "postDate": "03/15/2018 13:01:00",
      "content": "<p>goods</p>",
      "rawMarkdown": "goods",
      "votes": null
    },
    {
      "id": "296686",
      "postDate": "03/15/2018 16:16:35",
      "content": "<p>Hi Leonardo,</p>\n\n<p>We have fixed that -&gt; just make sure that you have latest version.</p>",
      "rawMarkdown": "Hi Leonardo,\n\nWe have fixed that -&gt; just make sure that you have latest version.",
      "votes": null
    },
    {
      "id": "296701",
      "postDate": "03/15/2018 16:34:26",
      "content": "<p>Hey @Zhen, @bintan_FDU, </p>\n\n<p>In the <code>loaders.py</code> you have <code>self.image_augment_with_target = ImgAug(affine_seq)</code> and <code>self.image_augment = ImgAug(color_seq)</code>. This is because affine transforms must be applied to image and mask (i.e. rotation, translation), whereas color transforms just to images. Augmentation procedure is applied to all images.</p>\n\n<p>Outputs from the pre-trained <code>VGG16</code> serve as features for clustering. My previous answer describes this in more detail :)</p>\n\n<p>@bintan_FDU so cool that you made <code>[LB 0.440]</code>! also thanks for answering questions.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey @Zhen, @bintan_FDU, \n\nIn the `loaders.py` you have `self.image_augment_with_target = ImgAug(affine_seq)` and `self.image_augment = ImgAug(color_seq)`. This is because affine transforms must be applied to image and mask (i.e. rotation, translation), whereas color transforms just to images. Augmentation procedure is applied to all images.\n\nOutputs from the pre-trained `VGG16` serve as features for clustering. My previous answer describes this in more detail :)\n\n@bintan_FDU so cool that you made `[LB 0.440]`! also thanks for answering questions.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "296731",
      "postDate": "03/15/2018 17:20:47",
      "content": "<p>Hi,</p>\n\n<p><strong>ad. 1</strong>: We have dilated convolution on our roadmap, so we will try it.</p>\n\n<p><strong>ad. 2</strong>:</p>\n\n<ul>\n<li>Random split into train/valid/test is fine, but have some limitations, so we wanted to improve it.</li>\n<li>Procedure for validation split with VGG and K-means:\n<ul><li>From the pre-trained <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L117\">VGG16</a> network, take the <code>features</code> part (check <a href=\"https://github.com/pytorch/vision/blob/master/torchvision/models/vgg.py#L24\">VGG implementation</a>).</li>\n<li>Use it as features extractor. It simply means that network's <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L107\">output are features</a>.</li>\n<li>When computed features for all images, run <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L137\">K-means clustering</a> with <code>K=10</code>.</li>\n<li>As a result each image is assigned to one cluster. Thanks to this approach we can experiment with various validation splits. We also have determined clusters that are good for validation purposes -&gt; our validation score closely follows LB score.</li></ul></li>\n</ul>\n\n<p><strong>ad. 3</strong>: We train U-Net end-to-end, so we initialize weights in the way defined <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/models.py#L34\">here</a>. I really like the idea you suggested -&gt; take pre-trained VGG as first U-Net arm and run training on this. We will add it to our roadmap. Thanks :)</p>\n\n<p><strong>ad. 4</strong>: In general, when you log in to <a href=\"https://neptune.ml/\">neptune.ml</a>, and start notebook online, all <em>dsb-related</em> data is available under the directory <code>/public/dsb_2018_data</code>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi,\n\n**ad. 1**: We have dilated convolution on our roadmap, so we will try it.\n\n**ad. 2**:\n\n* Random split into train/valid/test is fine, but have some limitations, so we wanted to improve it.\n* Procedure for validation split with VGG and K-means:\n  * From the pre-trained [VGG16](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L117) network, take the `features` part (check [VGG implementation](https://github.com/pytorch/vision/blob/master/torchvision/models/vgg.py#L24)).\n  * Use it as features extractor. It simply means that network's [output are features](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L107).\n  * When computed features for all images, run [K-means clustering](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L137) with `K=10`.\n  * As a result each image is assigned to one cluster. Thanks to this approach we can experiment with various validation splits. We also have determined clusters that are good for validation purposes -&gt; our validation score closely follows LB score.\n\n**ad. 3**: We train U-Net end-to-end, so we initialize weights in the way defined [here](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/models.py#L34). I really like the idea you suggested -&gt; take pre-trained VGG as first U-Net arm and run training on this. We will add it to our roadmap. Thanks :)\n\n**ad. 4**: In general, when you log in to [neptune.ml](https://neptune.ml/), and start notebook online, all *dsb-related* data is available under the directory `/public/dsb_2018_data`.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "296920",
      "postDate": "03/16/2018 01:06:46",
      "content": "<p>Thanks Jakub,</p>\n\n<p>I have already created the product key DSB and I am still getting a bunch of errors. See below the 1st part of the error messages below:</p>\n\n<p>INFO: Could not find files for the given pattern(s).\nCurrent project: DSB\nCalculated data size: 195.83 kB\nUploading data to server:   8%|ΓûêΓûêΓûêΓûêΓûÄ                                               | 16.4K/196K [00:00&lt;00:02, 61.7KB/s]2018-03-15 18:04:11,016 deepsense.neptune.common.api.utils ERROR    utils.py:123 - log_exception() Failed to call upload_data_as_tarstream\n2018-03-15 18:04:11,019 deepsense.neptune.common.api.utils ERROR    utils.py:124 - log_exception() status: 500, response_message: Internal Server Error\nTraceback (most recent call last):\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\neptune\\common\\api\\utils.py\", line 160, in func_wrapper\n    return func(*args, **kwargs)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\apis\\default_api.py\", line 11381, in upload_data_as_tarstream\n    callback=params.get('callback'))\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 329, in call_api\n    response_type, auth_settings, callback)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 154, in __call_api\n    post_params=post_params, body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 365, in request\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 164, in POST\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 132, in request\n    raise ApiException(http_resp=r)\ndeepsense.generated.swagger_client.rest.ApiException: (500)\nReason: Server Error\nHTTP response headers: {'Via': '1.1 google', 'Content-Length': '21', 'Alt-Svc': 'clear', 'Server': 'nginx', 'Date': 'Fri, 16 Mar 2018 01:04:11 GMT', 'Content-Type': 'application/json;charset=utf-8'}\nHTTP response body: Internal Server Error</p>",
      "rawMarkdown": "Thanks Jakub,\n\nI have already created the product key DSB and I am still getting a bunch of errors. See below the 1st part of the error messages below:\n\nINFO: Could not find files for the given pattern(s).\nCurrent project: DSB\nCalculated data size: 195.83 kB\nUploading data to server:   8%|ΓûêΓûêΓûêΓûêΓûÄ                                               | 16.4K/196K [00:00&lt;00:02, 61.7KB/s]2018-03-15 18:04:11,016 deepsense.neptune.common.api.utils ERROR    utils.py:123 - log_exception() Failed to call upload_data_as_tarstream\n2018-03-15 18:04:11,019 deepsense.neptune.common.api.utils ERROR    utils.py:124 - log_exception() status: 500, response_message: Internal Server Error\nTraceback (most recent call last):\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\neptune\\common\\api\\utils.py\", line 160, in func_wrapper\n    return func(*args, **kwargs)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\apis\\default_api.py\", line 11381, in upload_data_as_tarstream\n    callback=params.get('callback'))\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 329, in call_api\n    response_type, auth_settings, callback)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 154, in __call_api\n    post_params=post_params, body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 365, in request\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 164, in POST\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 132, in request\n    raise ApiException(http_resp=r)\ndeepsense.generated.swagger_client.rest.ApiException: (500)\nReason: Server Error\nHTTP response headers: {'Via': '1.1 google', 'Content-Length': '21', 'Alt-Svc': 'clear', 'Server': 'nginx', 'Date': 'Fri, 16 Mar 2018 01:04:11 GMT', 'Content-Type': 'application/json;charset=utf-8'}\nHTTP response body: Internal Server Error",
      "votes": null
    },
    {
      "id": "296967",
      "postDate": "03/16/2018 03:05:39",
      "content": "<p>Thanks for holding the webinar yesterday. I really enjoy it and it is a great help for us! Looking forward the next one and the new modules to be released!</p>",
      "rawMarkdown": "Thanks for holding the webinar yesterday. I really enjoy it and it is a great help for us! Looking forward the next one and the new modules to be released!",
      "votes": null
    },
    {
      "id": "296968",
      "postDate": "03/16/2018 03:05:51",
      "content": "<p>Is it possible to run code locally? I'm stuck on:</p>\n\n<blockquote>\n  <p>from deepsense import neptune</p>\n</blockquote>",
      "rawMarkdown": "Is it possible to run code locally? I'm stuck on:\n\n&gt; from deepsense import neptune",
      "votes": null
    },
    {
      "id": "296991",
      "postDate": "03/16/2018 03:56:20",
      "content": "<p>Hi Krzysztof, Kamil! \nThanks again for the great notebook. One question:\nOnce i start running the notebook and say I have to shutdown my laptop, does the processing still continue. It seems like if i shutdown the browser window, the processing stops ? \nThanks\nMehul</p>",
      "rawMarkdown": "Hi Krzysztof, Kamil! \nThanks again for the great notebook. One question:\nOnce i start running the notebook and say I have to shutdown my laptop, does the processing still continue. It seems like if i shutdown the browser window, the processing stops ? \nThanks\nMehul",
      "votes": null
    },
    {
      "id": "297045",
      "postDate": "03/16/2018 06:14:31",
      "content": "<p>Hi Kamil,</p>\n\n<p>Thanks for the webinars. I registered for both but unfortunately unscheduled meetings got in the way and I could not attend. Do you have a link to recordings of them? If not when will you be doing that again?</p>",
      "rawMarkdown": "Hi Kamil,\n\nThanks for the webinars. I registered for both but unfortunately unscheduled meetings got in the way and I could not attend. Do you have a link to recordings of them? If not when will you be doing that again?",
      "votes": null
    },
    {
      "id": "297357",
      "postDate": "03/16/2018 21:51:23",
      "content": "<p>Hi Krzysztof! </p>\n\n<p>I ran your notebook on neptune.ml. I just git cloned the book and followed the instructions to run it. \nIn the current notebook, i see you run 10 epochs. I got 0.397 with it. \nfor the 0.439 did you run more epochs or a different learning rate ? </p>\n\n<p>Thanks\nMehul</p>",
      "rawMarkdown": "Hi Krzysztof! \n\nI ran your notebook on neptune.ml. I just git cloned the book and followed the instructions to run it. \nIn the current notebook, i see you run 10 epochs. I got 0.397 with it. \nfor the 0.439 did you run more epochs or a different learning rate ? \n\nThanks\nMehul",
      "votes": null
    },
    {
      "id": "297858",
      "postDate": "03/18/2018 06:35:57",
      "content": "<p>Thanks for your reply. I'll try it soon</p>",
      "rawMarkdown": "Thanks for your reply. I'll try it soon",
      "votes": null
    },
    {
      "id": "298066",
      "postDate": "03/18/2018 17:22:00",
      "content": "<p>Thanks Kamil for the explanation.</p>",
      "rawMarkdown": "Thanks Kamil for the explanation.",
      "votes": null
    },
    {
      "id": "298244",
      "postDate": "03/19/2018 06:43:56",
      "content": "<p>Thanks Kamil. Could you tell me how to generate \"stage1_metadata.csv\" with keras？ I am not familiar with pytorch and my system is windows 10. </p>",
      "rawMarkdown": "Thanks Kamil. Could you tell me how to generate \"stage1_metadata.csv\" with keras？ I am not familiar with pytorch and my system is windows 10.",
      "votes": null
    },
    {
      "id": "298247",
      "postDate": "03/19/2018 06:53:22",
      "content": "<p>Hi, Any postprocessing for maskrcnn? I have used dilation but it hurts my perfomance. Thanks</p>",
      "rawMarkdown": "Hi, Any postprocessing for maskrcnn? I have used dilation but it hurts my perfomance. Thanks",
      "votes": null
    },
    {
      "id": "298268",
      "postDate": "03/19/2018 08:05:51",
      "content": "<p>Where is metadata....</p>",
      "rawMarkdown": "Where is metadata....",
      "votes": null
    },
    {
      "id": "298282",
      "postDate": "03/19/2018 09:03:39",
      "content": "<p>Hi, you need to install this package by <code>pip install neptune-cli</code></p>",
      "rawMarkdown": "Hi, you need to install this package by `pip install neptune-cli`",
      "votes": null
    },
    {
      "id": "298297",
      "postDate": "03/19/2018 09:42:01",
      "content": "<p>@HaoyuWang @zjuyang.\n* If you are running it in the cloud than <code>stage1_metadata.csv</code> is generated already and mounted in <code>/public/dsb_2018_data</code>\n* If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:</p>\n\n<p><code>neptune run -- prepare_metadata</code> or\n<code>python run main.py -- prepare_metadata</code> \njust make sure to change paths in the <code>neptune.yaml</code> configuration file.</p>",
      "rawMarkdown": "HaoyuWang @zjuyang.\n* If you are running it in the cloud than `stage1_metadata.csv` is generated already and mounted in `/public/dsb_2018_data`\n* If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:\n\n`neptune run -- prepare_metadata` or\n`python run main.py -- prepare_metadata` \njust make sure to change paths in the `neptune.yaml` configuration file.",
      "votes": null
    },
    {
      "id": "298303",
      "postDate": "03/19/2018 10:12:33",
      "content": "<p>Haven't worked on that yet. We tried using mask-rcnn to get both masks and contours (which would help with postprocessing) but with no success so far. </p>\n\n<p>I might go ahead and try to post-process the outputs from the mask-rcnn we have in the notebook. If anything good comes out of that I will post a kernel with all the postprocessing explained.</p>",
      "rawMarkdown": "Haven't worked on that yet. We tried using mask-rcnn to get both masks and contours (which would help with postprocessing) but with no success so far. \n\nI might go ahead and try to post-process the outputs from the mask-rcnn we have in the notebook. If anything good comes out of that I will post a kernel with all the postprocessing explained.",
      "votes": null
    },
    {
      "id": "298304",
      "postDate": "03/19/2018 10:13:07",
      "content": "<p>Thank you for joining us!</p>",
      "rawMarkdown": "Thank you for joining us!",
      "votes": null
    },
    {
      "id": "299061",
      "postDate": "03/20/2018 12:21:09",
      "content": "<p>Hi Mehul,</p>\n\n<p>I have run the code with the identical setup as it is in notebook, however training with high learning rate and small number of epochs can cause a high attitude in results. Maybe you can try running the code with smaller values of LR with larger number of epochs or tweak maximum detection instances parameter. Also changing of mean pixel values could be a reasonable step.</p>\n\n<p>Regs,\nKrzysztof</p>",
      "rawMarkdown": "Hi Mehul,\n\nI have run the code with the identical setup as it is in notebook, however training with high learning rate and small number of epochs can cause a high attitude in results. Maybe you can try running the code with smaller values of LR with larger number of epochs or tweak maximum detection instances parameter. Also changing of mean pixel values could be a reasonable step.\n\nRegs,\nKrzysztof",
      "votes": null
    },
    {
      "id": "299955",
      "postDate": "03/21/2018 06:35:09",
      "content": "<p>Hi Krysztof, </p>\n\n<p>I am still getting the errors I posted above when I tried to follow the steps today. I upgraded my Neptune CLI and it did not help. Once again I get the error when I use the following command:</p>\n\n<p>neptune data upload Mask_RCNN --recursive --project-key DSB</p>\n\n<p>Can you please help?</p>",
      "rawMarkdown": "Hi Krysztof, \n\nI am still getting the errors I posted above when I tried to follow the steps today. I upgraded my Neptune CLI and it did not help. Once again I get the error when I use the following command:\n\nneptune data upload Mask_RCNN --recursive --project-key DSB\n\nCan you please help?",
      "votes": null
    },
    {
      "id": "300110",
      "postDate": "03/21/2018 09:50:20",
      "content": "<p>Hi Krzysztof! Thanks for sharing this great notebook.\nHere are some code I don't understand. </p>\n\n<p>def preprocess(self, img):\n     gray = skimage.color.rgb2gray(img.astype('uint8'))\n            img = skimage.color.gray2rgb(gray)\n            img *= 255.\n            return img</p>\n\n<p>After you do <code>rgb2gray</code>, then you do <code>gray2rgb</code>. Why?Is this not the same as doing nothing?\n And also <code>img*=255</code>  what's that mean?\nThanks Zheng</p>",
      "rawMarkdown": "Hi Krzysztof! Thanks for sharing this great notebook.\nHere are some code I don't understand. \n\ndef preprocess(self, img):\n     gray = skimage.color.rgb2gray(img.astype('uint8'))\n            img = skimage.color.gray2rgb(gray)\n            img *= 255.\n            return img\n\nAfter you do `rgb2gray`, then you do `gray2rgb`. Why?Is this not the same as doing nothing?<pre> And also `img*=255`  what's that mean?\nThanks Zheng</pre>",
      "votes": null
    },
    {
      "id": "300133",
      "postDate": "03/21/2018 10:29:16",
      "content": "<p>The code converts an image to grayscale, than it converts grayscale image back to RGB, but after those steps an image has 3 channels with the same values. The reason of converting image back to 3 channel image is that the pre-trained weights on coco dataset are for 3 channel images. </p>\n\n<p>Kind regards,\nKrzysztof</p>",
      "rawMarkdown": "The code converts an image to grayscale, than it converts grayscale image back to RGB, but after those steps an image has 3 channels with the same values. The reason of converting image back to 3 channel image is that the pre-trained weights on coco dataset are for 3 channel images. \n\nKind regards,\nKrzysztof",
      "votes": null
    },
    {
      "id": "300140",
      "postDate": "03/21/2018 10:31:02",
      "content": "<p>Which OS are You using? The code has been tested under Linux</p>",
      "rawMarkdown": "Which OS are You using? The code has been tested under Linux",
      "votes": null
    },
    {
      "id": "300184",
      "postDate": "03/21/2018 11:37:17",
      "content": "<p>Thanks for your reply. I get it. My OS is Ubuntu 16.04.\nI still don't understand why you do this <code>img*=255</code>\nI have run this code separately on my jupyter and it shows</p>\n\n<pre><code>Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n</code></pre>\n\n<p>It seems somethings worng, but it actually works well on this whole project.\nThanks Zheng</p>",
      "rawMarkdown": "Thanks for your reply. I get it. My OS is Ubuntu 16.04.\nI still don't understand why you do this `img*=255`\nI have run this code separately on my jupyter and it shows\n\n    Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n\nIt seems somethings worng, but it actually works well on this whole project.\nThanks Zheng",
      "votes": null
    },
    {
      "id": "300301",
      "postDate": "03/21/2018 13:53:42",
      "content": "<p>Hi,</p>\n\n<p>Tomorrow (Thu, March 22nd) at 4:15pm CET we will host <a href=\"https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar\">webinar</a> about our code and approach in the <a href=\"https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge\">Toxic Comment Classification Challenge</a>.</p>\n\n<p><a href=\"https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar\">Feel free to join us</a> -&gt; we can also address our DSB work during the webinar ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi,\n\nTomorrow (Thu, March 22nd) at 4:15pm CET we will host [webinar](https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar) about our code and approach in the [Toxic Comment Classification Challenge](https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge).\n\n[Feel free to join us](https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar) -&gt; we can also address our DSB work during the webinar ;-)\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "300349",
      "postDate": "03/21/2018 14:48:20",
      "content": "<p>I multiply image by 255, cause colorspace conversion in skimage scales image to range [0., 1.] while matterport implementation of Mask RCNN expects pixel values to be in range [0, 255.] from which the values of mean pixel (defined in the config class) are subtracted. </p>\n\n<p>Kind regards,\nKrzysztof</p>",
      "rawMarkdown": "I multiply image by 255, cause colorspace conversion in skimage scales image to range [0., 1.] while matterport implementation of Mask RCNN expects pixel values to be in range [0, 255.] from which the values of mean pixel (defined in the config class) are subtracted. \n\nKind regards,\nKrzysztof",
      "votes": null
    },
    {
      "id": "300539",
      "postDate": "03/21/2018 17:37:26",
      "content": "<p>Hi @YaGana,</p>\n\n<p>Thank you! We will publish webinars, however we still need to decide about the best way to do it.</p>\n\n<p>Also we are going to make it regularly once a week. Next webinar is tomorrow, March 22nd at 4:15pm CET.</p>\n\n<p>Feel free to join us ;-)</p>",
      "rawMarkdown": "Hi @YaGana,\n\nThank you! We will publish webinars, however we still need to decide about the best way to do it.\n\nAlso we are going to make it regularly once a week. Next webinar is tomorrow, March 22nd at 4:15pm CET.\n\nFeel free to join us ;-)",
      "votes": null
    },
    {
      "id": "300543",
      "postDate": "03/21/2018 17:46:03",
      "content": "<p>Hi YaGana,</p>\n\n<p>My ideas that might help:</p>\n\n<ol>\n<li>make sure that you are on branch <code>mask_rcnn_notebook</code> (latest version)</li>\n<li>make sure that you are executing <code>neptune login</code> first. Then, from within repo <code>neptune data upload Mask_RCNN --recursive --project-key DSB</code></li>\n</ol>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi YaGana,\n\nMy ideas that might help:\n\n1. make sure that you are on branch `mask_rcnn_notebook` (latest version)\n2. make sure that you are executing `neptune login` first. Then, from within repo `neptune data upload Mask_RCNN --recursive --project-key DSB`\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "300547",
      "postDate": "03/21/2018 17:52:33",
      "content": "<p>Hey @zjuyang,</p>\n\n<ol>\n<li>Follow <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Installation\">Installation</a> instructions.</li>\n<li>Prepare <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L24\">config.yaml</a>:\n<ul><li>comment <em>Cloud Environment</em> block</li>\n<li>uncomment <em>Local Environment</em> block and put your local dirs</li></ul></li>\n<li>Do this: <code>neptune run main.py -- prepare_metadata</code></li>\n</ol>\n\n<p>For metadata you do not need keras. Note that we work on Ubuntu 16.04.</p>",
      "rawMarkdown": "Hey @zjuyang,\n\n1. Follow [Installation](https://github.com/neptune-ml/data-science-bowl-2018/wiki/Installation) instructions.\n2. Prepare [config.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L24):\n  * comment _Cloud Environment_ block\n  * uncomment _Local Environment_ block and put your local dirs\n3. Do this: `neptune run main.py -- prepare_metadata`\n\nFor metadata you do not need keras. Note that we work on Ubuntu 16.04.",
      "votes": null
    },
    {
      "id": "301137",
      "postDate": "03/22/2018 11:12:24",
      "content": "<p>I'm also a bit stuck. I get error: \"public/dsb_2018_data/stage1_metadata.csv' does not exist\"</p>",
      "rawMarkdown": "I'm also a bit stuck. I get error: \"public/dsb_2018_data/stage1_metadata.csv' does not exist\"",
      "votes": null
    },
    {
      "id": "301210",
      "postDate": "03/22/2018 13:32:45",
      "content": "<p>@Marios </p>\n\n<p>If you are running it in the cloud than stage1_metadata.csv is generated already and mounted in <code>/public/dsb_2018_data</code> </p>\n\n<p>If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:</p>\n\n<p><code>neptune run -- prepare_metadata</code> or <code>python run main.py -- prepare_metadata</code> just make sure to change paths in the <code>neptune.yaml</code> configuration file.</p>",
      "rawMarkdown": "Marios \n\nIf you are running it in the cloud than stage1_metadata.csv is generated already and mounted in `/public/dsb_2018_data` \n\n If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:\n\n`neptune run -- prepare_metadata` or `python run main.py -- prepare_metadata` just make sure to change paths in the `neptune.yaml` configuration file.",
      "votes": null
    },
    {
      "id": "301267",
      "postDate": "03/22/2018 14:53:19",
      "content": "<p>every neptune command I execute on the file returns the following error: Project with key 'DSB' not found.</p>",
      "rawMarkdown": "every neptune command I execute on the file returns the following error: Project with key 'DSB' not found.",
      "votes": null
    },
    {
      "id": "301405",
      "postDate": "03/22/2018 17:50:46",
      "content": "<p>Hi @Marios,</p>\n\n<p>First, log in to the <a href=\"https://neptune.ml/\">neptune.ml</a> and create project with name: <code>Data Science Bowl 2018</code> and project key <code>DSB</code>. Then, you will be ready to go ;-)</p>",
      "rawMarkdown": "Hi @Marios,\n\nFirst, log in to the [neptune.ml](https://neptune.ml/) and create project with name: `Data Science Bowl 2018` and project key `DSB`. Then, you will be ready to go ;-)",
      "votes": null
    },
    {
      "id": "301487",
      "postDate": "03/22/2018 20:16:53",
      "content": "<p>Oh I just missed it ...</p>\n\n<p>A recorded version would be great. I would love to watch it !</p>",
      "rawMarkdown": "Oh I just missed it ...\n\nA recorded version would be great. I would love to watch it !",
      "votes": null
    },
    {
      "id": "302664",
      "postDate": "03/24/2018 14:46:12",
      "content": "<p>Still struggling to run locally. When I <code>run neptune run -- prepare_metadata</code> I get an error : FileNotFoundError: [Errno 2] No such file or directory: '/public/dsb_2018_data/stage1_train'</p>",
      "rawMarkdown": "Still struggling to run locally. When I `run neptune run -- prepare_metadata` I get an error : FileNotFoundError: [Errno 2] No such file or directory: '/public/dsb_2018_data/stage1_train'",
      "votes": null
    },
    {
      "id": "303025",
      "postDate": "03/25/2018 09:37:12",
      "content": "<p>Can someone provide link to download stage1_metadata.csv file?</p>",
      "rawMarkdown": "Can someone provide link to download stage1_metadata.csv file?",
      "votes": null
    },
    {
      "id": "303083",
      "postDate": "03/25/2018 13:17:02",
      "content": "<p>Thanks for you rely.  That helps me a lot. After I have read the main.ipynb code, I found that there isn't very different from another code I use which is <a href=\"https://github.com/killthekitten/kaggle-ds-bowl-2018-baseline\">https://github.com/killthekitten/kaggle-ds-bowl-2018-baseline</a> . I modified the parameters of my code according to the parameters in main.ipynb , but I couldn't got the same result. It's lower than 0.4. But in your result, you just got 0.439 LB. How do you do that? In addition to your main.ipynb, are there any important changes that have increased your score?\nThanks Zheng</p>",
      "rawMarkdown": "Thanks for you rely.  That helps me a lot. After I have read the main.ipynb code, I found that there isn't very different from another code I use which is https://github.com/killthekitten/kaggle-ds-bowl-2018-baseline . I modified the parameters of my code according to the parameters in main.ipynb , but I couldn't got the same result. It's lower than 0.4. But in your result, you just got 0.439 LB. How do you do that? In addition to your main.ipynb, are there any important changes that have increased your score?\nThanks Zheng",
      "votes": null
    },
    {
      "id": "303110",
      "postDate": "03/25/2018 14:30:33",
      "content": "<p>@bintan_FDU, thanks for sharing. Your LB shows 0.431, I wonder where 0.440 comes from?</p>",
      "rawMarkdown": "bintan_FDU, thanks for sharing. Your LB shows 0.431, I wonder where 0.440 comes from?",
      "votes": null
    },
    {
      "id": "303962",
      "postDate": "03/26/2018 20:19:20",
      "content": "<p>stage1_metadata.csv contain paths to your train and test images. Hence it should be generated locally for your machine. It would be different from machine to machine.\nYou could easily generate it by typing :\n <code>python run main.py -- prepare_metadata</code>\nfrom your working directory</p>",
      "rawMarkdown": "stage1_metadata.csv contain paths to your train and test images. Hence it should be generated locally for your machine. It would be different from machine to machine.\nYou could easily generate it by typing :\n `python run main.py -- prepare_metadata`\nfrom your working directory",
      "votes": null
    },
    {
      "id": "304147",
      "postDate": "03/27/2018 04:44:17",
      "content": "<p>Hey Chandan, Burhan,</p>\n\n<p>@Burhan thanks for your answer! Let me add that in order to generate them locally, you need to set paths in the configuration file: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25\">neptune.yaml</a>. Make sure that you commented <code>Cloud Environment</code> block and uncommented <code>Local Environment</code> block, where you put your directories. Then simply run <code>neptune run main.py -- prepare_metadata</code>.</p>\n\n<p>Also, if you need masks, you can generate them as well: <code>neptune run main.py -- prepare_masks</code></p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey Chandan, Burhan,\n\n@Burhan thanks for your answer! Let me add that in order to generate them locally, you need to set paths in the configuration file: [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25). Make sure that you commented `Cloud Environment` block and uncommented `Local Environment` block, where you put your directories. Then simply run `neptune run main.py -- prepare_metadata`.\n\nAlso, if you need masks, you can generate them as well: `neptune run main.py -- prepare_masks`\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "304153",
      "postDate": "03/27/2018 05:10:07",
      "content": "<p>Hi Zheng,</p>\n\n<p>Everything we have regarding <em>mask-RCNN</em> is on our repository, branch <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook\">mask_rcnn_notebook</a>. I didn't take a closer look at the Nikolay's code yet. Maybe try to run our notebook with default parameters and more epochs (we set it to 10 for presentation purposes -&gt; try more). Make sure that you have the latest version of this branch (latest commit on Mar 21st).</p>\n\n<p>Note that final result may rely on train-validation split and experiment configuration: check <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/mask_rcnn_notebook/main.ipynb\">DsbConfig class</a> (8th code cell).</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi Zheng,\n\nEverything we have regarding _mask-RCNN_ is on our repository, branch [mask_rcnn_notebook](https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook). I didn't take a closer look at the Nikolay's code yet. Maybe try to run our notebook with default parameters and more epochs (we set it to 10 for presentation purposes -&gt; try more). Make sure that you have the latest version of this branch (latest commit on Mar 21st).\n\nNote that final result may rely on train-validation split and experiment configuration: check [DsbConfig class](https://github.com/neptune-ml/data-science-bowl-2018/blob/mask_rcnn_notebook/main.ipynb) (8th code cell).\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "304157",
      "postDate": "03/27/2018 05:27:13",
      "content": "<p>Hey @Marios,</p>\n\n<p>This error is caused by incorrect directories. When running your code locally, make sure that you put correct parameters in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25\">neptune.yaml</a>. For local execution:</p>\n\n<ol>\n<li>comment entire <code>Cloud Environment</code> block</li>\n<li>uncomment <code>Local Environment</code> block and put your directories there</li>\n<li>run: <code>neptune run main.py -- prepare_metadata</code> and <code>neptune run main.py -- prepare_masks</code> (if you need).</li>\n</ol>\n\n<p>Make sure that you have the latest version of the code.</p>\n\n<p>If you want to run in the cloud, do not worry about <em>metadata</em> or masks. They are already in the cloud ;)</p>\n\n<p>Cheers,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey @Marios,\n\nThis error is caused by incorrect directories. When running your code locally, make sure that you put correct parameters in the [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25). For local execution:\n\n1. comment entire `Cloud Environment` block\n2. uncomment `Local Environment` block and put your directories there\n3. run: `neptune run main.py -- prepare_metadata` and `neptune run main.py -- prepare_masks` (if you need).\n\nMake sure that you have the latest version of the code.\n\n\nIf you want to run in the cloud, do not worry about _metadata_ or masks. They are already in the cloud ;)\n\nCheers,\n\nKamil",
      "votes": null
    },
    {
      "id": "304159",
      "postDate": "03/27/2018 05:35:37",
      "content": "<p>Hi toshif,</p>\n\n<p>We will host another webinar on April 4th, about the latest advances in our solution. Feel free to join! ;-) We can also answer your questions during the webinar.</p>\n\n<p>Note, that we think about the best way to publish them. I will let you know as soon as they become available.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi toshif,\n\nWe will host another webinar on April 4th, about the latest advances in our solution. Feel free to join! ;-) We can also answer your questions during the webinar.\n\nNote, that we think about the best way to publish them. I will let you know as soon as they become available.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "305428",
      "postDate": "03/28/2018 21:12:03",
      "content": "<p>@ Kamil</p>\n\n<p>Do we have to use Neptune for your open solution? Can I run on a different solution? </p>",
      "rawMarkdown": "Kamil\n\nDo we have to use Neptune for your open solution? Can I run on a different solution?",
      "votes": null
    },
    {
      "id": "305441",
      "postDate": "03/28/2018 21:51:40",
      "content": "<p>Hi @William,</p>\n\n<p>Of course not. You can run everything as a regular Python script, for example: <code>python main.py -- train_evaluate_predict_pipeline --pipeline_name unet_multitask</code>.</p>\n\n<p>Cheers,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi @William,\n\nOf course not. You can run everything as a regular Python script, for example: `python main.py -- train_evaluate_predict_pipeline --pipeline_name unet_multitask`.\n\nCheers,\n\nKamil",
      "votes": null
    },
    {
      "id": "305714",
      "postDate": "03/29/2018 10:00:02",
      "content": "<p>hi,kamil.\nOn branch mask_rcnn_notebook,data augmentation is not be used.Is it right?</p>",
      "rawMarkdown": "hi,kamil.\nOn branch mask_rcnn_notebook,data augmentation is not be used.Is it right?",
      "votes": null
    },
    {
      "id": "305736",
      "postDate": "03/29/2018 10:29:28",
      "content": "<p>Hi,</p>\n\n<p>Correct! We just prepare images to be grayscale and each pixel takes values from 0 to 255.</p>\n\n<p>Cheers,</p>\n\n<p>KK</p>",
      "rawMarkdown": "Hi,\n\nCorrect! We just prepare images to be grayscale and each pixel takes values from 0 to 255.\n\nCheers,\n\nKK",
      "votes": null
    },
    {
      "id": "305744",
      "postDate": "03/29/2018 10:35:18",
      "content": "<p>Thank you.\nMaybe data augmentation can improve performance.I will try it.</p>",
      "rawMarkdown": "Thank you.\nMaybe data augmentation can improve performance.I will try it.",
      "votes": null
    },
    {
      "id": "305745",
      "postDate": "03/29/2018 10:36:13",
      "content": "<p>Nice! Let us know about the results :-)</p>",
      "rawMarkdown": "Nice! Let us know about the results :-)",
      "votes": null
    },
    {
      "id": "310745",
      "postDate": "04/08/2018 13:22:43",
      "content": "<p>Hi Kamil,</p>\n\n<p>I finally got round to running your code on Neptune this week. The main.ipynb was running for 4 days and then crashed today. Can you help?</p>",
      "rawMarkdown": "Hi Kamil,\n\nI finally got round to running your code on Neptune this week. The main.ipynb was running for 4 days and then crashed today. Can you help?",
      "votes": null
    },
    {
      "id": "310759",
      "postDate": "04/08/2018 14:07:18",
      "content": "<p>Hi,YaGana\nDo you mean that you have been running the mask_rcnn_notebook version code for more than 96 hours on the Neptune?I was going to run this on the Neptune,but I am not sure how long will it costs.</p>",
      "rawMarkdown": "Hi,YaGana\nDo you mean that you have been running the mask_rcnn_notebook version code for more than 96 hours on the Neptune?I was going to run this on the Neptune,but I am not sure how long will it costs.",
      "votes": null
    },
    {
      "id": "310826",
      "postDate": "04/08/2018 18:23:19",
      "content": "<p>Yes @Axida, it was running for 4 days and have done 7 epochs up to that time before the notebook crashed. I did not do any modification to Kamil's code. So I have no idea why that happened hence my post above. And yes it has cost me money.</p>",
      "rawMarkdown": "Yes @Axida, it was running for 4 days and have done 7 epochs up to that time before the notebook crashed. I did not do any modification to Kamil's code. So I have no idea why that happened hence my post above. And yes it has cost me money.",
      "votes": null
    },
    {
      "id": "310902",
      "postDate": "04/09/2018 02:15:52",
      "content": "<p>Thank you so much for your reply.@YaGana\nI would cost lots of money without your timely reply.Maybe Kamil could help you.Have you tried other Kamil's code?I see there are many ways and pipelines on the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/\">https://github.com/neptune-ml/data-science-bowl-2018/</a> .</p>",
      "rawMarkdown": "Thank you so much for your reply.@YaGana\nI would cost lots of money without your timely reply.Maybe Kamil could help you.Have you tried other Kamil's code?I see there are many ways and pipelines on the https://github.com/neptune-ml/data-science-bowl-2018/ .",
      "votes": null
    },
    {
      "id": "310920",
      "postDate": "04/09/2018 03:13:38",
      "content": "<p>You are welcome @Axida. No, I will not be trying out any of Kamil's codes. Mine performs better anyway plus I only tried it to see how good Neptune is compared to the cloud service I normally use and it failed the test.</p>",
      "rawMarkdown": "You are welcome @Axida. No, I will not be trying out any of Kamil's codes. Mine performs better anyway plus I only tried it to see how good Neptune is compared to the cloud service I normally use and it failed the test.",
      "votes": null
    },
    {
      "id": "310940",
      "postDate": "04/09/2018 04:33:00",
      "content": "<p>I see.@YaGana I am very new to kaggle,and I find it seems a little difficult to run codes on a CPU.Could you please tell me which cloud service are you using?i will appreciate it very much.</p>",
      "rawMarkdown": "I see.@YaGana I am very new to kaggle,and I find it seems a little difficult to run codes on a CPU.Could you please tell me which cloud service are you using?i will appreciate it very much.",
      "votes": null
    },
    {
      "id": "311612",
      "postDate": "04/10/2018 11:18:31",
      "content": "<p>Hey @YaGana and @Axida,</p>\n\n<ol>\n<li>I assume that you work on <code>mask_rcnn_notebook</code> branch. Is that correct?</li>\n<li>Can you provide entire error message, so that I will have some input to read?</li>\n<li>update <code>neptune-cli</code>, by running this in your virtualenv (if you use it): <code>pip3 install neptune-cli -U</code></li>\n</ol>\n\n<p>@Axida this competition is \"images competition\" so using GPUs to train your models is highly recommended. If you do not own any GPUs, one solution is to look at cloud providers and pick one that offers some.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey @YaGana and @Axida,\n\n1. I assume that you work on `mask_rcnn_notebook` branch. Is that correct?\n2. Can you provide entire error message, so that I will have some input to read?\n3. update `neptune-cli`, by running this in your virtualenv (if you use it): `pip3 install neptune-cli -U`\n\n@Axida this competition is \"images competition\" so using GPUs to train your models is highly recommended. If you do not own any GPUs, one solution is to look at cloud providers and pick one that offers some.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "311614",
      "postDate": "04/10/2018 11:21:09",
      "content": "<p>Hey @Shujian.M.Coder</p>\n\n<p>Our current LB score comes from running <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/mask_rcnn_notebook\">mask_rcnn_notebook</a> and playing with it ;-)</p>",
      "rawMarkdown": "Hey @Shujian.M.Coder\n\nOur current LB score comes from running [mask_rcnn_notebook](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/mask_rcnn_notebook) and playing with it ;-)",
      "votes": null
    },
    {
      "id": "311649",
      "postDate": "04/10/2018 12:31:53",
      "content": "<p>Hi Kamil, </p>\n\n<p>Yes 1 is correct and I have the latest neptune-cli as well as the code.</p>\n\n<p>The message was that the notebook crashed and cannot connect. I did not run it locally, I sent it to the Neptune cloud.</p>",
      "rawMarkdown": "Hi Kamil, \n\nYes 1 is correct and I have the latest neptune-cli as well as the code.\n\nThe message was that the notebook crashed and cannot connect. I did not run it locally, I sent it to the Neptune cloud.",
      "votes": null
    },
    {
      "id": "311673",
      "postDate": "04/10/2018 13:34:58",
      "content": "<p>Hey YaGana,</p>\n\n<p>Thanks for quick answer. I will try to take a closer look at it :)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey YaGana,\n\nThanks for quick answer. I will try to take a closer look at it :)\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "312255",
      "postDate": "04/11/2018 13:19:24",
      "content": "<p>Hi guys,</p>\n\n<p>As DSB'18 approaches <em>stage 2</em>, everybody is super-busy with their final model tweaking. Please keep in mind that the deadline for uploading the model is 11:59 PM UTC ;-)</p>\n\n<p>We are about to upload our final solution that is currently available on <code>dev-solution-5</code> branch on our <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/dev-solution-5\">repo</a>. We are still playing with parameters, however the codebase is pretty much fixed.</p>\n\n<p>In short we train two U-Nets: one for estimating nuclei size and second for segmentation purposes. We train on image's patches, use lots of post-processing tricks and some basic augmentations.</p>\n\n<p>Best of luck with your model!</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi guys,\n\nAs DSB'18 approaches _stage 2_, everybody is super-busy with their final model tweaking. Please keep in mind that the deadline for uploading the model is 11:59 PM UTC ;-)\n\nWe are about to upload our final solution that is currently available on `dev-solution-5` branch on our [repo](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/dev-solution-5). We are still playing with parameters, however the codebase is pretty much fixed.\n\nIn short we train two U-Nets: one for estimating nuclei size and second for segmentation purposes. We train on image's patches, use lots of post-processing tricks and some basic augmentations.\n\nBest of luck with your model!\n\nKamil",
      "votes": null
    },
    {
      "id": "312313",
      "postDate": "04/11/2018 14:53:53",
      "content": "<p>Hey, I forgot to mention that tomorrow, April 12th (6:30pm CEST = 9:30am PDT = 12:30pm EDT) together with Kuba we will be hosting a <a href=\"https://minerva.ml/\">webinar</a>. We are going to wrap up our participation, show some lessons learned and plans for the future.</p>\n\n<p>And of course answer all questions :-)</p>\n\n<p>Please join if you wish.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey, I forgot to mention that tomorrow, April 12th (6:30pm CEST = 9:30am PDT = 12:30pm EDT) together with Kuba we will be hosting a [webinar](https://minerva.ml). We are going to wrap up our participation, show some lessons learned and plans for the future.\n\nAnd of course answer all questions :-)\n\nPlease join if you wish.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "312487",
      "postDate": "04/11/2018 20:45:22",
      "content": "<p>@kamil look forward to the sharing session. I've a quick question: how do you determine batch size? And how best to optimize it for the GPU's memory? Some quick hint would be great. currently i see it's at around 6GB at training. What should I tweak to increase/decrease that and what's the ratio?</p>\n\n<p>PS: where's the link to join tomorrow's webinar?</p>",
      "rawMarkdown": "kamil look forward to the sharing session. I've a quick question: how do you determine batch size? And how best to optimize it for the GPU's memory? Some quick hint would be great. currently i see it's at around 6GB at training. What should I tweak to increase/decrease that and what's the ratio?\n\nPS: where's the link to join tomorrow's webinar?",
      "votes": null
    },
    {
      "id": "312505",
      "postDate": "04/11/2018 21:42:33",
      "content": "<p>Hi @Andrew,</p>\n\n<p>In short we try to fit as much as possible into GPU. We determine it by trial and error. If your batch does not fit into GPU you will get CUDA memory error. If your batch is too small you can observe that only small fraction of your GPU's memory is used.</p>\n\n<p>In general try to fit as much as possible, because larger batches leads to smaller variances -&gt; more stable training.</p>\n\n<p>In our code play with <code>batch_size_train</code> and <code>batch_size_inference</code> <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L65\">neptune.yaml:L64</a>. Another thing is to manipulate images size that are collected into batch: <code>image_h</code> and <code>image_w</code> <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L50\">neptune.yaml:L50</a>.</p>\n\n<p>Link is <a href=\"https://minerva.ml/\">https://minerva.ml</a>, just register and you will receive e-mail with details.</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
      "rawMarkdown": "Hi @Andrew,\n\nIn short we try to fit as much as possible into GPU. We determine it by trial and error. If your batch does not fit into GPU you will get CUDA memory error. If your batch is too small you can observe that only small fraction of your GPU's memory is used.\n\nIn general try to fit as much as possible, because larger batches leads to smaller variances -&gt; more stable training.\n\nIn our code play with `batch_size_train` and `batch_size_inference` [neptune.yaml:L64](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L65). Another thing is to manipulate images size that are collected into batch: `image_h` and `image_w` [neptune.yaml:L50](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L50).\n\nLink is https://minerva.ml, just register and you will receive e-mail with details.\n\nBest,\n\nKK",
      "votes": null
    },
    {
      "id": "312513",
      "postDate": "04/11/2018 22:04:59",
      "content": "<p>Thanks @kamil. I'll give it a try :) </p>",
      "rawMarkdown": "Thanks @kamil. I'll give it a try :)",
      "votes": null
    },
    {
      "id": "313560",
      "postDate": "04/13/2018 13:32:43",
      "content": "<p>Hi kamil\nDo you have the directory of stage 2 test image on neptune ml cloud environment?</p>",
      "rawMarkdown": "Hi kamil\nDo you have the directory of stage 2 test image on neptune ml cloud environment?",
      "votes": null
    },
    {
      "id": "313561",
      "postDate": "04/13/2018 13:37:33",
      "content": "<p>Thank you @kamil, Jakub Czakon and the deepsense.ai team, for open sourcing their code and providing support. It is a very great effort. I learned a lot from reading your code. Thanks a lot!</p>",
      "rawMarkdown": "Thank you @kamil, Jakub Czakon and the deepsense.ai team, for open sourcing their code and providing support. It is a very great effort. I learned a lot from reading your code. Thanks a lot!",
      "votes": null
    },
    {
      "id": "313615",
      "postDate": "04/13/2018 15:16:18",
      "content": "<p>Hey @Heng CherKeng,</p>\n\n<p>All created with &lt;3 with our friends from <a href=\"https://deepsense.ai/\">deepsense.ai</a>.</p>\n\n<p>You did a huge amount of work from both <em>community</em> and <em>leaderboard</em> perspectives! I look forward to be a part of another competition that you participate in :-)</p>\n\n<p>All the best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey @Heng CherKeng,\n\nAll created with &lt;3 with our friends from [deepsense.ai](https://deepsense.ai).\n\nYou did a huge amount of work from both _community_ and _leaderboard_ perspectives! I look forward to be a part of another competition that you participate in :-)\n\nAll the best,\n\nKamil",
      "votes": null
    },
    {
      "id": "314099",
      "postDate": "04/14/2018 15:54:13",
      "content": "<p>Hi@kamil\nCould we still use your open solution in the stage 2 by using neptune.ml ?If so,How should I do then?\nShould I change the neptune.yaml code for doing that?\nThanks for your time.</p>",
      "rawMarkdown": "Hi@kamil\nCould we still use your open solution in the stage 2 by using neptune.ml ?If so,How should I do then?\nShould I change the neptune.yaml code for doing that?\nThanks for your time.",
      "votes": null
    },
    {
      "id": "314223",
      "postDate": "04/14/2018 22:40:44",
      "content": "<p>Hi @Ifwei,</p>\n\n<p>Yes, we have uploaded <code>stage2_test_final</code> to the <code>/public/dsb_2018_data</code> directory on neptune cloud. Original <code>stage2_test_final.zip</code> is there. Unzipped images are under the <code>/public/dsb_2018_data/stage2_test</code> directory.</p>\n\n<p>Also, you can find this directory useful: <code>/public/dsb_2018_data/external_data</code> with three external datasets:</p>\n\n<ol>\n<li><a href=\"https://data.broadinstitute.org/bbbc/BBBC006/\">https://data.broadinstitute.org/bbbc/BBBC006/</a></li>\n<li><a href=\"https://www.kaggle.com/voglinio/external-h-e-data-with-mask-annotations/data\">https://www.kaggle.com/voglinio/external-h-e-data-with-mask-annotations/data</a></li>\n<li>our additional dataset, in which we have removed nuclei from stage1_train data -&gt; this is to have more images with artifacts.</li>\n</ol>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi @Ifwei,\n\nYes, we have uploaded `stage2_test_final` to the `/public/dsb_2018_data` directory on neptune cloud. Original `stage2_test_final.zip` is there. Unzipped images are under the `/public/dsb_2018_data/stage2_test` directory.\n\nAlso, you can find this directory useful: `/public/dsb_2018_data/external_data` with three external datasets:\n\n1. https://data.broadinstitute.org/bbbc/BBBC006/\n2. https://www.kaggle.com/voglinio/external-h-e-data-with-mask-annotations/data\n3. our additional dataset, in which we have removed nuclei from stage1_train data -&gt; this is to have more images with artifacts.\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "314230",
      "postDate": "04/14/2018 23:03:16",
      "content": "<p>Hi @Axida,</p>\n\n<p>Yes, you can use our pipeline for stage 2. Our final solution is on the <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution\">final-solution</a> branch. You can run everything from start to finish, by running single script <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/final-solution/run_end_to_end.sh\">run_end_to_end.sh</a>. Just make sure that you have modified <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution/configs_end_to_end\">configs-end-to-end</a> accordingly, I mean lines 25 to 40 (directories) and line 10 (requirements file).</p>\n\n<p>Let me know if you have any additional questions :)</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
      "rawMarkdown": "Hi @Axida,\n\nYes, you can use our pipeline for stage 2. Our final solution is on the [final-solution](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution) branch. You can run everything from start to finish, by running single script [run_end_to_end.sh](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/final-solution/run_end_to_end.sh). Just make sure that you have modified [configs-end-to-end](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution/configs_end_to_end) accordingly, I mean lines 25 to 40 (directories) and line 10 (requirements file).\n\nLet me know if you have any additional questions :)\n\nBest,\n\nKK",
      "votes": null
    },
    {
      "id": "314835",
      "postDate": "04/16/2018 10:48:02",
      "content": "<p>Hi@kamil \nThanks for your reply.I was trying to run your code on the Neptune,but I encounter this problem,and do not know how to deal with that.Could you give me a hand?</p>\n\n<p>37.082013   Traceback (most recent call last):\n37.082164   File \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 103, in execute\n37.082299   execfile(job_filepath, job_globals)\n37.08243    File \"/usr/local/lib/python3.6/dist-packages/past/builtins/misc.py\", line 82, in execfile\n37.082561   exec_(code, myglobals, mylocals)\n37.082689   File \"main.py\", line 298, in \n37.082853   action()\n37.082997   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 722, in <strong>call</strong>\n37.083128   return self.main(*args, **kwargs)\n37.083256   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 697, in main\n37.083385   rv = self.invoke(ctx)\n37.083513   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 1066, in invoke\n37.083655   return _process_result(sub_ctx.command.invoke(sub_ctx))\n37.083785   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 895, in invoke\n37.083912   return ctx.invoke(self.callback, **ctx.params)\n37.084049   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 535, in invoke\n37.084179   return callback(*args, **kwargs)\n37.084309   File \"main.py\", line 266, in train_evaluate_predict_pipeline\n37.084438   _train_pipeline(pipeline_name, validation_size, dev_mode, simple_cv)\n37.084583   File \"main.py\", line 109, in _train_pipeline\n37.084714   meta = pd.read_csv(os.path.join(params.meta_dir, 'stage{}_metadata.csv'.format(params.competition_stage)))\n37.084842   AttributeError: 'ContextParams' object has no attribute 'competition_stage'\n37.084995 <br>\n37.085141   During handling of the above exception, another exception occurred:\n37.085281 <br>\n37.085415   Traceback (most recent call last):\n37.085555   File \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 109, in \n37.085686   execute()\n37.085831   File \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 105, in execute\n37.085968   raise ExperimentExecutionException(\"Exception during experiment execution\", ex)\n37.08611    deepsense.neptune.exceptions.ExperimentExecutionException: ('Exception during experiment execution', AttributeError(\"'ContextParams' object has no attribute 'competition_stage'\",))</p>",
      "rawMarkdown": "Hi@kamil \nThanks for your reply.I was trying to run your code on the Neptune,but I encounter this problem,and do not know how to deal with that.Could you give me a hand?\n\n37.082013\tTraceback (most recent call last):\n37.082164\tFile \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 103, in execute\n37.082299\texecfile(job_filepath, job_globals)\n37.08243\tFile \"/usr/local/lib/python3.6/dist-packages/past/builtins/misc.py\", line 82, in execfile\n37.082561\texec_(code, myglobals, mylocals)\n37.082689\tFile \"main.py\", line 298, in",
      "votes": null
    },
    {
      "id": "314969",
      "postDate": "04/16/2018 15:24:58",
      "content": "<p>Thank you so much @Heng CherKeng ,it means a lot coming from you. </p>\n\n<p>Best of luck today!</p>",
      "rawMarkdown": "Thank you so much @Heng CherKeng ,it means a lot coming from you. \n\nBest of luck today!",
      "votes": null
    },
    {
      "id": "315004",
      "postDate": "04/16/2018 16:16:23",
      "content": "<p>Hi @Axida,</p>\n\n<p>If you work with code from the <code>final-solution</code> branch please work with configs from the <code>configs-end-to-end</code> directory, since they have competition stage added as parameter. If this is not your case, please provide more detailed info, such as: which branch did you checkout? What is you run command?</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hi @Axida,\n\nIf you work with code from the `final-solution` branch please work with configs from the `configs-end-to-end` directory, since they have competition stage added as parameter. If this is not your case, please provide more detailed info, such as: which branch did you checkout? What is you run command?\n\nBest,\n\nKamil",
      "votes": null
    },
    {
      "id": "315063",
      "postDate": "04/16/2018 17:52:13",
      "content": "<p>Hi@kamil</p>\n\n<p>I chose the final-solution branch,and modified configs-end-to-end as you said.I mean,change comment in lines 25 to 40 and line 10.But I sill couldn't deal with that.I started CMD in the open-solution-data-science-bowl-2018-final-solution folder and run the command $ neptune login\n$ neptune send main.py --worker gcp-gpu-large --environment pytorch-0.2.0-gpu-py3 -- train_evaluate_predict_pipeline --pipeline_name unet_multitask   Am I right?\nThere are limited time for me to finish training,I might be late for the deadline.But I have to say thanks to you,I've learned a lot from what you have done.Thanks!\nAll the best.</p>",
      "rawMarkdown": "Hi@kamil\n\nI chose the final-solution branch,and modified configs-end-to-end as you said.I mean,change comment in lines 25 to 40 and line 10.But I sill couldn't deal with that.I started CMD in the open-solution-data-science-bowl-2018-final-solution folder and run the command $ neptune login\n$ neptune send main.py --worker gcp-gpu-large --environment pytorch-0.2.0-gpu-py3 -- train_evaluate_predict_pipeline --pipeline_name unet_multitask   Am I right?\nThere are limited time for me to finish training,I might be late for the deadline.But I have to say thanks to you,I've learned a lot from what you have done.Thanks!\nAll the best.",
      "votes": null
    },
    {
      "id": "316131",
      "postDate": "04/18/2018 08:27:53",
      "content": "<p>Thank you Jakub, Kamil, Krzysztof, Andrzej  Good job pzd</p>",
      "rawMarkdown": "Thank you Jakub, Kamil, Krzysztof, Andrzej  Good job pzd",
      "votes": null
    },
    {
      "id": "316205",
      "postDate": "04/18/2018 12:23:08",
      "content": "<p>Thanks Andrzej, we are going to participate in more competitions and deliver more interesting stuff :)</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
      "rawMarkdown": "Thanks Andrzej, we are going to participate in more competitions and deliver more interesting stuff :)\n\nBest,\n\nKK",
      "votes": null
    },
    {
      "id": "316236",
      "postDate": "04/18/2018 14:08:43",
      "content": "<p>Although I have posted it in the congratulations to the top5 thread , I want to say it here.</p>\n\n<p>Jakub, Kamil, Krzysztof, and  Andrzej thank you very much for sharing your various solutions. I have learnt a lot from them.</p>\n\n<p>@Axida, sorry I did not see your question earlier. I use Floydhub as my cloud service and google colab for experimentation.</p>",
      "rawMarkdown": "Although I have posted it in the congratulations to the top5 thread , I want to say it here.\n\nJakub, Kamil, Krzysztof, and  Andrzej thank you very much for sharing your various solutions. I have learnt a lot from them.\n\n@Axida, sorry I did not see your question earlier. I use Floydhub as my cloud service and google colab for experimentation.",
      "votes": null
    },
    {
      "id": "320805",
      "postDate": "04/29/2018 22:41:09",
      "content": "<p>Hey @YaGana,</p>\n\n<p>Thank you for your nice comments here! We are looking forward to meet you in future competitions here on Kaggle :)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "rawMarkdown": "Hey @YaGana,\n\nThank you for your nice comments here! We are looking forward to meet you in future competitions here on Kaggle :)\n\nBest,\n\nKamil",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 269459,
      "author_name": "alluxia",
      "author_url": "",
      "post_date": "01/16/2018 21:31:19",
      "content": "<p>Thanks for the idea of open journal. I definitely love to subscribe to learn!</p>",
      "votes": null,
      "replies": [
        {
          "id": 269461,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/16/2018 21:41:09",
          "content": "<p>Hi xiao,</p>\n\n<p>Thanks! Stay tuned ;-)</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 269467,
      "author_name": "radek1",
      "author_url": "",
      "post_date": "01/16/2018 22:04:40",
      "content": "<p>Hey Kamil!</p>\n\n<p>This sounds really great - looking forward to the initial version of the notebook! Would you be so kind please and share which deep learning framework you are planning on using for this?</p>",
      "votes": null,
      "replies": [
        {
          "id": 269837,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/17/2018 11:30:09",
          "content": "<p>Hi Radek,</p>\n\n<p>We are going to use PyTorch (latest) with Python 3.5. Besides this, we will use standard data science packages (all will be listed in the requirements file).</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 269842,
          "author_name": "radek1",
          "author_url": "",
          "post_date": "01/17/2018 11:35:40",
          "content": "<p>Ah this is terrific :) PyTorch is what I want to focus predominantly on myself as well, though wouldn't mind if you said keras :) </p>\n\n<p>Either way, this is shaping up really great. Thank you for your reply and looking forward to the notebook! </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 269845,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/17/2018 11:43:57",
          "content": "<p>Just wanted to let you know that this will be entire python-based project, not only notebook. They are good for exploration / visualization purposes, however, for training neural nets, making predictions, ensembling and so on, we prefer not to do it in notebooks.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 269908,
          "author_name": "taka152",
          "author_url": "",
          "post_date": "01/17/2018 14:09:58",
          "content": "<p>Looking forward to future solutions. BTW, Is it consideration of efficiency to train with a Python-based project rather than a notebook?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 270000,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/17/2018 16:32:42",
          "content": "<p>Hi Taka,\nI think that Notebooks are great for exploration, visualization and rapid experimentation. You may want to use notebooks to quickly test various approaches or convince yourself about some idea. It is tool for the interactive work.\nWhen you want to run series of (controlled) experiments, it is usually better to have Python-based implementation. This is especially true at the later stage of the competition, when your solution is quite complex.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 270006,
          "author_name": "radek1",
          "author_url": "",
          "post_date": "01/17/2018 16:41:29",
          "content": "<p>Ah, I think I know what you might be referring to Kamil :) In my case it has been basically create a monster notebook and do 'run all cells' at the end.</p>\n\n<p>Plus, it will be nice to have this version controlled - seems you have to take additional steps for notebooks to play nicely with git. </p>\n\n<p>Anyhow, I keep an open mind and really look forward to tagging along and learning.</p>\n\n<p>Thx a lot for doing this!</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 270269,
          "author_name": "taka152",
          "author_url": "",
          "post_date": "01/18/2018 01:25:20",
          "content": "<p>@kamil I think I got it. At the later stage of the competition, we have to do it all again on the new test data, it's better to build a pipeline in advance. Thanks for your explanation.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 270273,
          "author_name": "taka152",
          "author_url": "",
          "post_date": "01/18/2018 01:42:23",
          "content": "<p>@radek, sorry about my mistake, I'm not used to Kaggle's comments .</p>\n\n<p>I'm exactly the same case with you, several monster notebooks. For now, I just make backups for version control. I'll try git next time.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 270453,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/18/2018 08:53:33",
          "content": "<p>@Taka, @radek,</p>\n\n<p>Indeed, it is good practice to have version control and keep your experiments well controlled. Building analysis pipeline is - in my opinion - also beneficial because you can apply changes to the selected steps, whereas remaining parts are left unchanged.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 270524,
          "author_name": "taka152",
          "author_url": "",
          "post_date": "01/18/2018 12:20:33",
          "content": "<p>@kamil </p>\n\n<p>Thanks for the further explanation. I'll try it :)</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 269516,
      "author_name": "parietal",
      "author_url": "",
      "post_date": "01/17/2018 00:22:34",
      "content": "<p>Interesting proposal. I would like to tag along on this.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 269595,
      "author_name": "ashah80",
      "author_url": "",
      "post_date": "01/17/2018 02:43:47",
      "content": "<p>Sounds good! Let us make solution and improve it iteratively! </p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 269609,
      "author_name": "dotsanalytics",
      "author_url": "",
      "post_date": "01/17/2018 02:57:46",
      "content": "<p>OK,LIKE TO BE PART OF THIS</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 269615,
      "author_name": "ppirrip",
      "author_url": "",
      "post_date": "01/17/2018 03:02:25",
      "content": "<p>I am hesitated to join this since I am just a newbie, but with this open notebook, I decided to tag along see how far I can go / understand. Thanks for sharing the knowledge.</p>",
      "votes": null,
      "replies": [
        {
          "id": 269839,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/17/2018 11:33:22",
          "content": "<p>Hi Pip,</p>\n\n<p>Do not be worried about you experience in ML / Deep Learning. Here, we are going to build our solution iteratively, so I think that you will be able to follow.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 269722,
      "author_name": "lesaffrea",
      "author_url": "",
      "post_date": "01/17/2018 07:03:58",
      "content": "<p>Sounds really great let do it</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 269880,
      "author_name": "dskswu",
      "author_url": "",
      "post_date": "01/17/2018 13:09:17",
      "content": "<p>Thank you for creating this journal. </p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 269896,
      "author_name": "shaitender",
      "author_url": "",
      "post_date": "01/17/2018 13:47:08",
      "content": "<p>Interesting !!! Subscribed for learn</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 269955,
      "author_name": "kgmonthar",
      "author_url": "",
      "post_date": "01/17/2018 15:15:25",
      "content": "<p>This really helps! Thanks for sharing.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 270022,
      "author_name": "andrearapuzzi",
      "author_url": "",
      "post_date": "01/17/2018 16:57:07",
      "content": "<p>Great idea!!! Thanks for this initiative.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 270171,
      "author_name": "xsw7910",
      "author_url": "",
      "post_date": "01/17/2018 21:29:19",
      "content": "<p>Thank you very much for sharing, this is definitely great opportunity for me to learn.  </p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 270376,
      "author_name": "manikhanuja",
      "author_url": "",
      "post_date": "01/18/2018 06:27:56",
      "content": "<p>Sounds good, even I would like to contribute to it. </p>",
      "votes": null,
      "replies": [
        {
          "id": 270450,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/18/2018 08:44:40",
          "content": "<p>Hi Mani,</p>\n\n<p>I am very happy to hear that. This week we are going to release first version of the solution. Then, feel free to contact us, so that we can discuss your potential contributions!</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 270605,
      "author_name": "dskswu",
      "author_url": "",
      "post_date": "01/18/2018 15:20:10",
      "content": "<p>Has anyone thought about using VNET for this comp?</p>",
      "votes": null,
      "replies": [
        {
          "id": 272764,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/23/2018 16:54:39",
          "content": "<p>Hey Bill,</p>\n\n<p>Can you describe VNET in more detail?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 276029,
          "author_name": "dskswu",
          "author_url": "",
          "post_date": "01/30/2018 14:18:58",
          "content": "<p>Hey Kamil,</p>\n\n<p>Here is the link to VNET <a href=\"https://arxiv.org/abs/1606.04797\">https://arxiv.org/abs/1606.04797</a>  </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 276569,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/31/2018 19:30:34",
          "content": "<p>Hey Willam,</p>\n\n<p>It seems that this paper targets 3D (volumetric) imaging data - here we have images that sits in two dimensions.</p>\n\n<p>Do you have in mind other architectures that might be worth to try in this competition? U-Net seems to be pretty popular among participants.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 276590,
          "author_name": "dskswu",
          "author_url": "",
          "post_date": "01/31/2018 21:07:54",
          "content": "<p>U-Net is a good model. However, you may need multiple models to climb up the leaderboard. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 276776,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/01/2018 13:33:30",
          "content": "<p>Hi Willam,</p>\n\n<p>I agree. Winning solutions are ensembles of multiple models. However, <a href=\"https://arxiv.org/abs/1505.04597\">U-Net</a> is capable to score above 0.3 in this competition, which is decent starting point for further iterations.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 276784,
          "author_name": "dskswu",
          "author_url": "",
          "post_date": "02/01/2018 13:51:44",
          "content": "<p>Agreed! </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 270620,
      "author_name": "rayguo",
      "author_url": "",
      "post_date": "01/18/2018 15:52:45",
      "content": "<p>Thanks for sharing this. Subscribed for learn.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 270755,
      "author_name": "tk29yo",
      "author_url": "",
      "post_date": "01/18/2018 21:33:14",
      "content": "<p>It's a great idea. Subscribed for learn!</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 270764,
      "author_name": "robatjazi",
      "author_url": "",
      "post_date": "01/18/2018 21:56:07",
      "content": "<p>That is very good idea.\n@Kamil: I would like to contribute to this.</p>",
      "votes": null,
      "replies": [
        {
          "id": 272768,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/23/2018 17:07:40",
          "content": "<p>Hey Majid,</p>\n\n<p>This is great. I really appreciate this! As soon as we will release first solution, we can discuss how you would like to contribute your piece to it. I think that there are numerous ways that might be interesting to you.</p>\n\n<p>Stay tuned!</p>\n\n<p>All the Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 270806,
      "author_name": "keeppace",
      "author_url": "",
      "post_date": "01/19/2018 01:28:49",
      "content": "<p>I am interested as well .. Please include me as well </p>",
      "votes": null,
      "replies": [
        {
          "id": 272770,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/23/2018 17:10:36",
          "content": "<p>Hi keeppace,</p>\n\n<p>Just subscribe to this topic, so that you will not miss new posts ;-)</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 275773,
          "author_name": "keeppace",
          "author_url": "",
          "post_date": "01/30/2018 00:41:59",
          "content": "<p>Any ETA for the First Workbook ? </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 276567,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/31/2018 19:26:46",
          "content": "<p>Hi keeppace,</p>\n\n<p>Tomorrow we will publish first solution and description of the second one (which will be an improvement of the first solution).</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 270811,
      "author_name": "gtr5fb",
      "author_url": "",
      "post_date": "01/19/2018 01:49:30",
      "content": "<p>Subscribed! Interested to follow along. </p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 270968,
      "author_name": "youhanlee",
      "author_url": "",
      "post_date": "01/19/2018 10:43:35",
      "content": "<p>Actually, I was going to focus on one competition and looking one competition. After reading your discussion, I decided to choose this competition! I will keep your update! I'm looking forward to learn many special things about deep learning and data science from this competition. Thanks for your sharing and discussion.</p>",
      "votes": null,
      "replies": [
        {
          "id": 272771,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/23/2018 17:12:44",
          "content": "<p>Hey YouHan,</p>\n\n<p>Great, I hope that you will find our Journal useful.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 271087,
      "author_name": "rakibilly",
      "author_url": "",
      "post_date": "01/19/2018 16:44:26",
      "content": "<p>This is a great idea. Thanks for doing this.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 272086,
      "author_name": "praneelpidikiti",
      "author_url": "",
      "post_date": "01/22/2018 08:37:09",
      "content": "<p>Thanks for this and will be happy to be a part of it</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 272163,
      "author_name": "chelus",
      "author_url": "",
      "post_date": "01/22/2018 11:50:26",
      "content": "<p>Such a great idea! Looking forward to following the advances for learning.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 272317,
      "author_name": "mhjudi",
      "author_url": "",
      "post_date": "01/22/2018 20:19:32",
      "content": "<p>Hi Kamil, this is an awesome idea. We are all here to learn. I'm personally here not to win as much as to learn from great teams like yours. This is my first competition and in fact, my early steps in deep learning. I come from OR with a decent knowledge of traditional machine learning algorithms. Looking forward to having a mutual learning exchange!\nThanks for the initiaive!\nMJ</p>",
      "votes": null,
      "replies": [
        {
          "id": 272774,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/23/2018 17:16:49",
          "content": "<p>Hi MJ,</p>\n\n<p>Thanks!</p>\n\n<p>Traditional ML experience is always useful. Thanks to this you will easily learn about ideas behind deep learning. Moreover, you may want to add your piece to open solution that uses traditional ML algorithms.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 273017,
      "author_name": "roryoc",
      "author_url": "",
      "post_date": "01/24/2018 02:50:05",
      "content": "<p>Thanks folks.  Sounds like a great idea.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 273905,
      "author_name": "chenghua",
      "author_url": "",
      "post_date": "01/25/2018 13:25:29",
      "content": "<p>Wow, cool idea! Look forward to be part of this!</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 274227,
      "author_name": "",
      "author_url": "",
      "post_date": "01/26/2018 04:40:10",
      "content": "<p>Great...</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 274576,
      "author_name": "ramakrishna9",
      "author_url": "",
      "post_date": "01/26/2018 20:09:55",
      "content": "<p>Thanks Kamal, i support your opinion its it useful for others its great.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 276271,
      "author_name": "jerrythomas",
      "author_url": "",
      "post_date": "01/31/2018 04:03:00",
      "content": "<p>This is a great idea and will help people like me who are here to learn. How can we contribute and are the discussions going to be on an open kernel on kaggle or here?</p>",
      "votes": null,
      "replies": [
        {
          "id": 276566,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "01/31/2018 19:24:34",
          "content": "<p>Hi Jerry,</p>\n\n<p>We will host public GitHub project with the code and descriptions in GitHub's Wiki. Upon publication of the first solution, you are welcome to use this code to run experiments - we will explain how to do it. You can also suggest your ideas for improvements, such as preprocessing, postprocessing or network architectures. You can also report bugs or errors if you will find any.</p>\n\n<p>Main discussion will be here in this thread. Besides this we consider GitHub's Issues and pull requests as a good way of communication ;-)</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 276883,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "02/01/2018 18:19:23",
      "content": "<p>Hi all,</p>\n\n<p>In short: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">https://github.com/neptune-ml/data-science-bowl-2018</a></p>\n\n<p>First version is end-to-end training with U-Net. Starts with raw data and ends with Kaggle submit. It is described here: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet\">https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet</a> .</p>\n\n<p>User help is here: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki\">https://github.com/neptune-ml/data-science-bowl-2018/wiki</a></p>\n\n<p>Without any parameter search and without augmentation we do LB 0.302.</p>\n\n<p><strong>next steps</strong></p>\n\n<ul>\n<li>Parameter search over U-Net architecture and training (do this too!)</li>\n<li>Add images augmentation</li>\n</ul>\n\n<p>We are very open to your feedback, comments, GitHub Issues, PRs!</p>\n\n<p>Happy training,</p>\n\n<p>Jakub &amp; Kamil</p>",
      "votes": null,
      "replies": [
        {
          "id": 277203,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/02/2018 13:46:22",
          "content": "<p>Update: We have tuned some parameters, and now we do LB 0.320. It seems that grid search works well in this context.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 281013,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "02/11/2018 17:53:30",
      "content": "<p>Hi,</p>\n\n<p><code>Solution 2</code> is ready to use on the repository: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">https://github.com/neptune-ml/data-science-bowl-2018</a>. It is multi-output U-Net, that besides segmentation learns nuclei centers and contours.</p>\n\n<p>Default experiment makes <code>LB 0.371</code> and it can be improved by appropriate parameter search. You can check the code and practical instructions on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">dsb-repo</a> and associated <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Multioutput-UNet\">dsb-wiki</a>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": [
        {
          "id": 281055,
          "author_name": "agavranis",
          "author_url": "",
          "post_date": "02/11/2018 20:59:59",
          "content": "<p>Thanks Kamil, great work! Any estimate on time needed to run on gcp-gpu-large/ gcp-gpu-medium?Is gcp-gpu-large essential or can we run it on gcp-gpu-medium also?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 281101,
          "author_name": "livingprogram",
          "author_url": "",
          "post_date": "02/12/2018 01:20:05",
          "content": "<p>Hi Kamil, I see your development has been mainly focused on the U-Net, are you planning on working with Mask-RCNN in the future? Or do you think this probably can be better solved using a U-Net-like architecture with advanced post processing or the custom architecture like you made?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 281390,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/12/2018 17:48:14",
          "content": "<p>Hi @gavrand,</p>\n\n<p>Thank you!</p>\n\n<p>The difference between <code>gcp-gpu-medium</code> and <code>gcp-gpu-large</code> is number of vCPU: medium has 4; large has 8. GPU is the same (12GB).</p>\n\n<p>We do images augmentation, which consumes CPUs, hence the more CPUs you have the faster is your training.</p>\n\n<p>I have epoch time around 90 seconds with 6 vCPUs.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 281403,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/12/2018 18:01:10",
          "content": "<p>Hi @LivingProgram,</p>\n\n<p>In short, we will implement Mask-RCNN in this competition :-)</p>\n\n<p>However, at this point of the competition we can improve our LB score with custom U-Net and good post-processing. We still have some ideas on how to do it. Multi-output U-Net has great potential here, so we want to spend some extra time pushing it to the limits. After that, we will move towards new ideas, that is Mask-RCNN.</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 282771,
          "author_name": "livingprogram",
          "author_url": "",
          "post_date": "02/14/2018 14:58:59",
          "content": "<p>Thanks Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 281118,
      "author_name": "zhen27",
      "author_url": "",
      "post_date": "02/12/2018 02:58:29",
      "content": "<p>It is a nice idea. I have a question here. In testing, for each image, we have three outputs: segmentation, centers and contours. How you combine these three outputs with watershed and get the final segmentation? Thank you so much. </p>",
      "votes": null,
      "replies": [
        {
          "id": 281450,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/12/2018 18:53:25",
          "content": "<p>Hey @Zhen,</p>\n\n<p>In the post-processing we do not use centers. At this point it is U-Net's regularizer.</p>\n\n<p>How we calculate final segmentation?</p>\n\n<ol>\n<li><p>Subtract contours from segmentation. As a result, you have \"eroded mask\", which is binary.</p></li>\n<li><p>The non-zero elements in the eroded mask are used as watershed markers. Check <a href=\"http://scikit-image.org/docs/dev/auto_examples/segmentation/plot_marked_watershed.html\">markers for watershed transform</a> for intuition about it.</p></li>\n<li><p>Calculate distances in the eroded mask -&gt; this transformation yields distances matrix that we take with negative sign. Since eroded mask just 2D array, we calculate minimal distance of the given non-zero entry to the nearest zero.</p></li>\n<li><p>Use markers and distances matrix to run <a href=\"http://scikit-image.org/docs/dev/api/skimage.morphology.html#skimage.morphology.watershed\">watershed</a>.</p></li>\n</ol>\n\n<p>All the best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 281527,
          "author_name": "zhen27",
          "author_url": "",
          "post_date": "02/12/2018 20:34:09",
          "content": "<p>Thank you so much. Previously, I tried to use watershed directly after segmentation, but the results are very bad. Your idea is nice. </p>\n\n<p>So final segmentation only uses mask and contours. I saw your code in github, it seems you are also train to find to find centers. Then why do you train to find centers? A quick thoughts, with centers and masks, can we use k-means to split the segmentation to each center?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 281687,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/12/2018 23:05:41",
          "content": "<p>Hey @Zhen,</p>\n\n<p>Yes, we train to find nuclei centers, because it is another auxiliary target for the U-Net, that might be useful in the future. Also it is good for the regularization purposes, since it introduces additional difficulty.</p>\n\n<p>Can you describe your idea about k-means in more detail? It might be interesting ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 281839,
          "author_name": "zhen27",
          "author_url": "",
          "post_date": "02/13/2018 05:59:31",
          "content": "<p>After predicted, we have some predicted centers and masks. Assume we have N centers, then we want to split the masks into these K centers. </p>\n\n<ol>\n<li><p>For each point in masks, calculate the distance between it and N centers. </p></li>\n<li><p>The point belongs to the center which has the smallest distance.</p></li>\n</ol>\n\n<p>I did not implement it yet. Does it make sense?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 282185,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/13/2018 18:30:30",
          "content": "<p>Hey,</p>\n\n<p>I think that in principle we do something similar. It seems that your idea is to assign masked pixel to the nearest (predicted) center. If so, you do not need to run k-means - you can calculate it explicitly. Definitely, you can try this approach, however, keep in mind that it may introduce some false positives.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 282523,
          "author_name": "zhen27",
          "author_url": "",
          "post_date": "02/14/2018 05:27:20",
          "content": "<p>Got it. Thank you very much.</p>\n\n<p>I have tried the mask and contour method and use your watershed_contour(image, contour) function. However, the score decreases. I wonder what loss function you use to train to the mask and contour? </p>\n\n<p>And what does this mean in the function? Thank you so much. Happy Valentine's Day.</p>\n\n<pre><code>dropped, _ = ndi.label(image - (labeled &gt; 0))\ndropped = np.where(dropped &gt; 0, dropped + nr_blobs, 0)\ncorrect_labeled = dropped + labeled\nreturn relabel(correct_labeled)\n</code></pre>",
          "votes": null,
          "replies": []
        },
        {
          "id": 282854,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/14/2018 17:49:40",
          "content": "<p>Hey Zhen,</p>\n\n<p>Multi-output U-Net is defined here: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/models.py#L31\">https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/models.py#L31</a></p>\n\n<p>The model uses the this <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/steps/pytorch/validation.py#L19\">loss function</a> which is simply sum of <code>DiceLoss</code> and <code>BCEWithLogitsLoss</code>. The latter one is from <code>torch.nn</code> package.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 282892,
          "author_name": "zhen27",
          "author_url": "",
          "post_date": "02/14/2018 18:35:01",
          "content": "<p>Thank you very much.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 281360,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "02/12/2018 16:21:49",
      "content": "<p>Hi,</p>\n\n<p>Small update: we now do [LB 0.372] which is our new best score, generated with <code>solution 2</code>.</p>\n\n<p>EDIT 1: Our current best is [LB 0.378] using <code>solution 2</code> codebase.</p>\n\n<p>EDIT 2: Now we do [LB 0.391]. We are obtaining better and better LB score by searching parameters space.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 281757,
      "author_name": "dataharbor",
      "author_url": "",
      "post_date": "02/13/2018 02:02:09",
      "content": "<p>Hi Kamil,</p>\n\n<p>Thanks for your ideas!</p>\n\n<p>Robinson @ dataharbor</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 282017,
      "author_name": "anoaica",
      "author_url": "",
      "post_date": "02/13/2018 13:40:50",
      "content": "<p>Great initiative, thank you!</p>",
      "votes": null,
      "replies": [
        {
          "id": 282845,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/14/2018 17:39:28",
          "content": "<p>Thanks!</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 282766,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "02/14/2018 14:48:32",
      "content": "",
      "votes": null,
      "replies": []
    },
    {
      "id": 284124,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "02/16/2018 16:31:53",
      "content": "<p>Hi,</p>\n\n<p>Small improvement in <code>solution 2</code> and some experimentation (parameter space search) gave us <code>[LB 0.407]</code>. We are happy that we have crossed 0.4 threshold ;-)</p>\n\n<p>Fell free to use our code available on <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">dsb-repository</a>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 284644,
      "author_name": "ravivadapalli",
      "author_url": "",
      "post_date": "02/17/2018 20:46:35",
      "content": "<p>hi Kamal,</p>\n\n<p>Thanks for sharing!</p>\n\n<p>The upconv blocks in the unet paper had 2 conv2D units. Whereas, your implementation has 3 conv2D layers. Also, the input_block &amp; the classification_block in your implementation seems to be adding 2 extra conv2D layers each when compared with the unet paper.</p>\n\n<p>Can you please explain.</p>",
      "votes": null,
      "replies": [
        {
          "id": 285518,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/20/2018 13:43:34",
          "content": "<p>Hi Ravi,</p>\n\n<p>Thanks to this trick we have more non-linearities, hence your model has greater capacity. We consider U-Net paper (which is great btw: <a href=\"https://arxiv.org/abs/1505.04597\">here is a link to it</a>!) as an inspiration / reference and we did not want to implement it in exactly the same way. However, you suggested nice thing to try, so now it is like in the original U-Net paper.</p>\n\n<p>Thanks for this feedback!</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 298066,
          "author_name": "ravivadapalli",
          "author_url": "",
          "post_date": "03/18/2018 17:22:00",
          "content": "<p>Thanks Kamil for the explanation.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 285188,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "02/19/2018 14:26:34",
      "content": "<p>Hey,</p>\n\n<p>We have published <code>solution 3</code> on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">open solution repo</a>, which makes <code>[LB 0.421]</code>. This solution introduces three major improvements:</p>\n\n<ol>\n<li>more image augmentations,</li>\n<li>better validation,</li>\n<li>post-processing for final segmentation purposes.</li>\n</ol>\n\n<p>Besides this, we have implemented number of small fixes. Check <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet\">Improved Multi-output U-Net</a> Wiki page for more info.</p>\n\n<p>This week, we will work towards solution 4, that will exhibit more sophisticated post-processing routines. This part might be useful for many competitors ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": [
        {
          "id": 285350,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "02/20/2018 02:36:34",
          "content": "<p>Hi @Kamil, I just took a look at your code and it is really good. I have one question though. What is the default training number of epochs for the score above? I saw \"epochs_nr: 1000\" in the code and it seems too large to me. Will appreciate any insights. Thanks</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285492,
          "author_name": "yyll008",
          "author_url": "",
          "post_date": "02/20/2018 12:47:31",
          "content": "<p>How long time it will cost?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285512,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "02/20/2018 13:30:20",
          "content": "<p>Good question @YangLu, I ran the script for 100 epochs and stopped it.</p>\n\n<p>@Kamil is there a way to benefit from previous incomplete  run's result. Normally the saved best weights can be used for prediction or initializing a new training session. I am using pytorch for the 1st time today so not sure the best way to do it here.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285516,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/20/2018 13:38:15",
          "content": "<p>Hey YaGana,</p>\n\n<p>We have set it to 1000 epochs and - at the same time - set an <code>patience</code> (a.k.a. early stopping) to 100. Please, check the config file: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L66\">neptune.yaml</a>. Thanks to this we know that we wait long enough for the model to learn. In practice, the exact experiment that gave us <code>[LB 0.421]</code> took 473 epochs. Most of my experiments ends after 200-300 epochs.</p>\n\n<p>It seems, that you can just decrease these values and you will not degrade the final performance of your model.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285523,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/20/2018 13:53:20",
          "content": "<p>Hi YangLu,</p>\n\n<p>It took approximately 2-3 minutes per epochs in our <code>[LB 0.421]</code> experiment (entire end-to-end process took almost 20h).</p>\n\n<p>On other experiments, I observed epoch time around 1 minute, and usually we do training for 200-300 epochs.</p>\n\n<p>In general, it depends on multiple factors, for example:</p>\n\n<ul>\n<li>images augmentations,</li>\n<li>number of CPU cores that computes them,</li>\n<li>other processes that run on your machine,</li>\n<li>batch size,</li>\n<li>U-Net model parameters.</li>\n</ul>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285530,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/20/2018 14:23:51",
          "content": "<p>Hey YaGana,</p>\n\n<p>In our solution each experiment has value which is literally saved to disk as best model ;-)</p>\n\n<p>We use PyTorch and we save best model after each epoch (we implemented callback for this). You can parametrize how ofter you want to checkpoint your model in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/pipeline_config.py#L79\">pipeline_config.py</a>. In this file you also specify path to the saved model</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285804,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "02/21/2018 02:26:33",
          "content": "<p>Thanks Kamil,</p>\n\n<p>I ran the code to completion with only 2 parameters ( i.e. epochs_nr and lr) slightly changed from their default values. But when I submit the generated submission file, I get the following error:</p>\n\n<p>\"Failed\nEvaluation Exception: Index was outside the bounds of the array.\n\"</p>\n\n<p>I am not sure if that is Kaggle's issue or something else. Can you help?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285957,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/21/2018 10:59:04",
          "content": "<p>Hi YaGana,</p>\n\n<p>Yes, we have corrected this bug very recently, so first, try to update your code. You should be fine then.</p>\n\n<p>Also, in order to re-use your trained model, set <code>overwrite = 0</code> in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L41\">neptune.yaml</a>. This will enable you to use your model, and not train another one. Just make sure that directories are set as in your previous experiment.</p>\n\n<p>Best of luck,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 285966,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "02/21/2018 11:25:50",
          "content": "<p>Hi Kamil,</p>\n\n<p>I have a couple of questions as follows if you do not mind :-</p>\n\n<ol>\n<li><p>The version of your code I used was downloaded on Feb. 19th at 5.34pm PST. Was the bug fixed after that timeline? If so I can download it again. I have spent over $20 right now without making any submission hence trying to make sure I do not make a mistake.</p></li>\n<li><p>I sent the training to Neptune from my local directory so the files are stored on your system in the specified directories for both experiments that I ran. Given that, I am not sure I understand your instruction about setting \"overwrite = 0\" in the neptune.yaml file as long as the directories are set as in the previous experiment. Right now I see those directories for the 2 experiments when I click on each of them and they are not the same. How do I use the previous weights in this case?</p></li>\n</ol>",
          "votes": null,
          "replies": []
        },
        {
          "id": 286284,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/21/2018 23:32:11",
          "content": "<p>Hey YaGana,</p>\n\n<p>Please find my answers below:</p>\n\n<p><strong>ad 1</strong></p>\n\n<p>The latest commit to master was performed on Feb 20th, so it may be good to use the latest version. We have fix some submit issue with this commit ;-)</p>\n\n<p><strong>ad 2</strong></p>\n\n<p>It is fast fix: take your <code>submission.csv</code> and remove all lines with <code>nan</code>. We have found that this causes submission error -- it is very rare case though.</p>\n\n<p><strong>Bonus</strong></p>\n\n<p>Also, you can take a look at <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/devbook.ipynb\">devbook.ipynb</a>, where we visualize predictions and build submit file. This will give you some overview about how predictions work in our solution, as well as, decent score <code>[LB 0.407]</code>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 286318,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "02/22/2018 01:28:54",
          "content": "<p>Hi Kamil,</p>\n\n<p>Thanks for your prompt response. I just checked the submission file and found 32 blanks in the ImageId column. Is that what you are referring to? </p>\n\n<p>My current score is LB=0.407 as well at the moment but I will take a look at the devbook.ipynb later.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 286335,
          "author_name": "yyll008",
          "author_url": "",
          "post_date": "02/22/2018 02:05:57",
          "content": "<p>Hi Kamil,\nI ran the script for 170 epochs and stopped it. LB submission only 0.371. I haven't change any parameters.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 286663,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/22/2018 16:00:38",
          "content": "<p>Hey YaGana,</p>\n\n<p>I was referring to nans in the <code>EncodedPixels</code> column. It is interesting that we have blanks in the <code>ImageId</code> column... I will take a closer look at it. Thanks for letting me know! ;-)</p>\n\n<p>Meanwhile, take a look at the notebook mentioned before (<code>devbook.ipynb</code>). I think it is valuable resource, that you can re-use for your analysis.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 286664,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/22/2018 16:01:48",
          "content": "<p>Hi YangLu,</p>\n\n<p>I think that your training is too short. Try longer experiment ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 286844,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "02/22/2018 22:29:13",
          "content": "<p>@Kamil, sorry the blanks are in the \"EncodedPixels\" column not the ImageId. That was my mistaken typing above.  If it can help see below the entries in the  \"ImageId\" column that have corresponding blank entries :</p>\n\n<p>472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\nb83d1d77935b6cfd44105b54600ffc4b6bd82de57dec65571bcb117fa8398ba3</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 287014,
          "author_name": "bintan",
          "author_url": "",
          "post_date": "02/23/2018 09:11:26",
          "content": "<p>delete me</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 287975,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/26/2018 11:22:36",
          "content": "<p>Hey YaGana,</p>\n\n<p>Thank you for the info! I can see that we have two different IDs -&gt; I will take a closer look at them in order to check what is on the images.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 287986,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "02/26/2018 12:07:14",
          "content": "<p>Hey bintan_FDU,</p>\n\n<p>Thank you!</p>\n\n<p>In your case it seems better to train locally via <code>neptune run ...</code>. At this point we do not support multi-GPU training, but - since you raised this point - I strongly encourage you to submit an issue on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">repository</a> with this feature request. We will implement it :-) I think that broader community may benefit from it as well.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 287724,
      "author_name": "zhen27",
      "author_url": "",
      "post_date": "02/25/2018 19:50:56",
      "content": "<p>Hi Kamil. I have several questions.</p>\n\n<ol>\n<li><p>I found in your pipeline, you did preprocessing which split x and y . So you do the train for x and y separately? I am confused with this.</p></li>\n<li><p>I am confused with part is your training part. You just use  unet_multitask = Step(...). For the Step class I didn't not find the training operation. I don't understand Step class. Could you please explain it?</p></li>\n<li><p>For the preprocessing, you use K-means and data augmentation. What else do you do? How do you do normalization? Where did you use the augmentation. I can't find the place that you import augmentation.py :(.</p></li>\n<li><p>Do you use the standard U-net framework?</p></li>\n</ol>\n\n<p>Thank you.</p>",
      "votes": null,
      "replies": [
        {
          "id": 287841,
          "author_name": "bintan",
          "author_url": "",
          "post_date": "02/26/2018 03:50:31",
          "content": "<ul>\n<li><p>1 x is origin image y is mask</p></li>\n<li><p>2 training operation is in the file <code>steps/pytorch/models</code> the function 'fit' is the training function, the concept of step is abstracting  each step into a \"step\" class then put them into the pipeline and execute them one by one ,the function which step execute is the \"transformer\" part in config</p></li>\n<li><p>3 see wiki in github repo ,He import augmentation in loaders.py : <code>from augmentation import affine_seq, color_seq</code></p></li>\n<li><p>4 It is the standard U-net ,but there are only 4 down-up samples ,from 16 to 128 ,the orign U-net has 5 down-up samples ,from 64 to 1024  see steps<code>pytorch/architectures/unet.py</code> </p></li>\n</ul>\n\n<p>Try more epochs and make some enhancements， I got 0.440 in LB！ This solution is awesome,</p>\n\n<p>Good luck</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 288663,
          "author_name": "zhen27",
          "author_url": "",
          "post_date": "02/28/2018 01:12:06",
          "content": "<p>Thanks for answering. Your ideas are really nice. </p>\n\n<p>I checked the loader.py,  you have <br>\nself.image_augment_with_target = ImgAug(affine_seq)\nself.image_augment = ImgAug(color_seq)\na very stupid question is when training, do you use 670 original images + 670 image_augment_with_target + 670 image_augment? Besides, I found your normalize are based on mean=[0.5, 0.5, 0.5] and std=[0.2, 0.2, 0.2]). How do you get the mean and std?</p>\n\n<p>Another question is the same with @bintan_FDU. You use VGG16 to get features and clustering them by k-means for validation ,what is the feature? The category is only for validation, so you don't train different networks for different categories, right? All the testing part uses only one trained network plus some pre and post processing? That is amazing. </p>\n\n<p>Hope you can break 0.5!</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 288876,
          "author_name": "bintan",
          "author_url": "",
          "post_date": "02/28/2018 12:15:28",
          "content": "<ul>\n<li><p>1 In my opinion the mean and std is just because He normalized the image by <code>image = image / 255</code></p></li>\n<li><p>2 This question I have thought for a moment , And It may be  because he want improve the model's generalization</p></li>\n<li>3 the one who answered  your first question is me ... So it may be not the correct answer :-)</li>\n</ul>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296568,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/15/2018 12:57:09",
          "content": "<p>Hey Zhen,</p>\n\n<p><strong>ad. 1</strong>: <code>X</code> is data, <code>y</code> is label. In this competition it is mask. It is also crucial, to keep in mind that we do affine transformations (linear mapping methods) in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py\">augmentations</a>, for example rotation or flipping. Affine transformations must be applied to <code>X</code> and <code>y</code>.</p>\n\n<p><strong>ad. 2</strong>: @bintan_FDU covered your questions very well. I just wanted to add that our goal in software design is to distinguish pipeline definition and pipeline execution. Thanks to this you can modify pipelines by adding / modifying <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/base.py#L15\">Steps</a>. Steps implement <code>fit</code> and <code>transform</code> methods that are executed during pipeline execution.</p>\n\n<p><strong>ad. 3</strong>: We use K-means for validation. That is, we take pretrained VGG to obtain features, and we cluster them into <code>K=10</code> clusters. Then - through some experimentation - we determined clusters that should go to the validation set. The goal is to make sure that various image types are represented in the validation set. Now, out validation score reflects LB score pretty closely.</p>\n\n<p>We use augmentations defined in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py\">augmentation.py</a> and we use them in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/loaders.py#L211\">loaders.py</a>.</p>\n\n<p><strong>ad. 4</strong>: We use U-Net that is parametrized in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml\">neptune.yaml</a>. Network is implemented in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/architectures/unet.py\">unet.py</a></p>\n\n<p><strong>Finally</strong>, please note that our <code>master</code> branch is moving forward very quickly, so make sure that you have the latest version all the time.</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296701,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/15/2018 16:34:26",
          "content": "<p>Hey @Zhen, @bintan_FDU, </p>\n\n<p>In the <code>loaders.py</code> you have <code>self.image_augment_with_target = ImgAug(affine_seq)</code> and <code>self.image_augment = ImgAug(color_seq)</code>. This is because affine transforms must be applied to image and mask (i.e. rotation, translation), whereas color transforms just to images. Augmentation procedure is applied to all images.</p>\n\n<p>Outputs from the pre-trained <code>VGG16</code> serve as features for clustering. My previous answer describes this in more detail :)</p>\n\n<p>@bintan_FDU so cool that you made <code>[LB 0.440]</code>! also thanks for answering questions.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 303110,
          "author_name": "shujian",
          "author_url": "",
          "post_date": "03/25/2018 14:30:33",
          "content": "<p>@bintan_FDU, thanks for sharing. Your LB shows 0.431, I wonder where 0.440 comes from?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 311614,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/10/2018 11:21:09",
          "content": "<p>Hey @Shujian.M.Coder</p>\n\n<p>Our current LB score comes from running <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/mask_rcnn_notebook\">mask_rcnn_notebook</a> and playing with it ;-)</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 287914,
      "author_name": "bintan",
      "author_url": "",
      "post_date": "02/26/2018 07:59:00",
      "content": "<p>@Kamil, Great job ! The code is very beautiful .</p>\n\n<p>I read your great code and I have to say the conception of pipeline is wonderfull</p>\n\n<p>but I still have some questions:</p>\n\n<ul>\n<li>You use max-pooling to down-sample the image,but this method is a little bit  outdated ,I thick use the dilated convolution replace it maybe get better result</li>\n<li><p>I found that you use VGG16 to get features and clustering them by\nk-means for validation ,what is the feature?  and why do you use them\nfor  validation , we usually choose 10% data randomly and set them as\nverification sets , I read the wiki <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet\">here </a> but Still confused</p></li>\n<li><p>You initial the model by this function: <code>def _initialize_model_weights(self)</code> , Since the verification set used VGG ,why don't you use  VGG16 as the encoder(like <a href=\"http://blog.kaggle.com/2017/12/22/carvana-image-masking-first-place-interview/\">this</a>) which was pre-trained on Imagenet dataset ?</p></li>\n<li><p>In devbook.ipynb there is a line:</p>\n\n<p><code>labels_train   =   joblib.load(os.path.join(DATA_DIR,'ground_truth','train','labels.pkl'))</code>  </p>\n\n<p>where is the \n<code>'ground_truth',</code>and <code>'labels.pkl'</code> ?</p></li>\n</ul>\n\n<p>Thanks again!</p>",
      "votes": null,
      "replies": [
        {
          "id": 296731,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/15/2018 17:20:47",
          "content": "<p>Hi,</p>\n\n<p><strong>ad. 1</strong>: We have dilated convolution on our roadmap, so we will try it.</p>\n\n<p><strong>ad. 2</strong>:</p>\n\n<ul>\n<li>Random split into train/valid/test is fine, but have some limitations, so we wanted to improve it.</li>\n<li>Procedure for validation split with VGG and K-means:\n<ul><li>From the pre-trained <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L117\">VGG16</a> network, take the <code>features</code> part (check <a href=\"https://github.com/pytorch/vision/blob/master/torchvision/models/vgg.py#L24\">VGG implementation</a>).</li>\n<li>Use it as features extractor. It simply means that network's <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L107\">output are features</a>.</li>\n<li>When computed features for all images, run <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L137\">K-means clustering</a> with <code>K=10</code>.</li>\n<li>As a result each image is assigned to one cluster. Thanks to this approach we can experiment with various validation splits. We also have determined clusters that are good for validation purposes -&gt; our validation score closely follows LB score.</li></ul></li>\n</ul>\n\n<p><strong>ad. 3</strong>: We train U-Net end-to-end, so we initialize weights in the way defined <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/models.py#L34\">here</a>. I really like the idea you suggested -&gt; take pre-trained VGG as first U-Net arm and run training on this. We will add it to our roadmap. Thanks :)</p>\n\n<p><strong>ad. 4</strong>: In general, when you log in to <a href=\"https://neptune.ml/\">neptune.ml</a>, and start notebook online, all <em>dsb-related</em> data is available under the directory <code>/public/dsb_2018_data</code>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 288879,
      "author_name": "leodegeus7",
      "author_url": "",
      "post_date": "02/28/2018 12:21:06",
      "content": "<p>Hi, I have a problem with the line in predict_pipeline:</p>\n\n<p>output = pipeline.transform(data)</p>\n\n<p>I get the following error:</p>\n\n<p>2018-02-28 12-13-48 steps &gt;&gt;&gt; step output adapting inputs\nTraceback (most recent call last):\n  File \"\", line 1, in \n  File \"/home/ubuntu/data-science-bowl-2018/steps/base.py\", line 144, in transform\n    step_inputs = self.adapt(step_inputs)\n  File \"/home/ubuntu/data-science-bowl-2018/steps/base.py\", line 181, in adapt\n    raw_inputs = [step_inputs[step_name][step_var] for step_name, step_var in step_mapping]\n  File \"/home/ubuntu/data-science-bowl-2018/steps/base.py\", line 181, in \n    raw_inputs = [step_inputs[step_name][step_var] for step_name, step_var in step_mapping]\nKeyError: 'labels'</p>\n\n<blockquote>\n  <blockquote>\n    <blockquote>\n      \n    </blockquote>\n  </blockquote>\n</blockquote>\n\n<p>What i can do to fix this?\nThanks</p>",
      "votes": null,
      "replies": [
        {
          "id": 296686,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/15/2018 16:16:35",
          "content": "<p>Hi Leonardo,</p>\n\n<p>We have fixed that -&gt; just make sure that you have latest version.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 292138,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "03/07/2018 14:27:35",
      "content": "<p>Hey guys,</p>\n\n<p>Check out the <a href=\"https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic_webinar\">Webinar about Toxic Comment Classification Challenge</a> that Jakub Czakon and me will host  tomorrow.</p>\n\n<p>We want to show you our open solution to <a href=\"https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge\">Toxic Comment Challenge</a>, answer some questions and have good time talking about deep learning :-)</p>\n\n<p>Feel free to join if you like.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 292245,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "03/07/2018 17:31:29",
      "content": "<p>Hi,</p>\n\n<p><a href=\"https://github.com/neptune-ml/data-science-bowl-2018\">Solution-4</a> has just arrived. Run it as it is, to get approximately [LB 0.428]. Major improvements are:</p>\n\n<ol>\n<li>multi-output U-Net with weighted loss,</li>\n<li>morphological post-processing -&gt; later this week we are going to publish kernel with this post-processing routine,</li>\n<li>contour touching as new auxiliary signal.</li>\n</ol>\n\n<p>More details can be found on our <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet-with-weighted-loss-and-morphological-postprocessing\">repository Wiki</a>.\nNow, we are going to attack [LB 0.5] with a couple of new ideas that we have in mind.</p>\n\n<p>Happy training,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 295955,
      "author_name": "kdziedzic66",
      "author_url": "",
      "post_date": "03/14/2018 13:24:29",
      "content": "<p><a href=\"https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook\">In our repo</a> on branch mask_rcnn_notebook You can find notebook based on matterport Mask RCNN implementation scoring 0.439 LB with full instruction how to run it. </p>",
      "votes": null,
      "replies": [
        {
          "id": 296125,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "03/14/2018 18:50:55",
          "content": "<p>Hi Krzysztof! \nThanks for creating and sharing this awesome  notebook! It will help a lot of us. One question\nDo you use the matterport Mask_RCNN <a href=\"https://github.com/matterport/Mask_RCNN\">https://github.com/matterport/Mask_RCNN</a> or the fork made by Yan Wang <a href=\"https://github.com/YanWang2014/Mask_RCNN\">https://github.com/YanWang2014/Mask_RCNN</a> that a lot of us have been using ? \nThanks\nMehul</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296135,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "03/14/2018 19:13:23",
          "content": "<p>Hi Krystov,</p>\n\n<p>Thanks for sharing. After downloading the above repo, when I try to upload mask RCNN code with the command \" neptune data upload Mask_RCNN\" , I get the following error on a windows 10 machine :-</p>\n\n<p>INFO: Could not find files for the given pattern(s).\nCurrent project: SAN\nCannot upload, because folder 'Mask_RCNN' is not empty. Use -r/--recursive flag to upload</p>\n\n<hr>\n\n<p>Then using the recursive flag as indicated above, gives a whole bunch of errors. Please help.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296169,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "03/14/2018 20:47:56",
          "content": "<p>nevermind i see you must the answer in the Readme file before. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296425,
          "author_name": "haroldlee",
          "author_url": "",
          "post_date": "03/15/2018 07:38:34",
          "content": "<p>Thanks for sharing. Good to hear your experiments using mask-rcnn. Could the experiments be conducted in local machine?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296556,
          "author_name": "jakubczakon",
          "author_url": "",
          "post_date": "03/15/2018 12:33:12",
          "content": "<p>@ YaGana Sheriff-Hussaini\nyou should first create a project Data Science Bowl (that would give you a key <code>DSB</code>) and then run:</p>\n\n<p><code>neptune data upload Mask_RCNN --recursive --project-key DSB</code></p>\n\n<p>@HAOYU-LI\nOf course you can run it locally just make sure to have tensorflow 1.3+ </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296920,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "03/16/2018 01:06:46",
          "content": "<p>Thanks Jakub,</p>\n\n<p>I have already created the product key DSB and I am still getting a bunch of errors. See below the 1st part of the error messages below:</p>\n\n<p>INFO: Could not find files for the given pattern(s).\nCurrent project: DSB\nCalculated data size: 195.83 kB\nUploading data to server:   8%|ΓûêΓûêΓûêΓûêΓûÄ                                               | 16.4K/196K [00:00&lt;00:02, 61.7KB/s]2018-03-15 18:04:11,016 deepsense.neptune.common.api.utils ERROR    utils.py:123 - log_exception() Failed to call upload_data_as_tarstream\n2018-03-15 18:04:11,019 deepsense.neptune.common.api.utils ERROR    utils.py:124 - log_exception() status: 500, response_message: Internal Server Error\nTraceback (most recent call last):\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\neptune\\common\\api\\utils.py\", line 160, in func_wrapper\n    return func(*args, **kwargs)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\apis\\default_api.py\", line 11381, in upload_data_as_tarstream\n    callback=params.get('callback'))\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 329, in call_api\n    response_type, auth_settings, callback)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 154, in __call_api\n    post_params=post_params, body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 365, in request\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 164, in POST\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 132, in request\n    raise ApiException(http_resp=r)\ndeepsense.generated.swagger_client.rest.ApiException: (500)\nReason: Server Error\nHTTP response headers: {'Via': '1.1 google', 'Content-Length': '21', 'Alt-Svc': 'clear', 'Server': 'nginx', 'Date': 'Fri, 16 Mar 2018 01:04:11 GMT', 'Content-Type': 'application/json;charset=utf-8'}\nHTTP response body: Internal Server Error</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 296991,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "03/16/2018 03:56:20",
          "content": "<p>Hi Krzysztof, Kamil! \nThanks again for the great notebook. One question:\nOnce i start running the notebook and say I have to shutdown my laptop, does the processing still continue. It seems like if i shutdown the browser window, the processing stops ? \nThanks\nMehul</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 297357,
          "author_name": "mpsampat",
          "author_url": "",
          "post_date": "03/16/2018 21:51:23",
          "content": "<p>Hi Krzysztof! </p>\n\n<p>I ran your notebook on neptune.ml. I just git cloned the book and followed the instructions to run it. \nIn the current notebook, i see you run 10 epochs. I got 0.397 with it. \nfor the 0.439 did you run more epochs or a different learning rate ? </p>\n\n<p>Thanks\nMehul</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 297858,
          "author_name": "haroldlee",
          "author_url": "",
          "post_date": "03/18/2018 06:35:57",
          "content": "<p>Thanks for your reply. I'll try it soon</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 299061,
          "author_name": "kdziedzic66",
          "author_url": "",
          "post_date": "03/20/2018 12:21:09",
          "content": "<p>Hi Mehul,</p>\n\n<p>I have run the code with the identical setup as it is in notebook, however training with high learning rate and small number of epochs can cause a high attitude in results. Maybe you can try running the code with smaller values of LR with larger number of epochs or tweak maximum detection instances parameter. Also changing of mean pixel values could be a reasonable step.</p>\n\n<p>Regs,\nKrzysztof</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 299955,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "03/21/2018 06:35:09",
          "content": "<p>Hi Krysztof, </p>\n\n<p>I am still getting the errors I posted above when I tried to follow the steps today. I upgraded my Neptune CLI and it did not help. Once again I get the error when I use the following command:</p>\n\n<p>neptune data upload Mask_RCNN --recursive --project-key DSB</p>\n\n<p>Can you please help?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 300110,
          "author_name": "mdlszhengli",
          "author_url": "",
          "post_date": "03/21/2018 09:50:20",
          "content": "<p>Hi Krzysztof! Thanks for sharing this great notebook.\nHere are some code I don't understand. </p>\n\n<p>def preprocess(self, img):\n     gray = skimage.color.rgb2gray(img.astype('uint8'))\n            img = skimage.color.gray2rgb(gray)\n            img *= 255.\n            return img</p>\n\n<p>After you do <code>rgb2gray</code>, then you do <code>gray2rgb</code>. Why?Is this not the same as doing nothing?\n And also <code>img*=255</code>  what's that mean?\nThanks Zheng</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 300133,
          "author_name": "kdziedzic66",
          "author_url": "",
          "post_date": "03/21/2018 10:29:16",
          "content": "<p>The code converts an image to grayscale, than it converts grayscale image back to RGB, but after those steps an image has 3 channels with the same values. The reason of converting image back to 3 channel image is that the pre-trained weights on coco dataset are for 3 channel images. </p>\n\n<p>Kind regards,\nKrzysztof</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 300140,
          "author_name": "kdziedzic66",
          "author_url": "",
          "post_date": "03/21/2018 10:31:02",
          "content": "<p>Which OS are You using? The code has been tested under Linux</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 300184,
          "author_name": "mdlszhengli",
          "author_url": "",
          "post_date": "03/21/2018 11:37:17",
          "content": "<p>Thanks for your reply. I get it. My OS is Ubuntu 16.04.\nI still don't understand why you do this <code>img*=255</code>\nI have run this code separately on my jupyter and it shows</p>\n\n<pre><code>Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n</code></pre>\n\n<p>It seems somethings worng, but it actually works well on this whole project.\nThanks Zheng</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 300349,
          "author_name": "kdziedzic66",
          "author_url": "",
          "post_date": "03/21/2018 14:48:20",
          "content": "<p>I multiply image by 255, cause colorspace conversion in skimage scales image to range [0., 1.] while matterport implementation of Mask RCNN expects pixel values to be in range [0, 255.] from which the values of mean pixel (defined in the config class) are subtracted. </p>\n\n<p>Kind regards,\nKrzysztof</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 300543,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/21/2018 17:46:03",
          "content": "<p>Hi YaGana,</p>\n\n<p>My ideas that might help:</p>\n\n<ol>\n<li>make sure that you are on branch <code>mask_rcnn_notebook</code> (latest version)</li>\n<li>make sure that you are executing <code>neptune login</code> first. Then, from within repo <code>neptune data upload Mask_RCNN --recursive --project-key DSB</code></li>\n</ol>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 303083,
          "author_name": "mdlszhengli",
          "author_url": "",
          "post_date": "03/25/2018 13:17:02",
          "content": "<p>Thanks for you rely.  That helps me a lot. After I have read the main.ipynb code, I found that there isn't very different from another code I use which is <a href=\"https://github.com/killthekitten/kaggle-ds-bowl-2018-baseline\">https://github.com/killthekitten/kaggle-ds-bowl-2018-baseline</a> . I modified the parameters of my code according to the parameters in main.ipynb , but I couldn't got the same result. It's lower than 0.4. But in your result, you just got 0.439 LB. How do you do that? In addition to your main.ipynb, are there any important changes that have increased your score?\nThanks Zheng</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 304153,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/27/2018 05:10:07",
          "content": "<p>Hi Zheng,</p>\n\n<p>Everything we have regarding <em>mask-RCNN</em> is on our repository, branch <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook\">mask_rcnn_notebook</a>. I didn't take a closer look at the Nikolay's code yet. Maybe try to run our notebook with default parameters and more epochs (we set it to 10 for presentation purposes -&gt; try more). Make sure that you have the latest version of this branch (latest commit on Mar 21st).</p>\n\n<p>Note that final result may rely on train-validation split and experiment configuration: check <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/mask_rcnn_notebook/main.ipynb\">DsbConfig class</a> (8th code cell).</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310745,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "04/08/2018 13:22:43",
          "content": "<p>Hi Kamil,</p>\n\n<p>I finally got round to running your code on Neptune this week. The main.ipynb was running for 4 days and then crashed today. Can you help?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310759,
          "author_name": "aaxida",
          "author_url": "",
          "post_date": "04/08/2018 14:07:18",
          "content": "<p>Hi,YaGana\nDo you mean that you have been running the mask_rcnn_notebook version code for more than 96 hours on the Neptune?I was going to run this on the Neptune,but I am not sure how long will it costs.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310826,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "04/08/2018 18:23:19",
          "content": "<p>Yes @Axida, it was running for 4 days and have done 7 epochs up to that time before the notebook crashed. I did not do any modification to Kamil's code. So I have no idea why that happened hence my post above. And yes it has cost me money.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310902,
          "author_name": "aaxida",
          "author_url": "",
          "post_date": "04/09/2018 02:15:52",
          "content": "<p>Thank you so much for your reply.@YaGana\nI would cost lots of money without your timely reply.Maybe Kamil could help you.Have you tried other Kamil's code?I see there are many ways and pipelines on the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/\">https://github.com/neptune-ml/data-science-bowl-2018/</a> .</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310920,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "04/09/2018 03:13:38",
          "content": "<p>You are welcome @Axida. No, I will not be trying out any of Kamil's codes. Mine performs better anyway plus I only tried it to see how good Neptune is compared to the cloud service I normally use and it failed the test.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 310940,
          "author_name": "aaxida",
          "author_url": "",
          "post_date": "04/09/2018 04:33:00",
          "content": "<p>I see.@YaGana I am very new to kaggle,and I find it seems a little difficult to run codes on a CPU.Could you please tell me which cloud service are you using?i will appreciate it very much.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 311612,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/10/2018 11:18:31",
          "content": "<p>Hey @YaGana and @Axida,</p>\n\n<ol>\n<li>I assume that you work on <code>mask_rcnn_notebook</code> branch. Is that correct?</li>\n<li>Can you provide entire error message, so that I will have some input to read?</li>\n<li>update <code>neptune-cli</code>, by running this in your virtualenv (if you use it): <code>pip3 install neptune-cli -U</code></li>\n</ol>\n\n<p>@Axida this competition is \"images competition\" so using GPUs to train your models is highly recommended. If you do not own any GPUs, one solution is to look at cloud providers and pick one that offers some.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 311649,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "04/10/2018 12:31:53",
          "content": "<p>Hi Kamil, </p>\n\n<p>Yes 1 is correct and I have the latest neptune-cli as well as the code.</p>\n\n<p>The message was that the notebook crashed and cannot connect. I did not run it locally, I sent it to the Neptune cloud.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 311673,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/10/2018 13:34:58",
          "content": "<p>Hey YaGana,</p>\n\n<p>Thanks for quick answer. I will try to take a closer look at it :)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 316236,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "04/18/2018 14:08:43",
          "content": "<p>Although I have posted it in the congratulations to the top5 thread , I want to say it here.</p>\n\n<p>Jakub, Kamil, Krzysztof, and  Andrzej thank you very much for sharing your various solutions. I have learnt a lot from them.</p>\n\n<p>@Axida, sorry I did not see your question earlier. I use Floydhub as my cloud service and google colab for experimentation.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 320805,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/29/2018 22:41:09",
          "content": "<p>Hey @YaGana,</p>\n\n<p>Thank you for your nice comments here! We are looking forward to meet you in future competitions here on Kaggle :)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 296190,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "03/14/2018 21:52:40",
      "content": "<p>Hey guys,</p>\n\n<p>Together with Kuba we will host a <a href=\"https://neptune.ml/webinar/\">webinar</a> about our Open Solution. If you want to hear more about our work, plans for the future or ask questions directly, please join us tomorrow at 12-1pm PDT (3-4pm EDT, 8-9pm CET).</p>\n\n<p>Here is a <a href=\"https://neptune.ml/webinar/\">link to the registration page</a>.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": [
        {
          "id": 296570,
          "author_name": "joker0102",
          "author_url": "",
          "post_date": "03/15/2018 13:01:00",
          "content": "<p>goods</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 297045,
          "author_name": "sheriytm",
          "author_url": "",
          "post_date": "03/16/2018 06:14:31",
          "content": "<p>Hi Kamil,</p>\n\n<p>Thanks for the webinars. I registered for both but unfortunately unscheduled meetings got in the way and I could not attend. Do you have a link to recordings of them? If not when will you be doing that again?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 300539,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/21/2018 17:37:26",
          "content": "<p>Hi @YaGana,</p>\n\n<p>Thank you! We will publish webinars, however we still need to decide about the best way to do it.</p>\n\n<p>Also we are going to make it regularly once a week. Next webinar is tomorrow, March 22nd at 4:15pm CET.</p>\n\n<p>Feel free to join us ;-)</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 301487,
          "author_name": "toshif",
          "author_url": "",
          "post_date": "03/22/2018 20:16:53",
          "content": "<p>Oh I just missed it ...</p>\n\n<p>A recorded version would be great. I would love to watch it !</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 304159,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/27/2018 05:35:37",
          "content": "<p>Hi toshif,</p>\n\n<p>We will host another webinar on April 4th, about the latest advances in our solution. Feel free to join! ;-) We can also answer your questions during the webinar.</p>\n\n<p>Note, that we think about the best way to publish them. I will let you know as soon as they become available.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 296967,
      "author_name": "hengck23",
      "author_url": "",
      "post_date": "03/16/2018 03:05:39",
      "content": "<p>Thanks for holding the webinar yesterday. I really enjoy it and it is a great help for us! Looking forward the next one and the new modules to be released!</p>",
      "votes": null,
      "replies": [
        {
          "id": 298304,
          "author_name": "jakubczakon",
          "author_url": "",
          "post_date": "03/19/2018 10:13:07",
          "content": "<p>Thank you for joining us!</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 296968,
      "author_name": "",
      "author_url": "",
      "post_date": "03/16/2018 03:05:51",
      "content": "<p>Is it possible to run code locally? I'm stuck on:</p>\n\n<blockquote>\n  <p>from deepsense import neptune</p>\n</blockquote>",
      "votes": null,
      "replies": [
        {
          "id": 298282,
          "author_name": "jakubczakon",
          "author_url": "",
          "post_date": "03/19/2018 09:03:39",
          "content": "<p>Hi, you need to install this package by <code>pip install neptune-cli</code></p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 301137,
          "author_name": "mariosfourn",
          "author_url": "",
          "post_date": "03/22/2018 11:12:24",
          "content": "<p>I'm also a bit stuck. I get error: \"public/dsb_2018_data/stage1_metadata.csv' does not exist\"</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 301210,
          "author_name": "jakubczakon",
          "author_url": "",
          "post_date": "03/22/2018 13:32:45",
          "content": "<p>@Marios </p>\n\n<p>If you are running it in the cloud than stage1_metadata.csv is generated already and mounted in <code>/public/dsb_2018_data</code> </p>\n\n<p>If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:</p>\n\n<p><code>neptune run -- prepare_metadata</code> or <code>python run main.py -- prepare_metadata</code> just make sure to change paths in the <code>neptune.yaml</code> configuration file.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 301267,
          "author_name": "mariosfourn",
          "author_url": "",
          "post_date": "03/22/2018 14:53:19",
          "content": "<p>every neptune command I execute on the file returns the following error: Project with key 'DSB' not found.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 301405,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/22/2018 17:50:46",
          "content": "<p>Hi @Marios,</p>\n\n<p>First, log in to the <a href=\"https://neptune.ml/\">neptune.ml</a> and create project with name: <code>Data Science Bowl 2018</code> and project key <code>DSB</code>. Then, you will be ready to go ;-)</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 302664,
          "author_name": "mariosfourn",
          "author_url": "",
          "post_date": "03/24/2018 14:46:12",
          "content": "<p>Still struggling to run locally. When I <code>run neptune run -- prepare_metadata</code> I get an error : FileNotFoundError: [Errno 2] No such file or directory: '/public/dsb_2018_data/stage1_train'</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 304157,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/27/2018 05:27:13",
          "content": "<p>Hey @Marios,</p>\n\n<p>This error is caused by incorrect directories. When running your code locally, make sure that you put correct parameters in the <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25\">neptune.yaml</a>. For local execution:</p>\n\n<ol>\n<li>comment entire <code>Cloud Environment</code> block</li>\n<li>uncomment <code>Local Environment</code> block and put your directories there</li>\n<li>run: <code>neptune run main.py -- prepare_metadata</code> and <code>neptune run main.py -- prepare_masks</code> (if you need).</li>\n</ol>\n\n<p>Make sure that you have the latest version of the code.</p>\n\n<p>If you want to run in the cloud, do not worry about <em>metadata</em> or masks. They are already in the cloud ;)</p>\n\n<p>Cheers,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 298244,
      "author_name": "zjuyang",
      "author_url": "",
      "post_date": "03/19/2018 06:43:56",
      "content": "<p>Thanks Kamil. Could you tell me how to generate \"stage1_metadata.csv\" with keras？ I am not familiar with pytorch and my system is windows 10. </p>",
      "votes": null,
      "replies": [
        {
          "id": 300547,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/21/2018 17:52:33",
          "content": "<p>Hey @zjuyang,</p>\n\n<ol>\n<li>Follow <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/wiki/Installation\">Installation</a> instructions.</li>\n<li>Prepare <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L24\">config.yaml</a>:\n<ul><li>comment <em>Cloud Environment</em> block</li>\n<li>uncomment <em>Local Environment</em> block and put your local dirs</li></ul></li>\n<li>Do this: <code>neptune run main.py -- prepare_metadata</code></li>\n</ol>\n\n<p>For metadata you do not need keras. Note that we work on Ubuntu 16.04.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 298247,
      "author_name": "john1231983",
      "author_url": "",
      "post_date": "03/19/2018 06:53:22",
      "content": "<p>Hi, Any postprocessing for maskrcnn? I have used dilation but it hurts my perfomance. Thanks</p>",
      "votes": null,
      "replies": [
        {
          "id": 298303,
          "author_name": "jakubczakon",
          "author_url": "",
          "post_date": "03/19/2018 10:12:33",
          "content": "<p>Haven't worked on that yet. We tried using mask-rcnn to get both masks and contours (which would help with postprocessing) but with no success so far. </p>\n\n<p>I might go ahead and try to post-process the outputs from the mask-rcnn we have in the notebook. If anything good comes out of that I will post a kernel with all the postprocessing explained.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 298268,
      "author_name": "why94nb",
      "author_url": "",
      "post_date": "03/19/2018 08:05:51",
      "content": "<p>Where is metadata....</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 298297,
      "author_name": "jakubczakon",
      "author_url": "",
      "post_date": "03/19/2018 09:42:01",
      "content": "<p>@HaoyuWang @zjuyang.\n* If you are running it in the cloud than <code>stage1_metadata.csv</code> is generated already and mounted in <code>/public/dsb_2018_data</code>\n* If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:</p>\n\n<p><code>neptune run -- prepare_metadata</code> or\n<code>python run main.py -- prepare_metadata</code> \njust make sure to change paths in the <code>neptune.yaml</code> configuration file.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 300301,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "03/21/2018 13:53:42",
      "content": "<p>Hi,</p>\n\n<p>Tomorrow (Thu, March 22nd) at 4:15pm CET we will host <a href=\"https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar\">webinar</a> about our code and approach in the <a href=\"https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge\">Toxic Comment Classification Challenge</a>.</p>\n\n<p><a href=\"https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar\">Feel free to join us</a> -&gt; we can also address our DSB work during the webinar ;-)</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 303025,
      "author_name": "chandanverma",
      "author_url": "",
      "post_date": "03/25/2018 09:37:12",
      "content": "<p>Can someone provide link to download stage1_metadata.csv file?</p>",
      "votes": null,
      "replies": [
        {
          "id": 303962,
          "author_name": "burhanusm",
          "author_url": "",
          "post_date": "03/26/2018 20:19:20",
          "content": "<p>stage1_metadata.csv contain paths to your train and test images. Hence it should be generated locally for your machine. It would be different from machine to machine.\nYou could easily generate it by typing :\n <code>python run main.py -- prepare_metadata</code>\nfrom your working directory</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 304147,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/27/2018 04:44:17",
          "content": "<p>Hey Chandan, Burhan,</p>\n\n<p>@Burhan thanks for your answer! Let me add that in order to generate them locally, you need to set paths in the configuration file: <a href=\"https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25\">neptune.yaml</a>. Make sure that you commented <code>Cloud Environment</code> block and uncommented <code>Local Environment</code> block, where you put your directories. Then simply run <code>neptune run main.py -- prepare_metadata</code>.</p>\n\n<p>Also, if you need masks, you can generate them as well: <code>neptune run main.py -- prepare_masks</code></p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 305428,
      "author_name": "dskswu",
      "author_url": "",
      "post_date": "03/28/2018 21:12:03",
      "content": "<p>@ Kamil</p>\n\n<p>Do we have to use Neptune for your open solution? Can I run on a different solution? </p>",
      "votes": null,
      "replies": [
        {
          "id": 305441,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/28/2018 21:51:40",
          "content": "<p>Hi @William,</p>\n\n<p>Of course not. You can run everything as a regular Python script, for example: <code>python main.py -- train_evaluate_predict_pipeline --pipeline_name unet_multitask</code>.</p>\n\n<p>Cheers,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 305714,
      "author_name": "zhouzhiguang",
      "author_url": "",
      "post_date": "03/29/2018 10:00:02",
      "content": "<p>hi,kamil.\nOn branch mask_rcnn_notebook,data augmentation is not be used.Is it right?</p>",
      "votes": null,
      "replies": [
        {
          "id": 305736,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/29/2018 10:29:28",
          "content": "<p>Hi,</p>\n\n<p>Correct! We just prepare images to be grayscale and each pixel takes values from 0 to 255.</p>\n\n<p>Cheers,</p>\n\n<p>KK</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 305744,
          "author_name": "zhouzhiguang",
          "author_url": "",
          "post_date": "03/29/2018 10:35:18",
          "content": "<p>Thank you.\nMaybe data augmentation can improve performance.I will try it.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 305745,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "03/29/2018 10:36:13",
          "content": "<p>Nice! Let us know about the results :-)</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 312255,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "04/11/2018 13:19:24",
      "content": "<p>Hi guys,</p>\n\n<p>As DSB'18 approaches <em>stage 2</em>, everybody is super-busy with their final model tweaking. Please keep in mind that the deadline for uploading the model is 11:59 PM UTC ;-)</p>\n\n<p>We are about to upload our final solution that is currently available on <code>dev-solution-5</code> branch on our <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/dev-solution-5\">repo</a>. We are still playing with parameters, however the codebase is pretty much fixed.</p>\n\n<p>In short we train two U-Nets: one for estimating nuclei size and second for segmentation purposes. We train on image's patches, use lots of post-processing tricks and some basic augmentations.</p>\n\n<p>Best of luck with your model!</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": [
        {
          "id": 313560,
          "author_name": "lfwei27",
          "author_url": "",
          "post_date": "04/13/2018 13:32:43",
          "content": "<p>Hi kamil\nDo you have the directory of stage 2 test image on neptune ml cloud environment?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 314099,
          "author_name": "aaxida",
          "author_url": "",
          "post_date": "04/14/2018 15:54:13",
          "content": "<p>Hi@kamil\nCould we still use your open solution in the stage 2 by using neptune.ml ?If so,How should I do then?\nShould I change the neptune.yaml code for doing that?\nThanks for your time.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 314223,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/14/2018 22:40:44",
          "content": "<p>Hi @Ifwei,</p>\n\n<p>Yes, we have uploaded <code>stage2_test_final</code> to the <code>/public/dsb_2018_data</code> directory on neptune cloud. Original <code>stage2_test_final.zip</code> is there. Unzipped images are under the <code>/public/dsb_2018_data/stage2_test</code> directory.</p>\n\n<p>Also, you can find this directory useful: <code>/public/dsb_2018_data/external_data</code> with three external datasets:</p>\n\n<ol>\n<li><a href=\"https://data.broadinstitute.org/bbbc/BBBC006/\">https://data.broadinstitute.org/bbbc/BBBC006/</a></li>\n<li><a href=\"https://www.kaggle.com/voglinio/external-h-e-data-with-mask-annotations/data\">https://www.kaggle.com/voglinio/external-h-e-data-with-mask-annotations/data</a></li>\n<li>our additional dataset, in which we have removed nuclei from stage1_train data -&gt; this is to have more images with artifacts.</li>\n</ol>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 314230,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/14/2018 23:03:16",
          "content": "<p>Hi @Axida,</p>\n\n<p>Yes, you can use our pipeline for stage 2. Our final solution is on the <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution\">final-solution</a> branch. You can run everything from start to finish, by running single script <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/final-solution/run_end_to_end.sh\">run_end_to_end.sh</a>. Just make sure that you have modified <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution/configs_end_to_end\">configs-end-to-end</a> accordingly, I mean lines 25 to 40 (directories) and line 10 (requirements file).</p>\n\n<p>Let me know if you have any additional questions :)</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 314835,
          "author_name": "aaxida",
          "author_url": "",
          "post_date": "04/16/2018 10:48:02",
          "content": "<p>Hi@kamil \nThanks for your reply.I was trying to run your code on the Neptune,but I encounter this problem,and do not know how to deal with that.Could you give me a hand?</p>\n\n<p>37.082013   Traceback (most recent call last):\n37.082164   File \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 103, in execute\n37.082299   execfile(job_filepath, job_globals)\n37.08243    File \"/usr/local/lib/python3.6/dist-packages/past/builtins/misc.py\", line 82, in execfile\n37.082561   exec_(code, myglobals, mylocals)\n37.082689   File \"main.py\", line 298, in \n37.082853   action()\n37.082997   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 722, in <strong>call</strong>\n37.083128   return self.main(*args, **kwargs)\n37.083256   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 697, in main\n37.083385   rv = self.invoke(ctx)\n37.083513   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 1066, in invoke\n37.083655   return _process_result(sub_ctx.command.invoke(sub_ctx))\n37.083785   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 895, in invoke\n37.083912   return ctx.invoke(self.callback, **ctx.params)\n37.084049   File \"/usr/local/lib/python3.6/dist-packages/click/core.py\", line 535, in invoke\n37.084179   return callback(*args, **kwargs)\n37.084309   File \"main.py\", line 266, in train_evaluate_predict_pipeline\n37.084438   _train_pipeline(pipeline_name, validation_size, dev_mode, simple_cv)\n37.084583   File \"main.py\", line 109, in _train_pipeline\n37.084714   meta = pd.read_csv(os.path.join(params.meta_dir, 'stage{}_metadata.csv'.format(params.competition_stage)))\n37.084842   AttributeError: 'ContextParams' object has no attribute 'competition_stage'\n37.084995 <br>\n37.085141   During handling of the above exception, another exception occurred:\n37.085281 <br>\n37.085415   Traceback (most recent call last):\n37.085555   File \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 109, in \n37.085686   execute()\n37.085831   File \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 105, in execute\n37.085968   raise ExperimentExecutionException(\"Exception during experiment execution\", ex)\n37.08611    deepsense.neptune.exceptions.ExperimentExecutionException: ('Exception during experiment execution', AttributeError(\"'ContextParams' object has no attribute 'competition_stage'\",))</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 315004,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/16/2018 16:16:23",
          "content": "<p>Hi @Axida,</p>\n\n<p>If you work with code from the <code>final-solution</code> branch please work with configs from the <code>configs-end-to-end</code> directory, since they have competition stage added as parameter. If this is not your case, please provide more detailed info, such as: which branch did you checkout? What is you run command?</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 315063,
          "author_name": "aaxida",
          "author_url": "",
          "post_date": "04/16/2018 17:52:13",
          "content": "<p>Hi@kamil</p>\n\n<p>I chose the final-solution branch,and modified configs-end-to-end as you said.I mean,change comment in lines 25 to 40 and line 10.But I sill couldn't deal with that.I started CMD in the open-solution-data-science-bowl-2018-final-solution folder and run the command $ neptune login\n$ neptune send main.py --worker gcp-gpu-large --environment pytorch-0.2.0-gpu-py3 -- train_evaluate_predict_pipeline --pipeline_name unet_multitask   Am I right?\nThere are limited time for me to finish training,I might be late for the deadline.But I have to say thanks to you,I've learned a lot from what you have done.Thanks!\nAll the best.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 312313,
      "author_name": "kkaczmarek",
      "author_url": "",
      "post_date": "04/11/2018 14:53:53",
      "content": "<p>Hey, I forgot to mention that tomorrow, April 12th (6:30pm CEST = 9:30am PDT = 12:30pm EDT) together with Kuba we will be hosting a <a href=\"https://minerva.ml/\">webinar</a>. We are going to wrap up our participation, show some lessons learned and plans for the future.</p>\n\n<p>And of course answer all questions :-)</p>\n\n<p>Please join if you wish.</p>\n\n<p>Best,</p>\n\n<p>Kamil</p>",
      "votes": null,
      "replies": [
        {
          "id": 312487,
          "author_name": "yipcma",
          "author_url": "",
          "post_date": "04/11/2018 20:45:22",
          "content": "<p>@kamil look forward to the sharing session. I've a quick question: how do you determine batch size? And how best to optimize it for the GPU's memory? Some quick hint would be great. currently i see it's at around 6GB at training. What should I tweak to increase/decrease that and what's the ratio?</p>\n\n<p>PS: where's the link to join tomorrow's webinar?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 312505,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/11/2018 21:42:33",
          "content": "<p>Hi @Andrew,</p>\n\n<p>In short we try to fit as much as possible into GPU. We determine it by trial and error. If your batch does not fit into GPU you will get CUDA memory error. If your batch is too small you can observe that only small fraction of your GPU's memory is used.</p>\n\n<p>In general try to fit as much as possible, because larger batches leads to smaller variances -&gt; more stable training.</p>\n\n<p>In our code play with <code>batch_size_train</code> and <code>batch_size_inference</code> <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L65\">neptune.yaml:L64</a>. Another thing is to manipulate images size that are collected into batch: <code>image_h</code> and <code>image_w</code> <a href=\"https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L50\">neptune.yaml:L50</a>.</p>\n\n<p>Link is <a href=\"https://minerva.ml/\">https://minerva.ml</a>, just register and you will receive e-mail with details.</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 312513,
          "author_name": "yipcma",
          "author_url": "",
          "post_date": "04/11/2018 22:04:59",
          "content": "<p>Thanks @kamil. I'll give it a try :) </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 313561,
      "author_name": "hengck23",
      "author_url": "",
      "post_date": "04/13/2018 13:37:33",
      "content": "<p>Thank you @kamil, Jakub Czakon and the deepsense.ai team, for open sourcing their code and providing support. It is a very great effort. I learned a lot from reading your code. Thanks a lot!</p>",
      "votes": null,
      "replies": [
        {
          "id": 313615,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/13/2018 15:16:18",
          "content": "<p>Hey @Heng CherKeng,</p>\n\n<p>All created with &lt;3 with our friends from <a href=\"https://deepsense.ai/\">deepsense.ai</a>.</p>\n\n<p>You did a huge amount of work from both <em>community</em> and <em>leaderboard</em> perspectives! I look forward to be a part of another competition that you participate in :-)</p>\n\n<p>All the best,</p>\n\n<p>Kamil</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 314969,
          "author_name": "jakubczakon",
          "author_url": "",
          "post_date": "04/16/2018 15:24:58",
          "content": "<p>Thank you so much @Heng CherKeng ,it means a lot coming from you. </p>\n\n<p>Best of luck today!</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 316131,
      "author_name": "andre1233",
      "author_url": "",
      "post_date": "04/18/2018 08:27:53",
      "content": "<p>Thank you Jakub, Kamil, Krzysztof, Andrzej  Good job pzd</p>",
      "votes": null,
      "replies": [
        {
          "id": 316205,
          "author_name": "kkaczmarek",
          "author_url": "",
          "post_date": "04/18/2018 12:23:08",
          "content": "<p>Thanks Andrzej, we are going to participate in more competitions and deliver more interesting stuff :)</p>\n\n<p>Best,</p>\n\n<p>KK</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "269413": "Hi,\n\nTogether with Jakub Czakon and supported by the [deepsense.ai](https://deepsense.ai) team, we are going to propose something quite unusual to this competition. Namely, we want to open not only the code, but also the process of working on this competition. We believe that data science community may benefit from learning from one another, so we want to share our experiences. Such action can make Data Science Bowl even more interesting.\n\nWe have two main goals:\n\n* Deliver open, ready-to-use and extendable solution to this competition. This solution should - by itself - establish solid benchmark, as well as provide good base for your custom ideas and experiments.\n* Encourage more Kagglers to start working on the Data Science Bowl, test their ideas and learn advanced data science.\n\nIn this topic, you will read about open solution updates, new ideas and experiments. Feel invited to participate in building this. Let us know, if you want to add your part to it.\n\nLater this week, we are going to release first version of the open solution. Hence, you may want to subscribe to this topic to stay updated.\n\nIt will be an exciting time!\n\n:-)",
    "269459": "Thanks for the idea of open journal. I definitely love to subscribe to learn!",
    "269461": "Hi xiao,\n\nThanks! Stay tuned ;-)",
    "269467": "Hey Kamil!\n\nThis sounds really great - looking forward to the initial version of the notebook! Would you be so kind please and share which deep learning framework you are planning on using for this?",
    "269516": "Interesting proposal. I would like to tag along on this.",
    "269595": "Sounds good! Let us make solution and improve it iteratively!",
    "269609": "OK,LIKE TO BE PART OF THIS",
    "269615": "I am hesitated to join this since I am just a newbie, but with this open notebook, I decided to tag along see how far I can go / understand. Thanks for sharing the knowledge.",
    "269722": "Sounds really great let do it",
    "269837": "Hi Radek,\n\nWe are going to use PyTorch (latest) with Python 3.5. Besides this, we will use standard data science packages (all will be listed in the requirements file).",
    "269839": "Hi Pip,\n\nDo not be worried about you experience in ML / Deep Learning. Here, we are going to build our solution iteratively, so I think that you will be able to follow.",
    "269842": "Ah this is terrific :) PyTorch is what I want to focus predominantly on myself as well, though wouldn't mind if you said keras :) \n\nEither way, this is shaping up really great. Thank you for your reply and looking forward to the notebook!",
    "269845": "Just wanted to let you know that this will be entire python-based project, not only notebook. They are good for exploration / visualization purposes, however, for training neural nets, making predictions, ensembling and so on, we prefer not to do it in notebooks.",
    "269880": "Thank you for creating this journal.",
    "269896": "Interesting !!! Subscribed for learn",
    "269908": "Looking forward to future solutions. BTW, Is it consideration of efficiency to train with a Python-based project rather than a notebook?",
    "269955": "This really helps! Thanks for sharing.",
    "270000": "Hi Taka,\nI think that Notebooks are great for exploration, visualization and rapid experimentation. You may want to use notebooks to quickly test various approaches or convince yourself about some idea. It is tool for the interactive work.\nWhen you want to run series of (controlled) experiments, it is usually better to have Python-based implementation. This is especially true at the later stage of the competition, when your solution is quite complex.",
    "270006": "Ah, I think I know what you might be referring to Kamil :) In my case it has been basically create a monster notebook and do 'run all cells' at the end.\n\nPlus, it will be nice to have this version controlled - seems you have to take additional steps for notebooks to play nicely with git. \n\nAnyhow, I keep an open mind and really look forward to tagging along and learning.\n\nThx a lot for doing this!",
    "270022": "Great idea!!! Thanks for this initiative.",
    "270171": "Thank you very much for sharing, this is definitely great opportunity for me to learn.",
    "270269": "kamil I think I got it. At the later stage of the competition, we have to do it all again on the new test data, it's better to build a pipeline in advance. Thanks for your explanation.",
    "270273": "radek, sorry about my mistake, I'm not used to Kaggle's comments .\n\nI'm exactly the same case with you, several monster notebooks. For now, I just make backups for version control. I'll try git next time.",
    "270376": "Sounds good, even I would like to contribute to it.",
    "270450": "Hi Mani,\n\nI am very happy to hear that. This week we are going to release first version of the solution. Then, feel free to contact us, so that we can discuss your potential contributions!\n\nBest,\n\nKamil",
    "270453": "Taka, @radek,\n\nIndeed, it is good practice to have version control and keep your experiments well controlled. Building analysis pipeline is - in my opinion - also beneficial because you can apply changes to the selected steps, whereas remaining parts are left unchanged.",
    "270524": "kamil \n\nThanks for the further explanation. I'll try it :)",
    "270605": "Has anyone thought about using VNET for this comp?",
    "270620": "Thanks for sharing this. Subscribed for learn.",
    "270755": "It's a great idea. Subscribed for learn!",
    "270764": "That is very good idea.\n@Kamil: I would like to contribute to this.",
    "270806": "I am interested as well .. Please include me as well",
    "270811": "Subscribed! Interested to follow along.",
    "270968": "Actually, I was going to focus on one competition and looking one competition. After reading your discussion, I decided to choose this competition! I will keep your update! I'm looking forward to learn many special things about deep learning and data science from this competition. Thanks for your sharing and discussion.",
    "271087": "This is a great idea. Thanks for doing this.",
    "272086": "Thanks for this and will be happy to be a part of it",
    "272163": "Such a great idea! Looking forward to following the advances for learning.",
    "272317": "Hi Kamil, this is an awesome idea. We are all here to learn. I'm personally here not to win as much as to learn from great teams like yours. This is my first competition and in fact, my early steps in deep learning. I come from OR with a decent knowledge of traditional machine learning algorithms. Looking forward to having a mutual learning exchange!\nThanks for the initiaive!\nMJ",
    "272764": "Hey Bill,\n\nCan you describe VNET in more detail?",
    "272768": "Hey Majid,\n\nThis is great. I really appreciate this! As soon as we will release first solution, we can discuss how you would like to contribute your piece to it. I think that there are numerous ways that might be interesting to you.\n\nStay tuned!\n\nAll the Best,\n\nKamil",
    "272770": "Hi keeppace,\n\nJust subscribe to this topic, so that you will not miss new posts ;-)",
    "272771": "Hey YouHan,\n\nGreat, I hope that you will find our Journal useful.",
    "272774": "Hi MJ,\n\nThanks!\n\nTraditional ML experience is always useful. Thanks to this you will easily learn about ideas behind deep learning. Moreover, you may want to add your piece to open solution that uses traditional ML algorithms.\n\nBest,\n\nKamil",
    "273017": "Thanks folks.  Sounds like a great idea.",
    "273905": "Wow, cool idea! Look forward to be part of this!",
    "274227": "Great...",
    "274576": "Thanks Kamal, i support your opinion its it useful for others its great.",
    "275773": "Any ETA for the First Workbook ?",
    "276029": "Hey Kamil,\n\nHere is the link to VNET https://arxiv.org/abs/1606.04797",
    "276271": "This is a great idea and will help people like me who are here to learn. How can we contribute and are the discussions going to be on an open kernel on kaggle or here?",
    "276566": "Hi Jerry,\n\nWe will host public GitHub project with the code and descriptions in GitHub's Wiki. Upon publication of the first solution, you are welcome to use this code to run experiments - we will explain how to do it. You can also suggest your ideas for improvements, such as preprocessing, postprocessing or network architectures. You can also report bugs or errors if you will find any.\n\nMain discussion will be here in this thread. Besides this we consider GitHub's Issues and pull requests as a good way of communication ;-)",
    "276567": "Hi keeppace,\n\nTomorrow we will publish first solution and description of the second one (which will be an improvement of the first solution).\n\nBest,\n\nKamil",
    "276569": "Hey Willam,\n\nIt seems that this paper targets 3D (volumetric) imaging data - here we have images that sits in two dimensions.\n\nDo you have in mind other architectures that might be worth to try in this competition? U-Net seems to be pretty popular among participants.\n\nBest,\n\nKamil",
    "276590": "U-Net is a good model. However, you may need multiple models to climb up the leaderboard.",
    "276776": "Hi Willam,\n\nI agree. Winning solutions are ensembles of multiple models. However, [U-Net](https://arxiv.org/abs/1505.04597) is capable to score above 0.3 in this competition, which is decent starting point for further iterations.\n\nBest,\n\nKamil",
    "276784": "Agreed!",
    "276883": "Hi all,\n\nIn short: https://github.com/neptune-ml/data-science-bowl-2018\n\nFirst version is end-to-end training with U-Net. Starts with raw data and ends with Kaggle submit. It is described here: https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet .\n\nUser help is here: https://github.com/neptune-ml/data-science-bowl-2018/wiki\n\nWithout any parameter search and without augmentation we do LB 0.302.\n\n**next steps**\n\n* Parameter search over U-Net architecture and training (do this too!)\n* Add images augmentation\n\nWe are very open to your feedback, comments, GitHub Issues, PRs!\n\nHappy training,\n\nJakub &amp; Kamil",
    "277203": "Update: We have tuned some parameters, and now we do LB 0.320. It seems that grid search works well in this context.\n\nBest,\n\nKamil",
    "281013": "Hi,\n\n`Solution 2` is ready to use on the repository: https://github.com/neptune-ml/data-science-bowl-2018. It is multi-output U-Net, that besides segmentation learns nuclei centers and contours.\n\nDefault experiment makes `LB 0.371` and it can be improved by appropriate parameter search. You can check the code and practical instructions on our [dsb-repo](https://github.com/neptune-ml/data-science-bowl-2018) and associated [dsb-wiki](https://github.com/neptune-ml/data-science-bowl-2018/wiki/Multioutput-UNet).\n\nBest,\n\nKamil",
    "281055": "Thanks Kamil, great work! Any estimate on time needed to run on gcp-gpu-large/ gcp-gpu-medium?Is gcp-gpu-large essential or can we run it on gcp-gpu-medium also?",
    "281101": "Hi Kamil, I see your development has been mainly focused on the U-Net, are you planning on working with Mask-RCNN in the future? Or do you think this probably can be better solved using a U-Net-like architecture with advanced post processing or the custom architecture like you made?",
    "281118": "It is a nice idea. I have a question here. In testing, for each image, we have three outputs: segmentation, centers and contours. How you combine these three outputs with watershed and get the final segmentation? Thank you so much.",
    "281360": "Hi,\n\nSmall update: we now do [LB 0.372] which is our new best score, generated with `solution 2`.\n\nEDIT 1: Our current best is [LB 0.378] using `solution 2` codebase.\n\nEDIT 2: Now we do [LB 0.391]. We are obtaining better and better LB score by searching parameters space.\n\nBest,\n\nKamil",
    "281390": "Hi @gavrand,\n\nThank you!\n\nThe difference between `gcp-gpu-medium` and `gcp-gpu-large` is number of vCPU: medium has 4; large has 8. GPU is the same (12GB).\n\nWe do images augmentation, which consumes CPUs, hence the more CPUs you have the faster is your training.\n\nI have epoch time around 90 seconds with 6 vCPUs.\n\nBest,\n\nKamil",
    "281403": "Hi @LivingProgram,\n\nIn short, we will implement Mask-RCNN in this competition :-)\n\nHowever, at this point of the competition we can improve our LB score with custom U-Net and good post-processing. We still have some ideas on how to do it. Multi-output U-Net has great potential here, so we want to spend some extra time pushing it to the limits. After that, we will move towards new ideas, that is Mask-RCNN.\n\nKamil",
    "281450": "Hey @Zhen,\n\nIn the post-processing we do not use centers. At this point it is U-Net's regularizer.\n\nHow we calculate final segmentation?\n\n1. Subtract contours from segmentation. As a result, you have \"eroded mask\", which is binary.\n\n2. The non-zero elements in the eroded mask are used as watershed markers. Check [markers for watershed transform](http://scikit-image.org/docs/dev/auto_examples/segmentation/plot_marked_watershed.html) for intuition about it.\n\n3. Calculate distances in the eroded mask -&gt; this transformation yields distances matrix that we take with negative sign. Since eroded mask just 2D array, we calculate minimal distance of the given non-zero entry to the nearest zero.\n\n4. Use markers and distances matrix to run [watershed](http://scikit-image.org/docs/dev/api/skimage.morphology.html#skimage.morphology.watershed).\n\nAll the best,\n\nKamil",
    "281527": "Thank you so much. Previously, I tried to use watershed directly after segmentation, but the results are very bad. Your idea is nice. \n\nSo final segmentation only uses mask and contours. I saw your code in github, it seems you are also train to find to find centers. Then why do you train to find centers? A quick thoughts, with centers and masks, can we use k-means to split the segmentation to each center?",
    "281687": "Hey @Zhen,\n\nYes, we train to find nuclei centers, because it is another auxiliary target for the U-Net, that might be useful in the future. Also it is good for the regularization purposes, since it introduces additional difficulty.\n\nCan you describe your idea about k-means in more detail? It might be interesting ;-)\n\nBest,\n\nKamil",
    "281757": "Hi Kamil,\n\nThanks for your ideas!\n\nRobinson @ dataharbor",
    "281839": "After predicted, we have some predicted centers and masks. Assume we have N centers, then we want to split the masks into these K centers. \n\n1. For each point in masks, calculate the distance between it and N centers. \n\n2. The point belongs to the center which has the smallest distance.\n\nI did not implement it yet. Does it make sense?",
    "282017": "Great initiative, thank you!",
    "282185": "Hey,\n\nI think that in principle we do something similar. It seems that your idea is to assign masked pixel to the nearest (predicted) center. If so, you do not need to run k-means - you can calculate it explicitly. Definitely, you can try this approach, however, keep in mind that it may introduce some false positives.\n\nBest,\n\nKamil",
    "282523": "Got it. Thank you very much.\n\nI have tried the mask and contour method and use your watershed_contour(image, contour) function. However, the score decreases. I wonder what loss function you use to train to the mask and contour? \n\nAnd what does this mean in the function? Thank you so much. Happy Valentine's Day.\n\n    dropped, _ = ndi.label(image - (labeled &gt; 0))\n    dropped = np.where(dropped &gt; 0, dropped + nr_blobs, 0)\n    correct_labeled = dropped + labeled\n    return relabel(correct_labeled)",
    "282766": "",
    "282771": "Thanks Kamil",
    "282845": "Thanks!",
    "282854": "Hey Zhen,\n\nMulti-output U-Net is defined here: https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/models.py#L31\n\nThe model uses the this [loss function](https://github.com/neptune-ml/data-science-bowl-2018/blob/442c7b30da622195b2a3888b5607d566508dc32c/steps/pytorch/validation.py#L19) which is simply sum of `DiceLoss` and `BCEWithLogitsLoss`. The latter one is from `torch.nn` package.\n\nBest,\n\nKamil",
    "282892": "Thank you very much.",
    "284124": "Hi,\n\nSmall improvement in `solution 2` and some experimentation (parameter space search) gave us `[LB 0.407]`. We are happy that we have crossed 0.4 threshold ;-)\n\nFell free to use our code available on [dsb-repository](https://github.com/neptune-ml/data-science-bowl-2018).\n\nBest,\n\nKamil",
    "284644": "hi Kamal,\n\nThanks for sharing!\n\nThe upconv blocks in the unet paper had 2 conv2D units. Whereas, your implementation has 3 conv2D layers. Also, the input_block &amp; the classification_block in your implementation seems to be adding 2 extra conv2D layers each when compared with the unet paper.\n\nCan you please explain.",
    "285188": "Hey,\n\nWe have published `solution 3` on our [open solution repo](https://github.com/neptune-ml/data-science-bowl-2018), which makes `[LB 0.421]`. This solution introduces three major improvements:\n\n1. more image augmentations,\n2. better validation,\n3. post-processing for final segmentation purposes.\n\nBesides this, we have implemented number of small fixes. Check [Improved Multi-output U-Net](https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet) Wiki page for more info.\n\nThis week, we will work towards solution 4, that will exhibit more sophisticated post-processing routines. This part might be useful for many competitors ;-)\n\nBest,\n\nKamil",
    "285350": "Hi @Kamil, I just took a look at your code and it is really good. I have one question though. What is the default training number of epochs for the score above? I saw \"epochs_nr: 1000\" in the code and it seems too large to me. Will appreciate any insights. Thanks",
    "285492": "How long time it will cost?",
    "285512": "Good question @YangLu, I ran the script for 100 epochs and stopped it.\n\n@Kamil is there a way to benefit from previous incomplete  run's result. Normally the saved best weights can be used for prediction or initializing a new training session. I am using pytorch for the 1st time today so not sure the best way to do it here.",
    "285516": "Hey YaGana,\n\nWe have set it to 1000 epochs and - at the same time - set an `patience` (a.k.a. early stopping) to 100. Please, check the config file: [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L66). Thanks to this we know that we wait long enough for the model to learn. In practice, the exact experiment that gave us `[LB 0.421]` took 473 epochs. Most of my experiments ends after 200-300 epochs.\n\nIt seems, that you can just decrease these values and you will not degrade the final performance of your model.\n\nBest,\n\nKamil",
    "285518": "Hi Ravi,\n\nThanks to this trick we have more non-linearities, hence your model has greater capacity. We consider U-Net paper (which is great btw: [here is a link to it](https://arxiv.org/abs/1505.04597)!) as an inspiration / reference and we did not want to implement it in exactly the same way. However, you suggested nice thing to try, so now it is like in the original U-Net paper.\n\nThanks for this feedback!\n\nBest,\n\nKamil",
    "285523": "Hi YangLu,\n\nIt took approximately 2-3 minutes per epochs in our `[LB 0.421]` experiment (entire end-to-end process took almost 20h).\n\nOn other experiments, I observed epoch time around 1 minute, and usually we do training for 200-300 epochs.\n\nIn general, it depends on multiple factors, for example:\n\n* images augmentations,\n* number of CPU cores that computes them,\n* other processes that run on your machine,\n* batch size,\n* U-Net model parameters.\n\nBest,\n\nKamil",
    "285530": "Hey YaGana,\n\nIn our solution each experiment has value which is literally saved to disk as best model ;-)\n\nWe use PyTorch and we save best model after each epoch (we implemented callback for this). You can parametrize how ofter you want to checkpoint your model in the [pipeline_config.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/pipeline_config.py#L79). In this file you also specify path to the saved model\n\nBest,\n\nKamil",
    "285804": "Thanks Kamil,\n\nI ran the code to completion with only 2 parameters ( i.e. epochs_nr and lr) slightly changed from their default values. But when I submit the generated submission file, I get the following error:\n\n\"Failed\nEvaluation Exception: Index was outside the bounds of the array.\n\"\n\nI am not sure if that is Kaggle's issue or something else. Can you help?",
    "285957": "Hi YaGana,\n\nYes, we have corrected this bug very recently, so first, try to update your code. You should be fine then.\n\nAlso, in order to re-use your trained model, set `overwrite = 0` in the [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L41). This will enable you to use your model, and not train another one. Just make sure that directories are set as in your previous experiment.\n\nBest of luck,\n\nKamil",
    "285966": "Hi Kamil,\n\nI have a couple of questions as follows if you do not mind :-\n\n1. The version of your code I used was downloaded on Feb. 19th at 5.34pm PST. Was the bug fixed after that timeline? If so I can download it again. I have spent over $20 right now without making any submission hence trying to make sure I do not make a mistake.\n\n2. I sent the training to Neptune from my local directory so the files are stored on your system in the specified directories for both experiments that I ran. Given that, I am not sure I understand your instruction about setting \"overwrite = 0\" in the neptune.yaml file as long as the directories are set as in the previous experiment. Right now I see those directories for the 2 experiments when I click on each of them and they are not the same. How do I use the previous weights in this case?",
    "286284": "Hey YaGana,\n\nPlease find my answers below:\n\n**ad 1**\n\nThe latest commit to master was performed on Feb 20th, so it may be good to use the latest version. We have fix some submit issue with this commit ;-)\n\n**ad 2**\n\nIt is fast fix: take your `submission.csv` and remove all lines with `nan`. We have found that this causes submission error -- it is very rare case though.\n\n**Bonus**\n\nAlso, you can take a look at [devbook.ipynb](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/devbook.ipynb), where we visualize predictions and build submit file. This will give you some overview about how predictions work in our solution, as well as, decent score `[LB 0.407]`.\n\nBest,\n\nKamil",
    "286318": "Hi Kamil,\n\nThanks for your prompt response. I just checked the submission file and found 32 blanks in the ImageId column. Is that what you are referring to? \n\nMy current score is LB=0.407 as well at the moment but I will take a look at the devbook.ipynb later.",
    "286335": "Hi Kamil,\nI ran the script for 170 epochs and stopped it. LB submission only 0.371. I haven't change any parameters.",
    "286663": "Hey YaGana,\n\nI was referring to nans in the `EncodedPixels` column. It is interesting that we have blanks in the `ImageId` column... I will take a closer look at it. Thanks for letting me know! ;-)\n\nMeanwhile, take a look at the notebook mentioned before (`devbook.ipynb`). I think it is valuable resource, that you can re-use for your analysis.\n\nBest,\n\nKamil",
    "286664": "Hi YangLu,\n\nI think that your training is too short. Try longer experiment ;-)\n\nBest,\n\nKamil",
    "286844": "Kamil, sorry the blanks are in the \"EncodedPixels\" column not the ImageId. That was my mistaken typing above.  If it can help see below the entries in the  \"ImageId\" column that have corresponding blank entries :\n\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\n472b1c5ff988dadc209faea92499bc07f305208dbda29d16262b3d543ac91c71\nb83d1d77935b6cfd44105b54600ffc4b6bd82de57dec65571bcb117fa8398ba3",
    "287014": "delete me",
    "287724": "Hi Kamil. I have several questions.\n\n1. I found in your pipeline, you did preprocessing which split x and y . So you do the train for x and y separately? I am confused with this.\n\n2. I am confused with part is your training part. You just use  unet_multitask = Step(...). For the Step class I didn't not find the training operation. I don't understand Step class. Could you please explain it?\n\n3. For the preprocessing, you use K-means and data augmentation. What else do you do? How do you do normalization? Where did you use the augmentation. I can't find the place that you import augmentation.py :(.\n\n4. Do you use the standard U-net framework?\n\nThank you.",
    "287841": "1 x is origin image y is mask\n\n- 2 training operation is in the file `steps/pytorch/models` the function 'fit' is the training function, the concept of step is abstracting  each step into a \"step\" class then put them into the pipeline and execute them one by one ,the function which step execute is the \"transformer\" part in config\n\n- 3 see wiki in github repo ,He import augmentation in loaders.py : `from augmentation import affine_seq, color_seq`\n\n- 4 It is the standard U-net ,but there are only 4 down-up samples ,from 16 to 128 ,the orign U-net has 5 down-up samples ,from 64 to 1024  see steps`pytorch/architectures/unet.py` \n\nTry more epochs and make some enhancements， I got 0.440 in LB！ This solution is awesome,\n\nGood luck",
    "287914": "Kamil, Great job ! The code is very beautiful .\n\nI read your great code and I have to say the conception of pipeline is wonderfull\n \nbut I still have some questions:\n\n - You use max-pooling to down-sample the image,but this method is a little bit  outdated ,I thick use the dilated convolution replace it maybe get better result\n - I found that you use VGG16 to get features and clustering them by\n   k-means for validation ,what is the feature?  and why do you use them\n   for  validation , we usually choose 10% data randomly and set them as\n   verification sets , I read the wiki [here ][1] but Still confused\n   \n - You initial the model by this function: `def _initialize_model_weights(self)` , Since the verification set used VGG ,why don't you use  VGG16 as the encoder(like [this][2]) which was pre-trained on Imagenet dataset ?\n -  In devbook.ipynb there is a line:\n\n   ` labels_train   =   joblib.load(os.path.join(DATA_DIR,'ground_truth','train','labels.pkl'))  `  \n\n where is the \n    `'ground_truth',`and `'labels.pkl'` ?\n\nThanks again!\n\n\n  [1]: https://github.com/neptune-ml/data-science-bowl-2018/wiki/Improved-Multioutput-UNet\n  [2]: http://blog.kaggle.com/2017/12/22/carvana-image-masking-first-place-interview/",
    "287975": "Hey YaGana,\n\nThank you for the info! I can see that we have two different IDs -&gt; I will take a closer look at them in order to check what is on the images.\n\nBest,\n\nKamil",
    "287986": "Hey bintan_FDU,\n\nThank you!\n\nIn your case it seems better to train locally via `neptune run ...`. At this point we do not support multi-GPU training, but - since you raised this point - I strongly encourage you to submit an issue on our [repository](https://github.com/neptune-ml/data-science-bowl-2018) with this feature request. We will implement it :-) I think that broader community may benefit from it as well.\n\nBest,\n\nKamil",
    "288663": "Thanks for answering. Your ideas are really nice. \n\nI checked the loader.py,  you have     \nself.image_augment_with_target = ImgAug(affine_seq)\nself.image_augment = ImgAug(color_seq)\na very stupid question is when training, do you use 670 original images + 670 image_augment_with_target + 670 image_augment? Besides, I found your normalize are based on mean=[0.5, 0.5, 0.5] and std=[0.2, 0.2, 0.2]). How do you get the mean and std?\n\nAnother question is the same with @bintan_FDU. You use VGG16 to get features and clustering them by k-means for validation ,what is the feature? The category is only for validation, so you don't train different networks for different categories, right? All the testing part uses only one trained network plus some pre and post processing? That is amazing. \n\nHope you can break 0.5!",
    "288876": "1 In my opinion the mean and std is just because He normalized the image by `image = image / 255`\n\n- 2 This question I have thought for a moment , And It may be  because he want improve the model's generalization\n- 3 the one who answered  your first question is me ... So it may be not the correct answer :-)",
    "288879": "Hi, I have a problem with the line in predict_pipeline:\n\n   output = pipeline.transform(data)\n\nI get the following error:\n \n2018-02-28 12-13-48 steps &gt;&gt;&gt; step output adapting inputs\nTraceback (most recent call last):\n  File \"",
    "292138": "Hey guys,\n\nCheck out the [Webinar about Toxic Comment Classification Challenge](https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic_webinar) that Jakub Czakon and me will host  tomorrow.\n\nWe want to show you our open solution to [Toxic Comment Challenge](https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge), answer some questions and have good time talking about deep learning :-)\n\nFeel free to join if you like.\n\nBest,\n\nKamil",
    "292245": "Hi,\n\n[Solution-4](https://github.com/neptune-ml/data-science-bowl-2018) has just arrived. Run it as it is, to get approximately [LB 0.428]. Major improvements are:\n\n1. multi-output U-Net with weighted loss,\n2. morphological post-processing -&gt; later this week we are going to publish kernel with this post-processing routine,\n3. contour touching as new auxiliary signal.\n\nMore details can be found on our [repository Wiki](https://github.com/neptune-ml/data-science-bowl-2018/wiki/UNet-with-weighted-loss-and-morphological-postprocessing).\nNow, we are going to attack [LB 0.5] with a couple of new ideas that we have in mind.\n\nHappy training,\n\nKamil",
    "295955": "[In our repo][1] on branch mask_rcnn_notebook You can find notebook based on matterport Mask RCNN implementation scoring 0.439 LB with full instruction how to run it. \n\n\n  [1]: https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook",
    "296125": "Hi Krzysztof! \nThanks for creating and sharing this awesome  notebook! It will help a lot of us. One question\nDo you use the matterport Mask_RCNN https://github.com/matterport/Mask_RCNN or the fork made by Yan Wang https://github.com/YanWang2014/Mask_RCNN that a lot of us have been using ? \nThanks\nMehul",
    "296135": "Hi Krystov,\n\nThanks for sharing. After downloading the above repo, when I try to upload mask RCNN code with the command \" neptune data upload Mask_RCNN\" , I get the following error on a windows 10 machine :-\n\nINFO: Could not find files for the given pattern(s).\nCurrent project: SAN\nCannot upload, because folder 'Mask_RCNN' is not empty. Use -r/--recursive flag to upload\n\n*****\nThen using the recursive flag as indicated above, gives a whole bunch of errors. Please help.",
    "296169": "nevermind i see you must the answer in the Readme file before.",
    "296190": "Hey guys,\n\nTogether with Kuba we will host a [webinar](https://neptune.ml/webinar/) about our Open Solution. If you want to hear more about our work, plans for the future or ask questions directly, please join us tomorrow at 12-1pm PDT (3-4pm EDT, 8-9pm CET).\n\nHere is a [link to the registration page](https://neptune.ml/webinar/).\n\nBest,\n\nKamil",
    "296425": "Thanks for sharing. Good to hear your experiments using mask-rcnn. Could the experiments be conducted in local machine?",
    "296556": "YaGana Sheriff-Hussaini\nyou should first create a project Data Science Bowl (that would give you a key `DSB`) and then run:\n\n`neptune data upload Mask_RCNN --recursive --project-key DSB`\n\n@HAOYU-LI\nOf course you can run it locally just make sure to have tensorflow 1.3+",
    "296568": "Hey Zhen,\n\n**ad. 1**: `X` is data, `y` is label. In this competition it is mask. It is also crucial, to keep in mind that we do affine transformations (linear mapping methods) in the [augmentations](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py), for example rotation or flipping. Affine transformations must be applied to `X` and `y`.\n\n**ad. 2**: @bintan_FDU covered your questions very well. I just wanted to add that our goal in software design is to distinguish pipeline definition and pipeline execution. Thanks to this you can modify pipelines by adding / modifying [Steps](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/base.py#L15). Steps implement `fit` and `transform` methods that are executed during pipeline execution.\n\n**ad. 3**: We use K-means for validation. That is, we take pretrained VGG to obtain features, and we cluster them into `K=10` clusters. Then - through some experimentation - we determined clusters that should go to the validation set. The goal is to make sure that various image types are represented in the validation set. Now, out validation score reflects LB score pretty closely.\n\nWe use augmentations defined in the [augmentation.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/augmentation.py) and we use them in the [loaders.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/loaders.py#L211).\n\n**ad. 4**: We use U-Net that is parametrized in the [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml). Network is implemented in the [unet.py](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/architectures/unet.py)\n\n**Finally**, please note that our `master` branch is moving forward very quickly, so make sure that you have the latest version all the time.\n\nBest,\n\nKK",
    "296570": "goods",
    "296686": "Hi Leonardo,\n\nWe have fixed that -&gt; just make sure that you have latest version.",
    "296701": "Hey @Zhen, @bintan_FDU, \n\nIn the `loaders.py` you have `self.image_augment_with_target = ImgAug(affine_seq)` and `self.image_augment = ImgAug(color_seq)`. This is because affine transforms must be applied to image and mask (i.e. rotation, translation), whereas color transforms just to images. Augmentation procedure is applied to all images.\n\nOutputs from the pre-trained `VGG16` serve as features for clustering. My previous answer describes this in more detail :)\n\n@bintan_FDU so cool that you made `[LB 0.440]`! also thanks for answering questions.\n\nBest,\n\nKamil",
    "296731": "Hi,\n\n**ad. 1**: We have dilated convolution on our roadmap, so we will try it.\n\n**ad. 2**:\n\n* Random split into train/valid/test is fine, but have some limitations, so we wanted to improve it.\n* Procedure for validation split with VGG and K-means:\n  * From the pre-trained [VGG16](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L117) network, take the `features` part (check [VGG implementation](https://github.com/pytorch/vision/blob/master/torchvision/models/vgg.py#L24)).\n  * Use it as features extractor. It simply means that network's [output are features](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L107).\n  * When computed features for all images, run [K-means clustering](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/preparation.py#L137) with `K=10`.\n  * As a result each image is assigned to one cluster. Thanks to this approach we can experiment with various validation splits. We also have determined clusters that are good for validation purposes -&gt; our validation score closely follows LB score.\n\n**ad. 3**: We train U-Net end-to-end, so we initialize weights in the way defined [here](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/steps/pytorch/models.py#L34). I really like the idea you suggested -&gt; take pre-trained VGG as first U-Net arm and run training on this. We will add it to our roadmap. Thanks :)\n\n**ad. 4**: In general, when you log in to [neptune.ml](https://neptune.ml/), and start notebook online, all *dsb-related* data is available under the directory `/public/dsb_2018_data`.\n\nBest,\n\nKamil",
    "296920": "Thanks Jakub,\n\nI have already created the product key DSB and I am still getting a bunch of errors. See below the 1st part of the error messages below:\n\nINFO: Could not find files for the given pattern(s).\nCurrent project: DSB\nCalculated data size: 195.83 kB\nUploading data to server:   8%|ΓûêΓûêΓûêΓûêΓûÄ                                               | 16.4K/196K [00:00&lt;00:02, 61.7KB/s]2018-03-15 18:04:11,016 deepsense.neptune.common.api.utils ERROR    utils.py:123 - log_exception() Failed to call upload_data_as_tarstream\n2018-03-15 18:04:11,019 deepsense.neptune.common.api.utils ERROR    utils.py:124 - log_exception() status: 500, response_message: Internal Server Error\nTraceback (most recent call last):\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\neptune\\common\\api\\utils.py\", line 160, in func_wrapper\n    return func(*args, **kwargs)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\apis\\default_api.py\", line 11381, in upload_data_as_tarstream\n    callback=params.get('callback'))\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 329, in call_api\n    response_type, auth_settings, callback)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 154, in __call_api\n    post_params=post_params, body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\api_client.py\", line 365, in request\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 164, in POST\n    body=body)\n  File \"C:\\Python34\\lib\\site-packages\\deepsense\\generated\\swagger_client\\rest.py\", line 132, in request\n    raise ApiException(http_resp=r)\ndeepsense.generated.swagger_client.rest.ApiException: (500)\nReason: Server Error\nHTTP response headers: {'Via': '1.1 google', 'Content-Length': '21', 'Alt-Svc': 'clear', 'Server': 'nginx', 'Date': 'Fri, 16 Mar 2018 01:04:11 GMT', 'Content-Type': 'application/json;charset=utf-8'}\nHTTP response body: Internal Server Error",
    "296967": "Thanks for holding the webinar yesterday. I really enjoy it and it is a great help for us! Looking forward the next one and the new modules to be released!",
    "296968": "Is it possible to run code locally? I'm stuck on:\n\n&gt; from deepsense import neptune",
    "296991": "Hi Krzysztof, Kamil! \nThanks again for the great notebook. One question:\nOnce i start running the notebook and say I have to shutdown my laptop, does the processing still continue. It seems like if i shutdown the browser window, the processing stops ? \nThanks\nMehul",
    "297045": "Hi Kamil,\n\nThanks for the webinars. I registered for both but unfortunately unscheduled meetings got in the way and I could not attend. Do you have a link to recordings of them? If not when will you be doing that again?",
    "297357": "Hi Krzysztof! \n\nI ran your notebook on neptune.ml. I just git cloned the book and followed the instructions to run it. \nIn the current notebook, i see you run 10 epochs. I got 0.397 with it. \nfor the 0.439 did you run more epochs or a different learning rate ? \n\nThanks\nMehul",
    "297858": "Thanks for your reply. I'll try it soon",
    "298066": "Thanks Kamil for the explanation.",
    "298244": "Thanks Kamil. Could you tell me how to generate \"stage1_metadata.csv\" with keras？ I am not familiar with pytorch and my system is windows 10.",
    "298247": "Hi, Any postprocessing for maskrcnn? I have used dilation but it hurts my perfomance. Thanks",
    "298268": "Where is metadata....",
    "298282": "Hi, you need to install this package by `pip install neptune-cli`",
    "298297": "HaoyuWang @zjuyang.\n* If you are running it in the cloud than `stage1_metadata.csv` is generated already and mounted in `/public/dsb_2018_data`\n* If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:\n\n`neptune run -- prepare_metadata` or\n`python run main.py -- prepare_metadata` \njust make sure to change paths in the `neptune.yaml` configuration file.",
    "298303": "Haven't worked on that yet. We tried using mask-rcnn to get both masks and contours (which would help with postprocessing) but with no success so far. \n\nI might go ahead and try to post-process the outputs from the mask-rcnn we have in the notebook. If anything good comes out of that I will post a kernel with all the postprocessing explained.",
    "298304": "Thank you for joining us!",
    "299061": "Hi Mehul,\n\nI have run the code with the identical setup as it is in notebook, however training with high learning rate and small number of epochs can cause a high attitude in results. Maybe you can try running the code with smaller values of LR with larger number of epochs or tweak maximum detection instances parameter. Also changing of mean pixel values could be a reasonable step.\n\nRegs,\nKrzysztof",
    "299955": "Hi Krysztof, \n\nI am still getting the errors I posted above when I tried to follow the steps today. I upgraded my Neptune CLI and it did not help. Once again I get the error when I use the following command:\n\nneptune data upload Mask_RCNN --recursive --project-key DSB\n\nCan you please help?",
    "300110": "Hi Krzysztof! Thanks for sharing this great notebook.\nHere are some code I don't understand. \n\ndef preprocess(self, img):\n     gray = skimage.color.rgb2gray(img.astype('uint8'))\n            img = skimage.color.gray2rgb(gray)\n            img *= 255.\n            return img\n\nAfter you do `rgb2gray`, then you do `gray2rgb`. Why?Is this not the same as doing nothing?<pre> And also `img*=255`  what's that mean?\nThanks Zheng</pre>",
    "300133": "The code converts an image to grayscale, than it converts grayscale image back to RGB, but after those steps an image has 3 channels with the same values. The reason of converting image back to 3 channel image is that the pre-trained weights on coco dataset are for 3 channel images. \n\nKind regards,\nKrzysztof",
    "300140": "Which OS are You using? The code has been tested under Linux",
    "300184": "Thanks for your reply. I get it. My OS is Ubuntu 16.04.\nI still don't understand why you do this `img*=255`\nI have run this code separately on my jupyter and it shows\n\n    Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n\nIt seems somethings worng, but it actually works well on this whole project.\nThanks Zheng",
    "300301": "Hi,\n\nTomorrow (Thu, March 22nd) at 4:15pm CET we will host [webinar](https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar) about our code and approach in the [Toxic Comment Classification Challenge](https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge).\n\n[Feel free to join us](https://neptune.ml/webinar/?utm_source=kaggle&amp;utm_medium=post&amp;utm_campaign=toxic2_webinar) -&gt; we can also address our DSB work during the webinar ;-)\n\nBest,\n\nKamil",
    "300349": "I multiply image by 255, cause colorspace conversion in skimage scales image to range [0., 1.] while matterport implementation of Mask RCNN expects pixel values to be in range [0, 255.] from which the values of mean pixel (defined in the config class) are subtracted. \n\nKind regards,\nKrzysztof",
    "300539": "Hi @YaGana,\n\nThank you! We will publish webinars, however we still need to decide about the best way to do it.\n\nAlso we are going to make it regularly once a week. Next webinar is tomorrow, March 22nd at 4:15pm CET.\n\nFeel free to join us ;-)",
    "300543": "Hi YaGana,\n\nMy ideas that might help:\n\n1. make sure that you are on branch `mask_rcnn_notebook` (latest version)\n2. make sure that you are executing `neptune login` first. Then, from within repo `neptune data upload Mask_RCNN --recursive --project-key DSB`\n\nBest,\n\nKamil",
    "300547": "Hey @zjuyang,\n\n1. Follow [Installation](https://github.com/neptune-ml/data-science-bowl-2018/wiki/Installation) instructions.\n2. Prepare [config.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L24):\n  * comment _Cloud Environment_ block\n  * uncomment _Local Environment_ block and put your local dirs\n3. Do this: `neptune run main.py -- prepare_metadata`\n\nFor metadata you do not need keras. Note that we work on Ubuntu 16.04.",
    "301137": "I'm also a bit stuck. I get error: \"public/dsb_2018_data/stage1_metadata.csv' does not exist\"",
    "301210": "Marios \n\nIf you are running it in the cloud than stage1_metadata.csv is generated already and mounted in `/public/dsb_2018_data` \n\n If you are running it locally (as I expect is the case) you need to generate metadata by executing the command:\n\n`neptune run -- prepare_metadata` or `python run main.py -- prepare_metadata` just make sure to change paths in the `neptune.yaml` configuration file.",
    "301267": "every neptune command I execute on the file returns the following error: Project with key 'DSB' not found.",
    "301405": "Hi @Marios,\n\nFirst, log in to the [neptune.ml](https://neptune.ml/) and create project with name: `Data Science Bowl 2018` and project key `DSB`. Then, you will be ready to go ;-)",
    "301487": "Oh I just missed it ...\n\nA recorded version would be great. I would love to watch it !",
    "302664": "Still struggling to run locally. When I `run neptune run -- prepare_metadata` I get an error : FileNotFoundError: [Errno 2] No such file or directory: '/public/dsb_2018_data/stage1_train'",
    "303025": "Can someone provide link to download stage1_metadata.csv file?",
    "303083": "Thanks for you rely.  That helps me a lot. After I have read the main.ipynb code, I found that there isn't very different from another code I use which is https://github.com/killthekitten/kaggle-ds-bowl-2018-baseline . I modified the parameters of my code according to the parameters in main.ipynb , but I couldn't got the same result. It's lower than 0.4. But in your result, you just got 0.439 LB. How do you do that? In addition to your main.ipynb, are there any important changes that have increased your score?\nThanks Zheng",
    "303110": "bintan_FDU, thanks for sharing. Your LB shows 0.431, I wonder where 0.440 comes from?",
    "303962": "stage1_metadata.csv contain paths to your train and test images. Hence it should be generated locally for your machine. It would be different from machine to machine.\nYou could easily generate it by typing :\n `python run main.py -- prepare_metadata`\nfrom your working directory",
    "304147": "Hey Chandan, Burhan,\n\n@Burhan thanks for your answer! Let me add that in order to generate them locally, you need to set paths in the configuration file: [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25). Make sure that you commented `Cloud Environment` block and uncommented `Local Environment` block, where you put your directories. Then simply run `neptune run main.py -- prepare_metadata`.\n\nAlso, if you need masks, you can generate them as well: `neptune run main.py -- prepare_masks`\n\nBest,\n\nKamil",
    "304153": "Hi Zheng,\n\nEverything we have regarding _mask-RCNN_ is on our repository, branch [mask_rcnn_notebook](https://github.com/neptune-ml/data-science-bowl-2018/tree/mask_rcnn_notebook). I didn't take a closer look at the Nikolay's code yet. Maybe try to run our notebook with default parameters and more epochs (we set it to 10 for presentation purposes -&gt; try more). Make sure that you have the latest version of this branch (latest commit on Mar 21st).\n\nNote that final result may rely on train-validation split and experiment configuration: check [DsbConfig class](https://github.com/neptune-ml/data-science-bowl-2018/blob/mask_rcnn_notebook/main.ipynb) (8th code cell).\n\nBest,\n\nKamil",
    "304157": "Hey @Marios,\n\nThis error is caused by incorrect directories. When running your code locally, make sure that you put correct parameters in the [neptune.yaml](https://github.com/neptune-ml/data-science-bowl-2018/blob/master/neptune.yaml#L25). For local execution:\n\n1. comment entire `Cloud Environment` block\n2. uncomment `Local Environment` block and put your directories there\n3. run: `neptune run main.py -- prepare_metadata` and `neptune run main.py -- prepare_masks` (if you need).\n\nMake sure that you have the latest version of the code.\n\n\nIf you want to run in the cloud, do not worry about _metadata_ or masks. They are already in the cloud ;)\n\nCheers,\n\nKamil",
    "304159": "Hi toshif,\n\nWe will host another webinar on April 4th, about the latest advances in our solution. Feel free to join! ;-) We can also answer your questions during the webinar.\n\nNote, that we think about the best way to publish them. I will let you know as soon as they become available.\n\nBest,\n\nKamil",
    "305428": "Kamil\n\nDo we have to use Neptune for your open solution? Can I run on a different solution?",
    "305441": "Hi @William,\n\nOf course not. You can run everything as a regular Python script, for example: `python main.py -- train_evaluate_predict_pipeline --pipeline_name unet_multitask`.\n\nCheers,\n\nKamil",
    "305714": "hi,kamil.\nOn branch mask_rcnn_notebook,data augmentation is not be used.Is it right?",
    "305736": "Hi,\n\nCorrect! We just prepare images to be grayscale and each pixel takes values from 0 to 255.\n\nCheers,\n\nKK",
    "305744": "Thank you.\nMaybe data augmentation can improve performance.I will try it.",
    "305745": "Nice! Let us know about the results :-)",
    "310745": "Hi Kamil,\n\nI finally got round to running your code on Neptune this week. The main.ipynb was running for 4 days and then crashed today. Can you help?",
    "310759": "Hi,YaGana\nDo you mean that you have been running the mask_rcnn_notebook version code for more than 96 hours on the Neptune?I was going to run this on the Neptune,but I am not sure how long will it costs.",
    "310826": "Yes @Axida, it was running for 4 days and have done 7 epochs up to that time before the notebook crashed. I did not do any modification to Kamil's code. So I have no idea why that happened hence my post above. And yes it has cost me money.",
    "310902": "Thank you so much for your reply.@YaGana\nI would cost lots of money without your timely reply.Maybe Kamil could help you.Have you tried other Kamil's code?I see there are many ways and pipelines on the https://github.com/neptune-ml/data-science-bowl-2018/ .",
    "310920": "You are welcome @Axida. No, I will not be trying out any of Kamil's codes. Mine performs better anyway plus I only tried it to see how good Neptune is compared to the cloud service I normally use and it failed the test.",
    "310940": "I see.@YaGana I am very new to kaggle,and I find it seems a little difficult to run codes on a CPU.Could you please tell me which cloud service are you using?i will appreciate it very much.",
    "311612": "Hey @YaGana and @Axida,\n\n1. I assume that you work on `mask_rcnn_notebook` branch. Is that correct?\n2. Can you provide entire error message, so that I will have some input to read?\n3. update `neptune-cli`, by running this in your virtualenv (if you use it): `pip3 install neptune-cli -U`\n\n@Axida this competition is \"images competition\" so using GPUs to train your models is highly recommended. If you do not own any GPUs, one solution is to look at cloud providers and pick one that offers some.\n\nBest,\n\nKamil",
    "311614": "Hey @Shujian.M.Coder\n\nOur current LB score comes from running [mask_rcnn_notebook](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/mask_rcnn_notebook) and playing with it ;-)",
    "311649": "Hi Kamil, \n\nYes 1 is correct and I have the latest neptune-cli as well as the code.\n\nThe message was that the notebook crashed and cannot connect. I did not run it locally, I sent it to the Neptune cloud.",
    "311673": "Hey YaGana,\n\nThanks for quick answer. I will try to take a closer look at it :)\n\nBest,\n\nKamil",
    "312255": "Hi guys,\n\nAs DSB'18 approaches _stage 2_, everybody is super-busy with their final model tweaking. Please keep in mind that the deadline for uploading the model is 11:59 PM UTC ;-)\n\nWe are about to upload our final solution that is currently available on `dev-solution-5` branch on our [repo](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/dev-solution-5). We are still playing with parameters, however the codebase is pretty much fixed.\n\nIn short we train two U-Nets: one for estimating nuclei size and second for segmentation purposes. We train on image's patches, use lots of post-processing tricks and some basic augmentations.\n\nBest of luck with your model!\n\nKamil",
    "312313": "Hey, I forgot to mention that tomorrow, April 12th (6:30pm CEST = 9:30am PDT = 12:30pm EDT) together with Kuba we will be hosting a [webinar](https://minerva.ml). We are going to wrap up our participation, show some lessons learned and plans for the future.\n\nAnd of course answer all questions :-)\n\nPlease join if you wish.\n\nBest,\n\nKamil",
    "312487": "kamil look forward to the sharing session. I've a quick question: how do you determine batch size? And how best to optimize it for the GPU's memory? Some quick hint would be great. currently i see it's at around 6GB at training. What should I tweak to increase/decrease that and what's the ratio?\n\nPS: where's the link to join tomorrow's webinar?",
    "312505": "Hi @Andrew,\n\nIn short we try to fit as much as possible into GPU. We determine it by trial and error. If your batch does not fit into GPU you will get CUDA memory error. If your batch is too small you can observe that only small fraction of your GPU's memory is used.\n\nIn general try to fit as much as possible, because larger batches leads to smaller variances -&gt; more stable training.\n\nIn our code play with `batch_size_train` and `batch_size_inference` [neptune.yaml:L64](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L65). Another thing is to manipulate images size that are collected into batch: `image_h` and `image_w` [neptune.yaml:L50](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/master/neptune.yaml#L50).\n\nLink is https://minerva.ml, just register and you will receive e-mail with details.\n\nBest,\n\nKK",
    "312513": "Thanks @kamil. I'll give it a try :)",
    "313560": "Hi kamil\nDo you have the directory of stage 2 test image on neptune ml cloud environment?",
    "313561": "Thank you @kamil, Jakub Czakon and the deepsense.ai team, for open sourcing their code and providing support. It is a very great effort. I learned a lot from reading your code. Thanks a lot!",
    "313615": "Hey @Heng CherKeng,\n\nAll created with &lt;3 with our friends from [deepsense.ai](https://deepsense.ai).\n\nYou did a huge amount of work from both _community_ and _leaderboard_ perspectives! I look forward to be a part of another competition that you participate in :-)\n\nAll the best,\n\nKamil",
    "314099": "Hi@kamil\nCould we still use your open solution in the stage 2 by using neptune.ml ?If so,How should I do then?\nShould I change the neptune.yaml code for doing that?\nThanks for your time.",
    "314223": "Hi @Ifwei,\n\nYes, we have uploaded `stage2_test_final` to the `/public/dsb_2018_data` directory on neptune cloud. Original `stage2_test_final.zip` is there. Unzipped images are under the `/public/dsb_2018_data/stage2_test` directory.\n\nAlso, you can find this directory useful: `/public/dsb_2018_data/external_data` with three external datasets:\n\n1. https://data.broadinstitute.org/bbbc/BBBC006/\n2. https://www.kaggle.com/voglinio/external-h-e-data-with-mask-annotations/data\n3. our additional dataset, in which we have removed nuclei from stage1_train data -&gt; this is to have more images with artifacts.\n\nBest,\n\nKamil",
    "314230": "Hi @Axida,\n\nYes, you can use our pipeline for stage 2. Our final solution is on the [final-solution](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution) branch. You can run everything from start to finish, by running single script [run_end_to_end.sh](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/blob/final-solution/run_end_to_end.sh). Just make sure that you have modified [configs-end-to-end](https://github.com/neptune-ml/open-solution-data-science-bowl-2018/tree/final-solution/configs_end_to_end) accordingly, I mean lines 25 to 40 (directories) and line 10 (requirements file).\n\nLet me know if you have any additional questions :)\n\nBest,\n\nKK",
    "314835": "Hi@kamil \nThanks for your reply.I was trying to run your code on the Neptune,but I encounter this problem,and do not know how to deal with that.Could you give me a hand?\n\n37.082013\tTraceback (most recent call last):\n37.082164\tFile \"/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py\", line 103, in execute\n37.082299\texecfile(job_filepath, job_globals)\n37.08243\tFile \"/usr/local/lib/python3.6/dist-packages/past/builtins/misc.py\", line 82, in execfile\n37.082561\texec_(code, myglobals, mylocals)\n37.082689\tFile \"main.py\", line 298, in",
    "314969": "Thank you so much @Heng CherKeng ,it means a lot coming from you. \n\nBest of luck today!",
    "315004": "Hi @Axida,\n\nIf you work with code from the `final-solution` branch please work with configs from the `configs-end-to-end` directory, since they have competition stage added as parameter. If this is not your case, please provide more detailed info, such as: which branch did you checkout? What is you run command?\n\nBest,\n\nKamil",
    "315063": "Hi@kamil\n\nI chose the final-solution branch,and modified configs-end-to-end as you said.I mean,change comment in lines 25 to 40 and line 10.But I sill couldn't deal with that.I started CMD in the open-solution-data-science-bowl-2018-final-solution folder and run the command $ neptune login\n$ neptune send main.py --worker gcp-gpu-large --environment pytorch-0.2.0-gpu-py3 -- train_evaluate_predict_pipeline --pipeline_name unet_multitask   Am I right?\nThere are limited time for me to finish training,I might be late for the deadline.But I have to say thanks to you,I've learned a lot from what you have done.Thanks!\nAll the best.",
    "316131": "Thank you Jakub, Kamil, Krzysztof, Andrzej  Good job pzd",
    "316205": "Thanks Andrzej, we are going to participate in more competitions and deliver more interesting stuff :)\n\nBest,\n\nKK",
    "316236": "Although I have posted it in the congratulations to the top5 thread , I want to say it here.\n\nJakub, Kamil, Krzysztof, and  Andrzej thank you very much for sharing your various solutions. I have learnt a lot from them.\n\n@Axida, sorry I did not see your question earlier. I use Floydhub as my cloud service and google colab for experimentation.",
    "320805": "Hey @YaGana,\n\nThank you for your nice comments here! We are looking forward to meet you in future competitions here on Kaggle :)\n\nBest,\n\nKamil"
  },
  "source": "meta"
}