public final class AveragingPreferenceInferrer extends Object implements PreferenceInferrer
Implementations of this interface compute an inferred preference for a user and an item that the user has not expressed any preference for. This might be an average of other preferences scores from that user, for example. This technique is sometimes called "default voting".
Constructor and Description |
---|
AveragingPreferenceInferrer(DataModel dataModel) |
Modifier and Type | Method and Description |
---|---|
float |
inferPreference(long userID,
long itemID)
Infers the given user's preference value for an item.
|
void |
refresh(Collection<Refreshable> alreadyRefreshed)
Triggers "refresh" -- whatever that means -- of the implementation.
|
String |
toString() |
public AveragingPreferenceInferrer(DataModel dataModel) throws TasteException
TasteException
public float inferPreference(long userID, long itemID) throws TasteException
PreferenceInferrer
Infers the given user's preference value for an item.
inferPreference
in interface PreferenceInferrer
userID
- ID of user to infer preference foritemID
- item ID to infer preference forTasteException
- if an error occurs while inferringpublic void refresh(Collection<Refreshable> alreadyRefreshed)
Refreshable
Triggers "refresh" -- whatever that means -- of the implementation. The general contract is that any
Refreshable
should always leave itself in a consistent, operational state, and that the refresh
atomically updates internal state from old to new.
refresh
in interface Refreshable
alreadyRefreshed
- Refreshable
s that are known to have already been
refreshed as a result of an initial call to a {#refresh(Collection)} method on some
object. This ensure that objects in a refresh dependency graph aren't refreshed twice
needlessly.Copyright © 2008–2017 The Apache Software Foundation. All rights reserved.