Hey Sean, are you talking about using
GenericRecommenderIRStatsEvaluator/CHOOSE_THRESHOLD? I am already
using that. I have however bumped up the training size, maybe this
will help.

- Matt

On Sat, Jul 14, 2012 at 3:13 AM, Sean Owen <sro...@gmail.com> wrote:
> It still means the same thing. 220K lines may still be too sparse to
> get results. Also try removing your threshold and let it pick.
>
> On Sat, Jul 14, 2012 at 3:24 AM, Matt Mitchell <goodie...@gmail.com> wrote:
>> Hmm, still happening. I have a 220k line file with user, item and pref
>> value. I am still getting the NaN error when evaluating. I'm not sure
>> what to do. It also takes a long time for this error to popup, around
>> 1 hour. I hate to throw code out like this, but maybe it'll be help
>> someone... help me. Is it related to the evaluator settings?
>>
>> - Matt
>>
>>   (def prefs-file "data.txt")
>>   (org.apache.mahout.common.RandomUtils/useTestSeed)
>>   (let [model (FileDataModel. (File. prefs-file))
>>         evaluator (GenericRecommenderIRStatsEvaluator.)
>>         rbuilder (reify RecommenderBuilder
>>                    (buildRecommender [this model]
>>                      (let [sim (LogLikelihoodSimilarity. model)]
>>                        (GenericBooleanPrefItemBasedRecommender. model sim))))
>>         mbuilder (reify DataModelBuilder
>>                    (buildDataModel [this training-data]
>>                      (GenericBooleanPrefDataModel.
>>                       (GenericBooleanPrefDataModel/toDataMap 
>> training-data))))]
>>     (prn (.evaluate evaluator rbuilder mbuilder model nil 10
>>                     GenericRecommenderIRStatsEvaluator/CHOOSE_THRESHOLD
>>                     0.01)))
>>
>>
>> On Sat, Jul 7, 2012 at 11:20 AM, Matt Mitchell <goodie...@gmail.com> wrote:
>>> Thanks Sean, you're absolutely right. Things are working nicely now.
>>>
>>> - Matt
>>>
>>> On Sat, Jul 7, 2012 at 3:48 AM, Sean Owen <sro...@gmail.com> wrote:
>>>> What it really means is that there is not enough data to make a
>>>> meaningful test here.
>>>>
>>>> On Sat, Jul 7, 2012 at 1:28 AM, Matt Mitchell <goodie...@gmail.com> wrote:
>>>>> Hi,
>>>>>
>>>>> I have a recommender, with a boolean prefs model. I am following the
>>>>> instructions in the MIA book, but only get this exception:
>>>>>
>>>>> Illegal precision: NaN
>>>>>   [Thrown class java.lang.IllegalArgumentException]
>>>>>
>>>>> Restarts:
>>>>>  0: [QUIT] Quit to the SLIME top level
>>>>>
>>>>> Backtrace:
>>>>>   0: 
>>>>> com.google.common.base.Preconditions.checkArgument(Preconditions.java:88)
>>>>>   1: 
>>>>> org.apache.mahout.cf.taste.impl.eval.IRStatisticsImpl.<init>(IRStatisticsImpl.java:35)
>>>>>   2: 
>>>>> org.apache.mahout.cf.taste.impl.eval.GenericRecommenderIRStatsEvaluator.evaluate(GenericRecommenderIRStatsEvaluator.java:212)
>>>>>
>>>>> The code is written in Clojure, I hope that's OK:
>>>>>
>>>>> (let [model (GenericBooleanPrefDataModel.
>>>>>              (GenericBooleanPrefDataModel/toDataMap
>>>>>               (FileDataModel. (File. "resources/test.data"))))
>>>>>       evaluator (GenericRecommenderIRStatsEvaluator.)
>>>>>       rbuilder (reify RecommenderBuilder
>>>>>                  (buildRecommender [this model]
>>>>>                    (let [sim (LogLikelihoodSimilarity. model)
>>>>>                          nhood (NearestNUserNeighborhood. 10 sim model)]
>>>>>                      (GenericBooleanPrefUserBasedRecommender. model
>>>>> nhood sim))))
>>>>>       mbuilder (reify DataModelBuilder
>>>>>                  (buildDataModel [this training-data]
>>>>>                    (GenericBooleanPrefDataModel.
>>>>>                     (GenericBooleanPrefDataModel/toDataMap 
>>>>> training-data))))]
>>>>>   (.evaluate evaluator rbuilder mbuilder model nil 10
>>>>>              GenericRecommenderIRStatsEvaluator/CHOOSE_THRESHOLD
>>>>>              1.0))
>>>>>
>>>>> My test data file is very simple (for now):
>>>>>
>>>>> 1,1
>>>>> 1,2
>>>>> 1,3
>>>>>
>>>>> 2,1
>>>>> 2,10
>>>>> 2,100
>>>>> 2,20
>>>>>
>>>>> 3,9
>>>>> 3,10
>>>>> 3,20
>>>>> 3,1
>>>>>
>>>>> 4,10
>>>>> 4,15
>>>>> 4,1
>>>>>
>>>>> Any idea what I might be doing wrong?
>>>>>
>>>>> Thanks in advance,
>>>>>
>>>>> - Matt

Reply via email to