Difference between revisions of "PE-GPR/9.0.0/Help/Predictors"

From Genesys Documentation
Jump to: navigation, search
(Published)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Article
 
{{Article
 
|Standalone=No
 
|Standalone=No
|DisplayName=Create and update Predictors
+
|DisplayName=Create and update predictors
|Platform=PureEngage
+
|TocName=Create and update predictors
|TocName=Create and update Predictors
+
|Context=Predictors enable you to analyze various factors that might affect a specific metric. For example, you can check how the matchup between customer and agent languages, ages, locations, customer's reason for making contact, and agent skills affect the NPS score.
 
|ComingSoon=No
 
|ComingSoon=No
|Context=Predictors enable you to analyze various factors that might affect a specific metric. For example, you might check how the matching between customer and agent languages, ages, locations, customer's reason for making contact, and agent skills affect the NPS score. In addition to ''simple Predictors'', you can also combine them to {{Link-SomewhereInThisManual|topic=Predictors|anchor=composite|display text=create <i>composite Predictors</i>}} that analyze multiple metrics.
+
|Platform=GenesysEngage-cloud
 
|Section={{Section
 
|Section={{Section
|sectionHeading=View the Settings: Predictors Window
+
|sectionHeading=Settings: Predictors window
|Standalone=No
 
|ComingSoon=No
 
 
|alignment=Vertical
 
|alignment=Vertical
 
|structuredtext=*To open the configuration menu, click the '''Settings''' gear icon, located on the right side of the top menu bar: [[File:GPMsettingsGear.png|50px]].
 
|structuredtext=*To open the configuration menu, click the '''Settings''' gear icon, located on the right side of the top menu bar: [[File:GPMsettingsGear.png|50px]].
*A right-hand toggle navigation menu opens a tree view of all Datasets associated with your Account, with the Predictors and Models configured for each. To open or close this navigation menu, click the [[File:GPRDatPredModNavIcon.png|25 px]] icon. Note that composite predictors do not appear in this tree view.
+
*A navigation menu on the right side of the window opens a tree view of all datasets associated with your account, with the predictors and models configured for each. To open or close this navigation menu, click the [[File:GPRDatPredModNavIcon.png|25 px]] icon.
*You must reload the page to view updates made using the Predictive Routing API, such as creating, updating, or deleting a Predictor.
+
*You must reload the page to view updates made using the Predictive Routing API, such as creating, updating, or deleting a predictor.
  
 
{{NoteFormat
 
{{NoteFormat
Line 19: Line 17:
 
*The Tooltips, which appear when you hover over any '''?''' icon, contain helpful explanatory information about the associated fields.
 
*The Tooltips, which appear when you hover over any '''?''' icon, contain helpful explanatory information about the associated fields.
 
}}
 
}}
|fullwidth=No
 
 
|Status=No
 
|Status=No
 
}}{{Section
 
}}{{Section
|sectionHeading=Creating a Predictor
+
|sectionHeading=Create a predictor
 
|anchor=CreatingaPredictor
 
|anchor=CreatingaPredictor
|Standalone=No
 
|ComingSoon=No
 
 
|alignment=Vertical
 
|alignment=Vertical
|structuredtext=The following series of procedures takes you through the steps required to create and configure a new Predictor.
+
|structuredtext=The following series of procedures takes you through the steps required to create and configure a new predictor.
===Begin to Create a New Predictor===
+
===Begin to create a new predictor===
'''Purpose:''' To create a Predictor, which specifies a metric you plan to optimize and the agent and customer features you have found to have the strongest effect on that metric.
+
'''Purpose:''' To create a predictor, which specifies a metric you plan to optimize and the agent and customer features you have found to have the strongest effect on that metric.
  
 
'''Prerequisites'''
 
'''Prerequisites'''
  
*You might want to run a {{Link-SomewhereInThisManual|topic=FAReport|anchor=top|display text=Feature Analysis report}} before creating a Predictor. The Feature Analysis report can analyze which features in your dataset have the strongest impact on the value of a specific metric.
+
*You can choose to run a {{Link-SomewhereInThisManual|topic=AIMonitoring|anchor=top|display text=Feature Coverage report}} before creating a predictor. The Feature Coverage report analyzes which whether your data is adequate for the metric you want to optimize and which features in your dataset have the strongest impact on the value of that metric.
  
 
'''Steps'''
 
'''Steps'''
  
To start creating a Predictor:
+
To start creating a predictor:
  
#Select '''Predictor''' from the left-hand navigation bar and then click '''Add Predictor.'''
+
#Select '''Predictor''' from the left-side navigation bar and then click '''Add Predictor.'''
#Name your Predictor. Predictor names can consist only of alphanumeric characters, and must start with a letter or underscore.
+
#Name your predictor. Predictor names can consist only of alphanumeric characters, and must start with a letter or underscore.
#Select a Dataset from the drop-down menu.  When you select a Dataset, the Dataset date range appears.
+
#Select a dataset from the selection menu.  When you select a dataset, the dataset date range appears.
#Move the slider bars at either end of the date range to select the part of the Dataset you want the Predictor to evaluate.
+
#Move the slider bars at either end of the date range to select the part of the dataset you want the predictor to evaluate.
  
===Select a Metric and the Agent and Customer Identifiers===
+
===Select a metric and the Agent and Customer identifiers===
To continue Predictor configuration, perform the following steps:
+
To continue predictor configuration, perform the following steps:
  
#Select the metric for this Predictor. A Predictor can be associated with only one metric.
+
#Select the metric for this predictor. A predictor can be associated with only one metric.
 
#Select the '''Agent identifier''', which can be either <tt>Dataset generated</tt> or <tt>Agents</tt>.  
 
#Select the '''Agent identifier''', which can be either <tt>Dataset generated</tt> or <tt>Agents</tt>.  
#*'''Dataset generated:''' Agent profile data is derived from the most up-to-date data captured in the Dataset used to create the current Predictor. Note that this Dataset must be synchronized for the latest data to be available for the Predictor.
+
#*'''Dataset generated:''' Agent profile data is derived from the most up-to-date data captured in the dataset used to create the current predictor. Note that this dataset must be synchronized for the latest data to be available for the predictor.
 
#*'''Agents:''' Agent profile data is taken from the Agent Profile schema. This is the typical production configuration.
 
#*'''Agents:''' Agent profile data is taken from the Agent Profile schema. This is the typical production configuration.
 
#Select the '''Customer identifier''', which can be either <tt>Customers</tt> or <tt>None</tt>.  
 
#Select the '''Customer identifier''', which can be either <tt>Customers</tt> or <tt>None</tt>.  
 
#*'''None:''' Customer and interaction data is gathered from attached data.
 
#*'''None:''' Customer and interaction data is gathered from attached data.
 
#*'''Customers:''' Customer data is taken from both the Customer Profile schema and attached data. If both sources include data for a specific field, the value in the attached data is used. This is the typical production configuration.
 
#*'''Customers:''' Customer data is taken from both the Customer Profile schema and attached data. If both sources include data for a specific field, the value in the attached data is used. This is the typical production configuration.
#'''KPI Type:''' This field is reserved for future use. All users should accept the default type, which is <tt>Service</tt>.
+
#'''KPI Type:''' Select '''Service''' (the default) or '''Sales'''.
#'''Score expression''' (Optional): Enter an expression to be used for computing the final score returned by the scoring engine. You can construct the expression using arithmetic operations, [https://docs.python.org/3.7/library/functions.html Python 3 built-in functions], and Dataset fields. To access the available fields in your Dataset, press the '''SHIFT+@''' shortcut.  
+
#'''Score expression''' (Optional): Enter an expression GPR should use to compute the final score returned by the scoring engine. You can construct the expression using arithmetic operations, [https://docs.python.org/3.7/library/functions.html Python 3 built-in functions], and dataset fields. To access the available fields in your dataset, press the '''SHIFT+@''' shortcut.  
 
#:'''Examples of ways to use this field:'''
 
#:'''Examples of ways to use this field:'''
 
#*If URS has different scales for scoring, you can use this field to scale the returned score appropriately.
 
#*If URS has different scales for scoring, you can use this field to scale the returned score appropriately.
#*You might need to translate the result returned from URS to correct the sort order. For instance, if '''customer_talk_duration''' is a target metric, agents with lower scores are actually better. So you might enter the score expression <tt>1 / p_score</tt>, which produces an outcome such that higher predicted values are lower actual scores.
+
#*If necessary, you can translate the result returned from URS to correct the sort order. For instance, if '''customer_talk_duration''' is a target metric, agents with lower scores are actually better. So you might enter the score expression <tt>1 / p_score</tt>, which produces an outcome such that higher predicted values are lower actual scores.
 
#*For an in-depth discussion of how GPR handles metrics, see {{Link-SomewhereInThisManual|topic=metricsMinMax|anchor=top|display text=Understanding Score Expressions}}.
 
#*For an in-depth discussion of how GPR handles metrics, see {{Link-SomewhereInThisManual|topic=metricsMinMax|anchor=top|display text=Understanding Score Expressions}}.
#'''Skip expression''' (Optional): Enter an expression that specifies data to be skipped. You can construct the expression using arithmetic operations, [https://docs.python.org/3.7/library/functions.html Python 3 built-in functions], and Dataset fields. To access the available fields in your Dataset, press the '''SHIFT+@''' shortcut.
+
#'''Skip expression''' (Optional): Enter an expression that specifies data to be skipped. You can construct the expression using arithmetic operations, [https://docs.python.org/3.7/library/functions.html Python 3 built-in functions], and Dataset fields. To access the available fields in your dataset, press the '''SHIFT+@''' shortcut.
#*For example, you might want to base the Predictor only on records where the value in the '''Revenue''' field is less than 10,000. To achieve this, you would enter <tt>Revenue < 10000</tt> in the '''Skip expression''' field.
+
#*For example, you might want to base the predictor only on records where the value in the '''Revenue''' field is less than 10,000. To set the revenue cutoff value, you would enter <tt>Revenue < 10000</tt> in the '''Skip expression''' field.
  
 
[[File:PrMPredictorMetric.png|500 px]]
 
[[File:PrMPredictorMetric.png|500 px]]
  
 
===Select the Agent ID and Actions Cutoff===
 
===Select the Agent ID and Actions Cutoff===
To continue Predictor configuration, perform the following steps:  
+
To continue predictor configuration, perform the following steps:  
  
#Select the Agent ID from the drop-down menu. This is a unique employee identifier that is relevant for the type of metric you are evaluating.  
+
#Select the Agent ID from the menu. The Agent ID is a unique employee identifier that is relevant for the type of metric you are evaluating.  
 
#:If '''Agents''' (the Agent Profile schema) has been selected as Agent Identifier, the Agent ID you select must be the same field as the ID_FIELD in the Agent Profile.
 
#:If '''Agents''' (the Agent Profile schema) has been selected as Agent Identifier, the Agent ID you select must be the same field as the ID_FIELD in the Agent Profile.
 
#Select the maximum number of best scores that will be returned when you make a scoring request to the API.  
 
#Select the maximum number of best scores that will be returned when you make a scoring request to the API.  
Line 76: Line 71:
  
 
===Choose Agent Features===
 
===Choose Agent Features===
''Agent Features'' are items in the Dataset that refer to the agent. All agent-related fields in your selected Dataset appear in the drop-down list under '''Agent Features'''.  
+
''Agent Features'' are items in the dataset that refer to the agent. All agent-related fields in your selected dataset appear in the drop-down list under '''Agent Features'''.  
  
#Select an Agent Feature from the drop-down list. The type associated with it in the Dataset appears.
+
#Select an Agent Feature from the drop-down list. The type associated with it in the dataset appears.
#Continue until you have selected the Agent Features you want to include in your Predictor.
+
#Continue until you have selected the Agent Features you want to include in your predictor.
#Optionally, you can create a new feature. A new feature must be based on existing features. When you create a new feature, you can add an expression, which enables you to perform some action on existing features and then use the result in your Predictor.
+
#Optionally, you can create a new feature. A new feature must be based on existing features. When you create a new feature, you can add an expression, which enables you to perform some action on existing features and then use the result in your predictor.
 
##Click '''Add New Feature'''.
 
##Click '''Add New Feature'''.
 
##Type a name for your new feature and then select the type of value this feature returns: Boolean (the returned value is an either/or value, such as <tt>true/false</tt>), list (a list of the possible returned values), string, and so on.
 
##Type a name for your new feature and then select the type of value this feature returns: Boolean (the returned value is an either/or value, such as <tt>true/false</tt>), list (a list of the possible returned values), string, and so on.
Line 91: Line 86:
  
 
===Choose Customer Features===
 
===Choose Customer Features===
''Customer Features'' are items that refer to the customer or that are available in interaction user data. They refer to aspects of the environment, broadly speaking, in which the interaction occurs. All customer- and userdata-related fields in your selected Dataset appear in the drop-down list under '''Customer Features'''.  
+
''Customer Features'' are items that refer to the customer or that are available in interaction user data. They refer to aspects of the environment, broadly speaking, in which the interaction occurs. All customer- and userdata-related fields in your selected dataset appear in the drop-down list under '''Customer Features'''.
 +
 
 +
'''Note:''' If you do not include Customer features in your predictor, GPR cannot score agents. Score requests are terminated and the GPR Core Platform sends the following KVP values to the Info Mart database and the GPR score_log: gpmResult=7 and gpmMessage=Failed to build Scoring Context.  
  
#Select a Customer Feature from the drop-down list. The type associated with it in the Dataset appears.
+
#Select a Customer Feature from the drop-down list. The type associated with it in the dataset appears.
#Continue until you have selected the customer features you want to include in your Predictor.
+
#Continue until you have selected the customer features you want to include in your predictor.
 
#Optionally, you can create a new feature. A new feature must be based on existing features. When you create a new feature, you can add an expression, which enables you to perform some action on existing features and then use the result in your Predictor.
 
#Optionally, you can create a new feature. A new feature must be based on existing features. When you create a new feature, you can add an expression, which enables you to perform some action on existing features and then use the result in your Predictor.
 
##Click '''Add New Feature'''.
 
##Click '''Add New Feature'''.
Line 105: Line 102:
 
[[File:PrMPredictorContext.png|600 px]]
 
[[File:PrMPredictorContext.png|600 px]]
  
===Create and Generate your New Predictor===
+
===Create and generate your new predictor===
To finalize your Predictor configuration, save and generate it:
+
To finalize your predictor configuration, save and generate it:
  
#Click '''Create''' to save your Predictor settings. You should receive a success pop-up window indicating that the Predictor has been created.
+
#Click '''Create''' to save your predictor settings. You should receive a success pop-up window indicating that the predictor has been created.
#Before you can train and activate Models, you must generate your Predictor. Scroll up to the daterange display on your Predictor configuration window, and then click '''Generate'''.
+
#Before you can train and activate models, you must generate your predictor. Scroll up to the date range display on your predictor configuration window, and then click '''Generate'''.
#:Pop-up windows indicate the progress of the generate job.
+
#:Progress windows indicate the progress of the generate job.
  
Your new Predictor now appears in the list of Predictors, along with information about its status, such as the number of associated Models, when it was last run, and its quality.
+
Your new predictor now appears in the list of predictors, along with information about its status, such as the number of associated models, when it was last run, and its quality.
  
 
[[File:PredictorCreateGenerate.png|700 px]]
 
[[File:PredictorCreateGenerate.png|700 px]]
|fullwidth=No
 
 
|Status=No
 
|Status=No
 
}}{{Section
 
}}{{Section
|sectionHeading=Viewing and Updating Predictors
+
|sectionHeading=View and update predictors
 
|anchor=ViewingandUpdatingPredictors
 
|anchor=ViewingandUpdatingPredictors
|Standalone=No
 
|ComingSoon=No
 
 
|alignment=Vertical
 
|alignment=Vertical
|structuredtext=After you have created Predictors, use the following procedures to view and maintain them. It is important to ensure that your Predictors and Models stay up-to-date, so that they continue to address your most compelling business needs.{{AnchorDiv|viewPredicts}}
+
|structuredtext=After you have created predictors, use the following procedures to view and maintain them. It is important to ensure that your predictors and models stay up-to-date, so that they continue to address your most compelling business needs.{{AnchorDiv|viewPredicts}}
===View your Predictors===
+
===View your predictors===
When you navigate to '''Settings''' > '''Predictors''', the window shows a table listing all your existing Predictors. For each, the table shows what the following information:
+
When you navigate to '''Settings''' > '''Predictors''', the window shows a table listing all your existing predictors. For each, the table shows what the following information:
  
*Name - The name given to the Predictor when it was created.
+
*Name - The name given to the predictor when it was created.
 
*Type - Whether the metric requires classification (binary) or regression analysis.
 
*Type - Whether the metric requires classification (binary) or regression analysis.
*Models - The number of Models created for the Predictor.
+
*Models - The number of models created for the predictor.
*Rows - The number of rows in the Dataset used to create the Predictor.
+
*Rows - The number of rows in the dataset used to create the predictor.
*Quality - The quality value displayed for the Predictor (AUC for classification metrics and RMSE for regression metrics) is the average of the results for each trained Model associated with that Predictor. Both active and inactive Models are included in the average, as long as they are trained.
+
*Quality - The quality value displayed for the predictor (AUC for classification metrics and RMSE for regression metrics) is the average of the results for each trained model associated with that predictor. Both active and inactive models are included in the average, as long as they are trained.
*Metric - The metric that the Predictor is built to optimize.
+
*Metric - The metric that the predictor is built to optimize.
*Last Run - The last time the Predictor was trained.
+
*Last Run - The last time the predictor was trained.
  
 
From this list you can do the following:
 
From this list you can do the following:
  
*Edit your Predictor, if you have not yet created and activated any Models created for it. See {{Link-SomewhereInThisManual|topic=Predictors|anchor=updatePredictor|display text=Update a Predictor}} (below) for details.
+
*Edit your predictor, if you have not yet created and activated any models created for it. See {{Link-SomewhereInThisManual|topic=Predictors|anchor=updatePredictor|display text=Update a predictor}} (below) for details.
*Create or edit Models for the predictor. Click the name of a Predictor to open it, and then click '''Models''' to access the Model functionality.
+
*Create or edit models for the predictor. Click the name of a predictor to open it, and then click '''Models''' to access the model functionality.
*Delete a Predictor. Select the check box next to a Predictor name, and then click the trash can icon.
+
*Delete a predictor. Select the check box next to a predictor name, and then click the trash can icon.
  
 
[[File:PredictorListActions.png|800 px]]
 
[[File:PredictorListActions.png|800 px]]
  
 
{{AnchorDiv|predictorInfo}}
 
{{AnchorDiv|predictorInfo}}
===View the Predictor Information Pane===
+
===View the predictor information pane===
When you view the configuration data for a Predictor, the right-hand toggle Information pane icon becomes active. Click this button to view the following information:
+
When you view the configuration data for a predictor, the right-hand toggle information pane icon becomes active. Click this button to view the following information:
  
*The Predictor ID, which you can use to make API requests affecting the Predictor.
+
*The Predictor ID, which you can use to make API requests affecting the predictor.
*The Dataset upon which the Predictor is based.
+
*The dataset upon which the predictor is based.
*The start and end dates for the data on which the Predictor is based.
+
*The start and end dates for the data on which the predictor is based.
*The Model or Models created for this Predictor.
+
*The model or models created for this predictor.
*The Predictor status.
+
*The predictor status.
  
 
[[File:PredictorInfoPane.png|500 px]]
 
[[File:PredictorInfoPane.png|500 px]]
  
 
{{AnchorDiv|updatePredictor}}
 
{{AnchorDiv|updatePredictor}}
===Update a Predictor===
+
===Update a predictor===
You can edit your Predictor ''unless'' you have created and activated one or more Models based on it. In that case, Genesys recommends that you create a new Predictor with the desired parameters.
+
You can edit your predictor ''unless'' you have created and activated one or more models based on it. In that case, Genesys recommends that you create a new predictor with the desired parameters.
  
You can change the Predictor date range, purge generated data, and re-generate your Predictor with a different date range at any time. However, already trained and activated Models continue to use data from the old daterange.
+
You can change the predictor date range, purge generated data, and re-generate your predictor with a different date range at any time. However, already trained and activated Models continue to use data from the old date range.
  
#Click '''Purge''' to change the date range in your Dataset used to generate new Models.
+
#Click '''Purge''' to change the date range in your dataset used to generate new models.
#:Activated existing Models continue to use the same date range.
+
#:Activated existing models continue to use the same date range.
 
#Select the new date range, and then click '''Generate'''.
 
#Select the new date range, and then click '''Generate'''.
  
Line 168: Line 162:
  
 
[[File:purgePredictorData.png|500 px]]
 
[[File:purgePredictorData.png|500 px]]
|fullwidth=No
 
 
|Status=No
 
|Status=No
 
}}{{Section
 
}}{{Section
|sectionHeading=Import a Model
+
|sectionHeading=Import a model
|Standalone=No
+
|anchor=importModel
|ComingSoon=No
 
 
|alignment=Vertical
 
|alignment=Vertical
|structuredtext=As you create a Predictor, you can import a Model to work with that Predictor. The Model must be in JSON format. This Model import/export feature enables you to move Models from one part of your environment to another.
+
|structuredtext=If you have a successful model working with a predictor, you can import it to use with another predictor. For example, a user with ADMIN rights can {{Link-SomewhereInThisVersion|manual=Help|topic=Models|anchor=export|display text=export a successful model}} from a staging or test predictor and then import it to use with a production predictor.  
  
*To import an existing Model, click '''Import a Model''', which is next to the Predictor name at the top of the '''Predictor''' configuration window.
+
'''NOTE:''' The imported model must be based on a predictor configured with the identical schema.  
  
[[File:GPRImportModel.png|300 px]]
+
To import an existing model, use the following procedure:
|fullwidth=No
+
 
 +
#Open a predictor from the '''Settings > Predictors''' list.
 +
#Click '''Import a Model''', which is next to the predictor name at the top of the '''Predictor''' configuration window. This button appears only if you have ADMIN rights.
 +
#Select the model you want to import. Exported models are saved as JSON files.
 +
#Confirm the import.
 +
 
 +
[[File:GPRImportModel.png|500 px]]
 
|Status=No
 
|Status=No
 
}}{{Section
 
}}{{Section
|sectionHeading=Gather Updated Scoring Data Using Profile Look Ups
+
|sectionHeading=Gather updated scoring data using profile look ups
 
|anchor=obsoletelookup
 
|anchor=obsoletelookup
|Standalone=No
 
|ComingSoon=No
 
 
|alignment=Vertical
 
|alignment=Vertical
|structuredtext=When you are using a Model to score agents, you can configure Predictive Routing to incorporate up-to-date data from the Agent Profile schema and/or the Customer Profile schema rather than the corresponding data from your Dataset.  
+
|structuredtext=When you are using a model to score agents, you can configure Predictive Routing to incorporate up-to-date data from the Agent Profile schema and/or the Customer Profile schema rather than the corresponding data from your dataset.  
  
For example, your Dataset might be three months old. As a result, various metrics might no longer reflect the actual conditions in your environment. For example, a metric such as agent tenure is now three months out of date. Agent performance scores for each virtual queue might have changed, because of factors such as changes in virtual queue assignments or training that might have improved an agent's performance.
+
For example, your dataset might be three months old. As a result, various metrics might no longer reflect the actual conditions in your environment. For example, a metric such as agent tenure is now three months out of date. Agent performance scores for each virtual queue might have changed, because of factors such as changes in virtual queue assignments, or training that might have improved an agent's performance.
  
 
To make use of the most recent available data, you ''override'' the use of the older data and enable Predictive Routing to look up the new values for key features.
 
To make use of the most recent available data, you ''override'' the use of the older data and enable Predictive Routing to look up the new values for key features.
  
 
{{NoteFormat|When configuring profile lookups, keep in mind that a large number of lookups can significantly impact the scoring response time. You should test for impact on scoring performance in your environment before configuring overrides for a large number of features.}}
 
{{NoteFormat|When configuring profile lookups, keep in mind that a large number of lookups can significantly impact the scoring response time. You should test for impact on scoring performance in your environment before configuring overrides for a large number of features.}}
====Settings Required to Use Profile Lookups====
+
====Settings required to use profile lookups====
 
To have Predictive Routing look up fresh values for specified fields, you must have the following:
 
To have Predictive Routing look up fresh values for specified fields, you must have the following:
  
Line 201: Line 197:
 
*The '''Agent Identifier''' and '''Customer Identifier''' fields set to <tt>Agents</tt> and <tt>Customers</tt>, respectively.
 
*The '''Agent Identifier''' and '''Customer Identifier''' fields set to <tt>Agents</tt> and <tt>Customers</tt>, respectively.
 
{{NoteFormat|These instructions are given for both Agent and Customer Profile lookups. If you do not need Customer Profile lookups&mdash;that is, the customer data is fairly stable and does not need to be updated constantly, you can omit the '''Customer Identifier''' and '''Customer Features''' settings.}}
 
{{NoteFormat|These instructions are given for both Agent and Customer Profile lookups. If you do not need Customer Profile lookups&mdash;that is, the customer data is fairly stable and does not need to be updated constantly, you can omit the '''Customer Identifier''' and '''Customer Features''' settings.}}
====How Profile Lookups Work====
+
====How profile lookups work====
 
The image below shows a record in the Agent Profile schema that shows how to encode agent performance across different queues. The  '''a_performance''' column contains a dictionary, consisting of two entries with the values <tt>Tech Support:10.00</tt> and <tt>Sales:1.00</tt>, respectively.  
 
The image below shows a record in the Agent Profile schema that shows how to encode agent performance across different queues. The  '''a_performance''' column contains a dictionary, consisting of two entries with the values <tt>Tech Support:10.00</tt> and <tt>Sales:1.00</tt>, respectively.  
  
Line 208: Line 204:
 
{{NoteFormat
 
{{NoteFormat
 
|
 
|
*In the Predictor schema, the action feature&mdash;in this case, '''a_performance'''&mdash;must be defined in such a way as to allow it to be an expression, since its actual value is based on an Agent Profile lookup.
+
*In the predictor schema, the action feature&mdash;in this case, '''a_performance'''&mdash;must be defined in such a way as to allow it to be an expression, since its actual value is based on an Agent Profile lookup.
 
*Currently only one-dimensional dictionaries are supported, with up to 200 key-value pairs where the key is a string and the value is int, float, or Boolean.
 
*Currently only one-dimensional dictionaries are supported, with up to 200 key-value pairs where the key is a string and the value is int, float, or Boolean.
}}
+
|}}
 
Note that information from the Agent Profile schema is used only for scoring, not for Model training. When you are training a Model based on your Predictor Dataset, it uses the original profile data, but stores it in a flat (non-dictionary) format. This works well for training a Model, where what is needed is a complete and consistent set of data, which permits meaningful learning from these attributes while training a Global Model.
 
Note that information from the Agent Profile schema is used only for scoring, not for Model training. When you are training a Model based on your Predictor Dataset, it uses the original profile data, but stores it in a flat (non-dictionary) format. This works well for training a Model, where what is needed is a complete and consistent set of data, which permits meaningful learning from these attributes while training a Global Model.
  
Line 235: Line 231:
  
 
[[File:GPRScoringWithLookup.png|400px]]
 
[[File:GPRScoringWithLookup.png|400px]]
|fullwidth=No
 
|Status=No
 
}}{{Section
 
|sectionHeading=Composite Predictors
 
|anchor=composite
 
|Standalone=No
 
|ComingSoon=No
 
|alignment=Vertical
 
|structuredtext=You can create ''composite Predictors'' by combining two or more ''simple Predictors''—that is, standard Predictors such as those described in this topic so far. The composite is defined using an arithmetical function that works on the set of target metrics used in the selected simple Predictors. This enables you to score agents based on multiple metrics rather than just one.
 
 
The composite Predictor takes the scoring outcomes for each of the included Predictors and then applies the arithmetical expression you specify to those results. This composite result is then sent back to the routing strategy to be used when determining the best match between waiting interactions and available agents.
 
====Example====
 
Assume you have three agents with the following individual scores:
 
{{{!}} border="1"
 
{{!}}-
 
!{{!}}'''Agent'''
 
!{{!}}'''Predicted NPS Score'''
 
!{{!}}'''Predicted CSAT Score'''
 
{{!}}-
 
{{!}}{{!}}Agent 1
 
{{!}}{{!}}8
 
{{!}}{{!}}7
 
{{!}}-
 
{{!}}{{!}}Agent 2
 
{{!}}{{!}}8
 
{{!}}{{!}}8
 
{{!}}-
 
{{!}}{{!}}Agent 3
 
{{!}}{{!}}6
 
{{!}}{{!}}5
 
{{!}}}
 
 
If you just use NPS to select the best agent, Agent 1 and Agent 2 appear equally likely to handle the interaction well. But if you want to maximize your CSAT as well, the additional parameter acts as a differentiator. The aggregated score for Agent 2 (16) is higher than that for Agent 1 (15).
 
 
{{NoteFormat|If a Predictor you include has multiple active Models associated with it, the Model used is determined in the same way as it normally is when you have multiple Models.}}
 
 
The advantage of starting with separate Predictors over pre-computing the final metric in a common Dataset is to maximize data usage. For example, you probably have much more data for talk duration than for NPS, which requires customers to take a survey. It is also easier to create the desired calculation when you combine individual, already-created metrics.
 
 
*'''Example 1:'''You might create a composite Predictor out of three simple ones by combining them. Target metrics contain only numeric or Boolean values, so that you can combine the outcome using basic arithmetic operations. Assuming that the target metrics for the respective Predictors are the following:
 
**Predictor1 - NPS
 
**Predictor2 - CSAT
 
**Predictor3 - TALK_DURATIONYou can write an expression such as the following:
 
**:<tt>(Predictor1 + Predictor2) / Predictor3</tt>
 
**:In this example, the agent score is (predicted NPS + predicted CSAT) / predicted talk duration. That means agents with higher NPS and CSAT get higher scores if call duration is lower. Agents with high NPS and CSAT scores that also have high talk durations are scored lower. As a result, you can take into account several aspects of agent performance when scoring.
 
**'''Example 2:'''You might use different simple Predictors depending on a context variable passed in a scoring request. You can create a composite Predictor that would use one simple Predictor for customers in a high-value category (value >= 50) and a different simple Predictor for lower-value customers (value <= 50). The idea is to offload this logic from the strategy into a Predictor to reduce the need to modify your strategy. To create such a Predictor, define the following expression for your composite Predictor:
 
***<tt>int(value > 50) * Predictor1 + int(value <= 50) * Predictor2</tt>The logic here is the following: the <tt>int(value > 50)</tt> function converts the Boolean value from <tt>true/false</tt> to <tt>1/0</tt>. Whichever Predictor is multiplied by 0 is ignored and the remaining Predictor is used for routing.
 
{{NoteFormat|When creating a scoring request for use with a composite Predictor, the request must contain at least one Customer Feature that is common for all the simple Predictors included in the composite Predictor.}}
 
===Create a composite Predictor===
 
 
#Navigate to the '''Predictors''' list page in '''Settings'''.
 
#Select the check boxes next to at least two simple predictors. The '''Create Composite''' button appears. You must keep in mind the following constraints when selecting simple Predictors:
 
#*All of the simple Predictors that are going to be used in a composite Predictor should have the '''Agent Identifier''' field set to <tt>Agents</tt>.
 
#*The '''Agent ID''' field should be identical in all of the simple Predictors, and should be the same as that in the Agent Profile schema. For example, if in the Agent Profile schema the Agent ID is the <tt>Agent_Id</tt> field, the Agent ID in each Predictor must also be set to the <tt>Agent_Id</tt> field.
 
#Click '''Create Composite''', which opens the '''Composite Predictor''' page, pre-populated with the Predictors you selected.
 
#Fill out the '''Expression''' field. This field is ''mandatory'' for composite Predictors.
 
#:You can use a '''Suggestion''' menu triggered by the following keyboard shortcuts to configure your expression: [Shift + @] (to open context fields) or [Shift + #] (to open a list of functions). The menu lists only the applicable fields for a given composite Predictor, thus reducing the chance of error when composing an expression.
 
 
Your new composite Predictor now appears in the list of predictors. Note that information about Predictor status, such as the number of associated Models, when it was last run, and its quality, are available only for simple Predictors.
 
 
[[File:CreateCompositePredictor.png|600 px]]
 
|fullwidth=No
 
 
|Status=No
 
|Status=No
 
}}
 
}}
 
}}
 
}}

