Getting Started with Recommendations and Boosting
Signals provide the data that Fusion uses to generate collaborative recommendations. The simplest way to get started is to enable signals and recommendations in one of your primary collections.
Once you do this, Fusion automatically creates a set of default objects and begins creating and updating collections of recommendations on a regular schedule.
Content-based recommendations can be used without enabling signals or recommendations, but they require manual configuration. |
Enabling signals
Signals are enabled by default for new collections when you have a Fusion license installed. You can enable or disable signals for any collection at Collections > Collections Manager.
Enabling signals automatically creates a set of aggregation jobs which create the input data for recommendations. See Signals and Aggregations for complete details.
Enabling recommendations
Recommendations are not enabled by default; you can do this at Collections > Collections Manager.
When you enable recommendations, this automatically enables the items-for-user and items-for-item recommendation methods. To use additional recommendation methods, you must configure them separately.
Default objects for recommendations
When recommendations are enabled, Fusion automatically creates a default set of collections, jobs, schedules, and query pipelines that provide basic functionality for recommendations.
You can tune the default jobs and pipelines as needed to refine the results, or create new ones, then configure your search application to request recommendations from the query pipelines.
See also the default objects created when you enable signals. These must already exist when you enable recommendations.
Collections
-
COLLECTION_NAME_items_for_item_recommendations
Collection to hold generated item-item similarities (by default 10 per item). No
user_id_s
data is present. A Recommend Items for Item query pipeline stage can use the similarities to return item recommendations. For example, a query in whichdoc_id_s = docA
would return an ordered list of otherdoc_id_s
values for documents that are similar to documentdocA
, along with the similarities. For example:[("docB", 0.83), ("docC", 0.55), ("docD", 0.43), …, ("docK", 0.22)]
. -
COLLECTION_NAME_items_for_user_recommendations
Collection to hold recommended items for a user. By default the job creates 10 recommendations per user.
-
COLLECTION_NAME_recs_aggr
Collection to hold the output of recommender aggregation jobs.
-
COLLECTION_NAME_bpr_user_recs
andCOLLECTION_NAME_bpr_item_recs
Collections for Bayesian Personalized Ranking (BPR) recs, user-item, and item-item (respectively).
-
COLLECTION_NAME_content_recs
Collection for content-based recommender recs.
-
COLLECTION_NAME_recommender_models
Collection that stores ALS models.
-
COLLECTION_NAME_queries_query_recs
Collection for output of the Query-Query Similarity Job.
Jobs and schedules
Enabling recommendations creates the new jobs below, each using a different method to produce items-for-item and items-for-user recommendations. These jobs consume the output of the signals aggregation jobs.
ALS Recommender or BPR Recommender | Content-Based Recommender | Query-to-Query Session-Based Similarity | Default job name | |
---|---|---|---|---|
|
|
|
|
Default input collection |
|
|
|
|
Default output collections |
|
|
|
|
Recommendation type |
None of the jobs are scheduled by default; you must manually run or schedule them.
NOTE:
-
The
COLLECTION_NAME_user_item_prefs_agg
job provides input data for the ALS and BPR jobs and must run before them. See SQL Aggregations for details. -
The
COLLECTION_NAME_user_query_history_agg
job generates aggregations for user-item preferences from signal information.
Fusion does not automatically create a Query-to-Query Session-Based Similarity job, which is needed for certain recommender types.
Query pipelines
-
COLLECTION_NAME_items_for_user_recommendations
Query pipeline to generate recommendations of items for a user.
-
COLLECTION_NAME_items_for_item_recommendations
Query pipeline to generate recommendations of items similar to an item.
-
COLLECTION_NAME_queries_query_recs
Query pipeline to generate queries-for-query recommendations using a model created by the Query-to-Query Session-Based Similarity job.