I am thinking thru implementation pattern around churn problem. Scenario I am thinking about is pretty simple - for customers with propensity to churn to identify features of the account that could be changed/different plans offered, etc to try to retain them. For that, I would want to have visibility to “explainability” for these customers in Watson openscale – which is there – but not easy to get to and not searchable from UI. How would I approach this?
1 Answers
If I understood the questions correctly, you have lots of customers and there is a model which is predicting which customer is likely to leave and you want to generate an explanation of why the model predicted that a given customer would leave or not leave.
1) Each transaction (scoring done by the model) is associated with a transaction ID in Watson OpenScale. In order to generate an explanation for a specific customer, you need to provide the transaction ID associated with that customer. In case of Watson Machine Learning you can specify the transaction ID by setting the X-Global-Transaction-Id
field in the HTTP header of the WML online scoring request. Details are available in the documentation: https://cloud.ibm.com/docs/services/ai-openscale?topic=ai-openscale-ie-ov
2) In case of non-WML serve engine, you can send the transaction ID while logging the payload using the payload logging REST API of Watson OpenScale.
3) If you are sending one customer data to the WML model in one online scoring request, then you can set the transaction ID to the customer ID. However, given that there will be millions of customers, I expect that multiple customers data would be sent to one WML online scoring request. In that case you will have to come up with some transaction ID for this request and have some mechanism to map the customer ID to the transaction ID. Note that if in one WML online scoring request you sent 5 customers data and the transaction ID is set to “T”, then the transaction ID for first customer will be T_1, that for the second customer will be T_2, ….upto T_5.
3) Once you are aware of the transaction ID to customer ID mapping, you will be able to generate an explanation for a specific customer by specifying his/her transaction ID. We have an API to find the explanation which has been generated. You can store the output of this GET API into a file (the response is a JSON).
Hope this answers your query.

- 41
- 1