A guide to sizing your Personalized Recommendation consumption
Using Personalized Recommendation, as we previously demonstrated, is something that can be seamless as soon as you understand the service’s different capabilities and the end-to-end process – uploading data, training, serving… But one question remains: how to properly size and forecast your consumption of the service?
Personalized Recommendation process out-of-the-box
Let’s first go over how the end-to-end process works when you set-up your own recommendation system, using Personalized Recommendation.
The process is broken down into three main steps:
- Provide the data inputs to train the model so that it can deliver recommendations afterwards. There are three main types of data: Clickstream data (which refers to the interaction history of your end users), Item catalogue (the list of items and their properties and metadata) and User profiles (a list of who your users are and their user metadata, to map them to different interactions and items).
- Once the data is provided, the model is then trained. This step can be triggered directly through the corresponding API endpoint. Once trained, you can evaluate the effectiveness of the model with some of the provided metrics, and tweak the data inputs if necessary.
- Now the model is trained, it’s being made available (or “served”) and your application can then request some recommendations via our various inference modes; namely next-item, similar-item, affinity, and smart search.
How our model and recommendations pricing works?
Personalized Recommendation’s pricing model is based on two metrics, charged monthly: models and records in blocks of 1,000.
Models are charged by served hour. This depends on the availability required for each model. For example, a single model with monthly fulltime availability will be 24hours * 30/31 days * Unit Price per hour.
Records are charged in blocks of 1000. Each record refers to a time a recommendation is served. For example, if a carousel of “Recommended products for you” on an e-commerce shop landing page is visited 2 million times per month, that is counted as 2 million records – or 2000 blocks in our case.
Now that you understand our pricing model, you may be wondering:
- How many records will my service generate?
- How many models do I need?
Two factors to forecast the number of recommendations you will need
Sizing or forecasting your consumption can be a tricky exercise. In fact, it’s hard to get the exact number of recommendations you would need. However, there are some factors to have in mind, which can allow us to estimate the size of consumption required.
First factor: Your audience and the volume it currently represents, as well as its representation in the next months.
Have a look at your analytics dashboards, and try to answer to simple and fact-based questions like:
- How many unique visitors do I get on daily/monthly basis?
- How many page views do they generate?
- How many subscribers do I have? Am I expecting some growth?
It’s important to understand the numbers behind your application. As you can imagine, hundreds of users may not necessarily generate millions of recommendations, and vice-versa.
More than that, it’s highly recommended to go beyond the generic figures and understand who your audience is. That can be easily retrievable through analytics platforms as well:
- Where are they based, and what is their preferred language?
- Which platform do they use?
- How much time do they spend on your platform?
- What is the typical user journey? (e.g. what’s the typical sequence of viewed pages)
Therefore, in whatever business area you want to implement recommendations in, you must know the number of users that might use them and their usual behaviors.
Do also keep in mind how your audience will evolve in the future. Planned releases, new features, and marketing plans for the next few months are some examples of things to consider. The consumption of Personalized Recommendation may be relative to the growth of your audience, and it is important to factor in any future potential growth.
Second factor: What are the types of recommendations you’ll provide, and where you’ll implement them.
How Personalized Recommendation is implemented in your application can also affect the consumption of our service. Portions of your application that generate more page views may result in higher consumption if Personalized Recommendation is implemented there.
For example, a city’s library catalog has a carousel of recommended books for the user located on the front-page that is powered by Personalized Recommendation. Depending on your implementation, a user visiting this page might trigger a recommendation to be served each time they view the page. Which means way more recommendations than if there would be buried into a subpage or any page that isn’t visited by most of your visitors.
How many models will you need?
Depending on the situation, you may need several models. One way to tell is if the data or item catalogues are different.
For example, if you wish to utilize Personalized Recommendation to recommend items for internal procurement and also recommend items to your customers, you will need two models – one for each scenario, as the item catalog for each both situations are different.
Recall that our pricing model also considers the number of hours your models are deployed for. Hence a model that is available throughout the day will incur more costs, and you may want to consider switching off your models when they are not in use.
Personalized Recommendation enables you to implement recommendation systems into your application with ease. To forecast your usage for Personalized Recommendation, take into consideration the following:
- Our pricing model is based on the number of hours your model is deployed and the number of records (or recommendations) generated through consumption
- To estimate the number of recommendations you will need consider:
- Your current audience and what it will look like in the upcoming months
- Where and how your service will implement Personalized Recommendation
- Depending on the situation you may need more than one model
- In general, you will need a different model for a different type of dataset or scenario
- Charges apply for deployed model hours, you may want to consider switching off models when they are not in use for extended periods of time
Get started with Personalized Recommendation today
- SAP Discovery Center
- SAP Help page
- Telefónica customer reference
- Product roadmap
- SAP Community Call webinar
- Blog posts
Learn more about our service
Thanks to Qi Xiang Cho for his high-value contribution to this blog post.