Do you think this could be the cause?
private void processOtherUser(Object id,
                                Collection<Item> relevantItems,
                                Collection<User> trainingUsers,
                                User user2) {
    if (id.equals(user2.getID())) {
      List<Preference> trainingPrefs = new ArrayList<Preference>();
      Preference[] prefs2 = user2.getPreferencesAsArray();
      for (Preference pref : prefs2) {
        if (!relevantItems.contains(pref.getItem())) {
          trainingPrefs.add(pref);
        }
      }
      if (!trainingPrefs.isEmpty()) {
        User trainingUser = new GenericUser<String>(id.toString(), 
trainingPrefs);
        trainingUsers.add(trainingUser);
      }
    } else {
      trainingUsers.add(user2);
    }
  }

Notice this part:
for (Preference pref : prefs2) {
        if (!relevantItems.contains(pref.getItem())) {
          trainingPrefs.add(pref);
        }}
It adds a preference only if it's NOT in the relevant items

-----Messaggio originale-----
Da: Sean Owen [mailto:[email protected]] 
Inviato: giovedì 27 agosto 2009 10.24
A: [email protected]
Oggetto: Re: R: R: Problems with evaluator.

Good, and again have you evaluated the two other possible causes I
mentioned? The evaluator is basically saying it cannot evaluate given the
amount of data or settings available. Beyond this I think you need a quick
debug session to see what is happening. It should be clear because you will
find every evaluation attempt is aborting for some clear reason. I don't
have any more smart guesses from here. It could possibly be a problem with
the port? But I kind of doubt that.

On Aug 27, 2009 9:14 AM, "Claudia Grieco" <[email protected]> wrote:

I tried letting the library pick the threshold. It picked 1 and the final
results were the same. I even tried setting the threshold to negative
infinity, with no success.

-----Messaggio originale-----
Da: Sean Owen [mailto:[email protected]]
Inviato: mercoledì 26 agosto 2009 16.57
A: [email protected]
Oggetto: Re: R: Problems with evaluator.

It makes sense that the recommender is not called. That would be
caused by some of the reasons I listed below. The wrong relevance
threshold would indeed cause the recommender to not be called. If
there are no relevant items for a user, it can't really proceed at
all. Have you tried setting the threshold to NaN to let the library
pick? or the other items I mentioned. You really might need a debugger
to look inside and see what the real reason is.

On Wed, Aug 26, 2009 at 3:48 PM, Claudia Grieco<[email protected]>
wrote:
> I lowered the precision @ number to 2, without results. I don't think it's
a problem of relevance threshold since it never calls my recommender, so it
can't compute any relevant or not relevant item. I'm using Boolean
preference data (an item was bought or not bought by a customer)

Reply via email to