What is Personalized Recommendation?
Personalized Recommendation is a generic recommender service, part of the SAP AI Business Services portfolio on SAP Business Technology Platform (SAP BTP) that uses machine learning techniques to give your users highly personalized recommendations based on their browsing history and/or item description.
What are the benefits of Personalized Recommendation?
Personalized Recommendation can help:
- Enhance user engagement and engagement
- Drive user conversion and meet business goals
- Retain business control, curate relevancy, and meet KPIs
It enables customers to generate value from user interactions.
How does Personalized Recommendation differentiate itself from other recommendation services?
Personalized Recommendation is a generic reusable recommendation service:
- Domain-agnostic – Personalized Recommendation can be applied to a wide variety of use cases.
- Customizable – Features such as Attribute Boosting & Filtering, and Machine Learning Explainability provide our customers to tailor recommendations to their business strategies.
- Easy integration – Interactions with our service is done through standardized APIs, with model lifecycle management handled by us.
Do you have an example of a customer using the service?
Personalized Recommendation was used to provide learning recommendations for the multinational telecommunications company Telefonica, allowing them to upskill and reskill employees.
What are the consumption options for Personalized Recommendation?
The service can be consumed in two different ways:
- Natively embedded in SAP solutions such as SAP SuccessFactors and SAP Commerce Cloud
- As a standalone service via the SAP Business Technology Platform
Can I customize the service?
The implementor will train their own models with their respective training data. This training data can vary in terms the fields used or number of fields.
Can I have access to this service on-premise?
As it is a cloud-based service, we don’t offer it on-premise.
Does the service scale up with demand?
Yes, the service scales up based on demand, minimizing impact on customers during higher usage periods.
Are you able to create multiple tenants if you want to have multiple models? (e.g. one for movies, one for music)?
Service and Compliance Questions
What are the system update SLAs?
The Service Level Agreements can be found here.
What are the current IT Security Standards?
The current certificates, Service Organizational Control reports, attestations, regulations and product and industry specific location can be found here.
Is the service GDPR compliant?
As Personalized Recommendation does not store any of the user data, our service is GDPR compliant.
Does Personalized Recommendation collect the clickstream and user data for us?
We do not collect any data used to train the model. The data collection is done by our customers or SAP teams we are collaborating with, such as SAP SuccessFactors.
What types of data is required to train the Personalized Recommendation model?
There are three main sources of data that should be provided for training the model:
- Item catalog
- User metadata
For optimal results, we recommend providing all three data sources.
What if I am unable to provide all the data for training?
The item catalog or clickstream data must be provided to get started with using our service. For better performance, we recommend providing both the clickstream and item catalog.
What is the format that the data must be in?
You can find more information about the data format here.
Does Personalized Recommendations store the data used for training the model?
No, we do not store any of the training data for the model.
How long is the training and inference data stored?
All training data will be encrypted before input to train the machine learning model and is deleted after training is completed.
Customers may choose to anonymize user identifiers in the training data and use the anonymized identifier when making inference requests.
The inference request payload is not encrypted.
How long does it take to train the model?
Training times vary depending on the complexity of the data. In most cases, a rough estimate is 30 minutes. The maximum amount of time allowed for training is 7 hours.
Is customer-specific training required or possible?
Customer-specific training is required. Each customer trains their own model using their own datasets.
How often do we have to retrain the model?
It is up to the implementer to decide how often the model should be retrained. While the model can handle cold-start situations, periodic retraining with new training data is recommended for optimal results.
How do we measure the model performance?
There are four metrics you may use to evaluate the effectiveness of model, they are:
- Hit Rate
- Mean Reciprocal Rank
- Average Normalized Discounted Cumulative Gain
More information on what these metrics mean can be found here.
What is the “Target Accuracy” of the model?
The model metrics depends on the quality of the data that was used to train the model. The customer can decide on their own Target Accuracy.
Is the accuracy or performance of the model evaluated periodically?
No. The model performance is evaluated whenever a training job is completed. When the training is completed, a data quality report and model performance is provided.
Are there any measures to prevent overlearning/overfitting of the data?
There are two scenarios to consider:
- Training overfit - We train and evaluate model performance on an unseen dataset, and save the best performing model. The training will be terminated when the performance decreases in X consecutive training epochs.
- Data leakage due to attributes in customer data - The customer or integrator should review the feature importance and revise the training data as necessary.
Inference and Serving Questions
How do we measure how good or successful the recommendations are?
Inferences served by the model come with a confidence score that shows how confident the model is in its inference. The ML Explainability feature offers insights and a breakdown of the contributing factors for each recommendation.
We recommend our customers and partners to create their own end-user engagement metrics to track or realize the value for this service.
Does attribute boosting/filtering require the model to be retrained?
No. Attribute boosting or filtering does not require retraining of the model.
Is the relation items and users considered?
Yes. If the user and item attributes are provided in the training dataset, the relation will be considered based on the clickstream which links items to the user via their interactions.
Is user behavior change, new users and new catalog items accounted for?
New users and catalog items are handled by our cold start feature, allowing new users and items to be added to the model without retraining the model. Regular retraining of the model with updated datasets is recommended for optimal performance.
Can past items be excluded in recommendations?
Yes. You may use the “excluded_items” flag to exclude items from the item catalogue form being recommended.
Developer & Technical Questions
Can I try the service as a developer?
Find out more about it here.
Which inbound or outbound channels are supported?
Data is transferred by a RESTful API (HTTPS).
Which Single Sign On (SSO) technologies are supported?
The communication with the server is secured via the OAuth 2.0 protocol.
Can multiple environments be provided for test and production?
SAP Business Technology Platform allows the creation of multiple tenants that can be integrated into different system landscapes.