Latest revision as of 17:24, September 23, 2020

This topic is part of the manual Genesys Predictive Routing Help for version 9.0.0 of Genesys Predictive Routing.
Read this topic for other versions:

Predictors enable you to analyze various factors that might affect a specific metric. For example, you can check how the matchup between customer and agent languages, ages, locations, customer's reason for making contact, and agent skills affect the NPS score.

Related documentation:

Settings: Predictors window

  • To open the configuration menu, click the Settings gear icon, located on the right side of the top menu bar: GPMsettingsGear.png.
  • A navigation menu on the right side of the window opens a tree view of all datasets associated with your account, with the predictors and models configured for each. To open or close this navigation menu, click the GPRDatPredModNavIcon.png icon.
  • You must reload the page to view updates made using the Predictive Routing API, such as creating, updating, or deleting a predictor.
Important
  • The Tooltips, which appear when you hover over any ? icon, contain helpful explanatory information about the associated fields.

Create a predictor

The following series of procedures takes you through the steps required to create and configure a new predictor.

Begin to create a new predictor

Purpose: To create a predictor, which specifies a metric you plan to optimize and the agent and customer features you have found to have the strongest effect on that metric.

Prerequisites

  • You can choose to run a Feature Coverage report before creating a predictor. The Feature Coverage report analyzes which whether your data is adequate for the metric you want to optimize and which features in your dataset have the strongest impact on the value of that metric.

