{
  "id": 8099,
  "title": "Major problems with this task",
  "url": "/competitions/billion-word-imputation/discussion/8099",
  "author_name": "Tony Robinson",
  "post_date": "2014-05-09T10:46:51.227000",
  "votes": 0,
  "comment_count": 16,
  "views": 9000,
  "content": "<p>I've just sent the email below to 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com.&nbsp;&nbsp; There are major problems with this task, I suggest that it is closed and we discuss on the mailing list and then task is reopened when the problems are sorted out.</p>\n\n<p>Tony Robinson</p>\n\n<p>To: 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com</p>\n\n<p>Has anyone worked out what Kaggle have done with our data?</p>\n\n<p>There are two issues:</p>\n\n<ul>\n<li><p>they seem to have put all the data in train.txt (that is not just news.en-00001-of-00100 to news.en-00099-of-00100 but the heldout part 00000 as well)</p></li>\n<li><p>they have also chosen a different partitioning of the heldout data, not just news.en.heldout-00000-of-00050 and news.en.heldout-00001-of-00050 but randomly from all of them.</p></li>\n</ul>\n\n<p>I'll also post to the Kaggle group and point them over here.</p>\n\n<h2>Tony  </h2>\n\n<p>** Cantab is hiring: www.cantabResearch.com/openings ** <br>\nDr A J Robinson, Founder, Cantab Research Ltd <br>\nCompany reg no GB 05697423, VAT reg no 925606030 <br>\n51 Canterbury Street, Cambridge, CB4 3QG, UK</p>",
  "messages": [
    {
      "id": 50221,
      "postDate": "2014-07-09T19:05:40.537Z",
      "content": "<p>I said that I'd report back once we'd processed the entire test set and we've just done that.</p>\n\n<p>I thought it would take a week or so and my last post on this was 58 days ago - so a month or so would have been a better estimate.</p>\n\n<p>We took something like 160 CPU days (assuming single core - so 20 8 core days) for our current submission and our earlier runs had to be aborted as they were going to take too long.</p>\n\n<p>So I think this task is all about really good models of language and very efficient search - which is two things we love doing.&nbsp;&nbsp;&nbsp; It'll be a real challenge keeping everything going fast enough - and that's the engineering problem it should be.</p>\n\n<p>Thanks,</p>\n\n\n<p>Tony</p>",
      "votes": 4
    },
    {
      "id": 50269,
      "postDate": "2014-07-10T14:09:13.947Z",
      "content": "<p>Excellent work! &nbsp;I get nervous if an algorithm runs for more than a few hours, and I'm downright antsy after a couple of days... I'm impressed with your patience and confidence, but it looks like it paid off. &nbsp;Looks like the competition is on. &nbsp;:)</p>",
      "votes": 1
    },
    {
      "id": 50233,
      "postDate": "2014-07-10T00:06:03.887Z",
      "content": "<p>How amazing! Grats on the nr. 1 position too. This contest is really pushing the boundaries.</p>",
      "votes": 1
    },
    {
      "id": 44316,
      "postDate": "2014-05-09T16:42:55.077Z",
      "content": "<p>Would it help if you gave the location of the missing word?</p>\n<p>Task complexity is very high:</p>\n<ul>\n<li><span style=\"line-height: 1.4\">Find out where a word is missing in a sentence (difficult task for me)</span></li>\n<li><span style=\"line-height: 1.4\">Find out what word was missing (difficult task for me)</span></li>\n</ul>\n<p>With Levenshtein distance I think the location does not matter for the score:</p>\n<p>&quot;I shot the xxxx, but i did not shoot the deputy&quot;</p>\n<p>&quot;I shot the, but i did not shoot the xxxx deputy&quot;</p>\n<p>would have an equal edit distance to the correct sentence. So you won't know if your word location detection is working, and finding the correct location is not rewarded?</p>\n<p>I'll have a look if predicting the average word length for all in test, using chars that are most popular in the English language, in a random location gives a workable score. A word like &quot;etaoins&quot; to see if substitutions are rewarded more than insertions (predicting 'sheriffs' when correct is 'sheriff').</p>\n<p>From test:</p>\n<p>99,&quot;Now add the egg and continue to .&quot;</p>\n<p>What to do here?</p>\n<p>Now you add the egg and continue to</p>\n<p>Now add the boiled egg and continue to</p>\n<p>Now add the egg and happily continue to</p>\n<p>163,&quot;Welcome to Crazy .&quot;</p>\n<p>201,&quot;Kevin had 20 points .&quot;</p>\n<p>293041,&quot;up .&quot;</p>\n<p>293035,&quot;Spencer .&quot;</p>\n<p>Edit: I am enthusiastic for this competition either way. A massive dataset. An interesting problem. Ty Kaggle and researchers for letting me fool around with this.&nbsp;</p>",
      "votes": 1
    },
    {
      "id": 54585,
      "postDate": "2014-09-24T07:15:49.837Z",
      "content": "<p>These are not problematic sentences. &nbsp;One of the first things that you have to realise about this tasks is that if you haven't got a clue where to insert a word then don't.</p>\n\n<p>I don't regard this task as algorithmically hard, we've already made good progress so everyone can see that there is useful work you can do here. &nbsp; It does take a fair amount of compute, and I'd imagine that has limited the popularity.</p>",
      "votes": 2
    },
    {
      "id": 44318,
      "postDate": "2014-05-09T17:00:31.257Z",
      "content": "<p>I hear your concerns. This is a for-fun playground competition, so we can always reboot and dial down the difficulty if it turns out to too masochistic. Half the fun of playground competitions is pushing things (like our scoring servers!) to a&nbsp;breaking point. The reverse game of life competition turned into a lot of fun, despite the computational arms race it created.</p>\n<p>The Levenshtein indeed requires the right word in the right place. There wouldn't be much use&nbsp;in putting the right word in the wrong place! The alternative was just to ask for the missing word only, which I find&nbsp;a bit more boring and less NLP-intensive. I didn't want the winning model to be some clever variation of a&nbsp;list of the most common words.</p>",
      "votes": 2
    },
    {
      "id": 44313,
      "postDate": "2014-05-09T15:34:43.657Z",
      "content": "<p>Hi William,</p>\n<p>Thanks for helping sort this out.</p>\n<p>I recommend that you cat all 99 files in training-monolingual.tokenized.shuffled to create train.txt, leaving out the one that is in the heldout directory.</p>\n<p>Running our big language models on just one of the heldout shards takes about three days of compute, so all 50 would be 150 CPU days. &nbsp; This is just to compute the log probabilities of the next word (as we have made publicly available on the first ten shards), I would guess that to search over possibilities of missing words as well may be one or two orders of magnitude more work, so perhaps 4 or 40 CPU years.&nbsp;&nbsp; The lower end of this isn't impossible for us, but wouldn't be possible for the bright coder that wants to play with this task to see what they might learn, so you may find that the winner is the group with the most compute and not the best ideas.&nbsp;&nbsp;&nbsp; Taking the test size down would allow more people to play, but as you say, the results would be noisier.</p>\n<p>Tony</p>",
      "votes": 2
    },
    {
      "id": 67547,
      "postDate": "2015-03-21T18:50:45.063Z",
      "content": "<p>Interesting experiment. &nbsp;I can see that my system frequently makes mistakes that no human would make which might suggest we are far below human performance. &nbsp;On the other hand, it is surely also the&nbsp;case that the system is better than human performance in some situations.</p>"
    },
    {
      "id": 67003,
      "postDate": "2015-03-18T16:17:00.583Z",
      "content": "<p>A simple experiment:</p>\n<p>Randomly selected 100 sentences (held out from the training set), and randomly omitted one word in each sentence.</p>\n<p>Without seeing the original sentences, tried to impute the missing word as best I could (sometimes&nbsp; not adding any word, if in doubt)</p>\n<p>Finally - calculated the distance to the original sentences:</p>\n<p>- omitted sentences (before imputation) : 5.68&nbsp; (reasonably close to the expected 5.55)</p>\n<p>- manually imputed sentences: 3.78&nbsp; - not too far from the current top entry...</p>\n\n<p>Would be interesting to test this on a larger set (and have native English speakers...)</p>"
    },
    {
      "id": 66183,
      "postDate": "2015-03-14T14:42:40.140Z",
      "content": "<p>I'll take a shot at the crazy examples.</p>\n<p>&quot;He added that people should not mess with mother nature , and let <strong>the</strong> sharks be .&quot;</p>\n<p>&quot;The 's bloody body was discovered on a bed .&quot;&nbsp;It' almost certainly man or woman which is like 50/50.</p>\n<p>&quot;Now add the egg and continue to <strong>stir</strong>.&quot; Other cooking verbs would also fit.</p>\n<p>&quot;Welcome to Crazy <strong>town</strong>.&quot;</p>\n<p>&quot;Kevin had 20 points <strong>left</strong>.&quot;</p>\n<p>&quot;<strong>Look</strong> up .&quot;</p>\n<p>&quot;Spencer <strong>stopped</strong>.&quot; Although any verb could work there, so just pick the most common.</p>"
    },
    {
      "id": 44570,
      "postDate": "2014-05-15T03:02:23.587Z",
      "content": "<p>My guess is that the &quot;final&quot; solution will require multiple types of models. One to create inference as to the location of the missing word and another to select the needed word within context. The first problem is hard. The second is much harder.</p>"
    },
    {
      "id": 44427,
      "postDate": "2014-05-12T20:01:18.497Z",
      "content": "<p>[quote=William Cukierski;44318]</p>\n<p>The Levenshtein indeed requires the right word in the right place. There wouldn't be much use&nbsp;in putting the right word in the wrong place! The alternative was just to ask for the missing word only, which I find&nbsp;a bit more boring and less NLP-intensive. I didn't want the winning model to be some clever variation of a&nbsp;list of the most common words.</p>\n<p>[/quote]</p>\n<p>Man, that's rough. &nbsp;Looking at some of this data I can hardly guess the correct word and location even when googling for an exact quote, and this is in samples I'm pulling because I can identify that the sentences are obviously incomplete (by hand, mind you.... no algos yet).</p>\n<p>Should be an interesting competition!</p>"
    },
    {
      "id": 44409,
      "postDate": "2014-05-12T16:07:07.650Z",
      "content": "<p>Now that we've cleared up the training data issue we'll give this task a go and report back fairly soon as to how long the whole test test (all heldout data) takes.&nbsp;&nbsp; We've already thought of some ways to make our model run faster, no doubt we'll think of more - this is the sort of thing we want to get out of running this task anyway.</p>"
    },
    {
      "id": 44304,
      "postDate": "2014-05-09T14:04:32.707Z",
      "content": "<p>Forgot to add: I can add a warning to the data page if you're concerned&nbsp;people will take the Kaggle dataset and publish perplexities on it.</p>"
    },
    {
      "id": 44298,
      "postDate": "2014-05-09T13:56:52.740Z",
      "content": "<p>[quote=Tony Robinson;44291]</p>\n<p>* they seem to have put all the data in train.txt (that is not just news.en-00001-of-00100 to news.en-00099-of-00100 but the heldout part 00000 as well)</p>\n<p>* they have also chosen a different partitioning of the heldout data, not just news.en.heldout-00000-of-00050 and news.en.heldout-00001-of-00050 but randomly from all of them.</p>\n<p>[/quote]</p>\n<p>Hey Tony, thanks for reaching out!</p>\n<ul>\n<li><span style=\"line-height: 1.4\">The train.txt was formed by </span><span style=\"line-height: 1.4\">concatenating</span><span style=\"line-height: 1.4\">&nbsp;the news.en files (pattern matching anything without the word heldout), which pulled in news.en-00000. Is that not part of the training set? I see now that it lives in the heldout folder. If it's not meant for training, you may want to&nbsp;warn folks&nbsp;in&nbsp;the README or give it a name that does not match&nbsp;the&nbsp;train set.</span></li>\n<li>We included all of the heldout sentences because of the one-word-per-sentence nature of the&nbsp;task. It's not meant to be&nbsp;apples-to-apples against the language models, both because of the different problem&nbsp;formulation and also the edit distance metric. The sample size would be quite small using only ~12k of the heldout sentences.</li>\n</ul>\n<p>To summarize what we've done, it was just a big cat of all the heldout files into a the test set (order shuffled) and a big cat of all the non-heldout files into the train&nbsp;set.</p>"
    },
    {
      "id": 44291,
      "postDate": "2014-05-09T10:46:51.227Z",
      "content": "<p>I've just sent the email below to 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com.&nbsp;&nbsp; There are major problems with this task, I suggest that it is closed and we discuss on the mailing list and then task is reopened when the problems are sorted out.</p>\n\n<p>Tony Robinson</p>\n\n<p>To: 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com</p>\n\n<p>Has anyone worked out what Kaggle have done with our data?</p>\n\n<p>There are two issues:</p>\n\n<ul>\n<li><p>they seem to have put all the data in train.txt (that is not just news.en-00001-of-00100 to news.en-00099-of-00100 but the heldout part 00000 as well)</p></li>\n<li><p>they have also chosen a different partitioning of the heldout data, not just news.en.heldout-00000-of-00050 and news.en.heldout-00001-of-00050 but randomly from all of them.</p></li>\n</ul>\n\n<p>I'll also post to the Kaggle group and point them over here.</p>\n\n<h2>Tony  </h2>\n\n<p>** Cantab is hiring: www.cantabResearch.com/openings ** <br>\nDr A J Robinson, Founder, Cantab Research Ltd <br>\nCompany reg no GB 05697423, VAT reg no 925606030 <br>\n51 Canterbury Street, Cambridge, CB4 3QG, UK</p>",
      "rawMarkdown": "I've just sent the email below to 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com.&nbsp;&nbsp; There are major problems with this task, I suggest that it is closed and we discuss on the mailing list and then task is reopened when the problems are sorted out.\n\nTony Robinson\n\nTo: 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com\n\nHas anyone worked out what Kaggle have done with our data?\n\nThere are two issues:\n\n* they seem to have put all the data in train.txt (that is not just news.en-00001-of-00100 to news.en-00099-of-00100 but the heldout part 00000 as well)\n\n* they have also chosen a different partitioning of the heldout data, not just news.en.heldout-00000-of-00050 and news.en.heldout-00001-of-00050 but randomly from all of them.\n\nI'll also post to the Kaggle group and point them over here.\n\nTony  \n--  \n** Cantab is hiring: www.cantabResearch.com/openings **  \nDr A J Robinson, Founder, Cantab Research Ltd  \nCompany reg no GB 05697423, VAT reg no 925606030  \n51 Canterbury Street, Cambridge, CB4 3QG, UK"
    },
    {
      "id": 54562,
      "postDate": "2014-09-24T03:38:00.103Z",
      "rawMarkdown": "",
      "isDeleted": true
    }
  ],
  "comments": [
    {
      "id": 50221,
      "author_name": "Tony Robinson",
      "author_url": "",
      "post_date": "2014-07-09T19:05:40.537000",
      "content": "<p>I said that I'd report back once we'd processed the entire test set and we've just done that.</p>\n\n<p>I thought it would take a week or so and my last post on this was 58 days ago - so a month or so would have been a better estimate.</p>\n\n<p>We took something like 160 CPU days (assuming single core - so 20 8 core days) for our current submission and our earlier runs had to be aborted as they were going to take too long.</p>\n\n<p>So I think this task is all about really good models of language and very efficient search - which is two things we love doing.&nbsp;&nbsp;&nbsp; It'll be a real challenge keeping everything going fast enough - and that's the engineering problem it should be.</p>\n\n<p>Thanks,</p>\n\n\n<p>Tony</p>",
      "votes": 4,
      "replies": []
    },
    {
      "id": 50269,
      "author_name": "ChipMonkey",
      "author_url": "",
      "post_date": "2014-07-10T14:09:13.947000",
      "content": "<p>Excellent work! &nbsp;I get nervous if an algorithm runs for more than a few hours, and I'm downright antsy after a couple of days... I'm impressed with your patience and confidence, but it looks like it paid off. &nbsp;Looks like the competition is on. &nbsp;:)</p>",
      "votes": 1,
      "replies": []
    },
    {
      "id": 50233,
      "author_name": "Triskelion",
      "author_url": "",
      "post_date": "2014-07-10T00:06:03.887000",
      "content": "<p>How amazing! Grats on the nr. 1 position too. This contest is really pushing the boundaries.</p>",
      "votes": 1,
      "replies": []
    },
    {
      "id": 44316,
      "author_name": "Triskelion",
      "author_url": "",
      "post_date": "2014-05-09T16:42:55.077000",
      "content": "<p>Would it help if you gave the location of the missing word?</p>\n<p>Task complexity is very high:</p>\n<ul>\n<li><span style=\"line-height: 1.4\">Find out where a word is missing in a sentence (difficult task for me)</span></li>\n<li><span style=\"line-height: 1.4\">Find out what word was missing (difficult task for me)</span></li>\n</ul>\n<p>With Levenshtein distance I think the location does not matter for the score:</p>\n<p>&quot;I shot the xxxx, but i did not shoot the deputy&quot;</p>\n<p>&quot;I shot the, but i did not shoot the xxxx deputy&quot;</p>\n<p>would have an equal edit distance to the correct sentence. So you won't know if your word location detection is working, and finding the correct location is not rewarded?</p>\n<p>I'll have a look if predicting the average word length for all in test, using chars that are most popular in the English language, in a random location gives a workable score. A word like &quot;etaoins&quot; to see if substitutions are rewarded more than insertions (predicting 'sheriffs' when correct is 'sheriff').</p>\n<p>From test:</p>\n<p>99,&quot;Now add the egg and continue to .&quot;</p>\n<p>What to do here?</p>\n<p>Now you add the egg and continue to</p>\n<p>Now add the boiled egg and continue to</p>\n<p>Now add the egg and happily continue to</p>\n<p>163,&quot;Welcome to Crazy .&quot;</p>\n<p>201,&quot;Kevin had 20 points .&quot;</p>\n<p>293041,&quot;up .&quot;</p>\n<p>293035,&quot;Spencer .&quot;</p>\n<p>Edit: I am enthusiastic for this competition either way. A massive dataset. An interesting problem. Ty Kaggle and researchers for letting me fool around with this.&nbsp;</p>",
      "votes": 1,
      "replies": []
    },
    {
      "id": 54585,
      "author_name": "Tony Robinson",
      "author_url": "",
      "post_date": "2014-09-24T07:15:49.837000",
      "content": "<p>These are not problematic sentences. &nbsp;One of the first things that you have to realise about this tasks is that if you haven't got a clue where to insert a word then don't.</p>\n\n<p>I don't regard this task as algorithmically hard, we've already made good progress so everyone can see that there is useful work you can do here. &nbsp; It does take a fair amount of compute, and I'd imagine that has limited the popularity.</p>",
      "votes": 2,
      "replies": []
    },
    {
      "id": 44318,
      "author_name": "Will Cukierski",
      "author_url": "",
      "post_date": "2014-05-09T17:00:31.257000",
      "content": "<p>I hear your concerns. This is a for-fun playground competition, so we can always reboot and dial down the difficulty if it turns out to too masochistic. Half the fun of playground competitions is pushing things (like our scoring servers!) to a&nbsp;breaking point. The reverse game of life competition turned into a lot of fun, despite the computational arms race it created.</p>\n<p>The Levenshtein indeed requires the right word in the right place. There wouldn't be much use&nbsp;in putting the right word in the wrong place! The alternative was just to ask for the missing word only, which I find&nbsp;a bit more boring and less NLP-intensive. I didn't want the winning model to be some clever variation of a&nbsp;list of the most common words.</p>",
      "votes": 2,
      "replies": []
    },
    {
      "id": 44313,
      "author_name": "Tony Robinson",
      "author_url": "",
      "post_date": "2014-05-09T15:34:43.657000",
      "content": "<p>Hi William,</p>\n<p>Thanks for helping sort this out.</p>\n<p>I recommend that you cat all 99 files in training-monolingual.tokenized.shuffled to create train.txt, leaving out the one that is in the heldout directory.</p>\n<p>Running our big language models on just one of the heldout shards takes about three days of compute, so all 50 would be 150 CPU days. &nbsp; This is just to compute the log probabilities of the next word (as we have made publicly available on the first ten shards), I would guess that to search over possibilities of missing words as well may be one or two orders of magnitude more work, so perhaps 4 or 40 CPU years.&nbsp;&nbsp; The lower end of this isn't impossible for us, but wouldn't be possible for the bright coder that wants to play with this task to see what they might learn, so you may find that the winner is the group with the most compute and not the best ideas.&nbsp;&nbsp;&nbsp; Taking the test size down would allow more people to play, but as you say, the results would be noisier.</p>\n<p>Tony</p>",
      "votes": 2,
      "replies": []
    },
    {
      "id": 67547,
      "author_name": "Eric Jackson",
      "author_url": "",
      "post_date": "2015-03-21T18:50:45.063000",
      "content": "<p>Interesting experiment. &nbsp;I can see that my system frequently makes mistakes that no human would make which might suggest we are far below human performance. &nbsp;On the other hand, it is surely also the&nbsp;case that the system is better than human performance in some situations.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 67003,
      "author_name": "meron",
      "author_url": "",
      "post_date": "2015-03-18T16:17:00.583000",
      "content": "<p>A simple experiment:</p>\n<p>Randomly selected 100 sentences (held out from the training set), and randomly omitted one word in each sentence.</p>\n<p>Without seeing the original sentences, tried to impute the missing word as best I could (sometimes&nbsp; not adding any word, if in doubt)</p>\n<p>Finally - calculated the distance to the original sentences:</p>\n<p>- omitted sentences (before imputation) : 5.68&nbsp; (reasonably close to the expected 5.55)</p>\n<p>- manually imputed sentences: 3.78&nbsp; - not too far from the current top entry...</p>\n\n<p>Would be interesting to test this on a larger set (and have native English speakers...)</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 66183,
      "author_name": "Houshalter",
      "author_url": "",
      "post_date": "2015-03-14T14:42:40.140000",
      "content": "<p>I'll take a shot at the crazy examples.</p>\n<p>&quot;He added that people should not mess with mother nature , and let <strong>the</strong> sharks be .&quot;</p>\n<p>&quot;The 's bloody body was discovered on a bed .&quot;&nbsp;It' almost certainly man or woman which is like 50/50.</p>\n<p>&quot;Now add the egg and continue to <strong>stir</strong>.&quot; Other cooking verbs would also fit.</p>\n<p>&quot;Welcome to Crazy <strong>town</strong>.&quot;</p>\n<p>&quot;Kevin had 20 points <strong>left</strong>.&quot;</p>\n<p>&quot;<strong>Look</strong> up .&quot;</p>\n<p>&quot;Spencer <strong>stopped</strong>.&quot; Although any verb could work there, so just pick the most common.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 44570,
      "author_name": "Jared Thompson",
      "author_url": "",
      "post_date": "2014-05-15T03:02:23.587000",
      "content": "<p>My guess is that the &quot;final&quot; solution will require multiple types of models. One to create inference as to the location of the missing word and another to select the needed word within context. The first problem is hard. The second is much harder.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 44427,
      "author_name": "ChipMonkey",
      "author_url": "",
      "post_date": "2014-05-12T20:01:18.497000",
      "content": "<p>[quote=William Cukierski;44318]</p>\n<p>The Levenshtein indeed requires the right word in the right place. There wouldn't be much use&nbsp;in putting the right word in the wrong place! The alternative was just to ask for the missing word only, which I find&nbsp;a bit more boring and less NLP-intensive. I didn't want the winning model to be some clever variation of a&nbsp;list of the most common words.</p>\n<p>[/quote]</p>\n<p>Man, that's rough. &nbsp;Looking at some of this data I can hardly guess the correct word and location even when googling for an exact quote, and this is in samples I'm pulling because I can identify that the sentences are obviously incomplete (by hand, mind you.... no algos yet).</p>\n<p>Should be an interesting competition!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 44409,
      "author_name": "Tony Robinson",
      "author_url": "",
      "post_date": "2014-05-12T16:07:07.650000",
      "content": "<p>Now that we've cleared up the training data issue we'll give this task a go and report back fairly soon as to how long the whole test test (all heldout data) takes.&nbsp;&nbsp; We've already thought of some ways to make our model run faster, no doubt we'll think of more - this is the sort of thing we want to get out of running this task anyway.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 44304,
      "author_name": "Will Cukierski",
      "author_url": "",
      "post_date": "2014-05-09T14:04:32.707000",
      "content": "<p>Forgot to add: I can add a warning to the data page if you're concerned&nbsp;people will take the Kaggle dataset and publish perplexities on it.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 44298,
      "author_name": "Will Cukierski",
      "author_url": "",
      "post_date": "2014-05-09T13:56:52.740000",
      "content": "<p>[quote=Tony Robinson;44291]</p>\n<p>* they seem to have put all the data in train.txt (that is not just news.en-00001-of-00100 to news.en-00099-of-00100 but the heldout part 00000 as well)</p>\n<p>* they have also chosen a different partitioning of the heldout data, not just news.en.heldout-00000-of-00050 and news.en.heldout-00001-of-00050 but randomly from all of them.</p>\n<p>[/quote]</p>\n<p>Hey Tony, thanks for reaching out!</p>\n<ul>\n<li><span style=\"line-height: 1.4\">The train.txt was formed by </span><span style=\"line-height: 1.4\">concatenating</span><span style=\"line-height: 1.4\">&nbsp;the news.en files (pattern matching anything without the word heldout), which pulled in news.en-00000. Is that not part of the training set? I see now that it lives in the heldout folder. If it's not meant for training, you may want to&nbsp;warn folks&nbsp;in&nbsp;the README or give it a name that does not match&nbsp;the&nbsp;train set.</span></li>\n<li>We included all of the heldout sentences because of the one-word-per-sentence nature of the&nbsp;task. It's not meant to be&nbsp;apples-to-apples against the language models, both because of the different problem&nbsp;formulation and also the edit distance metric. The sample size would be quite small using only ~12k of the heldout sentences.</li>\n</ul>\n<p>To summarize what we've done, it was just a big cat of all the heldout files into a the test set (order shuffled) and a big cat of all the non-heldout files into the train&nbsp;set.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 54562,
      "author_name": "",
      "author_url": "",
      "post_date": "2014-09-24T03:38:00.103000",
      "content": "",
      "votes": 0,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "50221": "",
    "50269": "",
    "50233": "",
    "44316": "",
    "54585": "",
    "44318": "",
    "44313": "",
    "67547": "",
    "67003": "",
    "66183": "",
    "44570": "",
    "44427": "",
    "44409": "",
    "44304": "",
    "44298": "",
    "44291": "I've just sent the email below to 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com.&nbsp;&nbsp; There are major problems with this task, I suggest that it is closed and we discuss on the mailing list and then task is reopened when the problems are sorted out.\n\nTony Robinson\n\nTo: 1-billion-word-language-modeling-benchmark-discuss@googlegroups.com\n\nHas anyone worked out what Kaggle have done with our data?\n\nThere are two issues:\n\n* they seem to have put all the data in train.txt (that is not just news.en-00001-of-00100 to news.en-00099-of-00100 but the heldout part 00000 as well)\n\n* they have also chosen a different partitioning of the heldout data, not just news.en.heldout-00000-of-00050 and news.en.heldout-00001-of-00050 but randomly from all of them.\n\nI'll also post to the Kaggle group and point them over here.\n\nTony  \n--  \n** Cantab is hiring: www.cantabResearch.com/openings **  \nDr A J Robinson, Founder, Cantab Research Ltd  \nCompany reg no GB 05697423, VAT reg no 925606030  \n51 Canterbury Street, Cambridge, CB4 3QG, UK",
    "54562": ""
  }
}