<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en">
<head>
  <title>the all-thing</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <link rel="stylesheet" href="/static/style.css" type="text/css" />
  <link rel="alternate" type="application/rss+xml" title="the all-thing RSS feed" href="/index.rss" />
  <link rel="alternate" type="text/plain" title="the all-thing in plain text" href="/index.txt" />
  <script type="text/javascript" src="/static/mootools.js"></script>
  <script type="text/javascript" src="http://music.masanjin.net:9292/waxiest.js"></script>
</head>
<body>

<div id="main">
  <div id="header">
    <h1><a  href="/">the all-thing</a></h1>
    
  </div>
  <div id="sidebar">
    <h3>Recent comments</h3>

    <ul class="sidebar-list">
    
    <li><b><a  href="/whisper-0.5#58174069c046a78e55f02ef81da81e74">Dominique Julia</a></b>
        <i><a  href="/whisper-0.5">Whisper 0.5 released</a></i>
           one week ago
    </li>
    
    <li><b><a  href="/ruby-ncurses-and-thread-blocking#8fa2a0f392d7c0562d630e4936407c11">William Morgan</a></b>
        <i><a  href="/ruby-ncurses-and-thread-blocking">Ruby, Ncurses and blocked threads</a></i>
           three months ago
    </li>
    
    <li><b><a  href="/git-wtf-bf06ab7-released#533654a7a229569e27a6d0afd716c444">William Morgan</a></b>
        <i><a  href="/git-wtf-bf06ab7-released">git wtf bf06ab7 released</a></i>
           three months ago
    </li>
    
    <li><b><a  href="/git-wtf-bf06ab7-released#b7b7a905477674eb6985b34a964a0dca">Joao Nelas</a></b>
        <i><a  href="/git-wtf-bf06ab7-released">git wtf bf06ab7 released</a></i>
           three months ago
    </li>
    
    <li><b><a  href="/ruby-ncurses-and-thread-blocking#b00001114360ac152f87d4ac2a6e0c5b">Ollivier Robert</a></b>
        <i><a  href="/ruby-ncurses-and-thread-blocking">Ruby, Ncurses and blocked threads</a></i>
           three months ago
    </li>
    
    </ul>

    <h3>Authors</h3>
    <ul class="sidebar-list">
    
      <li><a class="author" href="/by/William+Morgan/">William&nbsp;Morgan</a>&nbsp;(65) </li>
    
    </ul>

    <h3>Tags</h3>
    <ul class="sidebar-list">
    
      <li><a class="label" href="/label/releases/">releases</a>&nbsp;(15) </li>
    
      <li><a class="label" href="/label/whisper/">whisper</a>&nbsp;(13) </li>
    
      <li><a class="label" href="/label/git/">git</a>&nbsp;(9) </li>
    
      <li><a class="label" href="/label/stats/">stats</a>&nbsp;(8) </li>
    
      <li><a class="label" href="/label/trollop/">trollop</a>&nbsp;(6) </li>
    
      <li><a class="label" href="/label/ruby/">ruby</a>&nbsp;(6) </li>
    
      <li><a class="label" href="/label/sup/">sup</a>&nbsp;(6) </li>
    
      <li><a class="label" href="/label/git-wtf/">git-wtf</a>&nbsp;(4) </li>
    
      <li><a class="label" href="/label/vm/">vm</a>&nbsp;(4) </li>
    
      <li><a class="label" href="/label/mathml/">mathml</a>&nbsp;(3) </li>
    
      <li><a class="label" href="/label/continuations/">continuations</a>&nbsp;(3) </li>
    
      <li><a class="label" href="/label/ditz/">ditz</a>&nbsp;(3) </li>
    
      <li><a class="label" href="/label/proglang/">proglang</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/optimization/">optimization</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/benchmarks/">benchmarks</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/rubinius/">rubinius</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/inlining/">inlining</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/ubuntu/">ubuntu</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/fibers/">fibers</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/ritex/">ritex</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/ruby1.9/">ruby1.9</a>&nbsp;(2) </li>
    
      <li><a class="label" href="/label/ncurses/">ncurses</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/javascript/">javascript</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/media/">media</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/vim/">vim</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/classification/">classification</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/massachusetts/">massachusetts</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/greasemonkey/">greasemonkey</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/wine/">wine</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/readme/">readme</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/ancient-greek/">ancient-greek</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/web/">web</a>&nbsp;(1) </li>
    
      <li><a class="label" href="/label/current+events/">current&nbsp;events</a>&nbsp;(1) </li>
    
    </ul>

    <h3>Other formats</h3>
    <ul class="sidebar-list">
    <li><a href="/index.rss"><img src="/static/rss-badge.png"/></a></li>
    <li><a href="/index.txt">plain text version</a></li>
    </ul>

    <h3 class="waxiest.author.original">Who is this man?</h3>
    <h3 class="waxiest.author.beautiful" style="display:none">I must find out more about this beautiful creature</h3>
    <h3 class="waxiest.author.beautifulbig" style="display:none">I MUST FIND OUT MORE ABOUT THIS BEAUTIFUL CREATURE</h3>
    <h3 class="waxiest.author.originalbig" style="display:none">WHO IS THIS MAN?</h3>

    <script type="text/javascript">
      var w = waxiest();
      w.optimizeHTMLSection("author", ["original", "beautiful", "beautifulbig", "originalbig"]);
    </script>

    <a href="http://masanjin.net" onClick="w.goalReached('greeting')">William Morgan</a>
  </div>
  <div id="content">
    <h2><a  href="/smoothing">Smoothing users&#8217; votes</a></h2>