Steps

To start creating a predictor:

  1. Select Predictor from the left-side navigation bar and then click Add Predictor.
  2. Name your predictor. Predictor names can consist only of alphanumeric characters, and must start with a letter or underscore.
  3. Select a dataset from the selection menu. When you select a dataset, the dataset date range appears.
  4. Move the slider bars at either end of the date range to select the part of the dataset you want the predictor to evaluate.

Select a metric and the Agent and Customer identifiers

To continue predictor configuration, perform the following steps:

  1. Select the metric for this predictor. A predictor can be associated with only one metric.
  2. Select the Agent identifier, which can be either Dataset generated or Agents.
    • Dataset generated: Agent profile data is derived from the most up-to-date data captured in the dataset used to create the current predictor. Note that this dataset must be synchronized for the latest data to be available for the predictor.
    • Agents: Agent profile data is taken from the Agent Profile schema. This is the typical production configuration.
  3. Select the Customer identifier, which can be either Customers or None.
    • None: Customer and interaction data is gathered from attached data.
    • Customers: Customer data is taken from both the Customer Profile schema and attached data. If both sources include data for a specific field, the value in the attached data is used. This is the typical production configuration.
  4. KPI Type: Select Service (the default) or Sales.
  5. Score expression (Optional): Enter an expression GPR should use to compute the final score returned by the scoring engine. You can construct the expression using arithmetic operations, Python 3 built-in functions, and dataset fields. To access the available fields in your dataset, press the SHIFT+@ shortcut.
    Examples of ways to use this field:
    • If URS has different scales for scoring, you can use this field to scale the returned score appropriately.
    • If necessary, you can translate the result returned from URS to correct the sort order. For instance, if customer_talk_duration is a target metric, agents with lower scores are actually better. So you might enter the score expression 1 / p_score, which produces an outcome such that higher predicted values are lower actual scores.
    • For an in-depth discussion of how GPR handles metrics, see Understanding Score Expressions.
  6. Skip expression (Optional): Enter an expression that specifies data to be skipped. You can construct the expression using arithmetic operations, Python 3 built-in functions, and Dataset fields. To access the available fields in your dataset, press the SHIFT+@ shortcut.
    • For example, you might want to base the predictor only on records where the value in the Revenue field is less than 10,000. To set the revenue cutoff value, you would enter Revenue < 10000 in the Skip expression field.

