What is Personalizer?
Azure Personalizer is a cloud-based API service that allows your application to choose the best experience to show to your users, learning from their collective real-time behavior.
- Provide information about your users and content and receive the top action to show your users.
- No need to clean and label data before using Personalizer.
- Provide feedback to Personalizer when it is convenient to you.
- View real-time analytics.
See a demonstration of how Personalizer works
How does Personalizer work?
Personalizer uses machine learning models to discover what action to rank highest in a context. Your client application provides a list of possible actions, with information about them; and information about the context, which may include information about the user, device, etc. Personalizer determines the action to take. Once your client application uses the chosen action, it provides feedback to Personalizer in the form of a reward score. After the feedback is received, Personalizer automatically updates its own model used for future ranks. Over time, Personalizer will train one model that can suggest the best action to choose in each context based on their features.
How do I use the Personalizer?
- Choose an experience in your app to personalize.
- Create and configure an instance of the Personalization Service in the Azure portal. Each instance is a Personalizer Loop.
- Use the Rank API to call Personalizer with information (features) about your users, and the content (actions). You don't need to provide clean, labeled data before using Personalizer. APIs can be called directly or using SDKs available for different programming languages.
- In the client application, show the user the action selected by Personalizer.
- Use the Reward API to provide feedback to Personalizer indicating if the user selected Personalizer's action. This is a reward score.
- View analytics in the Azure portal to evaluate how the system is working and how your data is helping personalization.
Where can I use Personalizer?
For example, your client application can add Personalizer to:
- Personalize what article is highlighted on a news website.
- Optimize ad placement on a website.
- Display a personalized "recommended item" on a shopping website.
- Suggest user interface elements such as filters to apply to a specific photo.
- Choose a chat bot's response to clarify user intent or suggest an action.
- Prioritize suggestions of what a user should do as the next step in a business process.
Personalizer is not a service to persist and manage user profile information, or to log individual users' preferences or history. Personalizer learns from each interaction's features in the action of a context in a single model that can obtain maximum rewards when similar features occur.
Personalization for developers
Personalizer Service has two APIs:
- Rank: Use the Rank API to determine which action to show, in the current context. Actions are sent as an array of JSON objects, with an ID and information (features) about each; context is sent as another JSON object. The API returns the actionId that your application should render to the user.
- Reward: After your user interacts with your application, you measure how well the personalization worked as a number between 0 and 1 and send it as a reward score.