<div class="byline">
  <a  href="/by/William+Morgan/">William Morgan</a>,
  <span title="11 months ago">March 31, 2009 11:16pm</span>
</div>

  <div class="labels"><span class='label'><a  href="/label/stats/">stats</a></span> </div>


<p class='first'>In a <a href="http://all-thing.net/bayesian-average">previous post</a> I describe how you can cook
up a Bayesian framework that results in IMDB&#8217;s so-called &#8220;true Bayesian
estimate&#8221;, a formula which, on its face, doesn&#8217;t look particularly Bayesian.</p>
<p>As my astute commenters pointed out, this formula has many simpler
interpretations without needing to invoke the B word. For example, it&#8217;s a
linear interpolation between two values: <span title='\define{\that}{\hat{\theta}}' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"></math></span>
<div class='blockmath' title='\that=\lambda(v) R + (1-\lambda(v))\tau'><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo>=</mo><mi>&lambda;</mi><mo stretchy='false'>(</mo><mi>v</mi><mo stretchy='false'>)</mo><mi>R</mi><mo>+</mo><mo stretchy='false'>(</mo><mn>1</mn><mo>&minus;</mo><mi>&lambda;</mi><mo stretchy='false'>(</mo><mi>v</mi><mo stretchy='false'>)</mo><mo stretchy='false'>)</mo><mi>&tau;</mi></math></div>
where <span title='R' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>R</mi></math></span> is our mean vote, <span title='\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi></math></span> is some smoothing target, <span title='\lambda(v)' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&lambda;</mi><mo stretchy='false'>(</mo><mi>v</mi><mo stretchy='false'>)</mo></math></span>
is the smoothing weight.  <span title='\lambda(v)' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&lambda;</mi><mo stretchy='false'>(</mo><mi>v</mi><mo stretchy='false'>)</mo></math></span> can be any function, as long as it
increases with <span title='v' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>v</mi></math></span>, stays between 0 and 1, and is 0 when <span title='v' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>v</mi></math></span> is 0. Those
constraints give you the right behavior: with no votes, your estimate is
<span title='\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi></math></span> exactly; as you add votes, it approaches <span title='R' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>R</mi></math></span>, and <span title='\lambda(v)' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&lambda;</mi><mo stretchy='false'>(</mo><mi>v</mi><mo stretchy='false'>)</mo></math></span>
controls how fast that happens.</p>
<p>This formulation naturally leads to the following question: if I&#8217;m smoothing
like this to deal with paucity-of-data issues, what value of <span title='\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi></math></span> should I
pick?  <span class="caps">IMBD</span> uses the <span title='\tau=C' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi><mo>=</mo><mi>C</mi></math></span>, the global movie mean. Intuitively that makes
sense, but is it the right choice?</p>
<p>What&#8217;s nice about the expression for <span title='\that' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></math></span> above is that the behavior we&#8217;re
most interested in is when <span title='v=0' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>v</mi><mo>=</mo><mn>0</mn></math></span>, i.e. when there are no votes. In that case,
<span title='\that=\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo>=</mo><mi>&tau;</mi></math></span>, because of how I&#8217;ve constrained <span title='\lambda(v)' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&lambda;</mi><mo stretchy='false'>(</mo><mi>v</mi><mo stretchy='false'>)</mo></math></span>. So finding the
best <span title='\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi></math></span> is equivalent to finding the best <span title='\that' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></math></span> when <span title='v=0' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>v</mi><mo>=</mo><mn>0</mn></math></span>.</p>
<p><span title='\define{\risk}{R(\theta, \that)}
\define{\loss}{L(\theta, \that)}
\define{\exp}[1]{E_\theta\left[#1\right]}' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"></math></span></p>
<p>Happily, we can answer the question of the best <span title='\that' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></math></span> analytically, at
least if we&#8217;re happy to imagining that there is a &#8220;true&#8221; value of the movie
<span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span>.</p>
<p>Given <span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span>, we can define a loss function <span title='\loss' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mi>L</mi><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>,</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo stretchy='false'>)</mo></mrow></math></span> that describes how
bad we think a particular value of <span title='\that' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></math></span> is. But we don&#8217;t really know what
<span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span> is for any movie (if we did, we wouldn&#8217;t be bothering with any of
this). So we can generalize that a step further and define a risk function
<span title='\risk=\exp{\loss}' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mi>R</mi><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>,</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo stretchy='false'>)</mo></mrow><mo>=</mo><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mrow><mi>L</mi><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>,</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo stretchy='false'>)</mo></mrow><mo>]</mo></mrow></mrow></math></span> quantifying our <em>expected loss</em>: the aggregate of the
loss function across all possible values of <span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span>, weighted by the
probability of each value. This gives us the
tool we really need to answer the question above: the <span title='\that' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></math></span> that minimizes
our risk is the winner.</p>
<p>In the absence of any specific notions about errors, we&#8217;ll use the standard
loss function for reals, squared-error loss: <span title='\loss = (\theta-\that)^2' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><mi>L</mi><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>,</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo stretchy='false'>)</mo></mrow><mo>=</mo><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>&minus;</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><msup><mo stretchy='false'>)</mo><mn>2</mn></msup></math></span>.
Then it&#8217;s just a matter of churning the crank:
<div class='blockmath' title='\array{\arrayopts{\colalign{right center left}}
\risk &amp; = &amp; \exp{\loss} \
                 &amp; = &amp; \exp{(\theta-\that)^2} \
                 &amp; = &amp; \exp{\theta^2-2\theta\that + \that^2} \
                 &amp; = &amp; \exp{\theta^2} - 2\that \exp{\theta} + \that^2
}'><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mtable columnalign='right center left'><mtr><mtd><mrow><mi>R</mi><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>,</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo stretchy='false'>)</mo></mrow></mtd><mtd><mo>=</mo></mtd><mtd><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mrow><mi>L</mi><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>,</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo stretchy='false'>)</mo></mrow><mo>]</mo></mrow></mrow></mtd></mtr><mtr><mtd></mtd><mtd><mo>=</mo></mtd><mtd><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mo stretchy='false'>(</mo><mi>&theta;</mi><mo>&minus;</mo><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><msup><mo stretchy='false'>)</mo><mn>2</mn></msup><mo>]</mo></mrow></mrow></mtd></mtr><mtr><mtd></mtd><mtd><mo>=</mo></mtd><mtd><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><msup><mi>&theta;</mi><mn>2</mn></msup><mo lspace="verythinmathspace" rspace="0em">&minus;</mo><mn>2</mn><mi>&theta;</mi><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mo>+</mo><msup><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mn>2</mn></msup><mo>]</mo></mrow></mrow></mtd></mtr><mtr><mtd></mtd><mtd><mo>=</mo></mtd><mtd><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><msup><mi>&theta;</mi><mn>2</mn></msup><mo>]</mo></mrow></mrow><mo>&minus;</mo><mn>2</mn><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mi>&theta;</mi><mo>]</mo></mrow></mrow><mo>+</mo><msup><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mn>2</mn></msup></mtd></mtr></mtable></mrow></math></div></p>
<p>We can drop that first term since we&#8217;re only interested in minimimizing this as
a function of <span title='\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi></math></span>. To find the minimum:</p>
<p><div class='blockmath' title='\array{\arrayopts{\colalign{right center left}}
\frac{d}{d\that} {-2\that} \exp{\theta} + \that^2 &amp; = &amp; 0 \
-2 \exp{\theta} + 2\that &amp; = &amp; 0 \
\that &amp; = &amp; \exp{\theta}
}'><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mtable columnalign='right center left'><mtr><mtd><mfrac><mrow><mi>d</mi></mrow><mrow><mi>d</mi><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></mrow></mfrac><mrow><mo lspace="verythinmathspace" rspace="0em">&minus;</mo><mn>2</mn><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></mrow><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mi>&theta;</mi><mo>]</mo></mrow></mrow><mo>+</mo><msup><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow><mn>2</mn></msup></mtd><mtd><mo>=</mo></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mo lspace="verythinmathspace" rspace="0em">&minus;</mo><mn>2</mn><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mi>&theta;</mi><mo>]</mo></mrow></mrow><mo>+</mo><mn>2</mn><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></mtd><mtd><mo>=</mo></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mrow><mover><mrow><mi>&theta;</mi></mrow><mo>&Hat;</mo></mover></mrow></mtd><mtd><mo>=</mo></mtd><mtd><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mi>&theta;</mi><mo>]</mo></mrow></mrow></mtd></mtr></mtable></mrow></math></div></p>
<p>Unsurprisingly, we see that the best estimate of <span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span> under squared-error
loss is the mean of the distribution of <span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span>.
Since we&#8217;re interested in the case where <span title='v=0' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>v</mi><mo>=</mo><mn>0</mn></math></span>, this implies that the best
value to use for <span title='\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi></math></span> is also the mean.</p>
<p>So IMDB&#8217;s choice of <span title='C' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>C</mi></math></span> makes sense: the mean vote over all your movies is a
great estimate of the mean of the distribution of <span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span>.</p>
<p>A couple concluding points:</p>
<ol>
	<li>This answer is specific to squared-error loss; if you plug in another loss