PrMPredictorMetric.png

Select the Agent ID and Actions Cutoff

To continue predictor configuration, perform the following steps:

  1. Select the Agent ID from the menu. The Agent ID is a unique employee identifier that is relevant for the type of metric you are evaluating.
    If Agents (the Agent Profile schema) has been selected as Agent Identifier, the Agent ID you select must be the same field as the ID_FIELD in the Agent Profile.
  2. Select the maximum number of best scores that will be returned when you make a scoring request to the API.
    Important
    The maximum number of best scores is only relevant to the API, not to scoring requests sent using the Predictive Routing application.

PrMPredictorAction.png

Choose Agent Features

Agent Features are items in the dataset that refer to the agent. All agent-related fields in your selected dataset appear in the drop-down list under Agent Features.

  1. Select an Agent Feature from the drop-down list. The type associated with it in the dataset appears.
  2. Continue until you have selected the Agent Features you want to include in your predictor.
  3. Optionally, you can create a new feature. A new feature must be based on existing features. When you create a new feature, you can add an expression, which enables you to perform some action on existing features and then use the result in your predictor.
    1. Click Add New Feature.
    2. Type a name for your new feature and then select the type of value this feature returns: Boolean (the returned value is an either/or value, such as true/false), list (a list of the possible returned values), string, and so on.
    3. If you need to use a value from a different source than that initially added to the schema, toggle the Override control to on (toggle turns from gray to blue) for those features that should be updated at the time of scoring and then add an expression that tells GPR what value to use. For example, if you configured your Agent Profile schema with the CSAT captured in the AVG_CSAT column, but at runtime you want the value to be computed from other columns in the schema, turn on the Override control and enter the desired expression in the Expression field.
      To construct your expression, you can use arithmetical operators, Python 3 built-in functions, and fields accessed by the following shortcuts:
      • SHIFT+@ - for Dataset fields
      • SHIFT+# - for Profile fields

