{
  "id": 24660,
  "title": "Using additional external data",
  "url": "/competitions/dogs-vs-cats-redux-kernels-edition/discussion/24660",
  "author_name": "",
  "post_date": "2016-10-23T11:20:41.887Z",
  "votes": null,
  "comment_count": 5,
  "views": 454,
  "content": "<p>Are people using additional images of cats and dogs in this competition? </p>\n\n<p>It would be pretty simple to download another dataset to supplement this one, but then it basically reduces the leaderboard to an ordered list of who downloaded the most images.</p>",
  "messages": [
    {
      "id": "140812",
      "postDate": "10/23/2016 11:20:41",
      "content": "<p>Are people using additional images of cats and dogs in this competition? </p>\n\n<p>It would be pretty simple to download another dataset to supplement this one, but then it basically reduces the leaderboard to an ordered list of who downloaded the most images.</p>",
      "rawMarkdown": "Are people using additional images of cats and dogs in this competition? \r\n\r\nIt would be pretty simple to download another dataset to supplement this one, but then it basically reduces the leaderboard to an ordered list of who downloaded the most images.",
      "votes": null
    },
    {
      "id": "141072",
      "postDate": "10/25/2016 01:50:04",
      "content": "<p>Often the rules explicitly state no external data via a sentence like &quot;Unless otherwise expressly stated on the Competition Website, Participants must not use data other than the Data to develop and test their models and Submissions.&quot;</p>\n\n<p>While I don't see that in the rules for this contest, I'm assuming that it still applies, in the spirit of friendly competition.</p>",
      "rawMarkdown": "Often the rules explicitly state no external data via a sentence like \"Unless otherwise expressly stated on the Competition Website, Participants must not use data other than the Data to develop and test their models and Submissions.\"\r\n\r\nWhile I don't see that in the rules for this contest, I'm assuming that it still applies, in the spirit of friendly competition.",
      "votes": null
    },
    {
      "id": "141124",
      "postDate": "10/25/2016 08:56:44",
      "content": "<p>Hmm, but then surely using a pretrained network also shouldn't be allowed (especially if you fix some of the weights).</p>",
      "rawMarkdown": "Hmm, but then surely using a pretrained network also shouldn't be allowed (especially if you fix some of the weights).",
      "votes": null
    },
    {
      "id": "142502",
      "postDate": "11/02/2016 17:02:50",
      "content": "<ol>\n<li><p>I can confirm that it is possible to get a LB score below 0.05 with a single (relatively simple) model, without using pretrained nets or additional data, without bagging, boosting, or any other ML &quot;tricks.&quot;</p></li>\n<li><p>For about a year now Kaggle has allowed use of pre-trained models in all of their image competitions. The only restriction they've had was for non-open source data or models in commercial competitions. Unless explicitly stated otherwise, I think it's safe to assume that the same standards apply in this competitions. </p></li>\n<li><p>I've taken a look at the previous edition of this competition. Several of the top-scoring solutions have used some sort of pre-trained tools. I did not see any comments there disallowing that practice, albeit back then transfer learning for image categorizations was probably still in its infancy. </p></li>\n<li><p>Many of the standard NN libraries (Keras and Caffe for instance) offer pre-trained models as part of their standard packages. I feel that these will become standard tools from now on for all deep learning pipelines. </p></li>\n</ol>",
      "rawMarkdown": "1. I can confirm that it is possible to get a LB score below 0.05 with a single (relatively simple) model, without using pretrained nets or additional data, without bagging, boosting, or any other ML \"tricks.\"\r\n\r\n2. For about a year now Kaggle has allowed use of pre-trained models in all of their image competitions. The only restriction they've had was for non-open source data or models in commercial competitions. Unless explicitly stated otherwise, I think it's safe to assume that the same standards apply in this competitions. \r\n\r\n3. I've taken a look at the previous edition of this competition. Several of the top-scoring solutions have used some sort of pre-trained tools. I did not see any comments there disallowing that practice, albeit back then transfer learning for image categorizations was probably still in its infancy. \r\n\r\n4. Many of the standard NN libraries (Keras and Caffe for instance) offer pre-trained models as part of their standard packages. I feel that these will become standard tools from now on for all deep learning pipelines.",
      "votes": null
    },
    {
      "id": "144343",
      "postDate": "11/13/2016 22:13:10",
      "content": "<p>Very simple question here (sorry if it's too basic, but I've done some reading online and I still am not sure I get it) - what is meant by a pre-trained model?</p>",
      "rawMarkdown": "Very simple question here (sorry if it's too basic, but I've done some reading online and I still am not sure I get it) - what is meant by a pre-trained model?",
      "votes": null
    },
    {
      "id": "144345",
      "postDate": "11/13/2016 22:27:10",
      "content": "<p>Not a bad question at all! I remember being uncertain about that term when I first saw it as well.</p>\n\n<p>A pre-trained model just means a model that's already been fit to some data prior to being exposed to the current target training set.</p>\n\n<p>An example might be more useful - let's say you're using a convolutional neural network to classify images in this competition, you could train one from scratch, or you could use one that someone had already trained for another classification problem, which would likely already have very many useful learned feature detection layers - things like edges and rudimentary shapes. You'd just need to make sure your inputs fit in the network and change the classification outputs and voil&#224;! </p>",
      "rawMarkdown": "Not a bad question at all! I remember being uncertain about that term when I first saw it as well.\r\n\r\nA pre-trained model just means a model that's already been fit to some data prior to being exposed to the current target training set.\r\n\r\nAn example might be more useful - let's say you're using a convolutional neural network to classify images in this competition, you could train one from scratch, or you could use one that someone had already trained for another classification problem, which would likely already have very many useful learned feature detection layers - things like edges and rudimentary shapes. You'd just need to make sure your inputs fit in the network and change the classification outputs and voilà!",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 141072,
      "author_name": "rareitmeyer",
      "author_url": "",
      "post_date": "10/25/2016 01:50:04",
      "content": "<p>Often the rules explicitly state no external data via a sentence like &quot;Unless otherwise expressly stated on the Competition Website, Participants must not use data other than the Data to develop and test their models and Submissions.&quot;</p>\n\n<p>While I don't see that in the rules for this contest, I'm assuming that it still applies, in the spirit of friendly competition.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 141124,
      "author_name": "erlend",
      "author_url": "",
      "post_date": "10/25/2016 08:56:44",
      "content": "<p>Hmm, but then surely using a pretrained network also shouldn't be allowed (especially if you fix some of the weights).</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 142502,
      "author_name": "tunguz",
      "author_url": "",
      "post_date": "11/02/2016 17:02:50",
      "content": "<ol>\n<li><p>I can confirm that it is possible to get a LB score below 0.05 with a single (relatively simple) model, without using pretrained nets or additional data, without bagging, boosting, or any other ML &quot;tricks.&quot;</p></li>\n<li><p>For about a year now Kaggle has allowed use of pre-trained models in all of their image competitions. The only restriction they've had was for non-open source data or models in commercial competitions. Unless explicitly stated otherwise, I think it's safe to assume that the same standards apply in this competitions. </p></li>\n<li><p>I've taken a look at the previous edition of this competition. Several of the top-scoring solutions have used some sort of pre-trained tools. I did not see any comments there disallowing that practice, albeit back then transfer learning for image categorizations was probably still in its infancy. </p></li>\n<li><p>Many of the standard NN libraries (Keras and Caffe for instance) offer pre-trained models as part of their standard packages. I feel that these will become standard tools from now on for all deep learning pipelines. </p></li>\n</ol>",
      "votes": null,
      "replies": []
    },
    {
      "id": 144343,
      "author_name": "laurenmcd",
      "author_url": "",
      "post_date": "11/13/2016 22:13:10",
      "content": "<p>Very simple question here (sorry if it's too basic, but I've done some reading online and I still am not sure I get it) - what is meant by a pre-trained model?</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 144345,
      "author_name": "paulgamble",
      "author_url": "",
      "post_date": "11/13/2016 22:27:10",
      "content": "<p>Not a bad question at all! I remember being uncertain about that term when I first saw it as well.</p>\n\n<p>A pre-trained model just means a model that's already been fit to some data prior to being exposed to the current target training set.</p>\n\n<p>An example might be more useful - let's say you're using a convolutional neural network to classify images in this competition, you could train one from scratch, or you could use one that someone had already trained for another classification problem, which would likely already have very many useful learned feature detection layers - things like edges and rudimentary shapes. You'd just need to make sure your inputs fit in the network and change the classification outputs and voil&#224;! </p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "140812": "Are people using additional images of cats and dogs in this competition? \r\n\r\nIt would be pretty simple to download another dataset to supplement this one, but then it basically reduces the leaderboard to an ordered list of who downloaded the most images.",
    "141072": "Often the rules explicitly state no external data via a sentence like \"Unless otherwise expressly stated on the Competition Website, Participants must not use data other than the Data to develop and test their models and Submissions.\"\r\n\r\nWhile I don't see that in the rules for this contest, I'm assuming that it still applies, in the spirit of friendly competition.",
    "141124": "Hmm, but then surely using a pretrained network also shouldn't be allowed (especially if you fix some of the weights).",
    "142502": "1. I can confirm that it is possible to get a LB score below 0.05 with a single (relatively simple) model, without using pretrained nets or additional data, without bagging, boosting, or any other ML \"tricks.\"\r\n\r\n2. For about a year now Kaggle has allowed use of pre-trained models in all of their image competitions. The only restriction they've had was for non-open source data or models in commercial competitions. Unless explicitly stated otherwise, I think it's safe to assume that the same standards apply in this competitions. \r\n\r\n3. I've taken a look at the previous edition of this competition. Several of the top-scoring solutions have used some sort of pre-trained tools. I did not see any comments there disallowing that practice, albeit back then transfer learning for image categorizations was probably still in its infancy. \r\n\r\n4. Many of the standard NN libraries (Keras and Caffe for instance) offer pre-trained models as part of their standard packages. I feel that these will become standard tools from now on for all deep learning pipelines.",
    "144343": "Very simple question here (sorry if it's too basic, but I've done some reading online and I still am not sure I get it) - what is meant by a pre-trained model?",
    "144345": "Not a bad question at all! I remember being uncertain about that term when I first saw it as well.\r\n\r\nA pre-trained model just means a model that's already been fit to some data prior to being exposed to the current target training set.\r\n\r\nAn example might be more useful - let's say you're using a convolutional neural network to classify images in this competition, you could train one from scratch, or you could use one that someone had already trained for another classification problem, which would likely already have very many useful learned feature detection layers - things like edges and rudimentary shapes. You'd just need to make sure your inputs fit in the network and change the classification outputs and voilà!"
  },
  "source": "meta"
}