function, the optimal value for <span title='\tau' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&tau;</mi></math></span> might very well change. And you might
actually have a specific model in mind for how &#8220;bad&#8221; mis-estimates are. Maybe
over-estimates are worse than under-estimates, or something like that.</li>
	<li>The definition of the distribution of <span title='\theta' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mi>&theta;</mi></math></span> is actually completely vague
above. In fact we don&#8217;t even talk about it; we just use it implicitly in our
<span title='\exp{\cdot}' style='white-space: nowrap'><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline"><mrow><msub><mi>E</mi><mi>&theta;</mi></msub><mrow><mo>[</mo><mo>&sdot;</mo><mo>]</mo></mrow></mrow></math></span> terms. So you should feel free to plug in (the mean of)
whatever distribution you believe most accurately represents your
product/movie/whatever. <span class="caps">IMDB</span> could arguable to better by plugging in
per-category means, or something even fancier.</li>
	<li><span class="caps">IMDB</span> is actually a particularly bad case because movie opinions are extremely
subjective.  If you&#8217;re serious about modeling very subjective things, we should
be talking about multinomial models, Dirichlet priors, and the like.</li>
</ol>
<p>But the take-home message is: in the absence of a specific loss function that
you really believe, smoothing towards the mean isn&#8217;t just intuitive, it&#8217;s
minimizing your risk.</p>

