This is a general design problem with what Mahout is trying to do. All
of the algorithms in use do some things and not other things, but it
is really worthwhile to park them under a common API. The result is
that your code may call something doesn't work, or really mean
anything, in algorithm X. Our general approach is to throw
UnsupportedOperationException.

On Fri, May 20, 2011 at 7:50 PM, Hector Yee <[email protected]> wrote:
> Ok, so the conclusion is let's add classifyScalarNoLink and make it optional
> as well by throwing an exception.
>
> On Sat, May 21, 2011 at 10:33 AM, Daniel McEnnis <[email protected]> wrote:
>
>> All of this assumes classifiers supply a score.  Nearest Neighbor
>> classification can not provide a meaningful score, only the result.
>> So there is at least one algorithm where whole sets of the classify
>> interface makes absolutely no sense.
>>
>> Daniel.
>>
>> On Fri, May 20, 2011 at 10:09 PM, Ted Dunning <[email protected]>
>> wrote:
>> > On Fri, May 20, 2011 at 6:49 PM, Hector Yee <[email protected]>
>> wrote:
>> >
>> >> I was concerned about classifyScalar because it enforces the contract
>> that
>> >> the scores be in the 0..1 range. There doesn't seem to be a function
>> that
>> >> returns the raw score for the scalar case.
>> >>
>> >
>> > Yes.  There should be.  The only reason that there isn't is that there
>> had
>> > not been any users of this yet.
>> >
>> >
>> >> ...
>> >> I was proposing that we have all classifiers support classifyNoLink as
>> >> well,
>> >> especially for the case of non-probabilistic based ones where reducing
>> >> scores to probabilities would be bad.
>> >>
>> >
>> > Why?
>> >
>> > This is the part that I don't understand.  Why force this implementation?
>> >
>>
>
>
>
> --
> Yee Yang Li Hector
> http://hectorgon.blogspot.com/ (tech + travel)
> http://hectorgon.com (book reviews)
>



-- 
Lance Norskog
[email protected]

Reply via email to