PrMPredictorActFeatures.png

Choose Customer Features

Customer Features are items that refer to the customer or that are available in interaction user data. They refer to aspects of the environment, broadly speaking, in which the interaction occurs. All customer- and userdata-related fields in your selected dataset appear in the drop-down list under Customer Features.

Note: If you do not include Customer features in your predictor, GPR cannot score agents. Score requests are terminated and the GPR Core Platform sends the following KVP values to the Info Mart database and the GPR score_log: gpmResult=7 and gpmMessage=Failed to build Scoring Context.

  1. Select a Customer Feature from the drop-down list. The type associated with it in the dataset appears.
  2. Continue until you have selected the customer features you want to include in your predictor.
  3. Optionally, you can create a new feature. A new feature must be based on existing features. When you create a new feature, you can add an expression, which enables you to perform some action on existing features and then use the result in your Predictor.
    1. Click Add New Feature.
    2. Type a name for your new feature and then select the type of value this feature returns: Boolean (the returned value is an either/or value, such as true/false), list (a list of the possible returned values), string, and so on.
    3. If you need to use a value from a different source than that initially added to the schema, toggle the Override control to on (toggle turns from gray to blue) for those features that should be updated at the time of scoring and then add an expression that tells GPR what value to use. For example, if you configured your Customer Profile schema with the customer value status captured in the CUST_VALUE column, but at runtime you want the value to be computed from other columns in the schema, turn on the Override control and enter the desired expression in the Expression field.
      To construct your expression, you can use arithmetical operators, Python 3 built-in functions, and fields accessed by the following shortcuts:
      • SHIFT+@ - for Dataset fields
      • SHIFT+# - for Profile fields

