{
  "id": 233170,
  "title": "Test data are NOT fully labeled (!!)",
  "url": "/competitions/coleridgeinitiative-show-us-the-data/discussion/233170",
  "author_name": "Emanuele Guidotti",
  "post_date": "2021-04-17T17:48:30.364000",
  "votes": 32,
  "comment_count": 16,
  "views": 0,
  "content": "<p>The hosts have confirmed that the test data are <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/228322#1253208\" target=\"_blank\">exhaustively labelled</a>. This is extremely important as otherwise models that <strong>generalize well</strong> and discover new datasets would be <strong>heavily penalized</strong>. In contrast with the mission of this competition from the description page.</p>\n<p><strong>The problem is that the test data are NOT exhaustively labeled.</strong> <br>\nBelow I describe the experiments I performed that lead me to this conclusion.</p>\n<p><strong>Experiment 1</strong> I submitted the simple baseline model based on string matching (I know it's not the goal of the competition) that achieves 0.700 on the LB, as most of the participants.</p>\n<p><strong>Experiment 2</strong> I found a new dataset not mentioned in the training set, namely  \"Assessment of Educational Progress\". From publication  <code>9d75e205-3030-44c6-ae21-fc25be319189</code> I check that this refers to a proper dataset: </p>\n<blockquote>\n  <p>The National Assessment of Educational Progress (NAEP) provides scores that are comparable across states, but these are only available for a sample of students within a small sample of U.S. schools. In order to make the state test scores more meaningful, we have recalibrated the percent passing scores as percentiles of school performance within the state (following the approach by Logan, Minca and Adar 2012).</p>\n</blockquote>\n<p>Cool! Let's add <code>assessment of educational progress</code> (after cleaning) to the list of strings to match in the baseline model. Note: <code>assessment of educational progress</code> should be a true positive also for the longer label <code>national assessment of educational progress naep</code> as the Jaccardi score is above 0.5. </p>\n<p>If a match was found within a publication, then <code>assessment of educational progress</code> was only included once in the submitted cleaned labels for the publication, in the same way as the setup described <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/231893\" target=\"_blank\">here</a>. My scored dropped to 0.679. What?? OK, no panic! The hosts want a rich semantic context, so maybe my string matching baseline is predicting <code>assessment of educational progress</code> even in those cases where it is not referenced as a dataset but it is interpreted as something else (semantics). But then if I predict a random string my score would drop even more. Let's try it!</p>\n<p><strong>Experiment 3</strong> Same baseline model + if a match was found within a publication for <code>assessment of educational progress</code>, then <code>ThisStringWillNeverMatch</code> was only included once in the submitted cleaned labels for the publication. Almost same score 0.676. Ok, I give up… whether \"Assessment of Educational Progress\" is almost never referenced as a dataset (which is hardly believable) or it is very weakly labeled in the test data.</p>\n<p><strong>Extra</strong> I tried with different datasets and same outcome. You can find the replication code <a href=\"https://www.kaggle.com/eguidotti/test-data-are-not-fully-labeled\" target=\"_blank\">here</a></p>\n<p><strong>Update</strong>: Moreover, can anyone explain why naive matching like <code>if dataset in text:</code> achieves a better score than matching only if the dataset is not a substring of something else, e.g. <code>if regex.search(f\"\\\\b{dataset}\\\\b\", text):</code> ?? Do we really want to predict the dataset \"ADNI\" in the following cases??</p>\n<p>ID <code>a8997f97-ba55-46f8-aef7-c1edce2140ae</code>:</p>\n<blockquote>\n  <p>Bekhr<strong>adni</strong>a and Sastry (2005) study the in-and outflows of academic researchers in the UK using</p>\n</blockquote>\n<p>ID <code>29e11717-f3b4-4acb-8d97-ef9b6b428971</code>:</p>\n<blockquote>\n  <p>have much to contribute to methodologies for the pursuit of accuracy in <strong>adni</strong>nistrative records.</p>\n</blockquote>\n<p>From the leaderboard it seems so…</p>\n<p>This raises major concerns about this competition and the degree of randomness in the evaluation (both public and private). Models that generalize well and discover new datasets would be heavily penalized, and I can't understand why this outcome would be optimal for the hosts. I would very much appreciate if someone can say otherwise and explain why!</p>",
  "messages": [
    {
      "id": 1276573,
      "postDate": "2021-04-17T17:48:30.363Z",
      "content": "<p>The hosts have confirmed that the test data are <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/228322#1253208\" target=\"_blank\">exhaustively labelled</a>. This is extremely important as otherwise models that <strong>generalize well</strong> and discover new datasets would be <strong>heavily penalized</strong>. In contrast with the mission of this competition from the description page.</p>\n<p><strong>The problem is that the test data are NOT exhaustively labeled.</strong> <br>\nBelow I describe the experiments I performed that lead me to this conclusion.</p>\n<p><strong>Experiment 1</strong> I submitted the simple baseline model based on string matching (I know it's not the goal of the competition) that achieves 0.700 on the LB, as most of the participants.</p>\n<p><strong>Experiment 2</strong> I found a new dataset not mentioned in the training set, namely  \"Assessment of Educational Progress\". From publication  <code>9d75e205-3030-44c6-ae21-fc25be319189</code> I check that this refers to a proper dataset: </p>\n<blockquote>\n  <p>The National Assessment of Educational Progress (NAEP) provides scores that are comparable across states, but these are only available for a sample of students within a small sample of U.S. schools. In order to make the state test scores more meaningful, we have recalibrated the percent passing scores as percentiles of school performance within the state (following the approach by Logan, Minca and Adar 2012).</p>\n</blockquote>\n<p>Cool! Let's add <code>assessment of educational progress</code> (after cleaning) to the list of strings to match in the baseline model. Note: <code>assessment of educational progress</code> should be a true positive also for the longer label <code>national assessment of educational progress naep</code> as the Jaccardi score is above 0.5. </p>\n<p>If a match was found within a publication, then <code>assessment of educational progress</code> was only included once in the submitted cleaned labels for the publication, in the same way as the setup described <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/231893\" target=\"_blank\">here</a>. My scored dropped to 0.679. What?? OK, no panic! The hosts want a rich semantic context, so maybe my string matching baseline is predicting <code>assessment of educational progress</code> even in those cases where it is not referenced as a dataset but it is interpreted as something else (semantics). But then if I predict a random string my score would drop even more. Let's try it!</p>\n<p><strong>Experiment 3</strong> Same baseline model + if a match was found within a publication for <code>assessment of educational progress</code>, then <code>ThisStringWillNeverMatch</code> was only included once in the submitted cleaned labels for the publication. Almost same score 0.676. Ok, I give up… whether \"Assessment of Educational Progress\" is almost never referenced as a dataset (which is hardly believable) or it is very weakly labeled in the test data.</p>\n<p><strong>Extra</strong> I tried with different datasets and same outcome. You can find the replication code <a href=\"https://www.kaggle.com/eguidotti/test-data-are-not-fully-labeled\" target=\"_blank\">here</a></p>\n<p><strong>Update</strong>: Moreover, can anyone explain why naive matching like <code>if dataset in text:</code> achieves a better score than matching only if the dataset is not a substring of something else, e.g. <code>if regex.search(f\"\\\\b{dataset}\\\\b\", text):</code> ?? Do we really want to predict the dataset \"ADNI\" in the following cases??</p>\n<p>ID <code>a8997f97-ba55-46f8-aef7-c1edce2140ae</code>:</p>\n<blockquote>\n  <p>Bekhr<strong>adni</strong>a and Sastry (2005) study the in-and outflows of academic researchers in the UK using</p>\n</blockquote>\n<p>ID <code>29e11717-f3b4-4acb-8d97-ef9b6b428971</code>:</p>\n<blockquote>\n  <p>have much to contribute to methodologies for the pursuit of accuracy in <strong>adni</strong>nistrative records.</p>\n</blockquote>\n<p>From the leaderboard it seems so…</p>\n<p>This raises major concerns about this competition and the degree of randomness in the evaluation (both public and private). Models that generalize well and discover new datasets would be heavily penalized, and I can't understand why this outcome would be optimal for the hosts. I would very much appreciate if someone can say otherwise and explain why!</p>",
      "rawMarkdown": "The hosts have confirmed that the test data are [exhaustively labelled](https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/228322#1253208). This is extremely important as otherwise models that **generalize well** and discover new datasets would be **heavily penalized**. In contrast with the mission of this competition from the description page.\n\n**The problem is that the test data are NOT exhaustively labeled.** \nBelow I describe the experiments I performed that lead me to this conclusion.\n\n**Experiment 1** I submitted the simple baseline model based on string matching (I know it's not the goal of the competition) that achieves 0.700 on the LB, as most of the participants.\n\n**Experiment 2** I found a new dataset not mentioned in the training set, namely ~~\"Youth Risk Behavior Survey\"~~ \"Assessment of Educational Progress\". From publication ~~`34f6924a-a599-4566-9dc6-521249174721`~~ `9d75e205-3030-44c6-ae21-fc25be319189` I check that this refers to a proper dataset: \n> The National Assessment of Educational Progress (NAEP) provides scores that are comparable across states, but these are only available for a sample of students within a small sample of U.S. schools. In order to make the state test scores more meaningful, we have recalibrated the percent passing scores as percentiles of school performance within the state (following the approach by Logan, Minca and Adar 2012).\n\nCool! Let's add `assessment of educational progress` (after cleaning) to the list of strings to match in the baseline model. Note: `assessment of educational progress` should be a true positive also for the longer label `national assessment of educational progress naep` as the Jaccardi score is above 0.5. \n\nIf a match was found within a publication, then `assessment of educational progress` was only included once in the submitted cleaned labels for the publication, in the same way as the setup described [here](https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/231893). My scored dropped to 0.679. What?? OK, no panic! The hosts want a rich semantic context, so maybe my string matching baseline is predicting `assessment of educational progress` even in those cases where it is not referenced as a dataset but it is interpreted as something else (semantics). But then if I predict a random string my score would drop even more. Let's try it!\n \n**Experiment 3** Same baseline model + if a match was found within a publication for `assessment of educational progress`, then `ThisStringWillNeverMatch` was only included once in the submitted cleaned labels for the publication. Almost same score 0.676. Ok, I give up... whether \"Assessment of Educational Progress\" is almost never referenced as a dataset (which is hardly believable) or it is very weakly labeled in the test data.\n\n**Extra** I tried with different datasets and same outcome. You can find the replication code [here](https://www.kaggle.com/eguidotti/test-data-are-not-fully-labeled)\n\n**Update**: Moreover, can anyone explain why naive matching like `if dataset in text:` achieves a better score than matching only if the dataset is not a substring of something else, e.g. `if regex.search(f\"\\\\b{dataset}\\\\b\", text):` ?? Do we really want to predict the dataset \"ADNI\" in the following cases??\n\nID `a8997f97-ba55-46f8-aef7-c1edce2140ae`:\n> Bekhr**adni**a and Sastry (2005) study the in-and outflows of academic researchers in the UK using\n\nID `29e11717-f3b4-4acb-8d97-ef9b6b428971`:\n> have much to contribute to methodologies for the pursuit of accuracy in **adni**nistrative records.\n\nFrom the leaderboard it seems so...\n\nThis raises major concerns about this competition and the degree of randomness in the evaluation (both public and private). Models that generalize well and discover new datasets would be heavily penalized, and I can't understand why this outcome would be optimal for the hosts. I would very much appreciate if someone can say otherwise and explain why!",
      "votes": 32
    },
    {
      "id": 1293388,
      "postDate": "2021-05-04T19:46:31.060Z",
      "content": "<p>Hey have a look here, maybe this is going to be fixed by the hosts <br>\n<a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/236508\" target=\"_blank\">https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/236508</a> </p>",
      "rawMarkdown": "Hey have a look here, maybe this is going to be fixed by the hosts \nhttps://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/236508 ",
      "votes": 3,
      "replies": [
        {
          "id": 1293807,
          "postDate": "2021-05-05T07:15:12.743Z",
          "content": "<p>Hallelujah ! Well that gave me a nice boost haha 😃</p>",
          "rawMarkdown": "Hallelujah ! Well that gave me a nice boost haha 😃"
        }
      ]
    },
    {
      "id": 1277007,
      "postDate": "2021-04-18T09:06:50.960Z",
      "content": "<p>I might be misreading your scenario but isn't the dataset in your example already labeled by the provided train label file as \"school survey on crime and safety\" for that specific ID? It might be a problem that \"school survey on crime and safety ssocs\" dings you but it's hard to tell if there's another error in your setup. </p>\n<p>I don't disagree with the concern that there seem to be issues with how exhaustively the test set is labelled but this isn't the best example.  </p>",
      "rawMarkdown": "I might be misreading your scenario but isn't the dataset in your example already labeled by the provided train label file as \"school survey on crime and safety\" for that specific ID? It might be a problem that \"school survey on crime and safety ssocs\" dings you but it's hard to tell if there's another error in your setup. \n\nI don't disagree with the concern that there seem to be issues with how exhaustively the test set is labelled but this isn't the best example.  ",
      "votes": 3,
      "replies": [
        {
          "id": 1277033,
          "postDate": "2021-04-18T10:16:00.277Z",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/leecming\" target=\"_blank\">@leecming</a>! You are perfectly right. It seems I overlooked <code>school survey on crime and safety</code> in the training data. I apologize for that. So basically, matching also <code>survey on crime and safety</code> was adding duplicates that lead to a lower score. Makes sense. </p>\n<p>However, I tried with other datasets and the problem is the same. I agree with you that my example was not the best one. So I updated the description above and used <code>youth risk behavior survey</code>, which I'm pretty sure it is not labeled at all in the training set. The score drops from 0.70 to 0.42, even worse than the previous example. </p>\n<p>You can find the replication code <a href=\"https://www.kaggle.com/eguidotti/test-data-are-not-fully-labeled\" target=\"_blank\">here</a>.  </p>",
          "rawMarkdown": "Thanks @leecming! You are perfectly right. It seems I overlooked `school survey on crime and safety` in the training data. I apologize for that. So basically, matching also `survey on crime and safety` was adding duplicates that lead to a lower score. Makes sense. \n\nHowever, I tried with other datasets and the problem is the same. I agree with you that my example was not the best one. So I updated the description above and used `youth risk behavior survey`, which I'm pretty sure it is not labeled at all in the training set. The score drops from 0.70 to 0.42, even worse than the previous example. \n\nYou can find the replication code [here](https://www.kaggle.com/eguidotti/test-data-are-not-fully-labeled).  ",
          "votes": 2
        },
        {
          "id": 1290366,
          "postDate": "2021-05-01T21:36:18.457Z",
          "content": "<p>A bit late to the party, but could it be because:</p>\n<pre><code>... you'll identify data sets that the publications' authors used in their work. \n</code></pre>\n<p>And in this case, the dataset is not used by the authors but simply referenced from another's work?</p>",
          "rawMarkdown": "A bit late to the party, but could it be because:\n```\n... you'll identify data sets that the publications' authors used in their work. \n```\n\nAnd in this case, the dataset is not used by the authors but simply referenced from another's work?\n\n\n",
          "votes": 1
        },
        {
          "id": 1290388,
          "postDate": "2021-05-01T22:24:39.433Z",
          "content": "<p>Still not convinced…. given the score I get that would mean <code>youth risk behavior survey</code> is always referenced from another's work and never used by the authors. Also, this wouldn't explain why naive matching works best that matching only if the dataset is not a substring of something else.</p>",
          "rawMarkdown": "Still not convinced.... given the score I get that would mean `youth risk behavior survey` is always referenced from another's work and never used by the authors. Also, this wouldn't explain why naive matching works best that matching only if the dataset is not a substring of something else."
        },
        {
          "id": 1290633,
          "postDate": "2021-05-02T07:59:10.547Z",
          "content": "<p>I had a look at your example kernel and there is a bug? <br>\nYou have:</p>\n<pre><code>for dataset in datasets:\n        if dataset in text:\n            matches += [dataset]\n        if 'youth risk behavior survey' in text:\n            matches += ['ThisStringWillNeverMatch']\n</code></pre>\n<p>But you should probably have:</p>\n<pre><code>for dataset in datasets:\n    if dataset in text:\n            matches += [dataset]\nif 'youth risk behavior survey' in text:\n    matches += ['ThisStringWillNeverMatch']\n</code></pre>\n<p>Otherwise, you are actually submitting <code>ThisStringWillNeverMatch</code> 130 times everytime <code>youth risk behavior survey</code> appears. </p>\n<p>If you do it in the second way then the score goes from 0.701 to 0.697, instead of 0.701 to your 0.42.</p>\n<p>I also tried doing:</p>\n<pre><code>for dataset in datasets:\n    if dataset in text:\n            matches += [dataset]\nif 'youth risk behavior survey' in text:\n    matches += ['youth risk behavior survey']\n</code></pre>\n<p>In which case the score did not change (.701)</p>\n<p>So for this particular case, for all the of the papers where <code>'youth risk behavior survey'</code> appears, probably half have it as labels and half don't have it (assuming I would get a score boost if the 100% of the papers with <code>'youth risk behavior survey'</code> also had that label).</p>\n<p>I do think the split was done weirdly, it's mad that you are able to get a higher accuracy by naively matching string like <code>adni</code>. My guess here is because <code>adni</code> is still a relatively rarely occuring substring and there are more documents with adni that use the study adni than documents that simply contain the substring but not the study. </p>\n<p>Let me know what you think</p>",
          "rawMarkdown": "I had a look at your example kernel and there is a bug? \nYou have:\n```python\nfor dataset in datasets:\n        if dataset in text:\n            matches += [dataset]\n        if 'youth risk behavior survey' in text:\n            matches += ['ThisStringWillNeverMatch']\n```\n\nBut you should probably have:\n```python\nfor dataset in datasets:\n    if dataset in text:\n            matches += [dataset]\nif 'youth risk behavior survey' in text:\n    matches += ['ThisStringWillNeverMatch']\n```\n\nOtherwise, you are actually submitting `ThisStringWillNeverMatch` 130 times everytime `youth risk behavior survey` appears. \n\nIf you do it in the second way then the score goes from 0.701 to 0.697, instead of 0.701 to your 0.42.\n\nI also tried doing:\n\n```python\nfor dataset in datasets:\n    if dataset in text:\n            matches += [dataset]\nif 'youth risk behavior survey' in text:\n    matches += ['youth risk behavior survey']\n```\n\nIn which case the score did not change (.701)\n\nSo for this particular case, for all the of the papers where `'youth risk behavior survey'` appears, probably half have it as labels and half don't have it (assuming I would get a score boost if the 100% of the papers with `'youth risk behavior survey'` also had that label).\n\nI do think the split was done weirdly, it's mad that you are able to get a higher accuracy by naively matching string like `adni`. My guess here is because `adni` is still a relatively rarely occuring substring and there are more documents with adni that use the study adni than documents that simply contain the substring but not the study. \n\nLet me know what you think",
          "votes": 2
        },
        {
          "id": 1292360,
          "postDate": "2021-05-03T21:22:27.343Z",
          "content": "<p>Yes, that was definitely a bug. Thanks for letting me know! This explains the huge drop in the score (now fixed). But I've been trying with other datasets and the problem is always the same. The more datasets I add, the more the score drops. And in such a way that it is almost the same if I predict the dataset name or <code>ThisStringWillNeverMatch</code>. E.g. with <code>assessment of educational progress</code> the score drops from 0.700 to 0.679 and it is 0.676 when I predict <code>ThisStringWillNeverMatch</code>. See the updated description above.</p>\n<p>I don't know. It may be the case that I'm still doing something wrong (and I hope so), but I've been running quite a few tests and they all seem to suggest that the test data are not fully labeled. Another option would be that the fraction of \"correct mentions\" (whatever it means) is very small compared to the number of times the dataset name appear in the text. But in this case we should have been given more info about what a correct mention is, or alternatively a fully labeled training set to learn from. But the <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/228322\" target=\"_blank\">train data have been confirmed not to be fully labeled</a>, the test data seem to be weakly labeled, and the <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/231893\" target=\"_blank\">prediction labels are amiguous</a>… this looks like random guess!</p>",
          "rawMarkdown": "Yes, that was definitely a bug. Thanks for letting me know! This explains the huge drop in the score (now fixed). But I've been trying with other datasets and the problem is always the same. The more datasets I add, the more the score drops. And in such a way that it is almost the same if I predict the dataset name or `ThisStringWillNeverMatch`. E.g. with `assessment of educational progress` the score drops from 0.700 to 0.679 and it is 0.676 when I predict `ThisStringWillNeverMatch`. See the updated description above.\n\nI don't know. It may be the case that I'm still doing something wrong (and I hope so), but I've been running quite a few tests and they all seem to suggest that the test data are not fully labeled. Another option would be that the fraction of \"correct mentions\" (whatever it means) is very small compared to the number of times the dataset name appear in the text. But in this case we should have been given more info about what a correct mention is, or alternatively a fully labeled training set to learn from. But the [train data have been confirmed not to be fully labeled](https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/228322), the test data seem to be weakly labeled, and the [prediction labels are amiguous](https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/231893)... this looks like random guess!",
          "votes": 2
        },
        {
          "id": 1292733,
          "postDate": "2021-05-04T08:43:58.787Z",
          "content": "<p>Yeah, I, unfortunately, have to agree, a lot of the labels are random…<br>\nI've experimented quite a bit as well with manually probing \"unlabeled\" datasets and nothing I tried helps. </p>\n<p>Looking more deeply at some of the data, it makes no sense why some are even labelled with certain gold labels. Some studies introduce and use new samples of data, and only mention the main databases like <code>National Education Longitudinal Study</code> as a previous work reference. In which case, would why would the organizers want it labelled as gold (if the study/data is not actually being used)?</p>\n<p>Also some of the reference \"datasets\" are not even datasets at all - the <code>SLOSH model</code> for instance is an algorithm/method, which makes no sense for us to try to identify in the same context as databases/datasets (<a href=\"https://www.nhc.noaa.gov/surge/slosh.php)\" target=\"_blank\">https://www.nhc.noaa.gov/surge/slosh.php)</a>. </p>\n<p>Add to this, the inconsistency at which certain acronyms are labelled and some are not, it doesn't really bode well that generalised solutions are harmed rather than rewarded.</p>\n<p>Looks like you recently got a nice random guess though haha :) Or maybe a way out of this mess?</p>",
          "rawMarkdown": "Yeah, I, unfortunately, have to agree, a lot of the labels are random...\nI've experimented quite a bit as well with manually probing \"unlabeled\" datasets and nothing I tried helps. \n\nLooking more deeply at some of the data, it makes no sense why some are even labelled with certain gold labels. Some studies introduce and use new samples of data, and only mention the main databases like `National Education Longitudinal Study` as a previous work reference. In which case, would why would the organizers want it labelled as gold (if the study/data is not actually being used)?\n\nAlso some of the reference \"datasets\" are not even datasets at all - the `SLOSH model` for instance is an algorithm/method, which makes no sense for us to try to identify in the same context as databases/datasets (https://www.nhc.noaa.gov/surge/slosh.php). \n\nAdd to this, the inconsistency at which certain acronyms are labelled and some are not, it doesn't really bode well that generalised solutions are harmed rather than rewarded.\n\nLooks like you recently got a nice random guess though haha :) Or maybe a way out of this mess?",
          "votes": 2
        },
        {
          "id": 1292766,
          "postDate": "2021-05-04T09:11:47.603Z",
          "content": "<p>Thanks for sharing your tests, I'm also wondering about your questions but wasn't able to find an answer.</p>\n<blockquote>\n  <p>Looks like you recently got a nice random guess though haha :)</p>\n</blockquote>\n<p>Ahah yes it's crazy I'm just doing some tests on string matching and got 10th on the leaderboard! That makes no sense at all. Hope <a href=\"https://www.kaggle.com/philculliton\" target=\"_blank\">@philculliton</a> will be able to shed some light on this soon.</p>",
          "rawMarkdown": "Thanks for sharing your tests, I'm also wondering about your questions but wasn't able to find an answer.\n\n> Looks like you recently got a nice random guess though haha :)\n\nAhah yes it's crazy I'm just doing some tests on string matching and got 10th on the leaderboard! That makes no sense at all. Hope @philculliton will be able to shed some light on this soon.",
          "votes": 2
        }
      ]
    },
    {
      "id": 1290815,
      "postDate": "2021-05-02T12:51:28.207Z",
      "content": "<p>I think the ground truths are not very accurate in the test set and the training set is definitely not exhaustively labeled IMO.  I have found these datasets (hand checked many) that are Gov't data and are not in the labelled training data. When I add these datasets to my \"is in\" test, my score goes down from 70% to 67% - this indicates to me that my system is finding some of these in the test documents, but they are likely not in the ground truths. Obviously it could be some of these are not proper datasets, titles etc., but this demonstrates the point, how did they create the ground truths on all of these documents - seems like an exhaustive labeling system is what we are trying to build.  So if they have that why do they need us?  If they are doing the ground truths by hand, it is hard to think it is catching ALL the government datasets and variations in citations.</p>\n<p>local food economic impact assessment<br>\ntvb model<br>\nmexican american study project<br>\nnational longitudinal study of adolescent health<br>\nnational health interview survey<br>\nproject talent longitudinal study<br>\nschools and staffing survey<br>\nprivate school universe survey<br>\nfast response survey system<br>\nnational center for education statistics schools and staffing survey<br>\nnational assessment of educational progress<br>\ncoinmon core of data<br>\nnational postsecondary student aid study<br>\npostsecondary student aid study<br>\nnational study of postsecondary faculty<br>\nsurvey on vocational programs in secondary schools<br>\ndistrict survey of alternative schools and programs<br>\nstate nonfiscal survey of public elementary secondary education<br>\nnational public education financial survey<br>\nannual survey of government finances school systems f 33 survey<br>\nintegrated postsecondary education data system<br>\nipeds<br>\nnsopf<br>\nbps data<br>\npostsecondary students longitudinal study<br>\npublic elementary secondary school universe survey<br>\nccd local education agency universe survey<br>\nccd national public education financial survey<br>\nnces national education longitudinal study of 1988<br>\nagricultural resource management survey<br>\nagro ecological zone<br>\naez model<br>\nusda corn yield data<br>\nargonne national laboratory s greet<br>\ngreet model<br>\nargonne national laboratory s cclub model<br>\nnational education longitudinal survey<br>\neducation longitudinal study of 2002<br>\nprogress in international reading literacy study<br>\nusgs national water quality assessment<br>\nipeds fall enrollment dataset<br>\nfall enrollment dataset<br>\ndelta cost project<br>\nannual survey of colleges standard research compilation<br>\nchesapeake bay watershed land cover data series</p>",
      "rawMarkdown": "I think the ground truths are not very accurate in the test set and the training set is definitely not exhaustively labeled IMO.  I have found these datasets (hand checked many) that are Gov't data and are not in the labelled training data. When I add these datasets to my \"is in\" test, my score goes down from 70% to 67% - this indicates to me that my system is finding some of these in the test documents, but they are likely not in the ground truths. Obviously it could be some of these are not proper datasets, titles etc., but this demonstrates the point, how did they create the ground truths on all of these documents - seems like an exhaustive labeling system is what we are trying to build.  So if they have that why do they need us?  If they are doing the ground truths by hand, it is hard to think it is catching ALL the government datasets and variations in citations.\n\nlocal food economic impact assessment\ntvb model\nmexican american study project\nnational longitudinal study of adolescent health\nnational health interview survey\nproject talent longitudinal study\nschools and staffing survey\nprivate school universe survey\nfast response survey system\nnational center for education statistics schools and staffing survey\nnational assessment of educational progress\ncoinmon core of data\nnational postsecondary student aid study\npostsecondary student aid study\nnational study of postsecondary faculty\nsurvey on vocational programs in secondary schools\ndistrict survey of alternative schools and programs\nstate nonfiscal survey of public elementary secondary education\nnational public education financial survey\nannual survey of government finances school systems f 33 survey\nintegrated postsecondary education data system\nipeds\nnsopf\nbps data\npostsecondary students longitudinal study\npublic elementary secondary school universe survey\nccd local education agency universe survey\nccd national public education financial survey\nnces national education longitudinal study of 1988\nagricultural resource management survey\nagro ecological zone\naez model\nusda corn yield data\nargonne national laboratory s greet\ngreet model\nargonne national laboratory s cclub model\nnational education longitudinal survey\neducation longitudinal study of 2002\nprogress in international reading literacy study\nusgs national water quality assessment\nipeds fall enrollment dataset\nfall enrollment dataset\ndelta cost project\nannual survey of colleges standard research compilation\nchesapeake bay watershed land cover data series",
      "votes": 1,
      "replies": [
        {
          "id": 1292374,
          "postDate": "2021-05-03T21:33:57.377Z",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/mlconsult\" target=\"_blank\">@mlconsult</a> to confirm also your tests go in the same direction. Just make sure, do not add to the \"is in\" list substrings of datasets that are already in the list. For instance I see <code>postsecondary students longitudinal study</code> which is a substring of <code>beginning postsecondary students longitudinal study</code> that is already labelled in the train data. This may lead to duplicates in the prediction string. But I very much doubt that this is the reason of the drop in the score.</p>",
          "rawMarkdown": "Thanks @mlconsult to confirm also your tests go in the same direction. Just make sure, do not add to the \"is in\" list substrings of datasets that are already in the list. For instance I see `postsecondary students longitudinal study` which is a substring of `beginning postsecondary students longitudinal study` that is already labelled in the train data. This may lead to duplicates in the prediction string. But I very much doubt that this is the reason of the drop in the score."
        },
        {
          "id": 1293079,
          "postDate": "2021-05-04T14:32:50.783Z",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/eguidotti\" target=\"_blank\">@eguidotti</a> - to clarify, when I put my predictions in the list I do not include any duplicates.</p>",
          "rawMarkdown": "Thanks @eguidotti - to clarify, when I put my predictions in the list I do not include any duplicates."
        },
        {
          "id": 1293905,
          "postDate": "2021-05-05T08:51:02.103Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/eguidotti\" target=\"_blank\">@eguidotti</a> can you explain this part to me please \"I see postsecondary students longitudinal study which is a substring of beginning postsecondary students longitudinal study that is already labelled in the train data. This may lead to duplicates in the prediction string. \"</p>\n<p>I have hand made a list of all the dataset labels I can find in the training set <a href=\"url\" target=\"_blank\">https://www.kaggle.com/cascadenite/training-set-found-labels</a> and many of them are substrings of each other eg:</p>\n<p>Adult Changes in Thought<br>\nAdult Changes in Thought ACT<br>\nAdult Changes in Thought Study ACT</p>\n<p>there are also a lot of spelling permutations.  Should I only be taking some of them as labels even though they are mentioned in the text as misspelt or shorter versions?</p>",
          "rawMarkdown": "Hi @eguidotti can you explain this part to me please \"I see postsecondary students longitudinal study which is a substring of beginning postsecondary students longitudinal study that is already labelled in the train data. This may lead to duplicates in the prediction string. \"\n\nI have hand made a list of all the dataset labels I can find in the training set [https://www.kaggle.com/cascadenite/training-set-found-labels](url) and many of them are substrings of each other eg:\n\nAdult Changes in Thought\nAdult Changes in Thought ACT\nAdult Changes in Thought Study ACT\n\nthere are also a lot of spelling permutations.  Should I only be taking some of them as labels even though they are mentioned in the text as misspelt or shorter versions?"
        },
        {
          "id": 1294075,
          "postDate": "2021-05-05T11:54:43.210Z",
          "content": "<p>Let's take <code>Adult Changes in Thought</code> and <code>Adult Changes in Thought ACT</code> as an example. If you add both of them to the \"is in\" list of strings to match and the publication contains something like:</p>\n<blockquote>\n  <p>[…] Adult Changes in Thought ACT […]</p>\n</blockquote>\n<p>then both strings will match the publication. You will end up predicting both <code>Adult Changes in Thought</code> and <code>Adult Changes in Thought ACT</code> even if the publication contains only a single mention for <code>Adult Changes in Thought ACT</code>. This is a duplicate that would be penalized. </p>\n<p>From my understanding, we should predict the exact mention (even if misspelled) but it's still not clear to me how to define the boundaries of the mentions, sometimes the training set seems to be labelled only with the acronym, sometimes with tha dataset name, sometimes both. No clue.</p>",
          "rawMarkdown": "Let's take `Adult Changes in Thought` and `Adult Changes in Thought ACT` as an example. If you add both of them to the \"is in\" list of strings to match and the publication contains something like:\n> [...] Adult Changes in Thought ACT [...]\n\nthen both strings will match the publication. You will end up predicting both `Adult Changes in Thought` and `Adult Changes in Thought ACT` even if the publication contains only a single mention for `Adult Changes in Thought ACT`. This is a duplicate that would be penalized. \n\nFrom my understanding, we should predict the exact mention (even if misspelled) but it's still not clear to me how to define the boundaries of the mentions, sometimes the training set seems to be labelled only with the acronym, sometimes with tha dataset name, sometimes both. No clue.",
          "votes": 1
        }
      ]
    },
    {
      "id": 1290634,
      "postDate": "2021-05-02T08:00:32.880Z",
      "rawMarkdown": "",
      "isDeleted": true
    }
  ],
  "comments": [
    {
      "id": 1293388,
      "author_name": "Emanuele Guidotti",
      "author_url": "",
      "post_date": "2021-05-04T19:46:31.060000",
      "content": "<p>Hey have a look here, maybe this is going to be fixed by the hosts <br>\n<a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/236508\" target=\"_blank\">https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/236508</a> </p>",
      "votes": 3,
      "replies": [
        {
          "id": 1293807,
          "author_name": "Gautier",
          "author_url": "",
          "post_date": "2021-05-05T07:15:12.743000",
          "content": "<p>Hallelujah ! Well that gave me a nice boost haha 😃</p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 1277007,
      "author_name": "Chun Ming Lee",
      "author_url": "",
      "post_date": "2021-04-18T09:06:50.960000",
      "content": "<p>I might be misreading your scenario but isn't the dataset in your example already labeled by the provided train label file as \"school survey on crime and safety\" for that specific ID? It might be a problem that \"school survey on crime and safety ssocs\" dings you but it's hard to tell if there's another error in your setup. </p>\n<p>I don't disagree with the concern that there seem to be issues with how exhaustively the test set is labelled but this isn't the best example.  </p>",
      "votes": 3,
      "replies": [
        {
          "id": 1277033,
          "author_name": "Emanuele Guidotti",
          "author_url": "",
          "post_date": "2021-04-18T10:16:00.277000",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/leecming\" target=\"_blank\">@leecming</a>! You are perfectly right. It seems I overlooked <code>school survey on crime and safety</code> in the training data. I apologize for that. So basically, matching also <code>survey on crime and safety</code> was adding duplicates that lead to a lower score. Makes sense. </p>\n<p>However, I tried with other datasets and the problem is the same. I agree with you that my example was not the best one. So I updated the description above and used <code>youth risk behavior survey</code>, which I'm pretty sure it is not labeled at all in the training set. The score drops from 0.70 to 0.42, even worse than the previous example. </p>\n<p>You can find the replication code <a href=\"https://www.kaggle.com/eguidotti/test-data-are-not-fully-labeled\" target=\"_blank\">here</a>.  </p>",
          "votes": 2,
          "replies": []
        },
        {
          "id": 1290366,
          "author_name": "Gautier",
          "author_url": "",
          "post_date": "2021-05-01T21:36:18.457000",
          "content": "<p>A bit late to the party, but could it be because:</p>\n<pre><code>... you'll identify data sets that the publications' authors used in their work. \n</code></pre>\n<p>And in this case, the dataset is not used by the authors but simply referenced from another's work?</p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 1290388,
          "author_name": "Emanuele Guidotti",
          "author_url": "",
          "post_date": "2021-05-01T22:24:39.433000",
          "content": "<p>Still not convinced…. given the score I get that would mean <code>youth risk behavior survey</code> is always referenced from another's work and never used by the authors. Also, this wouldn't explain why naive matching works best that matching only if the dataset is not a substring of something else.</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 1290633,
          "author_name": "Gautier",
          "author_url": "",
          "post_date": "2021-05-02T07:59:10.547000",
          "content": "<p>I had a look at your example kernel and there is a bug? <br>\nYou have:</p>\n<pre><code>for dataset in datasets:\n        if dataset in text:\n            matches += [dataset]\n        if 'youth risk behavior survey' in text:\n            matches += ['ThisStringWillNeverMatch']\n</code></pre>\n<p>But you should probably have:</p>\n<pre><code>for dataset in datasets:\n    if dataset in text:\n            matches += [dataset]\nif 'youth risk behavior survey' in text:\n    matches += ['ThisStringWillNeverMatch']\n</code></pre>\n<p>Otherwise, you are actually submitting <code>ThisStringWillNeverMatch</code> 130 times everytime <code>youth risk behavior survey</code> appears. </p>\n<p>If you do it in the second way then the score goes from 0.701 to 0.697, instead of 0.701 to your 0.42.</p>\n<p>I also tried doing:</p>\n<pre><code>for dataset in datasets:\n    if dataset in text:\n            matches += [dataset]\nif 'youth risk behavior survey' in text:\n    matches += ['youth risk behavior survey']\n</code></pre>\n<p>In which case the score did not change (.701)</p>\n<p>So for this particular case, for all the of the papers where <code>'youth risk behavior survey'</code> appears, probably half have it as labels and half don't have it (assuming I would get a score boost if the 100% of the papers with <code>'youth risk behavior survey'</code> also had that label).</p>\n<p>I do think the split was done weirdly, it's mad that you are able to get a higher accuracy by naively matching string like <code>adni</code>. My guess here is because <code>adni</code> is still a relatively rarely occuring substring and there are more documents with adni that use the study adni than documents that simply contain the substring but not the study. </p>\n<p>Let me know what you think</p>",
          "votes": 2,
          "replies": []
        },
        {
          "id": 1292360,
          "author_name": "Emanuele Guidotti",
          "author_url": "",
          "post_date": "2021-05-03T21:22:27.343000",
          "content": "<p>Yes, that was definitely a bug. Thanks for letting me know! This explains the huge drop in the score (now fixed). But I've been trying with other datasets and the problem is always the same. The more datasets I add, the more the score drops. And in such a way that it is almost the same if I predict the dataset name or <code>ThisStringWillNeverMatch</code>. E.g. with <code>assessment of educational progress</code> the score drops from 0.700 to 0.679 and it is 0.676 when I predict <code>ThisStringWillNeverMatch</code>. See the updated description above.</p>\n<p>I don't know. It may be the case that I'm still doing something wrong (and I hope so), but I've been running quite a few tests and they all seem to suggest that the test data are not fully labeled. Another option would be that the fraction of \"correct mentions\" (whatever it means) is very small compared to the number of times the dataset name appear in the text. But in this case we should have been given more info about what a correct mention is, or alternatively a fully labeled training set to learn from. But the <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/228322\" target=\"_blank\">train data have been confirmed not to be fully labeled</a>, the test data seem to be weakly labeled, and the <a href=\"https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/231893\" target=\"_blank\">prediction labels are amiguous</a>… this looks like random guess!</p>",
          "votes": 2,
          "replies": []
        },
        {
          "id": 1292733,
          "author_name": "Gautier",
          "author_url": "",
          "post_date": "2021-05-04T08:43:58.787000",
          "content": "<p>Yeah, I, unfortunately, have to agree, a lot of the labels are random…<br>\nI've experimented quite a bit as well with manually probing \"unlabeled\" datasets and nothing I tried helps. </p>\n<p>Looking more deeply at some of the data, it makes no sense why some are even labelled with certain gold labels. Some studies introduce and use new samples of data, and only mention the main databases like <code>National Education Longitudinal Study</code> as a previous work reference. In which case, would why would the organizers want it labelled as gold (if the study/data is not actually being used)?</p>\n<p>Also some of the reference \"datasets\" are not even datasets at all - the <code>SLOSH model</code> for instance is an algorithm/method, which makes no sense for us to try to identify in the same context as databases/datasets (<a href=\"https://www.nhc.noaa.gov/surge/slosh.php)\" target=\"_blank\">https://www.nhc.noaa.gov/surge/slosh.php)</a>. </p>\n<p>Add to this, the inconsistency at which certain acronyms are labelled and some are not, it doesn't really bode well that generalised solutions are harmed rather than rewarded.</p>\n<p>Looks like you recently got a nice random guess though haha :) Or maybe a way out of this mess?</p>",
          "votes": 2,
          "replies": []
        },
        {
          "id": 1292766,
          "author_name": "Emanuele Guidotti",
          "author_url": "",
          "post_date": "2021-05-04T09:11:47.603000",
          "content": "<p>Thanks for sharing your tests, I'm also wondering about your questions but wasn't able to find an answer.</p>\n<blockquote>\n  <p>Looks like you recently got a nice random guess though haha :)</p>\n</blockquote>\n<p>Ahah yes it's crazy I'm just doing some tests on string matching and got 10th on the leaderboard! That makes no sense at all. Hope <a href=\"https://www.kaggle.com/philculliton\" target=\"_blank\">@philculliton</a> will be able to shed some light on this soon.</p>",
          "votes": 2,
          "replies": []
        }
      ]
    },
    {
      "id": 1290815,
      "author_name": "Ken Miller",
      "author_url": "",
      "post_date": "2021-05-02T12:51:28.207000",
      "content": "<p>I think the ground truths are not very accurate in the test set and the training set is definitely not exhaustively labeled IMO.  I have found these datasets (hand checked many) that are Gov't data and are not in the labelled training data. When I add these datasets to my \"is in\" test, my score goes down from 70% to 67% - this indicates to me that my system is finding some of these in the test documents, but they are likely not in the ground truths. Obviously it could be some of these are not proper datasets, titles etc., but this demonstrates the point, how did they create the ground truths on all of these documents - seems like an exhaustive labeling system is what we are trying to build.  So if they have that why do they need us?  If they are doing the ground truths by hand, it is hard to think it is catching ALL the government datasets and variations in citations.</p>\n<p>local food economic impact assessment<br>\ntvb model<br>\nmexican american study project<br>\nnational longitudinal study of adolescent health<br>\nnational health interview survey<br>\nproject talent longitudinal study<br>\nschools and staffing survey<br>\nprivate school universe survey<br>\nfast response survey system<br>\nnational center for education statistics schools and staffing survey<br>\nnational assessment of educational progress<br>\ncoinmon core of data<br>\nnational postsecondary student aid study<br>\npostsecondary student aid study<br>\nnational study of postsecondary faculty<br>\nsurvey on vocational programs in secondary schools<br>\ndistrict survey of alternative schools and programs<br>\nstate nonfiscal survey of public elementary secondary education<br>\nnational public education financial survey<br>\nannual survey of government finances school systems f 33 survey<br>\nintegrated postsecondary education data system<br>\nipeds<br>\nnsopf<br>\nbps data<br>\npostsecondary students longitudinal study<br>\npublic elementary secondary school universe survey<br>\nccd local education agency universe survey<br>\nccd national public education financial survey<br>\nnces national education longitudinal study of 1988<br>\nagricultural resource management survey<br>\nagro ecological zone<br>\naez model<br>\nusda corn yield data<br>\nargonne national laboratory s greet<br>\ngreet model<br>\nargonne national laboratory s cclub model<br>\nnational education longitudinal survey<br>\neducation longitudinal study of 2002<br>\nprogress in international reading literacy study<br>\nusgs national water quality assessment<br>\nipeds fall enrollment dataset<br>\nfall enrollment dataset<br>\ndelta cost project<br>\nannual survey of colleges standard research compilation<br>\nchesapeake bay watershed land cover data series</p>",
      "votes": 1,
      "replies": [
        {
          "id": 1292374,
          "author_name": "Emanuele Guidotti",
          "author_url": "",
          "post_date": "2021-05-03T21:33:57.377000",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/mlconsult\" target=\"_blank\">@mlconsult</a> to confirm also your tests go in the same direction. Just make sure, do not add to the \"is in\" list substrings of datasets that are already in the list. For instance I see <code>postsecondary students longitudinal study</code> which is a substring of <code>beginning postsecondary students longitudinal study</code> that is already labelled in the train data. This may lead to duplicates in the prediction string. But I very much doubt that this is the reason of the drop in the score.</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 1293079,
          "author_name": "Ken Miller",
          "author_url": "",
          "post_date": "2021-05-04T14:32:50.783000",
          "content": "<p>Thanks <a href=\"https://www.kaggle.com/eguidotti\" target=\"_blank\">@eguidotti</a> - to clarify, when I put my predictions in the list I do not include any duplicates.</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 1293905,
          "author_name": "Mark P",
          "author_url": "",
          "post_date": "2021-05-05T08:51:02.103000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/eguidotti\" target=\"_blank\">@eguidotti</a> can you explain this part to me please \"I see postsecondary students longitudinal study which is a substring of beginning postsecondary students longitudinal study that is already labelled in the train data. This may lead to duplicates in the prediction string. \"</p>\n<p>I have hand made a list of all the dataset labels I can find in the training set <a href=\"url\" target=\"_blank\">https://www.kaggle.com/cascadenite/training-set-found-labels</a> and many of them are substrings of each other eg:</p>\n<p>Adult Changes in Thought<br>\nAdult Changes in Thought ACT<br>\nAdult Changes in Thought Study ACT</p>\n<p>there are also a lot of spelling permutations.  Should I only be taking some of them as labels even though they are mentioned in the text as misspelt or shorter versions?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 1294075,
          "author_name": "Emanuele Guidotti",
          "author_url": "",
          "post_date": "2021-05-05T11:54:43.210000",
          "content": "<p>Let's take <code>Adult Changes in Thought</code> and <code>Adult Changes in Thought ACT</code> as an example. If you add both of them to the \"is in\" list of strings to match and the publication contains something like:</p>\n<blockquote>\n  <p>[…] Adult Changes in Thought ACT […]</p>\n</blockquote>\n<p>then both strings will match the publication. You will end up predicting both <code>Adult Changes in Thought</code> and <code>Adult Changes in Thought ACT</code> even if the publication contains only a single mention for <code>Adult Changes in Thought ACT</code>. This is a duplicate that would be penalized. </p>\n<p>From my understanding, we should predict the exact mention (even if misspelled) but it's still not clear to me how to define the boundaries of the mentions, sometimes the training set seems to be labelled only with the acronym, sometimes with tha dataset name, sometimes both. No clue.</p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 1290634,
      "author_name": "",
      "author_url": "",
      "post_date": "2021-05-02T08:00:32.880000",
      "content": "",
      "votes": 0,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1276573": "The hosts have confirmed that the test data are [exhaustively labelled](https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/228322#1253208). This is extremely important as otherwise models that **generalize well** and discover new datasets would be **heavily penalized**. In contrast with the mission of this competition from the description page.\n\n**The problem is that the test data are NOT exhaustively labeled.** \nBelow I describe the experiments I performed that lead me to this conclusion.\n\n**Experiment 1** I submitted the simple baseline model based on string matching (I know it's not the goal of the competition) that achieves 0.700 on the LB, as most of the participants.\n\n**Experiment 2** I found a new dataset not mentioned in the training set, namely ~~\"Youth Risk Behavior Survey\"~~ \"Assessment of Educational Progress\". From publication ~~`34f6924a-a599-4566-9dc6-521249174721`~~ `9d75e205-3030-44c6-ae21-fc25be319189` I check that this refers to a proper dataset: \n> The National Assessment of Educational Progress (NAEP) provides scores that are comparable across states, but these are only available for a sample of students within a small sample of U.S. schools. In order to make the state test scores more meaningful, we have recalibrated the percent passing scores as percentiles of school performance within the state (following the approach by Logan, Minca and Adar 2012).\n\nCool! Let's add `assessment of educational progress` (after cleaning) to the list of strings to match in the baseline model. Note: `assessment of educational progress` should be a true positive also for the longer label `national assessment of educational progress naep` as the Jaccardi score is above 0.5. \n\nIf a match was found within a publication, then `assessment of educational progress` was only included once in the submitted cleaned labels for the publication, in the same way as the setup described [here](https://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/231893). My scored dropped to 0.679. What?? OK, no panic! The hosts want a rich semantic context, so maybe my string matching baseline is predicting `assessment of educational progress` even in those cases where it is not referenced as a dataset but it is interpreted as something else (semantics). But then if I predict a random string my score would drop even more. Let's try it!\n \n**Experiment 3** Same baseline model + if a match was found within a publication for `assessment of educational progress`, then `ThisStringWillNeverMatch` was only included once in the submitted cleaned labels for the publication. Almost same score 0.676. Ok, I give up... whether \"Assessment of Educational Progress\" is almost never referenced as a dataset (which is hardly believable) or it is very weakly labeled in the test data.\n\n**Extra** I tried with different datasets and same outcome. You can find the replication code [here](https://www.kaggle.com/eguidotti/test-data-are-not-fully-labeled)\n\n**Update**: Moreover, can anyone explain why naive matching like `if dataset in text:` achieves a better score than matching only if the dataset is not a substring of something else, e.g. `if regex.search(f\"\\\\b{dataset}\\\\b\", text):` ?? Do we really want to predict the dataset \"ADNI\" in the following cases??\n\nID `a8997f97-ba55-46f8-aef7-c1edce2140ae`:\n> Bekhr**adni**a and Sastry (2005) study the in-and outflows of academic researchers in the UK using\n\nID `29e11717-f3b4-4acb-8d97-ef9b6b428971`:\n> have much to contribute to methodologies for the pursuit of accuracy in **adni**nistrative records.\n\nFrom the leaderboard it seems so...\n\nThis raises major concerns about this competition and the degree of randomness in the evaluation (both public and private). Models that generalize well and discover new datasets would be heavily penalized, and I can't understand why this outcome would be optimal for the hosts. I would very much appreciate if someone can say otherwise and explain why!",
    "1293388": "Hey have a look here, maybe this is going to be fixed by the hosts \nhttps://www.kaggle.com/c/coleridgeinitiative-show-us-the-data/discussion/236508 ",
    "1277007": "I might be misreading your scenario but isn't the dataset in your example already labeled by the provided train label file as \"school survey on crime and safety\" for that specific ID? It might be a problem that \"school survey on crime and safety ssocs\" dings you but it's hard to tell if there's another error in your setup. \n\nI don't disagree with the concern that there seem to be issues with how exhaustively the test set is labelled but this isn't the best example.  ",
    "1290815": "I think the ground truths are not very accurate in the test set and the training set is definitely not exhaustively labeled IMO.  I have found these datasets (hand checked many) that are Gov't data and are not in the labelled training data. When I add these datasets to my \"is in\" test, my score goes down from 70% to 67% - this indicates to me that my system is finding some of these in the test documents, but they are likely not in the ground truths. Obviously it could be some of these are not proper datasets, titles etc., but this demonstrates the point, how did they create the ground truths on all of these documents - seems like an exhaustive labeling system is what we are trying to build.  So if they have that why do they need us?  If they are doing the ground truths by hand, it is hard to think it is catching ALL the government datasets and variations in citations.\n\nlocal food economic impact assessment\ntvb model\nmexican american study project\nnational longitudinal study of adolescent health\nnational health interview survey\nproject talent longitudinal study\nschools and staffing survey\nprivate school universe survey\nfast response survey system\nnational center for education statistics schools and staffing survey\nnational assessment of educational progress\ncoinmon core of data\nnational postsecondary student aid study\npostsecondary student aid study\nnational study of postsecondary faculty\nsurvey on vocational programs in secondary schools\ndistrict survey of alternative schools and programs\nstate nonfiscal survey of public elementary secondary education\nnational public education financial survey\nannual survey of government finances school systems f 33 survey\nintegrated postsecondary education data system\nipeds\nnsopf\nbps data\npostsecondary students longitudinal study\npublic elementary secondary school universe survey\nccd local education agency universe survey\nccd national public education financial survey\nnces national education longitudinal study of 1988\nagricultural resource management survey\nagro ecological zone\naez model\nusda corn yield data\nargonne national laboratory s greet\ngreet model\nargonne national laboratory s cclub model\nnational education longitudinal survey\neducation longitudinal study of 2002\nprogress in international reading literacy study\nusgs national water quality assessment\nipeds fall enrollment dataset\nfall enrollment dataset\ndelta cost project\nannual survey of colleges standard research compilation\nchesapeake bay watershed land cover data series",
    "1290634": ""
  }
}