NReco.CF.Taste.Impl.Model NamespaceNReco.Recommender Class Library
 
Classes

  ClassDescription
Public classAbstractDataModel
Contains some features common to all implementations.
Public classBooleanItemPreferenceArray
Like BooleanUserPreferenceArray but stores preferences for one item (all item IDs the same) rather than one user.
Public classBooleanPreference
Encapsulates a simple bool "preference" for an item whose value does not matter (is fixed at 1.0). This is appropriate in situations where users conceptually have only a general "yes" preference for items, rather than a spectrum of preference values.
Public classBooleanUserPreferenceArray
Like GenericUserPreferenceArray but stores, conceptually, BooleanPreference objects which have no associated preference value.
Public classGenericBooleanPrefDataModel
A simple IDataModel which uses given user data as its data source. This implementation is mostly useful for small experiments and is not recommended for contexts where performance is important.
Public classGenericDataModel
A simple IDataModel which uses a given list of users as its data source. This implementation is mostly useful for small experiments and is not recommended for contexts where performance is important.
Public classGenericItemPreferenceArray
Like GenericUserPreferenceArray but stores preferences for one item (all item IDs the same) rather than one user.
Public classGenericPreference
A simple {@link Preference} encapsulating an item and preference value.
Public classGenericUserPreferenceArray
Like GenericItemPreferenceArray but stores preferences for one user (all user IDs the same) rather than one item.

This implementation maintains two parallel arrays, of item IDs and values. The idea is to save allocating IPreference objects themselves. This saves the overhead of IPreference objects but also duplicating the user ID value.

Public classPlusAnonymousConcurrentUserDataModel

This is a special thread-safe version of PlusAnonymousUserDataModel which allow multiple concurrent anonymous requests.

To use it, you have to estimate the number of concurrent anonymous users of your application. The pool of users with the given size will be created. For each anonymous recommendations request, a user has to be taken from the pool and returned back immediately afterwards.

If no more users are available in the pool, anonymous recommendations cannot be produced.

Public classPlusAnonymousUserDataModel

This IDataModel decorator class is useful in a situation where you wish to recommend to a user that doesn't really exist yet in your actual IDataModel. For example maybe you wish to recommend DVDs to a user who has browsed a few titles on your DVD store site, but, the user is not yet registered.

This enables you to temporarily add a temporary user to an existing IDataModel in a way that recommenders can then produce recommendations anyway.

Public classPlusAnonymousUserlongPrimitiveIterator