ietf-asrg
[Top] [All Lists]

Re: [Asrg] differential confidence

2008-12-04 15:41:55
Dave CROCKER wrote:

Chris Lewis wrote:
Dave CROCKER wrote:
Chris Lewis wrote:
  Each of the numbers is
scaled differently in a computation something like this:

if (((complaints * cf + contentblocked * bf + trap * tf) / non-blocked)
1) {
...
But you don't cite any of the "good" attributes, nevermind scaling factors, 
per 
your reference to good/bad.
Not quite - the counts in the numerator are "bads" and in the
denominator the "goods".  Each of the counts have scaling factors
(normalized so that "passed through"'s scaling factor is 1).

damn. apologies.  I missed the right-most part of the equation.

now that I'm seeing it, where is the factor for it (non-blocked * nbf)?

In that equation, all of the other factors are scaled so that the scale
factor for non-blocked is 0.

Switching over to Perl code ;-)

("prod" is passthru, "trap" and "other" are two different trap lumps,
"content" is content filter hits)

    $factor_complaint = 25 if !defined($factor_complaint);
    $factor_content = 2 if !defined($factor_content);
    $factor_trap = .01 if !defined($factor_trap);
    $factor_other = .005 if !defined($factor_other);

    my $traffic = $prod + $content + $trap + $other;

        if (!$traffic || !$prod) {
            $info->{score} = 1;
        } else {
            $info->{score} =
                $factor_complaint * $compcount / $prod +
                $factor_content * $content / $prod +
                $factor_trap * $trap / $prod +
                $factor_other * $other / $prod;
        }

if scale > .75, the IP gets blocked.

Which sucks.  Immediately blocks some google mail servers.  It's
probably not wrong, but...

I could replace $prod with $traffic in all the denominators, but you
can't get content or complaint hits on the traps.  So that just dilutes
the score for very high trap hits.

Remember, I'm not going for pedantic purity.  I'm going for a function
that has lots of head room and catches the worst offenders.

I'm going to recode to my original function and see how that works.
_______________________________________________
Asrg mailing list
Asrg(_at_)irtf(_dot_)org
https://www.irtf.org/mailman/listinfo/asrg