{"id":29,"date":"2005-02-21T10:47:02","date_gmt":"2005-02-21T16:47:02","guid":{"rendered":"\/?p=29"},"modified":"2005-02-21T12:47:54","modified_gmt":"2005-02-21T18:47:54","slug":"problem-cross-validation","status":"publish","type":"post","link":"https:\/\/hunch.net\/?p=29","title":{"rendered":"Problem: Cross Validation"},"content":{"rendered":"<p>The essential problem here is the large gap between experimental observation and theoretical understanding.<\/p>\n<p><strong>Method <\/strong> K-fold cross validation is a commonly used technique which takes a set of <em>m<\/em> examples and partitions them into <em>K<\/em> sets (&#8220;folds&#8221;) of size <em>m\/K<\/em>.  For each fold, a classifier is trained on the other folds and then test on the fold.<\/p>\n<p><strong>Problem <\/strong> Assume only independent samples.  Derive a classifier from the K classifiers with a small bound on the true error rate.<\/p>\n<p><strong>Past Work<\/strong> (I&#8217;ll add more as I remember\/learn.)<\/p>\n<ol>\n<li><a href=\"http:\/\/jeff.cs.mcgill.ca\/~luc\/\">Devroye<\/a>, Rogers, and Wagner analyzed cross validation and found algorithm specific bounds.  Not all of this is online, but here is one <a href=\"http:\/\/jeff.cs.mcgill.ca\/~luc\/devroye_wagner_1976_a_distribution_free_performance_bound_in_error_estimation.pdf\">paper<\/a>. <\/li>\n<li><a href=\"http:\/\/www.cis.upenn.edu\/~mkearns\/\">Michael Kearns<\/a> and <a href=\"http:\/\/www.eng.tau.ac.il\/~danar\/\">Dana Ron<\/a> <a href=\"http:\/\/www.cis.upenn.edu\/~mkearns\/papers\/multi.ps\">analyzed cross validation<\/a> and found that under additional stability assumptions the bound for the classifier which learns on all the data is not much worse than for a test set of size <em>m\/K<em>.<\/em><\/em><\/li>\n<li><a href=\"http:\/\/www-2.cs.cmu.edu\/~avrim\/\">Avrim Blum, <a href=\"http:\/\/people.cs.uchicago.edu\/~kalai\/\">Adam Kalai<\/a>, and <a href=\"https:\/\/hunch.net\/~jl\">myself<\/a> <a href=\"https:\/\/hunch.net\/~jl\/projects\/prediction_bounds\/progressive_validation\/coltfinal.ps\">analyzed cross validation<\/a> and found that you can do at least as well as a test set of size <em>m\/K<\/em> with no additional assumptions using the randomized classifier which draws uniformly from the set of size <em>K<\/em>. <\/a><\/li>\n<li><a href=\"http:\/\/www.iro.umontreal.ca\/~bengioy\/\">Yoshua Bengio and <a href=\"http:\/\/www.hds.utc.fr\/~grandval\/\">Yves Grandvalet<\/a> <a href=\"http:\/\/www.hds.utc.fr\/~grandval\/\">analyzed cross validation<\/a> and concluded that there was no unbiased estimator of variance.<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.helsinki.fi\/u\/mtkaaria\/\">Matti K\u00c3\u00a4\u00c3\u00a4ri\u00c3\u00a4inen<\/a> noted that you can safely derandomize a stochastic classifier (such as one that randomizes over the <em>K<\/em> folds) <a href=\"http:\/\/www.cs.helsinki.fi\/u\/mtkaaria\/papers\/semitr.ps\">using unlabeled data<\/a> without additional assumptions.<\/li>\n<\/ol>\n<p><strong>Some Extreme Cases to Sharpen Intuition<\/strong><\/p>\n<ol>\n<li>Suppose on every fold the learned classifier is the same. Then, the cross-validation error should behave something like a test set of size <em>m<\/em>.  This is radically superior to a test set of size <em>m\/K<\/em>.<\/li>\n<li>Consider leave-one-out cross validation.  Suppose we have a &#8220;learning&#8221; algorithm that uses the classification rule &#8220;always predict the parity of the labels on the training set&#8221;. Suppose the learning problem is defined by a distribution which picks <em>y=1<\/em> with probability <em>0.5<\/em>.  Then, with probability <em>0.5<\/em>, all leave-one-out errors will be <em>0<\/em> and otherwise <em>1<\/em> (like a single coin flip).<\/li>\n<\/ol>\n<p>(some discussion is <a href=\"https:\/\/hunch.net\/index.php?p=22#comments\">here<\/a>)<\/p>\n<p><strong>Difficulty<\/strong> I consider this a hard problem. I&#8217;ve worked on it without success and it&#8217;s an obvious problem (due to the pervasive use of cross validation) that I suspect other people have considered.  Analyzing the dependency structure of cross validation is quite difficult.<\/p>\n<p><strong>Impact<\/strong> On any individual problem, solving this might have only have a small impact due to slightly improved judgement of success.  But, because cross validation is used extensively, the overall impact of a good solution might be very significant.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The essential problem here is the large gap between experimental observation and theoretical understanding. Method K-fold cross validation is a commonly used technique which takes a set of m examples and partitions them into K sets (&#8220;folds&#8221;) of size m\/K. For each fold, a classifier is trained on the other folds and then test on &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/hunch.net\/?p=29\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Problem: Cross Validation&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,16],"tags":[],"class_list":["post-29","post","type-post","status-publish","format-standard","hentry","category-prediction-theory","category-problems"],"_links":{"self":[{"href":"https:\/\/hunch.net\/index.php?rest_route=\/wp\/v2\/posts\/29","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hunch.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hunch.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hunch.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hunch.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=29"}],"version-history":[{"count":0,"href":"https:\/\/hunch.net\/index.php?rest_route=\/wp\/v2\/posts\/29\/revisions"}],"wp:attachment":[{"href":"https:\/\/hunch.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=29"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hunch.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=29"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hunch.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}