PrMPredictorContext.png

Create and generate your new predictor

To finalize your predictor configuration, save and generate it:

  1. Click Create to save your predictor settings. You should receive a success pop-up window indicating that the predictor has been created.
  2. Before you can train and activate models, you must generate your predictor. Scroll up to the date range display on your predictor configuration window, and then click Generate.
    Progress windows indicate the progress of the generate job.

Your new predictor now appears in the list of predictors, along with information about its status, such as the number of associated models, when it was last run, and its quality.

PredictorCreateGenerate.png

View and update predictors

After you have created predictors, use the following procedures to view and maintain them. It is important to ensure that your predictors and models stay up-to-date, so that they continue to address your most compelling business needs.

View your predictors

When you navigate to Settings > Predictors, the window shows a table listing all your existing predictors. For each, the table shows what the following information:

  • Name - The name given to the predictor when it was created.
  • Type - Whether the metric requires classification (binary) or regression analysis.
  • Models - The number of models created for the predictor.
  • Rows - The number of rows in the dataset used to create the predictor.
  • Quality - The quality value displayed for the predictor (AUC for classification metrics and RMSE for regression metrics) is the average of the results for each trained model associated with that predictor. Both active and inactive models are included in the average, as long as they are trained.
  • Metric - The metric that the predictor is built to optimize.
  • Last Run - The last time the predictor was trained.

