Do you know of some generalization that instead of just positive and negative ratings would work with real numbers? E.g. rating could be anything between 0 and 1.
Interesting, I like the simplicity of that. Do you have any info how to determine good initial values for the prior? In this example good values for pretend_up and pretend_down? Would it make sense to use average_upvotes and average_downvotes or values that have that ratio?
Values that have that ratio might be good, but I'm not sure about the magnitude because maybe the average number of votes is too high so that the prior overwhelms the data. The scores get pulled towards that ratio as you increase the magnitude. If the ratio is close to 0 it has the effect of downranking videos with few votes, and if the ratio is close to 1 it has the effect of upranking videos with few votes. The effect might be too strong if you use the average magnitude. It might also be good to set the ratio a bit lower than the average ratio if you want to rank conservatively.
Parametrising it like you suggest might make it easier to experiment:
ratio = 0.5
number = 100
pretend_upvotes = ratio*number
pretend_downvotes = (1-ratio)*number
You could even set ratio to 0, but I actually think it makes sense to rank 1 up / 2 down above 101 up / 200 down, because the latter is definitely bad whereas the former might be good.
You can either estimate the prior as part of a hierarchical model, or use empirical Bayesian estimation. I spoke last year about an example of EBE applied to music trends:
Great job btw.