{
  "id": 19385,
  "title": "tutorial - finding the centroid location of the left ventricle using theano / lasagne / nolearn",
  "url": "/competitions/second-annual-data-science-bowl/discussion/19385",
  "author_name": "",
  "post_date": "2016-03-08T06:32:34.323Z",
  "votes": 10,
  "comment_count": 5,
  "views": 974,
  "content": "<p>Hi All,</p>\n\n<p>I have just published a tutorial on how to train a convolutional neural network to find the location of the left ventricle of the heart. Initially the network wasn't generalising very well, but after I enhanced the data with rotation and reflection it performed quite well.</p>\n\n<p><a href=\"http://colinpriest.com/2016/03/08/second-annual-data-science-bowl-part-3-automatically-finding-the-heart-location-in-an-mri-image/\">http://colinpriest.com/2016/03/08/second-annual-data-science-bowl-part-3-automatically-finding-the-heart-location-in-an-mri-image/</a></p>\n\n<p>Colin</p>",
  "messages": [
    {
      "id": "110787",
      "postDate": "03/08/2016 06:32:34",
      "content": "<p>Hi All,</p>\n\n<p>I have just published a tutorial on how to train a convolutional neural network to find the location of the left ventricle of the heart. Initially the network wasn't generalising very well, but after I enhanced the data with rotation and reflection it performed quite well.</p>\n\n<p><a href=\"http://colinpriest.com/2016/03/08/second-annual-data-science-bowl-part-3-automatically-finding-the-heart-location-in-an-mri-image/\">http://colinpriest.com/2016/03/08/second-annual-data-science-bowl-part-3-automatically-finding-the-heart-location-in-an-mri-image/</a></p>\n\n<p>Colin</p>",
      "rawMarkdown": "Hi All,\r\n\r\nI have just published a tutorial on how to train a convolutional neural network to find the location of the left ventricle of the heart. Initially the network wasn't generalising very well, but after I enhanced the data with rotation and reflection it performed quite well.\r\n\r\nhttp://colinpriest.com/2016/03/08/second-annual-data-science-bowl-part-3-automatically-finding-the-heart-location-in-an-mri-image/\r\n\r\nColin",
      "votes": null
    },
    {
      "id": "110860",
      "postDate": "03/08/2016 22:54:39",
      "content": "<p>Colin, how much time the model needs to find the heart in your hardware ?</p>",
      "rawMarkdown": "Colin, how much time the model needs to find the heart in your hardware ?",
      "votes": null
    },
    {
      "id": "110866",
      "postDate": "03/09/2016 00:37:24",
      "content": "<p>The slowest part (other than manually marking the location for each of the training examples) is training the model, which takes about 2 hours. Scoring new images is quite fast, taking less than a minute.</p>",
      "rawMarkdown": "The slowest part (other than manually marking the location for each of the training examples) is training the model, which takes about 2 hours. Scoring new images is quite fast, taking less than a minute.",
      "votes": null
    },
    {
      "id": "111104",
      "postDate": "03/11/2016 17:51:53",
      "content": "<p>Thanks Colin, i need to ask, why 17 layers ?</p>\n\n<p>It's something random or is there any particular reason?</p>",
      "rawMarkdown": "Thanks Colin, i need to ask, why 17 layers ?\r\n\r\nIt's something random or is there any particular reason?",
      "votes": null
    },
    {
      "id": "111144",
      "postDate": "03/12/2016 00:00:45",
      "content": "<p>There isn't much science to the design. The architecture is based upon a combination of Daniel Nouri's tutorial for finding facial keypoints, and the mxnet tutorial for this competition. All I played with was the dropout layers and the number of hidden neurons. The reason for so many convolutional layers is that I'm trying to get a combination of shapes from the image, at a range of scales, and also because I needed to get the information compressed sufficiently that the hidden layers don't have too many hidden neurons and keep within my RAM constraints.</p>",
      "rawMarkdown": "There isn't much science to the design. The architecture is based upon a combination of Daniel Nouri's tutorial for finding facial keypoints, and the mxnet tutorial for this competition. All I played with was the dropout layers and the number of hidden neurons. The reason for so many convolutional layers is that I'm trying to get a combination of shapes from the image, at a range of scales, and also because I needed to get the information compressed sufficiently that the hidden layers don't have too many hidden neurons and keep within my RAM constraints.",
      "votes": null
    },
    {
      "id": "111222",
      "postDate": "03/12/2016 21:01:06",
      "content": "<p>Thanks for the answer Colin :D</p>",
      "rawMarkdown": "Thanks for the answer Colin :D",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 110860,
      "author_name": "alvaroosvaldo",
      "author_url": "",
      "post_date": "03/08/2016 22:54:39",
      "content": "<p>Colin, how much time the model needs to find the heart in your hardware ?</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 110866,
      "author_name": "colinpriest",
      "author_url": "",
      "post_date": "03/09/2016 00:37:24",
      "content": "<p>The slowest part (other than manually marking the location for each of the training examples) is training the model, which takes about 2 hours. Scoring new images is quite fast, taking less than a minute.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 111104,
      "author_name": "alvaroosvaldo",
      "author_url": "",
      "post_date": "03/11/2016 17:51:53",
      "content": "<p>Thanks Colin, i need to ask, why 17 layers ?</p>\n\n<p>It's something random or is there any particular reason?</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 111144,
      "author_name": "colinpriest",
      "author_url": "",
      "post_date": "03/12/2016 00:00:45",
      "content": "<p>There isn't much science to the design. The architecture is based upon a combination of Daniel Nouri's tutorial for finding facial keypoints, and the mxnet tutorial for this competition. All I played with was the dropout layers and the number of hidden neurons. The reason for so many convolutional layers is that I'm trying to get a combination of shapes from the image, at a range of scales, and also because I needed to get the information compressed sufficiently that the hidden layers don't have too many hidden neurons and keep within my RAM constraints.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 111222,
      "author_name": "alvaroosvaldo",
      "author_url": "",
      "post_date": "03/12/2016 21:01:06",
      "content": "<p>Thanks for the answer Colin :D</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "110787": "Hi All,\r\n\r\nI have just published a tutorial on how to train a convolutional neural network to find the location of the left ventricle of the heart. Initially the network wasn't generalising very well, but after I enhanced the data with rotation and reflection it performed quite well.\r\n\r\nhttp://colinpriest.com/2016/03/08/second-annual-data-science-bowl-part-3-automatically-finding-the-heart-location-in-an-mri-image/\r\n\r\nColin",
    "110860": "Colin, how much time the model needs to find the heart in your hardware ?",
    "110866": "The slowest part (other than manually marking the location for each of the training examples) is training the model, which takes about 2 hours. Scoring new images is quite fast, taking less than a minute.",
    "111104": "Thanks Colin, i need to ask, why 17 layers ?\r\n\r\nIt's something random or is there any particular reason?",
    "111144": "There isn't much science to the design. The architecture is based upon a combination of Daniel Nouri's tutorial for finding facial keypoints, and the mxnet tutorial for this competition. All I played with was the dropout layers and the number of hidden neurons. The reason for so many convolutional layers is that I'm trying to get a combination of shapes from the image, at a range of scales, and also because I needed to get the information compressed sufficiently that the hidden layers don't have too many hidden neurons and keep within my RAM constraints.",
    "111222": "Thanks for the answer Colin :D"
  },
  "source": "meta"
}