From this list you can do the following:

  • Edit your predictor, if you have not yet created and activated any models created for it. See Update a predictor (below) for details.
  • Create or edit models for the predictor. Click the name of a predictor to open it, and then click Models to access the model functionality.
  • Delete a predictor. Select the check box next to a predictor name, and then click the trash can icon.

PredictorListActions.png

View the predictor information pane

When you view the configuration data for a predictor, the right-hand toggle information pane icon becomes active. Click this button to view the following information:

  • The Predictor ID, which you can use to make API requests affecting the predictor.
  • The dataset upon which the predictor is based.
  • The start and end dates for the data on which the predictor is based.
  • The model or models created for this predictor.
  • The predictor status.

PredictorInfoPane.png

Update a predictor

You can edit your predictor unless you have created and activated one or more models based on it. In that case, Genesys recommends that you create a new predictor with the desired parameters.

You can change the predictor date range, purge generated data, and re-generate your predictor with a different date range at any time. However, already trained and activated Models continue to use data from the old date range.

  1. Click Purge to change the date range in your dataset used to generate new models.
    Activated existing models continue to use the same date range.
  2. Select the new date range, and then click Generate.

Pop-up windows indicate the progress of the purge and generate jobs.

PurgePredictorData.png

Import a model

If you have a successful model working with a predictor, you can import it to use with another predictor. For example, a user with ADMIN rights can export a successful model from a staging or test predictor and then import it to use with a production predictor.

