For every row in the scenario configuration one can define a category filter. If the filter is activated, only items from the specified category will be recommended. The actual category used to filter on is specified in the parameters of each recommendation request.
There are two ways to specify a category in a recommendation request:
- No context items, but the category explicitly provided in the request. This recommendation call is usually placed on the category overview page for getting most popular products of the selected, actual category (in the figure it is called "reference category").
- Context items are provided and the category of all context items are used for the request. This approach is recommended only if it is technically not possible (or too complex) to provide the category information explicitly.
Depending on configuration of the filter, the recommendation engine can take different approaches to to find out the actual set of categories the products will be recommended from.
To following example explains the different posibilities in more detail.
Depicted the configuration dialog - available in the GUI on the right side of the model configuration tab in a scenario (see 6. Scenario Configuration, Fallbacks) - and category structure which is basically the site navigation:
The following tables lists the possible configurations and categories from where recommended items will be fetched from.
In all examples we assume that the category received in the request is "/furniture/desks&tables/tables".
|category Path Filter configuration||Target categories to fetch recommended products from|
|Always recommend products from the whole shop. Do not use category path for filtering.||All categories ("plants", "furniture" and below).|
|Recommend only products from the same category ("also include..." is not checked).||Category "tables" and all the sub-categories below ("garden tables" and "living room tables").|
|Recommend only products from the same category. "Also include parent category" is set to 1.||Category "desks&tables" and below including "computer desks", "tables" and all their sub-categories.|
|Recommend only products from the same category. "Also include parent category" is set to 2.||Category "furniture" and below.|
|Recommend products from the same main category and its subcategories from level 1.||Category "furniture" and below.|
|Recommend products from the same main category and its subcategories from level 2.||Category "desks&tables" and below.|
|Recommend products from the same main category and its subcategories from level 3.||Category "tables" and below.|
It is possible to provide multiple reference categories (both in the request or over the context item or items). In this case the superset of the recommendations will be returned. The result is sorted based of global weight of the recommendations. Depending on the popularity of the categories the more popular category will most probably push the less popular categories out of the results.
If the recommended item is located in more than one category, it will be recommended, if at least one category is requested in this recommendation call.
Multiple Categorypath dimensions for popularity models
The categorypath parameter is very powerful in its usage. The default approach is to represent content in the navigation-based structure of a website which is used by default. If there is a need to represent available items of a website in different dimensions (taxonomies) it is possible to do this out-of-the box simply by enriching the categorypath information of an item, without changing any setting in the recommender engine.
To make it a bit clearer let's take a look at the following example: In the above mentioned shop both furniture and plants are sold and they are structured based on site navigation. Typically customers would look for computer desks and get a list of recommendations of all computer desks in the shop. If desired, the recommendation engine could also use another dimension for filtering recommendations, for example a "brand" dimension. In this case the user would get recommendations for all items from the same "brand".
In case of the popularity based recommendations it will be possible to get most popular products based on the main navigate tree (most popular desk) or based on the brand (most popular IKEA item)
Some examples of common representation dimensions of items beyond the site navigation:
For more information to multiple category dimensions read the best practice article in the developer guide: Multiple Category Dimensions
You should avoid using category filtering with also-click/also-buy and stereotype models. These models usually contain only similar items. Additional filtering will probably remove the best results from the list of possible recommendations. The only exception to this rule could be copyright or legal issues like removing adult content. For the last use-case sub-models and item types often provide better results. See the following chapters for more information:
For providing the category filtering the recommendation engine must know the categories the products belongs to. See the following chapters for more information:
Visit our developer space for the nitty-gritty details on how to provide the category path in the recommendation request: