You are basically talking about Bandit Algorithms, which are a family of techniques to solve the problem of trading of exploration ('discovering new good content') and exploitation ('just promoting what has already proven itself').
There are several bayesian approaches to bandit problems, which calculate the the uncertainty in a bayesian way, and then use this uncertainty to make the tradeoff between explore and exploit (e.g. http://en.wikipedia.org/wiki/Thompson_sampling).
So that's a well understood problem.
For my money, the 'correct' way to solve the HN problem is as a bandit arm for each article, which you use to decide how much to display low vote articles.
I think this bandit process should be run on top of a bayesian model that features not just the estimated quality of the article from its votes, but also a prior which it gets from the submitter's 'quality' (which is updated depending on how their articles do - this would also serve as a brake on spammers).
Then you just need a heuristic to age out articles over time.
I'm sure PG knows enough ML/stats people to do this sort of thing properly; the fact that its not done means admins are probably happy enough with the status quo.
If you already know exactly the 'age-out' behaviour that you want to capture, then maybe the best thing to do is bolt that on after doing your statistical inference.
This keeps the 'complicated' bit of your system that uses the statistical models simpler.
Also, you'll know exactly what the heuristic does, and be able to predictably hack changes into it in a single place, without affecting your inference code.
If you instead put the aging-out into your objective function, you'll have a more elegant implementation, but the 'age-out' behaviour might surprise you.
Well-specified models are great, but heuristic hacks that force the system to behave how you want also have a place. In general, I would start out by only using the statistical modelling in places where you can't describe exactly what you want with a heuristic.
What the best approach actually is depends, and I'd need to be implementing the system to say more.
You are basically talking about Bandit Algorithms, which are a family of techniques to solve the problem of trading of exploration ('discovering new good content') and exploitation ('just promoting what has already proven itself').
http://en.wikipedia.org/wiki/Multi-armed_bandit
There are several bayesian approaches to bandit problems, which calculate the the uncertainty in a bayesian way, and then use this uncertainty to make the tradeoff between explore and exploit (e.g. http://en.wikipedia.org/wiki/Thompson_sampling).
So that's a well understood problem.
For my money, the 'correct' way to solve the HN problem is as a bandit arm for each article, which you use to decide how much to display low vote articles.
I think this bandit process should be run on top of a bayesian model that features not just the estimated quality of the article from its votes, but also a prior which it gets from the submitter's 'quality' (which is updated depending on how their articles do - this would also serve as a brake on spammers).
Then you just need a heuristic to age out articles over time.
I'm sure PG knows enough ML/stats people to do this sort of thing properly; the fact that its not done means admins are probably happy enough with the status quo.
It's also worth looking at this article by the author of XKCD on voting on reddit, for an easy discussion of simple bayesian voting: http://blog.reddit.com/2009/10/reddits-new-comment-sorting-s...