NOTE: The imported model must be based on a predictor configured with the identical schema.

To import an existing model, use the following procedure:

  1. Open a predictor from the Settings > Predictors list.
  2. Click Import a Model, which is next to the predictor name at the top of the Predictor configuration window. This button appears only if you have ADMIN rights.
  3. Select the model you want to import. Exported models are saved as JSON files.
  4. Confirm the import.

GPRImportModel.png

Gather updated scoring data using profile look ups

When you are using a model to score agents, you can configure Predictive Routing to incorporate up-to-date data from the Agent Profile schema and/or the Customer Profile schema rather than the corresponding data from your dataset.

For example, your dataset might be three months old. As a result, various metrics might no longer reflect the actual conditions in your environment. For example, a metric such as agent tenure is now three months out of date. Agent performance scores for each virtual queue might have changed, because of factors such as changes in virtual queue assignments, or training that might have improved an agent's performance.

To make use of the most recent available data, you override the use of the older data and enable Predictive Routing to look up the new values for key features.

Important
When configuring profile lookups, keep in mind that a large number of lookups can significantly impact the scoring response time. You should test for impact on scoring performance in your environment before configuring overrides for a large number of features.

Settings required to use profile lookups

To have Predictive Routing look up fresh values for specified fields, you must have the following:

  • Agent Profile and Customer Profile schemas loaded and accepted.
  • The Agent Identifier and Customer Identifier fields set to Agents and Customers, respectively.
Important
These instructions are given for both Agent and Customer Profile lookups. If you do not need Customer Profile lookups—that is, the customer data is fairly stable and does not need to be updated constantly, you can omit the Customer Identifier and Customer Features settings.

How profile lookups work

The image below shows a record in the Agent Profile schema that shows how to encode agent performance across different queues. The a_performance column contains a dictionary, consisting of two entries with the values Tech Support:10.00 and Sales:1.00, respectively.

GPRAgtProfileDict.png

Important
  • In the predictor schema, the action feature—in this case, a_performance—must be defined in such a way as to allow it to be an expression, since its actual value is based on an Agent Profile lookup.
  • Currently only one-dimensional dictionaries are supported, with up to 200 key-value pairs where the key is a string and the value is int, float, or Boolean.

Note that information from the Agent Profile schema is used only for scoring, not for Model training. When you are training a Model based on your Predictor Dataset, it uses the original profile data, but stores it in a flat (non-dictionary) format. This works well for training a Model, where what is needed is a complete and consistent set of data, which permits meaningful learning from these attributes while training a Global Model.

The following image shows a Dataset record encoding the same information as shown above, only in a flattened format:

GPRAgtProfileDictFlat.png

Here the VQ columns contain the names of the virtual queues and the Feedback column contains the agent performance value for the associated virtual queue.

In the example we have been using, the Feedback column (feature) holds the historical data on the agent’s performance. To get the most recent value at run time, override this field so that it gets its value from the Agent Profile dataset rather than from the Predictor (training) Dataset. To do so, enable the Override toggle control next to the corresponding field and provide a lookup expression:

PrMPredictorActFeatures.png

The Override toggle appears only beside fields that have a direct corresponding field in the Dataset. Once Override is toggled on, the expression field appears and you can enter an expression for looking up the associated value from the profile Dataset. Use the following shortcuts to open a suggestion list in the expression field:

  • SHIFT+@ - for dataset fields
  • SHIFT+# - for profile fields

The following graphic illustrates how the lookup expression maps to the different Datasets:

GPRLookupInAction.png

Now you can issue a scoring request and it looks up the associated value in the Profile Dataset. In this example, Predictive Routing looks up the value in the Agent Profile a_performance column using the VQ Key: Sales.

GPRScoringWithLookup.png

Retrieved from "https://all.docs.genesys.com/PE-GPR/9.0.0/Help/Predictors (2025-06-21 17:30:45)"
Comments or questions about this documentation? Contact us for support!