Customizing model training

By default, the Personalized, Next interaction, Section page, and Attribute recommendation models are trained on standard events, as described in requirements for recommendations. On the Training data tab, you can additionally select up to 5 custom events which contain an item identifier (by default, the SKU value) to be used for training and retraining these models alongside the standard events.

For the frequency of model retraining, see model status.

Enabling custom events for training


  1. Go to Settings > AI Engine Configuration > Training data.
  2. Switch the Use custom events toggle on.
    Result: The events table appears, where you can add up to 5 custom events.
    Training data tab in AI engine configuration with the Use custom events toggle enabled and an empty events table
    Enabling custom events on the Training data tab

Adding a custom event


  1. On the Training data tab, click Add event.
    Result: A pop-up appears.
    Add event pop-up with the Event dropdown list, the Input, Target, Split, and Multi-item role checkboxes, and the Use custom attribute toggle
    Adding an event on the Training data tab
  2. From the Event dropdown list, select the event you want to use for training.
    The list only includes custom events that you defined in Synerise - it doesn't include default events.
    If the event you want to use isn't listed yet, you must first add it, either as a custom event definition in the web application, or by sending it through the Custom event API method, which creates the event definition automatically.
  3. Select one or more roles for the event:

    • Input - The event is used as an input to the model, both during training and serving. By default, page.visit and transaction.charge are used as input.
    • Target - The model learns to predict interactions with the items included in this event.
    • Split - The event is used to split sessions during training: everything that happens before the event becomes the input, and everything after it becomes the target (for the events you already selected as Input or Target). In most cases, a random split within the session gives the best results, so use this role only if you have a specific reason to define a custom split point.
    • Multi-item - Use this role for events which carry information about more than one item, for example, an event that reports the status of a cart. This role works best combined with the Target role.
  4. If the item identifier in the event is stored in a parameter other than SKU, switch the Use custom attribute toggle on and select the parameter which contains the item identifier.
  5. Confirm by clicking Add event.
    Result: The event appears on the list on the Training data tab.
  6. Click Save.

Excluding periods from training


Optionally, you can exclude one or more time periods from training the Personalized, Next interaction, Section page, and Attribute recommendation models. Events collected during an excluded period are not used for training or retraining. This is not required for the models to work, but it can be useful if the data collected during a specific period does not represent normal customer behavior, for example:

  • You duplicated events during a specific period (for example, to avoid deduplicating data afterwards) and you want to exclude that period instead of cleaning up the duplicated events.
  • You ran aggressive promotions during a specific period, which led customers to buy items they would not normally buy outside of the promotion, and you don't want the model to treat this behavior as standard.

Enabling period exclusion

  1. Go to Settings > AI Engine Configuration > Training data.
  2. Switch the Enable period exclusion toggle on.
    Result: The periods table appears, where you can add the periods you want to exclude.
    Training data tab in AI engine configuration with the Enable period exclusion toggle enabled and an empty periods table
    Enabling period exclusion on the Training data tab

Adding an excluded period

  1. On the Training data tab, click Add period.
    Result: A row for the period appears in the table.
    Periods table on the Training data tab with a new row containing the Description field and the Start date - End date period selector
    A new period added to the periods table
  2. Optionally, in the Description field, add a description of the period, for example, the reason for the exclusion.
  3. In the Period field, select the Start date and End date of the period you want to exclude.
    Click Now to select the entire current day; you cannot select individual hours.
    You don't have to add periods in chronological order.
  4. Confirm by clicking Apply.
    Result: The period appears on the list on the Training data tab. To remove a period from the list, click the trash icon next to it.
  5. Click Save.

Canonical URL: https://hub.synerise.com/docs/settings/configuration/ai-engine-configuration/custom-model-training