<h4>Discussion</h4>
<a name="comments"></a>

<ul class="comment-tree">

  
  
</ul>

<p class="comment-instructions">To leave a new comment, enter your email
address. A copy of the article will be sent to you via email.</p>
<form id='comment-form-smoothing' action='/comment/smoothing' method='post' class='comment-form'>
  <input type='text' name='email' id='textfield-email'/>
  <input type='submit' value='email me' id='submit-email me'/>
  <span class="form-result" id="form-result-smoothing"><!-- spanna --></span>
</form>


<script type="text/javascript">
/* <![CDATA[ */
$$('.comment-form').addEvent('submit', function(e) {
  e.stop();
  var el = this.getElement('.form-result');
  var result = el.empty().addClass('ajax-loading');
  this.set('send', {
    method: 'post',
    onComplete: function(response) { 
      result.removeClass('ajax-loading');
      result.set('html', response);
    },
  });
  this.send();
});
/* ]]> */
</script>


<script type="text/javascript">
/* <![CDATA[ */
$$('.reply-to-link').each(function(link, i) {
  var box = link.getParent().getParent().getElement('.reply-to-box');
  var oldHeight = box.getStyle("height");
  box.setStyle("height", 0);
  box.setStyle("opacity", 0);
  link.addEvent('click', function(e) {
    e.stop();
    box.setStyle("opacity", 1);
    box.setStyle("height", oldHeight);
    box.getElement("input").focus();
  });
});
/* ]]> */
</script>

  </div>

  <div id="footer" style="margin: 0px;">
    Served up by <a href="http://masanjin.net/whisper/">Whisper</a>. Yes!
  </div>
</div>
</body>
</html>
