Toad wrote:

On Wed, Dec 03, 2003 at 12:11:39PM -0800, Martin Stone Davis wrote:

Toad wrote:


On Wed, Dec 03, 2003 at 11:34:06AM -0800, Martin Stone Davis wrote:


Interesting. But I'm not sure whether your function for DDF is
the best one. Further I'm not sure whether the problem at hand
(average a bernoulli distribution) has a good solution without
memorizing the last N values.

Well, IF the variable truly acts like a random Bernoulli variable, then I doubt it's necessary to memorize the last N values.


However, if it does something like this (for example): 1 1 0 0 0 0 1 1 0 0 1 1 1 1 0 0, where every other value really depends on the prior value, then some kind of pattern-recognition algorithm could figure that out and allow us to make better predictions. We human beings should look at the pattern of failures/successes for each binary variable we use in the estimator to see that my assumption of a random Bernoulli is a good one.


It would be useful to have that data on the RT node detail page.

Agreed, but note the following: If the DDRA is close to 0 or 1, then we need to show more values than if the DDRA is close to 0.5. Otherwise, we won't have a good idea about what is happening with thvariable.


Why not just have a large fixed number? You'll have to have a limit
anyway.

That's fine too. And here's an even better idea: to make it easier to read if DDRA is near 0 or 1, we should display the sequence like this: "0(124) 1 0(56) 1" to indicate a sequence of 124 0's followed by a 1 followed by 56 0's followed by a 1.


That would also reduce the memory requirements. We wouldn't have to memorize the hundreds of previous values necessary for a variable with a low or high DDRA. We would limit the total sequence to the last, say, 30 elements of the string (the string I showed has 4 elements in it). Then we only have to memorize the last 30 string elements, where each element consists of a value and a count.

(I suppose for a binary variable you don't have to store the value every time [you know the values alternate between 0 and 1], but you might as well, since otherwise the coding could get tricky, and storing each value allows us to use it for discrete variables that take more than 2 values [if we ever encounter such a thing].)


We should shoot for DDRA*(1-DDRA)*nValuesToShow>=5, so let

nValuesToShow=MIN(5/(DDRA*(1-DDRA)),MAXIMUM_YOU_CAN_STAND_TO_SHOW_ON_DETAIL_PAGE)

-Martin

-Martin



_______________________________________________ Devl mailing list [EMAIL PROTECTED] http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to