{
  "id": 2840,
  "title": "Exploiting knowledge of test set distribution",
  "url": "/competitions/MerckActivity/discussion/2840",
  "author_name": "Edge2",
  "post_date": "2012-10-08T20:58:15.607000",
  "votes": 0,
  "comment_count": 25,
  "views": 10987,
  "content": "<p>I have a quick question after looking through Shea Parkes' visualization package (which is awesome, btw!)</p>\r\n<p>Is it permissible for us to exploit knowledge of the test set distribution to train models specifically for that set, or are we expected to model only using knowledge that can be inferred from the training set? I can make a case either way, so instead of\r\n guessing, I'd appreciate if someone can clarify.</p>",
  "messages": [
    {
      "id": 15388,
      "postDate": "2012-10-10T12:00:15.263Z",
      "content": "<p>[quote=Marcin Pionnier;15382]</p>\r\n<p>I think it depends on the area. It is not clear for me for this competition.&nbsp; However in case of building predictive model for example in marketing campaign or churn - test data are available. In case of estimating risk of potential claim for insurance policy\r\n for new client - not available.</p>\r\n<p>[/quote]</p>\r\n<p>There is some confusion with the &quot;Test Data&quot; terminology here.</p>\r\n<p>Test data is any future data on which the predictive model is to be applied.</p>\r\n<p>To spell out in concrete terms:</p>\r\n<p>Lets say Training Sample spans 01JAN2011 - 31DEC2011. Model trained using this data to be applied &amp; tested&nbsp;on data sampled between 01JAN2012 - 31MAR2012. Here after data from 01JAN2012-31MAR2012 will be refered to as the TEST data.</p>\r\n<p>The competition started on 01MAY2012. So we have access to training data &amp; an out of time Test Data.</p>\r\n<p>Just because test data &amp; training data are made available at the same time does not mean that one can use any information from the Test data to incorporate into ones model.</p>\r\n<p>The organisers should also share some blame for this fiasco. If time dimension is important to your problem then you should consider providing timestamps or any integer valued field which can be used to chronologically order the training dataset, so that\r\n users can build there own validation schemes. For ex: if the training data spans 12-months, a user could use the 1st 9 months to train &amp; the remaining 3 months to validate/tune the model. This would eliminate the need/urge to incorporate test data information.</p>\r\n<p>Marketting campains are not analogous to this competition since one usually builds a bespoke model for marketting a particular product, so we cannot use it as a case to defend using test data here.</p>",
      "votes": 2
    },
    {
      "id": 15368,
      "postDate": "2012-10-09T21:37:45.667Z",
      "content": "<p>[quote=jcnhvnhck;15367]</p>\r\n<p>Given how far we are into the competition, it would be unfair to change the rules at this point. So, no, you will not be disqualified or penalized if you used test set distributions since it was not explicitly disallowed at the beginning of the competition.&nbsp;</p>\r\n<p>[/quote]</p>\r\n<p>Thanks. &nbsp;And just to put it out there: I'd welcome the chance to compete in a followup competition that has a different set of goals as well.</p>",
      "votes": 1
    },
    {
      "id": 15362,
      "postDate": "2012-10-09T18:18:14.153Z",
      "content": "<p>Edit: &nbsp;The above post make most of this void.</p>\r\n<p>&nbsp;</p>\r\n<p>The feature descriptions for this competition are masked so I am not entirely sure of how much information of test molecules are typically known. But if I make my own assumptions...</p>\r\n<p>Merck and most pharma companies test thousand of molecules for activities. The point here would be to improve the success rate of finding molecules with a certain activation. That being said, they already have the features for each molecule prior to testing\r\n for activity. The distribution of test molecules would be known and optimizing models to train on similar molecules would make sense.</p>\r\n<p>Judging by the temporal grouping present in the train and test data, there are classes of molecules that are tested for activity. Which is some of the challenge of this competition, the shifts between the train and test is due to a new class of molecule\r\n being testing and we need to predict how it will react.</p>\r\n<p>In many real world applications this approach would not make sense. You would need enough test points to determine the distribution of the test data set. Training a model will take time so there would not be instant results for the new test data. Pharma\r\n molecule testing would not be limited by these needs. There is more of a financial incentive to waiting and training a model to predict which molecules to test than testing them all.</p>\r\n<p>As Shea alluded to above, we have used the distribution of the test features to train model optimized for the test data, but we have not used feedback from the leader board to influence our modeling decisions. Activity 3 for example, the train and test molecules\r\n are fairly different. Having 15 activities help mask some of the gaming that can be result from using leader board results. If you follow the HHP competition to compete at the top it appears you have to include some information derived from the leader board\r\n into your model. Maybe this will end up being part of the key to winning this competition, which will produce models are that are not useful for Merck in real application. I hope this is not the case, but considering that finik was behaving badly and that\r\n there are 15 activities. There could be more slave accounts in the depths of the player ranking or just dummy submissions that were testing outcomes of individual activities to optimize the model.</p>",
      "votes": 1
    },
    {
      "id": 15436,
      "postDate": "2012-10-11T17:06:59.010Z",
      "content": "<p>agree with Shea on this - instead of saynig 0.47 or 0.46 or 0.45, just 0.5 or 0.4 would be good</p>\r\n<p>That way we can avoid the problems mentioned.<br>\r\nkaggle folks: Point to note - Shea is 'spot on' here and we need to implement this real soon for future competitions</p>"
    },
    {
      "id": 15433,
      "postDate": "2012-10-11T17:03:37.290Z",
      "content": "<p>Subsequent evaluation is also problematic. Classic example is the Impermium competition. The subsequent dataset was totally unrepresentative of the initial training set rendering many efforts useless. It was not that models were not generalizable but just\r\n that it was totally different from train. Folks jumped from the second decile to first and vice - versa.<br>\r\nUnless care is taken, subsequent evaluation methods are also useless</p>\r\n<p>&nbsp;</p>\r\n<p>[quote=Shea Parkes;15363]</p>\r\n<p>[quote=jcnhvnhck;15361]</p>\r\n<p>Hi Everyone,</p>\r\n<p>I checked with the competition sponsor and there is a strong preference for not using the test set distribution in creating the models since the distribution information for new molecules will not necessarily be known in practice.</p>\r\n<p>[/quote]</p>\r\n<p>It's a bit late to redo our efforts. I would prefer this sort of issue be a &quot;rule&quot; instead of &quot;preference&quot; however. I don't think we're likely to finish in the money, but I would be disappointed if this invalidated our efforts.<br>\r\nWere this rule to be in effect in future competitions, and you are willing to enforce it during evaluation, I will respect Kaggle's wishes.</p>\r\n<p>[/quote]</p>"
    },
    {
      "id": 15428,
      "postDate": "2012-10-11T14:28:58.627Z",
      "content": "<p>I agree the leaderboard drives competition which drives the innovation; I couldn't see this working without it. I just think you'd get the same benefit with less detailed feedback. Even just one less significant digit would be reasonable to me.</p>\r\n<p>I am more curious than usually how the private leaderboard flop will fall on this competition. We've still got the advantage of less submissions for now.</p>"
    },
    {
      "id": 15426,
      "postDate": "2012-10-11T14:12:51.753Z",
      "content": "<p>same here -&nbsp; I am 9th without using leaderboard data.</p>\r\n<p>Shea: I think the greatest thing about kaggle is the leaderboard. That is what gets us data scientists excited to participate. Without a leaderboard we would not see such improvements in scores</p>"
    },
    {
      "id": 15391,
      "postDate": "2012-10-10T12:56:13.720Z",
      "content": "<p>I understand Merck wouldn't likely know the exact distribution of their test data; I never implied they would. Neil gave an argument that they would have some general ideas above. However, this is a contest. To win, you pretty much exploit any source of\r\n advantage allowable within the rules; I feel no shame in what I've done. I sympathize that Merck might not get exactly what they want, but I mostly hope Kaggle has learned from this and will adapt future contests. I find leaderboard probing distasteful, but\r\n I will do it if it is allowed and will net me an advantage. I don't mean dummy accounts, I mean changing my future submissions based on the public score of my prior submissions. I would also like to mention observational studies as an example again; that is\r\n a time where you know you have disparate distributions and need to do some manner of balancing. I do realize this is not an observational study, but this sort of problem space does exist outside of contrived contests.</p>"
    },
    {
      "id": 15386,
      "postDate": "2012-10-10T11:44:09.367Z",
      "content": "<p>Seeing that you cannot possibly address every possible loophole (exploited intentionally or otherwise) in the rules, Is it time to have an Honour Code/Code of Conduct for Kagglers?</p>"
    },
    {
      "id": 15383,
      "postDate": "2012-10-10T08:34:52.977Z",
      "content": "<p>@Marcin</p>\r\n<p>You are right according to the situations it depends but in Merck case I don't think it's possible.</p>\r\n<p>Thanks</p>\r\n<p>Thakur</p>"
    },
    {
      "id": 15382,
      "postDate": "2012-10-10T08:05:32.777Z",
      "content": "<p>I think it depends on the area. It is not clear for me for this competition.&nbsp; However in case of building predictive model for example in marketing campaign or churn - test data are available. In case of estimating risk of potential claim for insurance policy\r\n for new client - not available.</p>"
    },
    {
      "id": 15380,
      "postDate": "2012-10-10T06:02:44.233Z",
      "content": "<p>@<a class=\"x_x_profilelink\" title=\"View jcnhvnhck's profile\" href=\"https://www.kaggle.com/users/37404/jcnhvnhck\">jcnhvnhck</a></p>\r\n<p><span>This seems to be lot of confusion, becoz whenever someone make predictive models it's almost an assumption that you don't know anything about future data. So I am not making use of distribution of test data. This is a competition so u have the test\r\n data, In real scenario you can't have access to future data. This seems to be really wrong, can any of the contender who is making use of distribution of test data can clarify how Merck is going to obtain the information about distribution of future data.</span></p>\r\n<p>&nbsp;</p>\r\n<p><span>Thanks</span></p>\r\n<p><span>Thakur</span></p>"
    },
    {
      "id": 15367,
      "postDate": "2012-10-09T21:32:59.107Z",
      "content": "<p>[quote=Edge2;15366]</p>\r\n<p>Any chance we can get a more definitive answer? &nbsp;Will we be disqualified or penalized in some way for using the test set distributions in this competition?</p>\r\n<p>[/quote]</p>\r\n<p>Given how far we are into the competition, it would be unfair to change the rules at this point. So, no, you will not be disqualified or penalized if you used test set distributions since it was not explicitly disallowed at the beginning of the competition.&nbsp;</p>"
    },
    {
      "id": 15366,
      "postDate": "2012-10-09T21:25:23.850Z",
      "content": "<p>Any chance we can get a more definitive answer? &nbsp;Will we be disqualified or penalized in some way for using the test set distributions in this competition?</p>"
    },
    {
      "id": 15363,
      "postDate": "2012-10-09T18:50:17.217Z",
      "content": "<p>[quote=jcnhvnhck;15361]</p>\r\n<p>Hi Everyone,</p>\r\n<p>I checked with the competition sponsor and there is a strong preference for not using the test set distribution in creating the models since the distribution information for new molecules will not necessarily be known in practice.\r\n</p>\r\n<p>[/quote]</p>\r\nIt's a bit late to redo our efforts. I would prefer this sort of issue be a &quot;rule&quot; instead of &quot;preference&quot; however. I don't think we're likely to finish in the money, but I would be disappointed if this invalidated our efforts.<br>\r\nWere this rule to be in effect in future competitions, and you are willing to enforce it during evaluation, I will respect Kaggle's wishes."
    },
    {
      "id": 15361,
      "postDate": "2012-10-09T18:17:27.950Z",
      "content": "<p>Hi Everyone,</p>\r\n<p>I checked with the competition sponsor and there is a strong preference for not using the test set distribution in creating the models since the distribution information for new molecules will not necessarily be known in practice.\r\n</p>"
    },
    {
      "id": 15339,
      "postDate": "2012-10-09T12:39:36.113Z",
      "content": "<p>When working on an observational study you definitely know the distribution of the &quot;test&quot; data; the testing data are the subjects who selected treatment. I'm not talking about predictive modeling in a forecast sense; this is much more of an explanatory sense.</p>\r\n<p>I am in agreement that prior informal policies are not a good way to conduct a contest. Could an admin please confirm or deny the ability to utilize the distribution of the testing data for imputation or otherwise alter the modeling process?</p>"
    },
    {
      "id": 15337,
      "postDate": "2012-10-09T09:58:03.783Z",
      "content": "<p>[quote=Shea Parkes;15316]</p>\r\n<p>Re: Crystal Ball</p>\r\n<p>The most common real life case would be doing the analysis of an observational study. You know the distribution of the test data and need to understand how to eliminate as much selection bias as you can. (And then defend arguments about how much is left.)</p>\r\n<p>[/quote]</p>\r\n<p>I agree that the data we analyse in real life is of observational nature. However, I disagree that one knows the distribution of the test data (or data coming through in production environment) apriori.</p>\r\n<p>What one does know in practice comes from the sample data that has been collected and assumes that the test data &amp; future data are stationary and follow similar distribution to one's sample data. If there are temporal variations in one's problem, then one\r\n would try to capture such variation through variables or build some kind of adaptive model.</p>\r\n<p>Peeking ahead into the test data and modifying the fit of the model is something I avoid based on my practical experience( &amp; I do see some do this and ending-up with overfitted model - which works well on validation sample but fails when applied on out of\r\n time sample i.e., a data sample obtained a few months after the model has been developed). Only exception to this would be&nbsp;semi-supervised learning &amp; I know ahead that this type of model would be acceptable in practice.</p>\r\n<p>Just because prior contests have allowed using test data in our training does not make the practice correct(slavery, sati, segregation were all allowed in their times but they were not the right thing to do then &amp; they are not the right thing to do now).\r\n So, on this principle I decline to use test data in&nbsp; whatsoever form to tune my model - even if it is deterimental to my ranking.</p>"
    },
    {
      "id": 15319,
      "postDate": "2012-10-09T02:38:52.143Z",
      "content": "<p>Great, thanks for your input.</p>"
    },
    {
      "id": 15316,
      "postDate": "2012-10-09T00:59:59.850Z",
      "content": "<p>Re: Crystal Ball</p>\r\n<p>The most common real life case would be doing the analysis of an observational study. You know the distribution of the test data and need to understand how to eliminate as much selection bias as you can. (And then defend arguments about how much is left.)</p>"
    },
    {
      "id": 15315,
      "postDate": "2012-10-09T00:54:23.367Z",
      "content": "<p>In prior contests, they have fully allowed the test data to influence the training of the model. The classic case is for imputation of missing values; they've always stated you could include the testing data in your imputation models.</p>\r\n<p>I just assumed that would extend to distorting the training data to match the testing data. Other forum posters have hinted at subsampling. I obviously tipped my hat to our methods; but a recent blog post on kaggle mentioned the same methodology. I'm a firm\r\n believer of &quot;It's all been done.&quot;</p>\r\n<p>I particularly enjoy the 15 activity aspect of this contest. Otherwise you'd have to use leaderboard feedback to win, and that's just distasteful to me. Covariate shift / propensity weighting has real life applications. Leaderboard probing is just contrived\r\n nonsense to me.&nbsp; (Although it did appear a few pupper accounts were trying to probe this leaderboard one activity at a time.)&nbsp; I'm personally in favor of heavier rounding in leaderboard scores.&nbsp; Maybe only 3 digits for this one.&nbsp; All that fourth one is good\r\n for is trouble.</p>\r\n<p>And I'm glad you enjoyed the visualizations. I'm contemplating doing another entry based on the difference between tuning a model univariately and tuning it as part of an ensemble.</p>"
    },
    {
      "id": 15310,
      "postDate": "2012-10-08T22:30:55.127Z",
      "content": "<p>Yeah, either way makes sense to me. If you need the most accurate measure of activity for a newly characterized 10k molecules, it makes sense to train a model for that task using the best possible information. In this case, you aren't predicting with information\r\n that doesn't exist yet. On the other hand, if you want to put a model on the shelf that predicts the activity of molecules that haven't yet been characterized, then using the distribution doesn't make sense.\r\n</p>"
    },
    {
      "id": 15309,
      "postDate": "2012-10-08T22:13:55.117Z",
      "content": "<p>I think a function of (training data, test data without answers) is still a valid and usable model, although it may be computationally expensive and limit prediction to a&nbsp;large batches.</p>\r\n<p>I don't really use the test data... perhaps using it is a key to good results.</p>"
    },
    {
      "id": 15308,
      "postDate": "2012-10-08T21:58:11.457Z",
      "content": "<p>[quote=Edge2;15304]</p>\r\n<p>I have a quick question after looking through Shea Parkes' visualization package (which is awesome, btw!)</p>\r\n<p>Is it permissible for us to exploit knowledge of the test set distribution to train models specifically for that set, or are we expected to model only using knowledge that can be inferred from the training set? I can make a case either way, so instead of\r\n guessing, I'd appreciate if someone can clarify.</p>\r\n<p>[/quote]</p>\r\n<p>&nbsp;</p>\r\n<p>Are we not defeating the purpose of having a test set if we are going to exploit the distribution of test set?</p>\r\n<p>Think about how it would work in practice, unless you are some sort of time lord who can peer into the future and see test set distribution (while at it might as well sneak a peek at the target values as well).</p>"
    },
    {
      "id": 15304,
      "postDate": "2012-10-08T20:58:15.607Z",
      "content": "<p>I have a quick question after looking through Shea Parkes' visualization package (which is awesome, btw!)</p>\r\n<p>Is it permissible for us to exploit knowledge of the test set distribution to train models specifically for that set, or are we expected to model only using knowledge that can be inferred from the training set? I can make a case either way, so instead of\r\n guessing, I'd appreciate if someone can clarify.</p>"
    },
    {
      "id": 15408,
      "postDate": "2012-10-10T19:44:15.087Z",
      "rawMarkdown": "",
      "votes": 1,
      "isDeleted": true
    }
  ],
  "comments": [
    {
      "id": 15388,
      "author_name": "Sashikanth Dareddy",
      "author_url": "",
      "post_date": "2012-10-10T12:00:15.263000",
      "content": "<p>[quote=Marcin Pionnier;15382]</p>\r\n<p>I think it depends on the area. It is not clear for me for this competition.&nbsp; However in case of building predictive model for example in marketing campaign or churn - test data are available. In case of estimating risk of potential claim for insurance policy\r\n for new client - not available.</p>\r\n<p>[/quote]</p>\r\n<p>There is some confusion with the &quot;Test Data&quot; terminology here.</p>\r\n<p>Test data is any future data on which the predictive model is to be applied.</p>\r\n<p>To spell out in concrete terms:</p>\r\n<p>Lets say Training Sample spans 01JAN2011 - 31DEC2011. Model trained using this data to be applied &amp; tested&nbsp;on data sampled between 01JAN2012 - 31MAR2012. Here after data from 01JAN2012-31MAR2012 will be refered to as the TEST data.</p>\r\n<p>The competition started on 01MAY2012. So we have access to training data &amp; an out of time Test Data.</p>\r\n<p>Just because test data &amp; training data are made available at the same time does not mean that one can use any information from the Test data to incorporate into ones model.</p>\r\n<p>The organisers should also share some blame for this fiasco. If time dimension is important to your problem then you should consider providing timestamps or any integer valued field which can be used to chronologically order the training dataset, so that\r\n users can build there own validation schemes. For ex: if the training data spans 12-months, a user could use the 1st 9 months to train &amp; the remaining 3 months to validate/tune the model. This would eliminate the need/urge to incorporate test data information.</p>\r\n<p>Marketting campains are not analogous to this competition since one usually builds a bespoke model for marketting a particular product, so we cannot use it as a case to defend using test data here.</p>",
      "votes": 2,
      "replies": []
    },
    {
      "id": 15368,
      "author_name": "Edge2",
      "author_url": "",
      "post_date": "2012-10-09T21:37:45.667000",
      "content": "<p>[quote=jcnhvnhck;15367]</p>\r\n<p>Given how far we are into the competition, it would be unfair to change the rules at this point. So, no, you will not be disqualified or penalized if you used test set distributions since it was not explicitly disallowed at the beginning of the competition.&nbsp;</p>\r\n<p>[/quote]</p>\r\n<p>Thanks. &nbsp;And just to put it out there: I'd welcome the chance to compete in a followup competition that has a different set of goals as well.</p>",
      "votes": 1,
      "replies": []
    },
    {
      "id": 15362,
      "author_name": "Neil Schneider, FSA",
      "author_url": "",
      "post_date": "2012-10-09T18:18:14.153000",
      "content": "<p>Edit: &nbsp;The above post make most of this void.</p>\r\n<p>&nbsp;</p>\r\n<p>The feature descriptions for this competition are masked so I am not entirely sure of how much information of test molecules are typically known. But if I make my own assumptions...</p>\r\n<p>Merck and most pharma companies test thousand of molecules for activities. The point here would be to improve the success rate of finding molecules with a certain activation. That being said, they already have the features for each molecule prior to testing\r\n for activity. The distribution of test molecules would be known and optimizing models to train on similar molecules would make sense.</p>\r\n<p>Judging by the temporal grouping present in the train and test data, there are classes of molecules that are tested for activity. Which is some of the challenge of this competition, the shifts between the train and test is due to a new class of molecule\r\n being testing and we need to predict how it will react.</p>\r\n<p>In many real world applications this approach would not make sense. You would need enough test points to determine the distribution of the test data set. Training a model will take time so there would not be instant results for the new test data. Pharma\r\n molecule testing would not be limited by these needs. There is more of a financial incentive to waiting and training a model to predict which molecules to test than testing them all.</p>\r\n<p>As Shea alluded to above, we have used the distribution of the test features to train model optimized for the test data, but we have not used feedback from the leader board to influence our modeling decisions. Activity 3 for example, the train and test molecules\r\n are fairly different. Having 15 activities help mask some of the gaming that can be result from using leader board results. If you follow the HHP competition to compete at the top it appears you have to include some information derived from the leader board\r\n into your model. Maybe this will end up being part of the key to winning this competition, which will produce models are that are not useful for Merck in real application. I hope this is not the case, but considering that finik was behaving badly and that\r\n there are 15 activities. There could be more slave accounts in the depths of the player ranking or just dummy submissions that were testing outcomes of individual activities to optimize the model.</p>",
      "votes": 1,
      "replies": []
    },
    {
      "id": 15436,
      "author_name": "Dr Kiran R",
      "author_url": "",
      "post_date": "2012-10-11T17:06:59.010000",
      "content": "<p>agree with Shea on this - instead of saynig 0.47 or 0.46 or 0.45, just 0.5 or 0.4 would be good</p>\r\n<p>That way we can avoid the problems mentioned.<br>\r\nkaggle folks: Point to note - Shea is 'spot on' here and we need to implement this real soon for future competitions</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15433,
      "author_name": "Dr Kiran R",
      "author_url": "",
      "post_date": "2012-10-11T17:03:37.290000",
      "content": "<p>Subsequent evaluation is also problematic. Classic example is the Impermium competition. The subsequent dataset was totally unrepresentative of the initial training set rendering many efforts useless. It was not that models were not generalizable but just\r\n that it was totally different from train. Folks jumped from the second decile to first and vice - versa.<br>\r\nUnless care is taken, subsequent evaluation methods are also useless</p>\r\n<p>&nbsp;</p>\r\n<p>[quote=Shea Parkes;15363]</p>\r\n<p>[quote=jcnhvnhck;15361]</p>\r\n<p>Hi Everyone,</p>\r\n<p>I checked with the competition sponsor and there is a strong preference for not using the test set distribution in creating the models since the distribution information for new molecules will not necessarily be known in practice.</p>\r\n<p>[/quote]</p>\r\n<p>It's a bit late to redo our efforts. I would prefer this sort of issue be a &quot;rule&quot; instead of &quot;preference&quot; however. I don't think we're likely to finish in the money, but I would be disappointed if this invalidated our efforts.<br>\r\nWere this rule to be in effect in future competitions, and you are willing to enforce it during evaluation, I will respect Kaggle's wishes.</p>\r\n<p>[/quote]</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15428,
      "author_name": "Shea Parkes",
      "author_url": "",
      "post_date": "2012-10-11T14:28:58.627000",
      "content": "<p>I agree the leaderboard drives competition which drives the innovation; I couldn't see this working without it. I just think you'd get the same benefit with less detailed feedback. Even just one less significant digit would be reasonable to me.</p>\r\n<p>I am more curious than usually how the private leaderboard flop will fall on this competition. We've still got the advantage of less submissions for now.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15426,
      "author_name": "Dr Kiran R",
      "author_url": "",
      "post_date": "2012-10-11T14:12:51.753000",
      "content": "<p>same here -&nbsp; I am 9th without using leaderboard data.</p>\r\n<p>Shea: I think the greatest thing about kaggle is the leaderboard. That is what gets us data scientists excited to participate. Without a leaderboard we would not see such improvements in scores</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15391,
      "author_name": "Shea Parkes",
      "author_url": "",
      "post_date": "2012-10-10T12:56:13.720000",
      "content": "<p>I understand Merck wouldn't likely know the exact distribution of their test data; I never implied they would. Neil gave an argument that they would have some general ideas above. However, this is a contest. To win, you pretty much exploit any source of\r\n advantage allowable within the rules; I feel no shame in what I've done. I sympathize that Merck might not get exactly what they want, but I mostly hope Kaggle has learned from this and will adapt future contests. I find leaderboard probing distasteful, but\r\n I will do it if it is allowed and will net me an advantage. I don't mean dummy accounts, I mean changing my future submissions based on the public score of my prior submissions. I would also like to mention observational studies as an example again; that is\r\n a time where you know you have disparate distributions and need to do some manner of balancing. I do realize this is not an observational study, but this sort of problem space does exist outside of contrived contests.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15386,
      "author_name": "Sashikanth Dareddy",
      "author_url": "",
      "post_date": "2012-10-10T11:44:09.367000",
      "content": "<p>Seeing that you cannot possibly address every possible loophole (exploited intentionally or otherwise) in the rules, Is it time to have an Honour Code/Code of Conduct for Kagglers?</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15383,
      "author_name": "DataGeek",
      "author_url": "",
      "post_date": "2012-10-10T08:34:52.977000",
      "content": "<p>@Marcin</p>\r\n<p>You are right according to the situations it depends but in Merck case I don't think it's possible.</p>\r\n<p>Thanks</p>\r\n<p>Thakur</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15382,
      "author_name": "Marcin Pionnier",
      "author_url": "",
      "post_date": "2012-10-10T08:05:32.777000",
      "content": "<p>I think it depends on the area. It is not clear for me for this competition.&nbsp; However in case of building predictive model for example in marketing campaign or churn - test data are available. In case of estimating risk of potential claim for insurance policy\r\n for new client - not available.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15380,
      "author_name": "DataGeek",
      "author_url": "",
      "post_date": "2012-10-10T06:02:44.233000",
      "content": "<p>@<a class=\"x_x_profilelink\" title=\"View jcnhvnhck's profile\" href=\"https://www.kaggle.com/users/37404/jcnhvnhck\">jcnhvnhck</a></p>\r\n<p><span>This seems to be lot of confusion, becoz whenever someone make predictive models it's almost an assumption that you don't know anything about future data. So I am not making use of distribution of test data. This is a competition so u have the test\r\n data, In real scenario you can't have access to future data. This seems to be really wrong, can any of the contender who is making use of distribution of test data can clarify how Merck is going to obtain the information about distribution of future data.</span></p>\r\n<p>&nbsp;</p>\r\n<p><span>Thanks</span></p>\r\n<p><span>Thakur</span></p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15367,
      "author_name": "joycenv",
      "author_url": "",
      "post_date": "2012-10-09T21:32:59.107000",
      "content": "<p>[quote=Edge2;15366]</p>\r\n<p>Any chance we can get a more definitive answer? &nbsp;Will we be disqualified or penalized in some way for using the test set distributions in this competition?</p>\r\n<p>[/quote]</p>\r\n<p>Given how far we are into the competition, it would be unfair to change the rules at this point. So, no, you will not be disqualified or penalized if you used test set distributions since it was not explicitly disallowed at the beginning of the competition.&nbsp;</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15366,
      "author_name": "Edge2",
      "author_url": "",
      "post_date": "2012-10-09T21:25:23.850000",
      "content": "<p>Any chance we can get a more definitive answer? &nbsp;Will we be disqualified or penalized in some way for using the test set distributions in this competition?</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15363,
      "author_name": "Shea Parkes",
      "author_url": "",
      "post_date": "2012-10-09T18:50:17.217000",
      "content": "<p>[quote=jcnhvnhck;15361]</p>\r\n<p>Hi Everyone,</p>\r\n<p>I checked with the competition sponsor and there is a strong preference for not using the test set distribution in creating the models since the distribution information for new molecules will not necessarily be known in practice.\r\n</p>\r\n<p>[/quote]</p>\r\nIt's a bit late to redo our efforts. I would prefer this sort of issue be a &quot;rule&quot; instead of &quot;preference&quot; however. I don't think we're likely to finish in the money, but I would be disappointed if this invalidated our efforts.<br>\r\nWere this rule to be in effect in future competitions, and you are willing to enforce it during evaluation, I will respect Kaggle's wishes.",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15361,
      "author_name": "joycenv",
      "author_url": "",
      "post_date": "2012-10-09T18:17:27.950000",
      "content": "<p>Hi Everyone,</p>\r\n<p>I checked with the competition sponsor and there is a strong preference for not using the test set distribution in creating the models since the distribution information for new molecules will not necessarily be known in practice.\r\n</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15339,
      "author_name": "Shea Parkes",
      "author_url": "",
      "post_date": "2012-10-09T12:39:36.113000",
      "content": "<p>When working on an observational study you definitely know the distribution of the &quot;test&quot; data; the testing data are the subjects who selected treatment. I'm not talking about predictive modeling in a forecast sense; this is much more of an explanatory sense.</p>\r\n<p>I am in agreement that prior informal policies are not a good way to conduct a contest. Could an admin please confirm or deny the ability to utilize the distribution of the testing data for imputation or otherwise alter the modeling process?</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15337,
      "author_name": "Sashikanth Dareddy",
      "author_url": "",
      "post_date": "2012-10-09T09:58:03.783000",
      "content": "<p>[quote=Shea Parkes;15316]</p>\r\n<p>Re: Crystal Ball</p>\r\n<p>The most common real life case would be doing the analysis of an observational study. You know the distribution of the test data and need to understand how to eliminate as much selection bias as you can. (And then defend arguments about how much is left.)</p>\r\n<p>[/quote]</p>\r\n<p>I agree that the data we analyse in real life is of observational nature. However, I disagree that one knows the distribution of the test data (or data coming through in production environment) apriori.</p>\r\n<p>What one does know in practice comes from the sample data that has been collected and assumes that the test data &amp; future data are stationary and follow similar distribution to one's sample data. If there are temporal variations in one's problem, then one\r\n would try to capture such variation through variables or build some kind of adaptive model.</p>\r\n<p>Peeking ahead into the test data and modifying the fit of the model is something I avoid based on my practical experience( &amp; I do see some do this and ending-up with overfitted model - which works well on validation sample but fails when applied on out of\r\n time sample i.e., a data sample obtained a few months after the model has been developed). Only exception to this would be&nbsp;semi-supervised learning &amp; I know ahead that this type of model would be acceptable in practice.</p>\r\n<p>Just because prior contests have allowed using test data in our training does not make the practice correct(slavery, sati, segregation were all allowed in their times but they were not the right thing to do then &amp; they are not the right thing to do now).\r\n So, on this principle I decline to use test data in&nbsp; whatsoever form to tune my model - even if it is deterimental to my ranking.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15319,
      "author_name": "Edge2",
      "author_url": "",
      "post_date": "2012-10-09T02:38:52.143000",
      "content": "<p>Great, thanks for your input.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15316,
      "author_name": "Shea Parkes",
      "author_url": "",
      "post_date": "2012-10-09T00:59:59.850000",
      "content": "<p>Re: Crystal Ball</p>\r\n<p>The most common real life case would be doing the analysis of an observational study. You know the distribution of the test data and need to understand how to eliminate as much selection bias as you can. (And then defend arguments about how much is left.)</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15315,
      "author_name": "Shea Parkes",
      "author_url": "",
      "post_date": "2012-10-09T00:54:23.367000",
      "content": "<p>In prior contests, they have fully allowed the test data to influence the training of the model. The classic case is for imputation of missing values; they've always stated you could include the testing data in your imputation models.</p>\r\n<p>I just assumed that would extend to distorting the training data to match the testing data. Other forum posters have hinted at subsampling. I obviously tipped my hat to our methods; but a recent blog post on kaggle mentioned the same methodology. I'm a firm\r\n believer of &quot;It's all been done.&quot;</p>\r\n<p>I particularly enjoy the 15 activity aspect of this contest. Otherwise you'd have to use leaderboard feedback to win, and that's just distasteful to me. Covariate shift / propensity weighting has real life applications. Leaderboard probing is just contrived\r\n nonsense to me.&nbsp; (Although it did appear a few pupper accounts were trying to probe this leaderboard one activity at a time.)&nbsp; I'm personally in favor of heavier rounding in leaderboard scores.&nbsp; Maybe only 3 digits for this one.&nbsp; All that fourth one is good\r\n for is trouble.</p>\r\n<p>And I'm glad you enjoyed the visualizations. I'm contemplating doing another entry based on the difference between tuning a model univariately and tuning it as part of an ensemble.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15310,
      "author_name": "Edge2",
      "author_url": "",
      "post_date": "2012-10-08T22:30:55.127000",
      "content": "<p>Yeah, either way makes sense to me. If you need the most accurate measure of activity for a newly characterized 10k molecules, it makes sense to train a model for that task using the best possible information. In this case, you aren't predicting with information\r\n that doesn't exist yet. On the other hand, if you want to put a model on the shelf that predicts the activity of molecules that haven't yet been characterized, then using the distribution doesn't make sense.\r\n</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15309,
      "author_name": "pzaw",
      "author_url": "",
      "post_date": "2012-10-08T22:13:55.117000",
      "content": "<p>I think a function of (training data, test data without answers) is still a valid and usable model, although it may be computationally expensive and limit prediction to a&nbsp;large batches.</p>\r\n<p>I don't really use the test data... perhaps using it is a key to good results.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15308,
      "author_name": "Sashikanth Dareddy",
      "author_url": "",
      "post_date": "2012-10-08T21:58:11.457000",
      "content": "<p>[quote=Edge2;15304]</p>\r\n<p>I have a quick question after looking through Shea Parkes' visualization package (which is awesome, btw!)</p>\r\n<p>Is it permissible for us to exploit knowledge of the test set distribution to train models specifically for that set, or are we expected to model only using knowledge that can be inferred from the training set? I can make a case either way, so instead of\r\n guessing, I'd appreciate if someone can clarify.</p>\r\n<p>[/quote]</p>\r\n<p>&nbsp;</p>\r\n<p>Are we not defeating the purpose of having a test set if we are going to exploit the distribution of test set?</p>\r\n<p>Think about how it would work in practice, unless you are some sort of time lord who can peer into the future and see test set distribution (while at it might as well sneak a peek at the target values as well).</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 15408,
      "author_name": "",
      "author_url": "",
      "post_date": "2012-10-10T19:44:15.087000",
      "content": "",
      "votes": 1,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "15388": "",
    "15368": "",
    "15362": "",
    "15436": "",
    "15433": "",
    "15428": "",
    "15426": "",
    "15391": "",
    "15386": "",
    "15383": "",
    "15382": "",
    "15380": "",
    "15367": "",
    "15366": "",
    "15363": "",
    "15361": "",
    "15339": "",
    "15337": "",
    "15319": "",
    "15316": "",
    "15315": "",
    "15310": "",
    "15309": "",
    "15308": "",
    "15304": "",
    "15408": ""
  }
}