{"id":866571,"date":"2022-08-04T08:57:12","date_gmt":"2022-08-04T15:57:12","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?post_type=msr-blog-post&p=866571"},"modified":"2022-08-04T08:57:58","modified_gmt":"2022-08-04T15:57:58","slug":"customerlifetimevaluepredictivemodel","status":"publish","type":"msr-blog-post","link":"https:\/\/www.microsoft.com\/en-us\/research\/articles\/customerlifetimevaluepredictivemodel\/","title":{"rendered":"Customer Lifetime Value Predictive Model now uses Customer Profile Attributes"},"content":{"rendered":"\n
Authors: <\/strong> Kidus Asfaw, Sally Kellaway,<\/a> and Radha Sayyaparaju<\/p>\n\n\n\n When crafting your marketing and sales strategies, personalizing your marketing campaigns, journeys and content to the special traits of your customer segments is an important way to drive engagement and purchases. One method for segmenting your audiences is to determine the potential value of those customers to isolate your high and low predicted value customers and personalize campaigns to reward high value customers and drive up the value of lower value customers. Artificial intelligence (AI) can be used to predict the value of customers to create segments like these.<\/p>\n\n\n\n As with all AI, the more data an AI model has, the more accurate its predictions will be. The type of data that\u2019s provided to an AI model can influence the accuracy of those predictions \u2013 e.g., transaction data can help predict transaction value in the future, which can be made more accurate by adding customer data. The more customer data you provide to a model, the more accurate and targeted the segments of \u201chigh\u201d and \u201clow\u201d value customers will be. As a result, the personalization of marketing campaigns driven with those segments can be more targeted and \u2018speak\u2019 more directly to the individual traits of your customers \u2013 driving engagement and sales!<\/p>\n\n\n\n Dynamics 365 Customer Insights is introducing a new feature for the Customer Lifetime Value (CLV) out-of-box predictive model that allows you to optionally select customer profile attributes to include in the prediction. You can select from 18 commonly used attributes (in any combination) to include as an input to the model. These attributes will drive more personalized, relevant, and actionable model results for your business use cases. This blog post will share what customer profile attributes are, how they\u2019re used in the CLV model, and what\u2019s new in the overall experience of using the model.<\/p>\n\n\n\n The customer lifetime value model predicts the potential value (revenue) that individual active customers will bring to your business in a future period of time that you define. This model can help you achieve various goals:<\/p>\n\n\n\n The fields listed in a customer profile (or any CDM -defined entity) are called attributes<\/em> (read more about the CDM schema here: Common Data Model – Common Data Model | Microsoft Docs (opens in new tab)<\/span><\/a>). Customer Insights utilizes both standard entity definitions and its own defined entities (opens in new tab)<\/span><\/a>, including the CustomerProfile entity (opens in new tab)<\/span><\/a>. This entity includes dozens of attributes that define the qualities of that customer. An example customer attribute is a customer\u2019s birth date, first name, last name or gamertag.<\/p>\n\n\n\n These customer attributes can be used as extra sources of information for personalizing customer lifetime value predictions. Personalization of these predictions helps to \u201ccustomize\u201d to your use case without requiring the development of fully custom AI models.<\/p>\n\n\n\n The profile attributes that you select during configuration are added to the model and considered alongside factors added (and featurized) from the Required Data that you added. The model develops its predictions of lifetime value and will show all factors that influenced those predictions on the results page.<\/p>\n\n\n\n As illustrated in the figure below, the CLV model takes transaction activities data and featurizes it into a transactions table with one row per customer. Each row will have features such as average transaction value for the customer. Similarly, CLV uses other activities (in the figure below, retail product web reviews are used as an example) to augment the transactions table with additional features. We call the resulting table a featurized activities table. The new profile attributes feature allows the user to add customer attributes as an additional feature to the featurized activities table.<\/p>\n\n\n\n At the heart of training a CLV model is a random forest regression that uses the features generated above as predictors and the historical customer lifetime values (over a prediction window equaling the future prediction window requested by the user). Hyperparameters are selected using cross-validation. Random forest implementations scale well with data size and can handle the presence of outliers and\/or missing data. Adding profile attributes to this regression model allows the user to incorporate more of what they know about their customers into the model.<\/p>\n\n\n\n The high-level experience of configuring the CLV model does not change. For more information about configuring the CLV model see the product documentation online (opens in new tab)<\/span><\/a>. Adding Customer Profile attributes is an optional step that you can take after adding the required data (Customer transaction history). Additional (Optional) Data includes adding Activity and now Customer data.<\/p>\n\n\n\n Customer profile attributes will be used in the model when you set up a mapping between the unified customer profile table and one or more of the 18 possible attributes that the model allows. To do so, the user must click on the second \u201cAdd data\u201d button in the optional data entry step of model configuration. In the resulting right-hand pane, the user can map the fields in the unified customer profile to the available profile fields (e.g., Birth Date).<\/p>\n\n\n\n All customer profile attributes are considered optional. You can skip this feature entirely or choose to map as few as one attribute or all 18. The CLV model will consider all attributes for which a mapping is provided and decide whether they are influential in identifying your predicted high and low value customers.<\/p>\n\n\n\n You\u2019ll see the results of using customer profile attributes in the results screen (more information about the results experience is available in the product documentation (opens in new tab)<\/span><\/a>. The model will decide which of the customer profile attributes are influential in your CLV predictions, and will show them alongside other influential factors in the results experience. This is the easiest way to know if the mapped attributes were used in the model. The influential factors table shows the importance (for predictive ability) assigned by the model to each of the aggregated factors. Factors are aggregated because there are hundreds of similar factors, and it is simpler to understand and use these insights to inform other activities. For example, the model aggregates the importance of location-related fields under one explainability variable called \u2018Location\u2019.<\/p>\n\n\n\n Like all AI features that are developed at Microsoft, we apply rigorous Responsible AI (RAI) principles to ensure that those AI meet our standards for developing ethical solutions that you can trust. The Responsible AI standard that we operationalize is available online<\/a>, and includes further information about the principles (Fairness, Inclusiveness, Reliability & Safety, Transparency, Privacy & Security and Accountability), as well as information regarding how Microsoft reviews and tests AI to ensure they are meeting our standards. These principles are considered during the design of the AI and feature in the product, which is then reviewed by a committee to ensure that the standard is met, and the AI is considered fit to ship.<\/p>\n\n\n\n All the out-of-box predictive models in Customer Insights are subject to this process. Because you bring your own data to these models, it\u2019s important to understand these principles as bias in your data may influence the predictions to be biased as well.<\/p>\n\n\n\n For example, Contoso coffee is predicting where to host an event for the opening of a flagship, top of the line espresso machine. They want to target high value customers to invite to this event. If they include location as a Customer Profile Attribute in this prediction, they might find that their highest value customers are all grouped into affluent suburbs. If they include Occupation, they might find that highest value customers are grouped into particular occupations.<\/p>\n\n\n\n There are a few layers of bias in this scenario which are augmented by the model if Contoso doesn\u2019t add in as many customer attributes as possible:<\/p>\n\n\n\n Avoiding Bias in your source data<\/strong> can be done by using tools like Fairlearn (opens in new tab)<\/span><\/a> to profile the data you are ingesting into Customer Insights. When you are certain that your data isn\u2019t biased, you can avoid bias in the way you configure the model, too. Avoiding bias when training your model<\/strong> is as easy as including as many customer attributes as you can map, to allow the model to consider them as influential factors. You can also avoid bias when you review your results<\/strong> by taking the model\u2019s influential factors list into consideration and avoiding \u2018cherry picking\u2019 profile attributes because they serve a hypothesis you might have.<\/p>\n\n\n\n For Contoso Coffee. They do want to make sure guests they invite can easily travel to the event, so they will be able to use Location fairly, but they might want to make sure that they\u2019re considering lots of other attributes to help make a fair decision and capture the best audience to invite to the event.<\/p>\n\n\n\n If the attributes you mapped do not appear in the influential factors table, there are a few potential causes:<\/p>\n\n\n\n We perform various data quality checks on the mapped attributes before using them in the model. For example, if most entries for an attribute field are missing, we consider that attribute unreliable for prediction and do not use it in the model. If there is a data quality issue, the attribute will not appear in the influential factors page and there will be an entry in the Input Data Usability Report (instructions on finding the Report are in the Customer Insights online documentation (opens in new tab)<\/span><\/a>).<\/p>\n\n\n\n This feature is now available in the Customer Lifetime Value model, which is Generally Available within Customer Insights. The product documentation (opens in new tab)<\/span><\/a> is also updated with information about this feature, to help get you started! Authors: Kidus Asfaw, Sally Kellaway, and Radha Sayyaparaju When crafting your marketing and sales strategies, personalizing your marketing campaigns, journeys and content to the special traits of your customer segments is an important way to drive engagement and purchases. One method for segmenting your audiences is to determine the potential value of those customers to […]<\/p>\n","protected":false},"author":41161,"featured_media":0,"template":"","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","msr-content-parent":804652,"footnotes":""},"research-area":[],"msr-locale":[268875],"msr-post-option":[],"class_list":["post-866571","msr-blog-post","type-msr-blog-post","status-publish","hentry","msr-locale-en_us"],"msr_assoc_parent":{"id":804652,"type":"group"},"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-blog-post\/866571","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-blog-post"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/msr-blog-post"}],"author":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/users\/41161"}],"version-history":[{"count":9,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-blog-post\/866571\/revisions"}],"predecessor-version":[{"id":867123,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-blog-post\/866571\/revisions\/867123"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=866571"}],"wp:term":[{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=866571"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=866571"},{"taxonomy":"msr-post-option","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-post-option?post=866571"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}What is the CLV model?<\/h4>\n\n\n\n
What are customer profile attributes?<\/h4>\n\n\n\n
What is the model doing with these attributes?<\/h4>\n\n\n\n
<\/figure>\n\n\n\n
How has the experience of configuring the model changed?<\/h4>\n\n\n\n
What changes will I see in the CLV model predictions?<\/h4>\n\n\n\n
MoreD<\/p>\n\n\n\nCould adding Customer attributes make my model biased?<\/h4>\n\n\n\n
Why might my mapped attributes not be used?<\/h4>\n\n\n\n
When is this feature available?<\/h4>\n\n\n\n
Ways to engage<\/p>\n\n\n\n