SAS® Model Manager - User's Guide
SAS® Model Manager - User's Guide
User’s Guide
2025.06 - 2025.07*
* This document might apply to additional versions of the software. Open this document in SAS Help Center and click
on the version in the banner to see all available versions.
SAS® Documentation
September 3, 2025
The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2025. SAS® Model Manager: User’s Guide. Cary, NC: SAS
Institute Inc.
SAS® Model Manager: User’s Guide
Copyright © 2025, SAS Institute Inc., Cary, NC, USA
1
Introduction to SAS Model
Manager
You can store and manage all types of models within the common model repository.
This includes open-source models that are developed using Python and R
2 Chapter 1 / Introduction to SAS Model Manager
Data tables are an integral part of the modeling process. Data tables are used for
scoring, publishing validation, and performance monitoring. In addition, data tables
are used to record adherence to your modeling methodology for audit compliance.
Performance data can be created from your operational data, provided that it has
the required structure (for example, the data contains a target variable). For
information about preparing and managing your data, see Getting Started with SAS
Data Preparation for the SAS Viya Platform and “About Managing Data” on page
13.
Here are some of the tasks that you can accomplish with SAS Model Manager:
n Use a single interface to access all of your business modeling projects and
models. All models are stored in a common model repository. Models can also
be accessed in one place using the Models category. Your most recent model
and project items are also available on the Home page, along with links to
What’s New and how-to (video) articles in SAS Communities, and links to
production documentation.
n Import models that you develop using a SAS application, such as Model Studio,
SAS Visual Analytics, and SAS Studio, as well as SAS code, open-source
programming language such as Python or R, and PMML models. You can also
create a new model with the model’s files in a folder or project.
n Compare models to assess candidate models.
n Manage data that is used for scoring, validating published models, and
performance monitoring.
n Run scoring tests to validate models.
1 In the address bar of your web browser, enter the URL for SAS Model Manager
and press Enter. The Sign In page appears.
Note: If you are in a single sign-on environment, you are not prompted to sign
in. Contact your system administrator if you need the URL for SAS Model
Manager. The default URL is [Link] The
last part of the URL (the application name) is case sensitive. If the default port
of 80 is used during configuration, you do not need to include the colon and port
in the URL.
4 (Optional) If this is your first time signing in to SAS Model Manager, the
Welcome to SAS window appears. Here you can set up a profile, which enables
you to customize some settings. You will then be taken to the SAS Model
Manager Home page.
TIP You can install SAS Model Manager as a Progressive Web App (PWA).
Note: The left navigation bar is also expanded by default the first time you sign in.
The next time you sign in, the navigation bar appears in the state that you left it
when you signed out.
4 Chapter 1 / Introduction to SAS Model Manager
Here are some of the actions that you can perform from Home:
n Click to display the items in a list view.
n Click to display the items in a tile view.
n Click to open an item, remove a recent item, or share a link to the item.
n Create a new project.
Note: Only the 40 most recent items appear on the Home page.
n Application persistence – By default, your session will never time out, so you
can restart your work more quickly. Your administrator can control the timing
with a configuration property in SAS Environment Manager.
n Performance – When installed as a PWA, SAS Model Manager typically starts
faster than when accessed in the browser.
n Desktop experience – Installing SAS Model Manager as a PWA confers all the
benefits of a traditional installation. You can launch SAS Model Manager from
the Start menu or Taskbar, and you do not need to sort through countless tabs
to find the correct instance of SAS Model Manager.
n Renaming – You can rename each PWA instance to quickly access different
environments, such as development, test, or production servers.
1 Open SAS Model Manager in a Chromium-based web browser and sign in.
2 Open the web browser’s More menu and select Install SAS.
Note: The Install SAS option might be located under another menu option. For
example, within the Microsoft Edge browser it is located under Apps.
SAS Model Manager is now installed as a desktop program named SAS. After one
web application has been installed as a PWA, all other SAS applications are
accessible in the PWA.
To access the Settings window, click your name in the application bar and select
Settings.
High-Level Model Support Matrix for Primary Functions 7
n Model Repositories
IMPORTANT The values in the Model Score Code Type column in each
table below are associated with the Score code type model property. For
more information, see “Set Model General Properties” on page 82.
Open-Source Models
You can import models that were created using an open-source programming
language such as Python and R and then perform tasks that are associated with the
primary functions.
Model
Programming Score Code Monitor
Language Type Import Score Publish Performance Compare Retrain
n Python and R open-source models can be published to CAS, Git, SAS Micro
Analytic Service, Amazon Web Services (AWS), Azure, Azure Machine Learning,
and Private Docker publishing destinations. For more information, see
“Publishing Requirements and Restrictions” on page 132.
n The Model Card tab is available for Python models with a model function of
classification or prediction. For more information, see “Generating Model Card
Content” on page 69.
Note: The Model Card tab is available for PMML models with a model function of
classification or prediction, and a score code type of DATA step. For more
information, see “Generating Model Card Content” on page 69.
Note: The Model Card tab is available for SAS Viya models with a model function
of classification or prediction. For more information, see “Generating Model Card
Content” on page 69.
High-Level Model Support Matrix for Primary Functions 9
Model
Score
Product Code Monitor
or Tool Type Import Score Publish Performance Compare Retrain
For more information about SAS Viya models, see the following documentation:
n SAS Viya: Machine Learning User’s Guide
Note:
n When analytic store models are imported using a SASAST file or are registered
into the common model repository from Model Studio, SAS Visual Analytics, or
SAS Studio, their score code type is set to DS2 multi-type, instead of Analytic
store.
n PMML models that you create with PMML 4.2 support DATA step score code.
When importing valid PMML models, set the score code type model property to
DATA step, instead of PMML. PMML models with a score code type of DATA
step can be scored and published. See “Import Models” on page 61.
n The Model Card tab is available for SAS models with a model function of
classification or prediction. For more information, see “Generating Model Card
Content” on page 69.
Note: Applies only to SAS analytic store (SASAST) files. SAS package (SPK) files are
not supported.
Note: Monitoring performance of models with the following score code types is supported only when
the performance definition includes input tables that contain scored data. For more information, see
“Monitoring Performance” on page 109.
1 PMML models that you create with PMML 4.2 support DATA step score code. When you are importing valid PMML
models, set the score code type model property to DATA step, instead of to PMML. PMML models with a score code type
of DATA step can be scored and published. See “Import Models” on page 61.
2 Scoring and publishing of decisions that contain a model with a score code type of SAS program is not supported by SAS
Intelligent Decisioning. For more information about scoring or publishing decisions, see SAS Intelligent Decisioning: User’s
Guide.
3 Models that have a score code type of Python or R can be scored, if the score code is in the correct format. The score
code must also be in the correct format for publishing and running performance. See “Scoring Python Models” on page 160
and “Scoring R Models” on page 162.
13
2
Managing Data
CAS data libraries (caslibs) can be created using SAS Data Explorer. To create a
new global caslib, see “Making Data Available to CAS” in SAS Data Explorer: User’s
Guide.
Note: You can access the Manage Data window only after a project or model has
been added to the common model repository.
CAUTION
Do not add or include files that contain executable or dynamic content that is
not valid or approved for your environment. Examples of executable content are
batch (.bat) files or executable (.exe) files. Examples of dynamic content are HTML,
Microsoft Office documents, JavaScript, dynamic PDF forms, and other forms of
executable content. This type of content, when downloaded, could execute in your local
environment and provide a way for malicious content to enter it. The Files service is
used when adding data files, model files, and project files. As general guidance, SAS
recommends that users be vigilant and cautious with any content that is added using the
Files service and accessed within SAS Model Manager.
14 Chapter 2 / Managing Data
Import Data
Note: Before importing data tables to use for performance monitoring, ensure that
the table names meet the requirements. For more information, see “Naming
Requirements for Input Data Tables” on page 111.
1 On the toolbar above the table, click and select Manage data. The Manage
Data window appears.
TIP You can also click Local files and navigate to the file location.
4 Make sure that the target location is set to the correct library location. The
default library location is cas-shared-default/Public.
Note: You can accept the default format or select a target format that is
appropriate for the source data. Not all source data should be saved to some
formats, even if they are supported by the target caslib. For example, the CSV
format might be supported, but you cannot save a binary image file to a CSV
target file and get useful data. Also, it is recommended to use the SASHDAT
Import Data 15
format for large data files that you want to use for performing analytic
calculations.
7 Click Cancel to close the Manage Data window, without selecting any of the
tables.
For more information, see “Working with Data in CAS” in SAS Data Explorer: User’s
Guide.
16 Chapter 2 / Managing Data
17
3
Managing Model Repositories
Note: Only SAS administrators and other authorized users can create, update, or
delete repositories. In addition, Authenticated Users cannot initially access new
custom repositories. A SAS administrator must grant access for a user or group to a
new custom repository. For more information, see “Managing Content” in SAS
Model Manager: Administrator’s Guide.
To access the settings for repositories, click the user button in the application bar
and select Settings ð SAS Model Manager ð Repositories.
18 Chapter 3 / Managing Model Repositories
1 Click the user button in the application bar and select Settings ð SAS Model
Manager ð Repositories.
2 Click .
Note: After you save the new repository, the description cannot be edited.
5 Click Save.
Rename a Repository
Note: By default, only SAS administrators can rename repositories.
Delete a Repository 19
1 Click your name in the application bar and select Settings ð SAS Model
Manager ð Repositories.
4 Click Rename.
Delete a Repository
Note: By default, only SAS administrators can delete repositories. A repository
cannot be deleted if it contains model or project content.
1 Click your name in the application bar and select Settings ð SAS Model
Manager ð Repositories.
4
Working with Projects
About Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
View Dashboard and Filter Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
View Projects Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Filter the List of Projects Using the Dashboard Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Create a New Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Adding Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Managing Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Variable Naming Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Add Variables from a Data Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Add Custom Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Assess Variables for Bias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Edit Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Delete Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Modifying Project Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Set Project General Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Set Model Evaluation Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Add Target Event Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Add KPI Alert Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Specify Model Usage Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Add User-Defined Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Add Tags to a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Managing Project Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Add Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Delete Project Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Download Project Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Run a Project Code File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
View File Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Managing Project Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Create a New Project Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Manage Project Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Delete a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Rename a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Search for Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Advanced Search for Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
22 Chapter 4 / Working with Projects
About Projects
Often numerous statisticians, modelers, and data scientists, working in their tool of
choice, are asked to solve a business problem by creating an analytical model. The
Projects category view enables users to view models grouped by business problem.
It also enables a user to perform an apples-to-apples comparison of models in
order to decide which model is the best to use as the champion.
You create projects within folders. The models within a project are associated with
a project version. A project version enables you to group models based on business
requirements. When you group your models by a specific time period, you can see
whether a particular business problem has changed. You can also determine how
you addressed those changes and use that insight to govern how you will address
these changes in the future.
A project consists of the models, variables, tests, and other resources that you use
to determine a champion model. For example, a banking project might include
models, data, and tests that are used to determine the champion model for a home
equity scoring application. The home equity scoring application predicts whether a
bank customer is an acceptable risk for granting a home equity loan.
Note: The History tab of a project shows events for the primary actions, and the
date on which the project was modified and by whom.
You can click Hide tiles or Show tiles on the toolbar. You can also share a link to
the Projects category by clicking the icon.
Here is an example of filtering the list of projects to display only projects that have
a Classification model function:
You can also use the Advanced Search for Projects window to specify additional
information in order to further filter the list. The filters that you applied using the
dashboard charts are reflected in the Advanced Search for Projects window. For
more information, see “Advanced Search for Projects” on page 47.
24 Chapter 4 / Working with Projects
TIP To remove an individual filter from a chart, you can click the empty
area beside the chart or you can click the icon within the tokens that are
located above the list of projects. You can also remove all filters by clicking
the icon, which is located in the right side of the toolbar.
TIP You can save a project at any time as long as all of the required
fields have been specified.
5 (Optional) Select a model function from the list or enter your own value. The
model function indicates the type of output that your predictive model project
generates.
Note: In the Choose a Location window, you can create a folder within a
repository folder to store projects and models for your organization. Repository
folders must be created using the Settings window. For more information, see
“About Model Repositories” on page 17.
It is recommended that the DMRepository and VTARepository repository
folders should be reserved for projects and models that are registered from
Model Studio. Also, the VARepository repository folder should be reserved for
models that are registered from SAS Visual Analytics. For more information, see
“Register Models” in SAS Viya: Machine Learning User’s Guide.
26 Chapter 4 / Working with Projects
8 (Optional) Click the Model Evaluation page and specify values for each setting:
a Select a default training table. Click , enter the name of the table in the
filter box, and select it. Click OK.
TIP If the desired data table is not available, you can import the
table from the Choose Data window. The table is then listed within
the results in the Choose Data window and can be selected as the
data table for the project. For more information, see “Overview of SAS
Data Explorer” in SAS Data Explorer: User’s Guide.
b Specify values for the target variable, target level, and target event value to
use when running performance definition.
Note: If you do not specify values for these settings when creating a project,
you must at least specify a value for the target level before running a
performance definition. For a project with a classification model function,
you must also specify the target event value.
c Specify values for the model assessment indicator, alert condition, and alert
threshold.
9 (Optional) Click the Variables page and select input and output variables from
the default training table or another input table. You can also add custom
variables.
Note: If you do not specify project variables on this page, you are prompted to
set them when you are setting a model as the project champion or as a
challenger.
a To select input variables, click Browse and select one or more variables, and
then click OK.
If you did not specify a default training table, here are the other ways that
you can select variables.
n Select an input table:
1 Click
5 Click Add.
6 Repeat steps 1 through 5 for each variable that you want to add.
7 Click OK.
b To select output variables, Browse and select one or more variables, and
then click OK.
Note: You have the same choices for selecting output variables that you had
for input variables. See the previous step.
c Select a value for each of the project-specific output variables. For example,
if you selected Classification as the model function on the General page,
select a value for the Output event probability variable.
Note: The model function that you specified determines the project-specific
output variables that are displayed. If you do not specify values for the
output variables when creating a project, you must specify them before
running a performance definition.
TIP You can also add user-defined properties after you create a project.
For more information, see “Add User-Defined Properties” on page 41.
e (Optional) Select the Add another property check box to add another
variable without closing the window.
g Repeat steps b through f for each property that you want to add.
Enter a value and select an existing tag, or press Enter to add a new tag. Repeat
this step to add more tags.
Note: The tag name can contain only alphanumeric characters, double-byte
characters, an underscore ( _ ), a hyphen ( - ), and a period ( . ). Spaces are not
allowed.
TIP You can also add tags after you create a [Link] more
information, see “Add Tags to a Project” on page 42.
12 Click Save.
Adding Models
After you create a project, you add models to a project version on the Models tab.
A project can contain multiple versions. You can also copy a model from a folder or
another project version. You can view and compare models in all versions or in one
selected version on the Models tab. After model evaluation, you set one of the
candidate models as the champion model and can also set one or more models as
challengers.
Here are some of the tasks that you can perform on the Models tab of a project:
n add a new custom model
n import models
30 Chapter 4 / Working with Projects
n copy a model
n compare models
Managing Variables
Input variables and output variables can be added to both project and model
objects on the Variables tab of an object. The same variable name cannot be used
for both an input and output variable.
Note: When you add, edit, or delete project variables, you might receive a warning
message indicating that the model role will be cleared. This happens when the
project champion model and one or more challenger models have been set.
2 Click Add variable and select Data table. The Choose Variables window
appears.
TIP If the desired data table is not available, you can import the table
from the Choose Data window. The table is then listed within the results
in the Choose Data window and can be selected as the data table for the
project. For more information, see “Overview of SAS Data Explorer” in
SAS Data Explorer: User’s Guide.
4 Select the data table that you want to import the variables from and click OK.
Managing Variables 31
5 In the Choose Variables window, select the variables that you want to add and
click to add the variables to the input variables or output variables list. You
can also click to add all of the variables from the available items list.
6 Click OK.
7 Click .
2 Click Add variable and select Custom variable. The Add Custom Variables
window appears.
Note: If you select "Input" or "(none)" as the variable type, you can select the
Assess variable for bias option. To mark a variable to be assessed for bias, it
must also have a measurement value of Binary, Nominal, or Ordinal. When a
variable is marked to be assessed for bias, it is used to calculate fairness and
bias metrics for a model using the training data. If no variables are marked for
bias at the time the model was trained, the fairness and bias metrics are not
available.
7 Click Add.
8 Repeat steps 3 through 6 for each variable that you want to add.
9 Click OK.
Note: If a model is set as champion, and any of the variables are marked to be
assessed for bias, the variable is also marked to be assessed for bias at the project
level.
2 Select a variable from the list and click Assess variable for bias.
TIP You can also mark a variable to be assessed for bias in the Edit
Variable window or when adding custom variables..
Edit Variables
1 Click the Variables tab.
2 Click on the name of the variable that you want to edit. The Edit Variable
window appears.
4 Click .
Delete Variables
1 Click the Variables tab.
2 Select the check box for the variables that you want to delete, click , and then
select Delete.
3 Click .
Modifying Project Properties 33
To set the project general properties, click the Properties tab, modify the property
values, and then click .
Property Description
Property Description
Property Description
Default thresholds for training metrics Specifies the default values for the
Accuracy, Generalizability, and Fairness
training metrics that are used for
comparing and assessing models using
the training data. You can use the
default values for the training metrics or
customize the thresholds for your
organizations specific use cases.
1 Click Add and select Add event value, or select Find event values to find the
suggested event values within the default training table.
Note: If you do not find the desired variables, add them on the Variables tab.
2 Map a score response variable to the event values that you added.
40 Chapter 4 / Working with Projects
Note: When selecting a fairness or model drift KPI metric you are also
prompted to select the variables to assess. Fairness metrics use variables that
are marked to be assessed for bias. Model drift metrics use input variables or
output variables depending on which KPI is selected.
Click to select one or more variables to assess.
6 Enter a value for the number of occurrences after which you want to set an alert
for this KPI rule.
7 Accept the default rule name or enter your own rule name.
8 Click OK.
9 Click .
n Select one or more KPI rules and click to delete them from the current
project.
Note: After modifying or deleting KPI rules, you must click to save the changes
to the project.
Modifying Project Properties 41
n Intended use
n Expected benefit
n Limitations
Note: The Model responsible party property is read-only at the model level, if the
model is located within a project.
e Repeat steps a through d for each property that you want to add.
3 Click .
42 Chapter 4 / Working with Projects
To edit a property:
3 Click OK.
4 Click .
To delete properties, select one or more properties in the table, and then click .
You can add one or more tags to a project. When you add tags to a project, they are
also added to a global list of tags that is available to be added to other projects
within the common model repository.
Automated tags are applied to a project when specific actions are performed, such
as models published from a project or performance monitoring is scheduled. They
also show key information about a project, such as an active workflow being
associated with the project, performance results available for a project, or
relationships that might exist.
Note: Tag property values for a project appear as tokens in the Tags column of the
Projects category view and can be used for sorting projects. The function for
searching projects for tag values is currently not supported.
To add a tag:
2 Enter a value and select an existing tag, or press Enter to add a new tag.
Note: The tag name can contain only alphanumeric characters, double-byte
characters, the underscore ( _ ), the hyphen ( - ), and the period ( . ). Spaces are
not allowed.
3 Click .
To delete a tag, click within the token, and then click . The tag is removed from
the project.
Managing Project Files 43
Add Files
Note: Currently, when you add a new file to a project, the file role is set to Custom
KPI.
2 Click , select a file to add to the project, and then click Open.
Note: You can add only those files that have a .sas file extension.
3 Click Add.
1 Select a file and click Run to execute the code within the file.
Note: You can view the status of the running code within the File Summary
panel. When the run status has a value of completed, the Results link appears in
this panel. The View results button is available in the toolbar
A version is a sequential number that increments by one each time you add a new
version. A project can contain multiple editable versions. A project version is used
to differentiate collections of models that are meant to solve the project’s problem
over time-boundaries. Your version might represent a calendar year, a retail season,
or a fiscal quarter. A version contains all of the candidate model resources that you
need to determine a champion model as well as all champion model resources. For
example, you might develop models for a scoring program that determines whether
a customer is eligible for a home equity loan.
2 Enter a name for the version, or accept the default name (for example, Version
2).
4 Click Save.
46 Chapter 4 / Working with Projects
1 On the Models tab, click in the Version drop-down list, and select Manage
versions. The Manage Project Versions window appears.
b Enter a name for the version, or accept the default name (for example,
Version 2).
d Click Save.
c Click Rename.
Note: When only one project version exists, it cannot be deleted. You must also
have the appropriate permissions to delete a version.
Delete a Project
Note: You must also have the appropriate permissions to delete a project.
Rename a Project
1 In the Projects category view, select a project, click , and select Rename.
3 Click Rename.
1 Click Advanced search, which is to the right of the search box. The Advanced
Search for Projects window appears.
48 Chapter 4 / Working with Projects
3 Enter a possible value in the Project name field to search for a project by name.
4 Specify values for one or more of the following fields to include them in the
search criteria:
Note: If you previously used the dashboard charts to filter the list of projects,
the filters are applied to the associated fields in this window.
n Operational status
n Model function
Search for Projects 49
n Performance properties
n Workflow Properties
n Deployment properties
n Publishing destination
n Created by
6 To search for a project by input variables or output variables, select a data table
and choose the variables that are associated with models or project objects.
a Click next to the Input variables, or Output variables field. The Choose
Input Variables or Choose Output Variables window appears.
b Click next to the Data table field. The Choose Data window appears.
c Select a data table from the list. The details of the selected data appear on
the right-hand side.
50 Chapter 4 / Working with Projects
TIP Use the search bar to locate the desired data table and filter
search results.
d When you have selected your data table, click OK. You are returned to
theChoose Input Variables or Choose Output Variables window.
Search for Projects 51
e Select the variables that you want to add and click . You can also click
to add all of the variables from the available items list.
f To remove variables, select the variables that you want to remove and click
. Click to remove all of the variables from the available items list.
g Click OK to close the window. The variable or variables that you selected
appear in the Input variables or Output variables fields.
7 Select relationships such as Govern model rist (SAS Model Risk Management).
8 To search for user-defined properties that are associated with project objects,
specify one or more property name and value pairs, or specify property names
only.
52 Chapter 4 / Working with Projects
c (Optional) Enter the value for the user-defined property in the Value
column.
d Select a row and click to remove the user-defined property from the
search criteria.
9 Click Search. The Projects category view opens and the project or projects that
meet the advanced search criteria are listed.
TIP Click Clear All to clear all previously entered search criteria in the
Search for Projects window.
53
5
Working with Models
About Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
View Dashboard and Filter Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
View Models Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Filter Models List Using the Dashboard Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Add a New Custom Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Add a Model within a Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Add a Custom Model within a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Import Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Import Models into a Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Import Models into a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
See Also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Export a Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Move or Copy a Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Move a Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Copy a Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Delete a Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Rename a Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Manage Model Content and Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Generating Model Card Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Managing Model Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Managing Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Modifying Model Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Managing Model Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Publish an Open Model Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Search for Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Advanced Search for Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
View Model Relationships and Related Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
54 Chapter 5 / Working with Models
About Models
You can add new custom models or import existing models using the SAS Model
Manager web application. Models can be stored within a folder or project version in
the SAS Model Manager common model repository.
The Models category view enables you to access all of the models in the common
model repository in one place. The models can be located in a folder, or a project
version. You can import models, add new custom models, compare models, and
export models. You can also view model relationships and related objects, as well
as search for models. Models that are within a project version can be published
from the Projects category view or when opened from the Models category view.
Models within folders cannot be published.
Several options exist for importing open-source models such as Python and R into
SAS Model Manager. You can place your model files in a ZIP file and then import
the model, or you can add a new custom model and add local files. You can also use
native Python code in a Jupyter notebook to submit REST API requests to the
Model Repository API. For more information, see model-management-resources
GitHub repository.
Note: Models can also be built using Model Studio, SAS Visual Analytics, or SAS
Studio and then registered into the common model repository.
For more information, see the following documentation:
n SAS Viya: Getting Started with Machine Learning
Here is an example of filtering the list of models to display only models that have a
score code type of DATA step:
You can also use the Advanced Search for Models window to specify additional
information in order to further filter the list. The filters that you applied using the
charts are reflected in the Advanced Search for Models window. For more
information, see “Advanced Search for Models” on page 92.
TIP To remove an individual filter from a chart, you can click the empty
area beside the chart or you can click the icon within the tokens that are
located above the list of models. You can also remove all filters by clicking
the icon, which is located in the right side of the toolbar.
CAUTION
Do not add or include files that contain executable or dynamic content that is
not valid or approved for your environment. Examples of executable content are
batch (.bat) files or executable (.exe) files. Examples of dynamic content are HTML,
58 Chapter 5 / Working with Models
Microsoft Office documents, JavaScript, dynamic PDF forms, and other forms of
executable content. This type of content, when downloaded, could execute in your local
environment and provide a way for malicious content to enter it. The Files service is
used when adding data files, model files, and project files. As general guidance, SAS
recommends that users be vigilant and cautious with any content that is added using the
Files service and accessed within SAS Model Manager.
2 Click Add models and select New custom model. The New Model window
appears.
Note: Including the following special characters in a model name could cause
errors when saving the model or while running a performance definition or job
that contains the model:
n a percent sign (%) or an ampersand (&)
5 Click to select a location to store the new model, and then click OK.
Note: In the Choose a Location window, you can create a folder within a
repository folder to store projects and models for your organization. Repository
folders must be created using the Settings window. For more information, see
“About Model Repositories” on page 17.
It is recommended that the DMRepository and VTARepository repository
folders should be reserved for projects and models that are registered from
Model Studio. Also, the VARepository repository folder should be reserved for
models that are registered from SAS Visual Analytics. For more information, see
“Register Models” in SAS Viya: Machine Learning User’s Guide.
6 (Optional) Click , select one or more files to include within the new model,
and then click Open.
7 To select a function, enter a value or click in the Function drop-down list, and
select the desired function.
8 To select a score code type, enter a value or click in the Score code type
drop-down list, and select the desired score code type.
Note: By default, models are added within the latest project version. You can
select a different project version from the Version drop-down list.
2 Open a project.
3 Click Add models and select New custom model. The New Custom Model
window appears.
60 Chapter 5 / Working with Models
Note: Including the following special characters in a model name could cause
errors when saving the model or while running a performance definition or job
that contains the model:
n a percent sign (%) or an ampersand (&)
6 (Optional) Click , select one or more files to include within the new model,
and then click Open.
7 To select a function, enter a value or click in the Function drop-down list, and
select the desired function.
8 To select a score code type, enter a value or click in the Score code type
drop-down list, and select the desired score code type.
TIP After you edit the model content, click to return to the project.
Import Models 61
Import Models
You can import models into a project or into a folder. However, only specific file
types can be used when you import models into a project or folder. Models that are
imported into a folder can then later be moved into a folder or project version. If a
model already exists in a project version with the same value for the external
model ID property, a new model version is created. The model name is updated
only when a new name is specified and the external model ID is the same.
Otherwise, a model with the same name cannot be imported.
Note: You cannot score, publish, or monitor performance of models that are within
a folder. Models must be within a project version in order for you to perform these
tasks.
Restrictions
Here are the file types that can be used to import models:
CAUTION
Do not add or include files that contain executable or dynamic content that is
not valid or approved for your environment. Examples of executable content are
batch (.bat) files or executable (.exe) files. Examples of dynamic content are HTML,
Microsoft Office documents, JavaScript, dynamic PDF forms, and other forms of
executable content. This type of content, when downloaded, could execute in your local
environment and provide a way for malicious content to enter it. The Files service is
used when adding data files, model files, and project files. As general guidance, SAS
recommends that users be vigilant and cautious with any content that is added using the
Files service and accessed within SAS Model Manager.
Note: Here are some PMML model file restrictions and limitations:
62 Chapter 5 / Working with Models
n The length of the variable names that are included in a PMML model file
cannot be greater than 32 characters.
n PMML XML files cannot be edited using the code editor. They are read-only.
n Files with the .pmml file extension cannot be viewed within the editor.
Note: When importing Python and R open-source models, you can place your
model files in a ZIP file and then import the model, or you can create a new
model and add local files. Also when creating a ZIP file you must specify to use
Unicode (UTF-8) encoded file names within the ZIP file.
Note: You can import models only into repository folders within the common
model repository (Model Repositories folder) or folders within a repository folder.
2 Click Add models and select Import. The Import Models window appears.
3 Click to select a location to store the models, and then click OK.
Import Models 63
Note: In the Choose a Location window, you can create a folder within a
repository folder to store projects and models for your organization. Repository
folders must be created using the Settings window. For more information, see
“About Model Repositories” on page 17.
It is recommended that the DMRepository and VTARepository repository
folders should be reserved for projects and models that are registered from
Model Studio. Also, the VARepository repository folder should be reserved for
models that are registered from SAS Visual Analytics. For more information, see
“Register Models” in SAS Viya: Machine Learning User’s Guide.
4 Click to select a file that contains your model contents. Select only one file at
a time in the Open window. The name of the selected file is used as the default
model name.
Click Open.
Note:
n Including the following special characters in a model name could cause
errors when importing the model or while running a performance definition
or job that contains the model:
o a percent sign (%) or an ampersand (&)
o unbalanced braces, brackets, parenthesis, or single or double quotation
marks
n If you previously exported an analytic store model from SAS Model Manager,
the analytic store files are included in the ZIP file. When you re-import the
analytic store model to the same system or another system, the analytic
store files are copied to the ModelStore caslib.
5 Click Add model to add rows so that you can import more models.
6 Repeat steps 4 and 5 until you have selected all of the models that you want to
import.
64 Chapter 5 / Working with Models
7 Click Import.
2 Open a project.
3 Click Add models and select Import. The Import Models window appears.
4 Click to select a file that contains your model contents. Select only one file at
a time in the Open window. The name of the selected file is used as the default
model name.
Click Open.
Note:
Import Models 65
5 Click Add model to add rows so that you can import more models.
6 Repeat steps 4 and 5 until you have selected all of the models that you want to
import.
7 Click Import.
Note: If a model already exists in a project version with the same value for the
external model ID property, a new model version is created. The model name is
updated only when a new name is specified. However, if the external model ID
property values do not match for the model with the same name, the model cannot
be imported. For more information about the external model ID property and other
model properties, see Table 5.2 on page 82.
66 Chapter 5 / Working with Models
See Also
n %MM_IMPORT_MODEL Macro
n %MM_IMPORT_ASTORE_MODEL Macro
n “Register a Model” in SAS Studio: Task Reference Guide
n REGISTERMODEL Procedure in SAS Viya: Machine Learning Procedures
n Register SAS Model Step
n Register Python Model Step
Export a Model
You can export one model at a time from the Models category view or from the
Models tab of a project.
Note: When you export an analytic store model, the analytic store files are
included in the ZIP file. If you re-import the analytic store model to the same
system or another system, the analytic store files are copied to the ModelStore
caslib.
To export a model:
Move a Model
To move a model:
4 Navigate to the folder or project version that you want to move the model to.
5 Click OK.
Copy a Model
To copy a model from a folder or another project:
2 Click Add models and select Copy from from the drop-down list. The Choose a
Model window appears.
4 Click for the model folder and select the model object. The model object is
indicated by the icon .
5 Click OK.
Note: Only the latest version of the source model is copied in to the project as a
new model object. The initial version for the model is 1.0.
Delete a Model
You can delete one or more models at a time from the Models category view or
from the Models tab of a project.
68 Chapter 5 / Working with Models
Note: The project champion model and open model objects cannot be deleted.
Rename a Model
You can rename one model at a time from the Models category view or from the
Models tab of a project.
To rename a model:
3 Click Rename.
Prerequisites
Here are the minimum prerequisites for viewing content on the Model Card tab for
a model:
n The model must have a function of either classification or prediction.
n The score code type must be DATA step, DS2 embedded process, DS2 multi-
type, DS2 package, analytic store, or Python.
n The training table associated with the model must be in a global caslib. Personal
caslibs such as CASUSER should not be used.
n Classification model must contain the dmcas_fitstat.json and dmcas_misc.json
files. Prediction models must contain the dmcas_fitstat.json and dmcas_lift.json.
For more information, see “Generate Model Files” on page 73 and “Modifying
Model Properties” on page 82.
70 Chapter 5 / Working with Models
Overview Section
The Overview section provides an at-a-glance review of the model. It provides
visuals of model health that are easy to understand and are supported by other
sections of the model card. This section shows the model performance during
training and over time. It also shows influential variables, variable privacy
classifications, and the completeness of the model card. Most of the data in the
Overview section is populated automatically for models that are registered from
Model Studio, but there are areas that require attention after a model is registered.
SAS models and Python open-source models can also be built using macros in SAS
Studio or python-sasctl. Models that are imported into the common model
repository are populated based on the metrics files that are included within the
model.
You can review and update the default thresholds for training metrics in the Model
Evaluation section of the project Properties tab. It is recommended that you
update these thresholds to ensure that they are appropriate for your use case, as
thresholds might differ from one use case to the next. For the performance
monitoring metric results to be available, you must define key performance
indicator (KPI) alert rules, and run performance monitoring for the specific model.
To ensure that the variable privacy classifications are available, you must analyze
the data in the Data Summary section of the model card. If you want the “No” to
change to a “Yes” in the Limitations Documented section, then complete the
limitations in the Model Usage section of the model card. Finally, to see fairness
metrics, you must specify one or more variables to assess for bias before training
the model in Model Studio, SAS Studio, or using python-sasctl.
For more information, see “Specify Model Usage Properties” on page 88.
For more information, see “Analyze Assets” in SAS Information Catalog: User’s
Guide.
The Model Audit section relies on two capabilities of SAS Model Manager:
performance monitoring and key performance indicator (KPI) alert rules.
Performance monitoring reviews model performance over time in batch at user-
defined time points. To generate performance monitoring results, you need data
with the actual or ground-truth values, and SAS Model Manager graphs model
performance over time. Without the ground-truth values, you get only metrics on
data drift.
CAUTION
Do not add or include files that contain executable or dynamic content that is
not valid or approved for your environment. Examples of executable content are
batch (.bat) files or executable (.exe) files. Examples of dynamic content are HTML,
Microsoft Office documents, JavaScript, dynamic PDF forms, and other forms of
executable content. This type of content, when downloaded, could execute in your local
environment and provide a way for malicious content to enter it. The Files service is
used when adding data files, model files, and project files. As general guidance, SAS
recommends that users be vigilant and cautious with any content that is added using the
Files service and accessed within SAS Model Manager.
Add Files
1 Click . The Add Model Files window appears.
2 Click , select one or more files to add to the model, and then click Open.
Manage Model Content and Versions 73
3 Click Add.
Some roles such as Score code and Score resource are automatically assigned
when you import or create new models based on their file names. The files are also
grouped into a few primary categories based on their file role and file name.
Note: The file type for the file that is assigned the file role of Score code must be
associated with the value that is specified for the score code type model property.
For example, if the file name is [Link], then the value for the score code
type should be Python. This ensures that the correct score code file is used and
that valid code is generated for a scoring job.
Required or
File Type File Name Purpose Optional Notes
File metadata [Link] Contains the list Optional This file is generated
of models files when a model is
74 Chapter 5 / Working with Models
Required or
File Type File Name Purpose Optional Notes
Score code and See notes for Enables the Required The content of the
scoring resources examples of file scoring of a score code varies
names. model within depending on the
SAS Model type of model.
Manager.l
File name examples:
n [Link]
n dmcas_
[Link]
n dmcas_
[Link]
n dmcas_
[Link]
n dmcas_
[Link]
n hmeq_classtree_
[Link]
n hmeq_classtree_r_
score.r
n dmcas_
[Link]
n hmeq_
[Link]
n hmeq_logistic_
[Link]
Fit statistics dmcas_fitstat.json Contains the fit Required for This file is generated
statistics from Model Card tab using the CAS assess
training the content and action. It is included
when registering a
Manage Model Content and Versions 75
Required or
File Type File Name Purpose Optional Notes
Lift statistics dmcas_lift.json Contains the lift Required for This file is generated
statistics from Model Card tab using the CAS assess
training the content and action. It is included
model using the model when registering a
training data. comparison model from Model
Studio. It can also be
generated using
python-sasctl.
Required or
File Type File Name Purpose Optional Notes
building the
model.
ROC statistics dmcas_roc.json Contains the Required for This file is generated
ROC statistics model using the CAS assess
from training the comparison action. It is included
model using the when registering a
training data. model from Model
Studio.
Required or
File Type File Name Purpose Optional Notes
Assess for bias assessforbiasmeta Indicates which Optional This file is generated
metadata [Link] variables to when registering a
assess for bias. model from Model
Studio.
Group metrics [Link] Contains the Required for This file is generated
fairness metrics Model Card tab using the CAS
from training the content assessBias action. It
model. is included when
registering a model
from Model Studio.
This file can also be
generated using
python-sasctl.
Required or
File Type File Name Purpose Optional Notes
Managing Variables
Input variables and output variables can be added to both project and model
objects on the Variables tab of an object. The same variable name cannot be used
for both an input and output variable. You can also map model output variables to
project output variables for models with a score code type of DATA step, SAS
program, or PMML.
Manage Model Content and Versions 79
Note: When you add, edit, or delete model variables, you might receive a warning
message indicating that the model role will be cleared. This happens when the
model is set as the project champion or as a challenger.
Note: Do not use any of these operators or keywords as variable names: AND, OR,
IN, NOT, LIKE, TRUE, or FALSE. Do not use _N_ or any DS2 reserved word as a
variable name. For more information, see “Reserved Words in the DS2 Language” in
SAS DS2 Programmer’s Guide.
2 Click Add variable and select Data table. The Choose Variables window
appears.
TIP If the desired data table is not available, you can import the table
from the Choose Data window. The table is then listed within the results
in the Choose Data window and can be selected as the data table for the
project. For more information, see “Overview of SAS Data Explorer” in
SAS Data Explorer: User’s Guide.
4 Select the data table that you want to import the variables from and click OK.
5 In the Choose Variables window, select the variables that you want to add and
click to add the variables to the input variables or output variables list. You
can also click to add all of the variables from the available items list.
6 Click OK.
7 Click .
2 Click Add variable and select Custom variable. The Add Custom Variables
window appears.
80 Chapter 5 / Working with Models
Note: If you select "Input" or "(none)" as the variable type, you can select the
Assess variable for bias option. To mark a variable to be assessed for bias, it
must also have a measurement value of Binary, Nominal, or Ordinal. When a
variable is marked to be assessed for bias, it is used to calculate fairness and
bias metrics for a model using the training data. If no variables are marked for
bias at the time the model was trained, the fairness and bias metrics are not
available.
7 Click Add.
8 Repeat steps 3 through 6 for each variable that you want to add.
9 Click OK.
Note: If a model is set as champion, and any of the variables are marked to be
assessed for bias, the variable is also marked to be assessed for bias at the project
level.
2 Select a variable from the list and click Assess variable for bias.
TIP You can also mark a variable to be assessed for bias in the Edit
Variable window or when adding custom variables..
Edit Variables
1 Click the Variables tab.
2 Click on the name of the variable that you want to edit. The Edit Variable
window appears.
4 Click .
Delete Variables
1 Click the Variables tab.
2 Select the check box for the variables that you want to delete, click , and then
select Delete.
3 Click .
Note: You can modify the model output variable mappings only for a model with a
score code type of DATA step, SAS program, or PMML. The names of model output
variables must also match the names of the project output variables for other types
of models. Otherwise, you cannot run performance for a model or publish a model.
2 Click and select Map output variables. The Map Output Variables window
appears.
82 Chapter 5 / Working with Models
3 Select the model output variables to map with each of the project output
variables.
4 Click OK.
5 Click .
To set the model general properties, click the Properties tab, modify the property
values, and then click .
Property Description
Name Specifies the name of the model. It can be renamed only from
the Models category view or the Models tab of a project.
Project name Specifies the name of the project that contains the model.
Project version Specifies the project version that contains the model.
Manage Model Content and Versions 83
Property Description
Function Specifies the type of output that your model generates. For more
information, see Table 5.3 on page 84.
Score code type Specifies the type of score code that your model uses. A value
must be specified in order for you to be able to publish a model,
run a test, or monitor performance for a model. You can select a
value from the list or enter your own value. User-defined values
are not added to the list. Instead, they are stored within the
model properties.
Note: A model with the score code type of DS2 multi-type can
contain code files for a DS2 embedded process, a DS2 package,
and one or more analytic stores.
Depending on score code type, you can score, monitor, or publish
a model. For more information, see “High-Level Model Support
Matrix for Primary Functions” on page 7.
Train table Specifies the Train table that is used to validate scoring
functions or scoring model files when a user publishes the
associated project champion model or challenger models to a
database. This property is optional.
Train code type Specifies the type of train code that your model uses. This
property is for informational purposes only. You can select a
value from the list or enter your own value. User-defined values
are not added to the list. Instead, they are stored within the
model properties.
Input variable Specifies the type of input variables and whether the variables
type come from the [Link] model file or from the
[Link] model file. Models that are registered from SAS
Studio might contain the [Link] model file. Valid
values are score and train.
Note: If both files are included with the registered model, the
property value is set to score.
Target event Specifies the target variable value that defines the desired target
value variable event.
Target level Specifies the target level of binary, nominal, ordinal, or interval.
Output category Specifies the output variable name, when the Model function
variable property is set to Text categories.
84 Chapter 5 / Working with Models
Property Description
Output event Specifies the output event probability variable name, when the
probability Model function property is set to Classification, Analytical,
variable Computer vision - Image classification, or Transformation.
Output prediction The output prediction variable name, when the Model function
variable property is set to Prediction, Analytical, Computer vision -
Image segmentation, Computer vision - Keypoints detection,
Computer vision - Object detection, Single-series forecasting,
or Transformation.
Output sentiment Specifies the output variable name, when the Model function
variable property is set to Text sentiment.
Output topic Specifies the output variable name, when the Model function
variable property is set to Text topics.
Modeler Specifies the user ID for the user that built the model.
Tool Specifies the tool that was used to build the model. An example
is Model Studio.
Tool version Specifies the version number of the tool that is specified in the
Tool property.
External model ID Specifies the model ID for a model that was registered from an
external application, such as Model Studio.
Computer vision - Image Function for computer vision models that are used for
classification image classification.
Computer vision - Function for computer vision models that are used for
Object detection object detection in a classification network.
Computer vision - Function for computer vision models that are used for
Keywords detection keywords detection in neural networks.
Computer vision - Image Function for computer vision models that are used for
segmentation image segmentation.
Single-series forecasting Function for models used to forecast future data based on
past data for a single time series.
Text concepts Function for SAS Visual Text Analytics concepts models.
Text sentiment Function for SAS Visual Text Analytics sentiment models.
Text topics Function for SAS Visual Text Analytics topics models.
1 Open a model.
3 Enable the Govern model risk toggle button and click . The model is now
ready to be linked to from a model object in SAS Model Risk Management.
4 Click and select Model Risk Management to switch to SAS Model Risk
Management.
5 Click and open the model that you want to establish a relationship with.
TIP For information about the SAS Model Risk Management model
object properties and content, see SAS Model Risk Management: User’s
Guide.
7 Click Link and select a source model from the common model repository. Only
models that are enabled to govern model risk in SAS Model Manager and that
are not already linked are available in the models list.
8 Click Save.
10 In the Models category view, click the name of the model that you previously
linked to from the SAS Model Risk Management model object. The model object
opens
11 Return to the Relationships page of the model Properties tab. The relationship
status now indicates that the model is linked.
Manage Model Content and Versions 87
12 Click Close.
13 In the list of models, click to the right of a model to view the model risk card
for the related object that the model is associated with.
The Model Risk Card for Related Object window appears.
14 Click Close.
e Repeat steps a through d for each property that you want to add.
3 Click .
To edit a property:
3 Click OK.
88 Chapter 5 / Working with Models
4 Click .
To delete properties, select one or more properties in the table, and then click .
n Intended use
n Expected benefit
n Limitations
Note: The Model responsible party property is read-only at the model level, if the
model is located within a project.
You can add one or more tags to a model. When you add tags to a model, they are
also added to a global list of tags that is available to be added to other models
within the common model repository.
Automated tags are applied to a model when specific actions are performed, such
as publishing a model. They also show key information about a model, such as the
score code type, or relationships that might exist.
Note: Tag property values for a model appear as tokens in the Tags column of the
Models category view and Models tab of a project. The tag values can be used for
sorting models. The function for searching models for tag values is currently not
supported.
To add a tag:
2 Enter a value and select an existing tag, or press Enter to add a new tag.
Note: The tag name can contain only alphanumeric characters, double-byte
characters, the underscore ( _ ), the hyphen ( - ), and the period ( . ). Spaces are
not allowed.
3 Click .
To delete a tag, click within the token, and then click . The tag is removed from
the model.
Note: Here are a few restrictions when creating a new model version.
n The current version of an object is the version that has the highest version
number. When you create a new version, SAS Model Manager locks the current
version before it creates the new version.
n You cannot modify a locked version.
1 On the Versions tab, click New Version. The New Version window appears.
2 Select the version type: Minor or Major. Version numbers follow the format
[Link]. If you select Major, the number to the left of the period is
incremented. If you select Minor, the number to the right of the period is
incremented.
3 Click Save.
1 Open a model.
3 Select a destination.
Note: If you have Read and Write permissions to the caslib that is specified in a
publishing destination, the destination is shown in the list.
For more information, see SAS Viya: CAS Authorization Window and
“Configuring Publishing Destinations” in SAS Model Manager: Administrator’s
Guide.
4 (Optional) Assign tags to the published model by entering a tag value. Press
Enter after each tag.
Manage Model Content and Versions 91
TIP Tag names cannot start with a period or a hyphen, and cannot
contain more than 128 characters. They can contain only alphanumeric
characters, the underscore ( _ ), the hyphen ( - ), and the period ( . ).
5 Specify a value for any properties that might appear after you select a
destination.
Destination
Property Description Type Required
6 In the Items to Publish section, select a model version to publish. The default
value is the latest version of the model.
7 Choose whether to create a new model version after publishing the model. The
option to create a new model version is selected by default.
Note: If you choose to not create a new model version, the content of the
model version that was published is locked and cannot be edited.
8 (Optional) Update the published name in the Items to Publish section. The
maximum length and character restrictions differ, depending on your
destination.
For more information, see Table 7.1 on page 135.
9 (Optional) If you have previously published the model with the same published
name, you can replace the model. In the Items to Publish section, enable the
92 Chapter 5 / Working with Models
Replace item with the same name toggle in order to replace the previously
published item of the same name in the same destination.
10 Click Publish. The Publishing Results window appears. The status of the
publishing request is displayed in the Status column.
Note: When you select a CAS destination and click Publish, the CAS
destination table is automatically reloaded and the newly published item is
made available to other applications.
When you are publishing to a SAS Micro Analytic Service destination, the Micro
Analytic Module column is also displayed with a URL to the published model.
Note: The following is true for models that are within a project version: after a
model has been published, a new version of the model is created and a
publishing validation test is also created. For more information, see “Managing
Model Versions” on page 89 and “Validate Published Models” on page 104.
n perform an advanced search for models using model properties, input variables,
output variables, or user-defined properties.
n search for model objects across applications using the search field in the
application bar.
For more information about searching, see “Search” in SAS Viya Platform:
General Usage Help for Web Applications.
1 Click Advanced search, which is to the right of the search box. The Advanced
Search for Models window appears.
3 Specify values for one or more of the following fields to include them in your
search criteria:
Note: If you previously used the dashboard charts to filter the list of models,
the filters are applied to the associated fields in this window.
n Model name
n Model function
n Algorithm
n Deployment properties
n Publishing destination
n Modeler
5 To search for a model by input or output variables, select a data table and
choose the variables that are associated with models or model objects.
a Click next to the Input variables or Output variables field. The Choose
Data window appears.
b Select a data table from the list on the left-hand side. The details of the
selected data appear on the right-hand side. The sample data and available
profiles of the data table are also viewable.
TIP Use the search bar to locate the desired data table and filter
search results.
c When you have selected your data table, click OK. The Choose Variables
window appears.
Search for Models 95
d Select the variables that you want to add and click . You can also click
to add all of the variables from the available items list.
e To remove variables, select the variables that you want to remove and click
. Click to remove all of the variables from the available items list.
f Click OK to close the Choose Variables window. The variables that you
selected appear in the Input variables and Output variables fields.
6 To search for user-defined properties that are associated with model objects,
specify one or more property name and value pairs, or specify property names
only.
c (Optional) Enter the value for the user-defined property in the Value
column.
d Select a row and click to remove the user-defined property from the
search criteria.
7 Click Search. The Models category view displays the list of models that meet
the advanced search criteria.
TIP Click Clear All to clear all previously entered search criteria in the
Advanced Search for Models window.
6
Comparing and Evaluating
Models
Here are the tasks that you can perform to evaluate your models:
n compare and assess models
Compare Models
You can compare and assess one or more models. When you compare models, the
model comparison output includes model properties, user-defined properties, and
variables. The model comparison output might also include fit statistics, and lift
and ROC plots for the models if the required model files are available. The fit
statistics, as well as plots for lift and ROC, can be produced using the ASSESS
procedure or Python packages such as sklearn and [Link]. The fit statistics and
plots are available by default for the SAS Visual Data Mining and Machine Learning
models that are created using Model Studio. On the Files tab of a model object,
notice that JSON files (dmcas_fitstat.json, dmcas_lift.json, dmcas_roc.json) are
included. These JSON files are used to show the fit statistics and plots when
comparing models in SAS Model Manager.
Note: You can create the JSON files that are needed to display the fit statistics as
well as Lift and ROC plots. Here are some methods that you can use to create the
JSON files: the ASSESS procedure, the %MM_MODEL ADD_JSONFILES macro, or
Python code and packages such as sklearn and [Link].
For more information, see the following documentation and examples:
n The ASSESS Procedure in SAS Visual Statistics: Procedures
To compare models:
IMPORTANT The Show all and Show differences buttons were hidden
with the 2024.09 release.
Note: Section titles appear whether or not the section contains content.
n Model Properties
n User-Defined Properties
n Input Variables
n Output Variables
n Target Variable
n Fit Statistics
Note: This section compares the fitness statistics for the chosen models.
n Plots
4 Click Close.
100 Chapter 6 / Comparing and Evaluating Models
Test Models
To be scored, tested, or validated, a model must have a file that is assigned to the
score code model file role and have the following score code types: DATA step, SAS
program, DS2 package, DS2 embedded process, DS2 multi-type, Analytic store,
Python, or R. For more information, see “Assign Model File Roles” on page 73 and
“Set Model General Properties” on page 82.
When you publish a model, the system creates a publishing validation test. You can
edit the publishing validation test to select a test data table and output library. This
enables you to score and validate models within the publishing destination that
they were previously published to. For more information, see “Validate Published
Models” on page 104.
Note: Models that have a score code type of Python or R can be scored, tested, or
validated only when the score code is in the correct format. For more information,
see “Scoring Python Models” and “Scoring R Models”.
Note: If you have one or more tests, you can select the check box and click Run, to
run them all at the same time.
1 On the Scoring tab of a project, click the Tests tab, and then click New Test. The
New Test window appears.
Test Models 101
2 Enter a name for the test if you do not want to use the default name.
5 Select the version of the model to use for the test. The default value is Use
latest version.
TIP If you select a specific version, that version is always used, even if
new versions of the model are available. Select Use latest version, if you
want to always use the most recent version of the model.
6 Click , select the input table for the test, and click OK.
102 Chapter 6 / Comparing and Evaluating Models
TIP If the desired data table is not available, you can import the table
from the Choose Data window. The table is then listed within the results
in the Choose Data window and can be selected as the data table for the
project. For more information, see “Overview of SAS Data Explorer” in
SAS Data Explorer: User’s Guide.
7 Map variables.
Note: SAS Model Manager automatically maps model input variables to the
columns in the input table when the names and data types of the variables
match those of the table columns. If any input variables cannot be mapped
automatically, a warning message is displayed. When you are creating a scoring
test for a model with the score code type of SAS program, if the column names
in the input table do not match the model input variable names, a warning
message is displayed and the Variables button is disabled. The exception is
input variables for SAS Visual Text Analytics models with a score code type of
SAS program. Those can be mapped.
To map variables:
b For each input variable, select the table column to which the variable should
be mapped.
c Click OK.
8 (Optional) By default, the library for the output data is the same as that for the
input data table. Click to specify a different library to store the new test
output table that is created when the test is run. The input data table and
output library must be on the same CAS server.
9 Click Run to save and run the test. Alternatively, click Save to save the test
definition without running it.
Note: You can also select a check box for a test and click Run in the toolbar to
rerun a test.
The status of the test is indicated by the icon in the Status column.
Test Models 103
Icon Status
The test is not ready to run. The test definition is not complete, or it
might contain errors.
The test completed, but warnings were issued in the SAS log. The URI
to the log file is shown on the Test Results page.
The test did not run successfully. Check the SAS log for information.
The URI to the log file is shown on the Test Results page.
10 Click in the Results column to view the results of the test. The Output page
is displayed by default. The Test Results page displays information about the
test, including the URIs for the test definition and test results. It also includes
URIs to the SAS code that was run by SAS Model Manager, the output data set,
and the SAS log that was generated when the code was run.
You can also click the Code or Log pages to view the test result details.
You can also work with the output table in other SAS applications to analyze
the data, create and compare models, discover relationships hidden in the data,
and generate reports based on the data.
Edit a Test
1 On the Scoring tab of a project, click the Tests tab.
3 Edit the test properties as needed, and then click Save or Run.
Note: You can also select a check box for a test and click Run in the toolbar to
rerun a test.
104 Chapter 6 / Comparing and Evaluating Models
Delete a Test
1 On the Scoring tab of a project, click the Tests tab.
n those that have a score code type of DATA step, SAS program, DS2 package,
DS2 embedded process, DS2 multi-type, Analytic store, Python, and R.
For more information, see “Assign Model File Roles” on page 73 and “Set Model
General Properties” on page 82.
Note: Models that have a score code type of Python or R can be validated if the
score code is in the correct format. For more information, see “Scoring Python
Models” on page 160 and “Scoring R Models” on page 162.
2 Click a test name. The Edit Publishing Validation Test window appears.
5 Click , select the input table for the test, and click OK.
TIP If the desired data table is not available, you can import the table
from the Choose Data window. The table is then listed within the results
in the Choose Data window and can be selected as the data table for the
project. For more information, see “Overview of SAS Data Explorer” in
SAS Data Explorer: User’s Guide.
6 Specify a value for any properties that might appear for the publishing
destination and are required for validation. For example, if you select an Azure
Machine Learning destination, a property appears for you to select a compute
resource.
7 (Optional) By default, the library location is the same as that for the input data
table. Click to specify a different library to store the new test output table
that is created when the test is run. The input data table and output library must
be on the same CAS server.
8 Click Run to run the test. Alternatively, click Save to save the test definition
without running it.
106 Chapter 6 / Comparing and Evaluating Models
Note: You can also select a check box for a test and click Run in the toolbar to
rerun a test.
The status of the test is indicated by the icon in the Status column. For more
information, see Table 6.1 on page 103.
9 Click in the Results column to view the results of the test. The Test Results
page displays information about the test, including the URIs for the test
definition and test results. It also includes URIs to the SAS code that was run by
SAS Model Manager, the output data set, and the SAS log that was generated
when the code was run.
You can click the Output, Code, or Log pages to view the test result details.
You can also work with the output table in other SAS applications to analyze
the data, create and compare models, discover relationships hidden in the data,
and generate reports based on the data.
Note: When a publishing validation test is run for a model that was published to an
Azure Machine Learning destination, the published model is deployed to Azure
Kubernetes Service (AKS) in order to perform the validation. After validation is
complete, the published model is removed from AKS. For more information about
deploying models, see “Deploy a Published Model to Azure Kubernetes Service
(AKS)” on page 142.
2 Select one or more publishing validation tests, click , and select Delete.
2 Select one of the publishing validation tests, click , and select Duplicate.
Set Champion and Challenger Models 107
You use challenger models to test the strength of champion models. The champion
model for a project can have one or more challenger models. A model can be
flagged as a challenger model only after a champion model for the project has been
selected. A challenger model can be located in any version of a project.
Note: A SAS Visual Data and Machine Learning project champion model is
automatically set as a champion within a SAS Model Manager project when you
register the models from a Model Studio project, as long as a project champion
does not already exist. If a project champion already exists, the new Model Studio
project champion is set as a candidate champion.
3 Choose whether to create a new model version when setting the champion. The
option to create a new model version is selected by default.
Note: Setting the champion locks the current model version. You must create a
new version to modify the model content.
4 If the Select Project Output Variables window appears, select the model output
variables to use as project level output variables. You can use the same variable
names or specify different names for the project output variables.
Note: You can modify the names of the project output variables only for a
model with a score code type of DATA step, SAS program, and PMML. The Map
Output Variables window appears only for a model that has a score code type of
DATA step, SAS program, PMML, R or Python.
Click Save.
5 If the model input variables are not project input variables, you are prompted to
add the input variables to the project.
In the confirmation message, click Yes.
Note: If you click No, the model is not set as the project champion.
6 When the champion model has been set, is displayed in the Role column.
3 If the Select Project Output Variables window appears, select the model
output variables to use as project level output variables. You can use the same
variable names or specify different names for the project output variables.
Note: You can modify the names of the project output variables only for a
model with a score code type of DATA step, SAS program, and PMML. The Map
Output Variables window appears only for a model that has a score code type of
DATA step, SAS program, PMML, R or Python.
Click Save.
4 If the model input variables are not project input variables, you are prompted to
add the input variables to the project.
In the confirmation message, click Yes.
Monitoring Performance 109
Note: If you click No, the model is not set as a challenger model.
5 When the challenger model has been set, is displayed in the Role column.
2 Select the champion model or a challenger model, click , and select Clear role.
Note: If you clear the role of the project champion model, all of the associated
challenger models are cleared as well. The candidate champion role cannot be
cleared.
Monitoring Performance
SAS Model Manager enables you to monitor and evaluate model performance of
your champion, challenger, and other models to ensure that your models are
performing efficiently. You begin by collecting performance data that has been
created by the champion model at intervals. Your organization determines what
those intervals are. You then use performance data to assess model prediction
accuracy. It includes all of the required variables as well as a target variable. For
example, you might want to create performance data tables monthly or quarterly
and then use SAS Model Manager to create a performance definition that includes
each time interval.
110 Chapter 6 / Comparing and Evaluating Models
Next, you create a performance definition, and then you run it. The output from
running a performance definition includes a summary of performance and model
assessment information, performance result tables, and several charts for each
model that is specified within the definition. The summary information includes
model assessment criteria, scoring observations, performance definition high-level
details, and the performance rank of models within the containing project. The
results include charts such as Variable Distribution, Characteristic, Stability, Lift,
Gini, ROC, Kolmogorov-Smirnov (KS), Average Squared Error (ASE), and Feature
Contribution (FCI) charts for each model that was specified within the definition.
Additional charts are displayed for prediction models with an interval target, and
custom charts can be configured to be displayed as well. Only the charts for each
model are displayed on the Performance tab of a project. You can explore and
visualize the data tables that contain the performance results using SAS Visual
Analytics.
You can also conduct partial model performance monitoring based on the input
data. If your input data contains only the input variables, then the system computes
and returns the characteristic analysis. If your input data contains the score output
variable, then the system also computes and returns the stability analysis. If your
input data contains the response variables, then the system also computes and
returns the accuracy measures, such as Gini, ROC, Lift, Kolmogorov-Smirnov (KS),
Average Squared Error (ASE), and Feature Contribution Index (FCI). The charts that
are displayed depend on the model function and whether there is a binary, nominal,
or interval target variable defined within a project. Additional charts are displayed
for a classification model with a nominal target, a prediction model with an interval
target, and a text categories model.
Alternatively, you can also create performance monitoring output by writing your
own SAS program using the performance monitoring macros that are provided with
SAS Model Manager. You can then submit your program using SAS Studio. The
performance result tables that are produced using the macros can then be viewed
in SAS Studio, SAS Environment Manager, or SAS Visual Analytics. For more
information, see “Performance Monitoring Macro” in SAS Model Manager: Macro
Reference.
Note: When performance monitoring is run, the system can score models only with
the following score code types: SAS program, DATA step, DS2 embedded process,
DS2 multi-type, Analytic store, Python, or R. For more information, see “Set Model
General Properties” on page 82.
For more information and examples of the performance monitoring charts, see
“Concepts: Performance Monitoring” on page 164.
n Target level
n Target event value or Target event values
n Output event probability variable or Predicted target variable
Prediction project
n Target variable
n Target level
n Output prediction variable
Text categories project
n Actual category variable
n Document ID variable
n Text variable
n Predicted category variable
3 Click .
n The value for the prefix can contain underscores, but spaces are not
recommended in the prefix name or the table name.
n The name can contain alphanumeric characters, double-byte characters, and
special characters, except for the following characters: / \ , ; ' "
n The second level must be a number.
n The sequence number and time label must be unique across all of the data table
names.
n The time label is used to represent the data in the charts. If a time label is not
provided, the sequence number is displayed in the charts.
112 Chapter 6 / Comparing and Evaluating Models
Supported Formats
Use one of the following formats for the name of the data tables:
n prefix_sequenceNumber
n prefix_sequenceNumber_timeLabel
IMPORTANT If the names of the models that are selected as part of the
definition contain the following types of special characters, the performance
results cannot be generated:
Monitoring Performance 113
2 Click the Performance tab of a project and then click New Definition. The New
Performance Definition window appears.
3 On the General page, accept the default name for the performance definition or
enter a name of your choosing.
TIP If the desired data table is not available, you can import the
table from the Choose Data window. The table is then listed within
the results in the Choose Data window and can be selected as the
data table for the project. For more information, see “Overview of SAS
Data Explorer” in SAS Data Explorer: User’s Guide.
Note: The value for the prefix can contain hyphens and underscores, but
spaces are not recommended in the prefix name or the table name.
Note: If the data tables that were specified in the performance definition
exist in a library, but are not loaded in a CAS session, they are loaded at run
time. This condition might occur when the CAS server is restarted.
6 (Optional) Verify that the CAS library for the output tables is set. The default
value is cas-shared-default/ModelPerformanceData. The input data source
library and the output data library must be on the same CAS server.
7 Click the Models page and select an option for the data scoring method.
Monitoring Performance 115
Note: Partial save is supported. After you complete this step of the wizard, you
can click Save.
Note: When selecting models, the function and target level properties are
validated at the model level, not the project level. For more information, see
“Modifying Model Properties” on page 82.
Note: The latest version of the champion and challenger models are used
when running performance.
Note: When all model versions are displayed there are two rows for the
latest version of the model. In the Model Version column, one row contains
"Use latest version" and the model version number, and the other contains
just the model version number. If you select the row with "Use latest
version", the latest version of the model is always used when running
performance. If you select the row with a specific version of a model, that
model version is always used when running performance, even if newer
versions of the model are available.
TIP Click Latest versions to display only the current latest version
for all of the models within the project.
116 Chapter 6 / Comparing and Evaluating Models
9 Click the Input Variables page to view the input variables to include in the
report results.
b Select the project input variables that you want to use for analysis when
generating the performance results.
TIP By default, all of the project input variables are selected when
you are creating a new definition.
c (Optional) You can create custom bins for variables with a decimal data type
by adding one or more bin cut-off points. A bin for missing values is created
automatically.
Monitoring Performance 117
The bin cut-off points are used to build bins that cover the range of values
for the selected variable. The bins that are built are for missing values, the
lower range of values, and the upper range of values, without creating
overlapping bins or gaps between bins. Here are some examples:
n If a bin cut-off point of X is added, the first bin contains values <= X and
the second bin contains values > X. A third bin is also created for missing
values, if applicable.
n If two bin cut-off points, X and Y are added, where X < Y, the first bin
contains values <= X, the second bin contains values > X and <=Y, and the
third bin contains values > Y. A fourth bin is also created for missing
values, if applicable.
Create custom bins for a variable:
1 Click in the Variable Bin Type column. The Customize Variable Bins
window appears.
3 Enter a numeric value, and then click Add. Repeat this step to add more
bin cut-off points.
4 Click Save.
118 Chapter 6 / Comparing and Evaluating Models
Note: When you save the bin cut-off points, they are automatically sorted in
ascending order.
10 Click the Output Variables page to view the output variables to include in the
report results. Select the project output variables that you want to use for
analysis when generating the performance results.
TIP By default, all of the project output variables are selected when you
are creating a new definition.
11 (Optional) Click the Bias Variables page to view the variables that are marked
for bias assessment and will be included in the performance results.
TIP You can modify the variables that are marked for bias assessment
on the Variables tab of a project.
12 (Optional) Click the Target Properties page to view the properties that are
being used to compute stability and accuracy measures to assess model
prediction accuracy.
TIP You can modify the values of the target properties on the
Properties tab of this project. If the values are changed after a
performance definition is created, you must edit the performance
definition and save it, in order for the changes to take effect.
2 Click and select View job history to view the current status of the
performance job.
Monitoring Performance 119
3 When the job is complete, click Close to return to the Performance tab and
view the results.
The Summary page contains assessment information about the models that are
included in the project’s performance results. It also includes scoring
observations, performance definition high-level details, and the performance
rank of models within the containing project.
Note:
The model performance rank is based on the specified model assessment
criteria in the project’s properties. If the assessment criteria are not specified or
user-defined criteria is specified in the project’s properties, the misclassification
KPI is used to determine the rank of models in a project with a classification
model function. Likewise, the average squared error (ASE) KPI is used to
determine the rank of models in a project with a prediction model function.
a Click a model object tab to view the performance results for that specific
model.
120 Chapter 6 / Comparing and Evaluating Models
Note: For the Input Variable Distribution and Feature Contribution charts,
you can select variables from the drop-down list to change the content of
the chart. This is an example of the YOJ variable distribution.
c Click to view the variables that are included in the performance definition.
122 Chapter 6 / Comparing and Evaluating Models
Note: You can conduct partial model performance monitoring based on the
input data. If your input data contains only the input variables, then the system
computes only the characteristic analysis. If your input data contains the score
output variable, then the system also computes the stability analysis. If your
input data contains the response variables, then the system also computes the
accuracy measures, such as Gini, ROC, Lift, Kolmogorov-Smirnov (KS), Average
Squared Error (ASE), and Feature Contribution Index (FCI). Additional charts are
available for running performance for a prediction model with an interval target.
For more information, see “Model Monitoring” on page 171.
Note: SAS Visual Analytics opens within the same browser window, and the
performance data for the associated chart is shown. For more information, see
SAS Visual Analytics: Working with Report Content.
5 Click Close.
1 Click Edit.
3 Click Save.
For information about the definition content, see “Create a New Performance
Definition” on page 112.
Note: Currently, the layout of the Summary page cannot be modified. The
Summary, Comparison charts, and Model charts submenu options were
124 Chapter 6 / Comparing and Evaluating Models
removed with the 2025.01 release. Also, the Fairness and Bias section was
added with the 2025.03 release.
3 Arrange the charts to appear in the order that you want by using drag and drop
in the Charts panel.
TIP Click the Help icon next to a chart to view information about that
specific chart in the Charts panel.
b Open a report.
c Click on the object toolbar, and then select Copy embeddable markup.
The Copy Embeddable Markup window appears.
Monitoring Performance 125
Note: If you are using SAS Visual Analytics for the 2025.01 release or an
earlier release, then you should select Copy link. For more information, see
“Copy a Link to an Object” in SAS Visual Analytics: Designing Reports.
d Click Manage Permissions to specify who can use the report link. It is
recommended to select the People with existing access option.
e Click Copy markup and paste the link into a text file so that you can use the
link when creating a custom chart in SAS Model Manager.
Note: The SAS Visual Analytics report object that you want to link to must
be on the same host as SAS Model Manager.
For more information, see “Copy Embeddable Markup for an Object” in SAS
Visual Analytics: Designing Reports.
3 On the Performance tab of your project, click and select Edit layout. The Edit
Layout of Model Charts window appears.
Note: The Summary, Comparison charts, and Model charts submenu options
were removed with the 2025.01 release.
4 Click Add Custom Chart. The Add Custom Chart window appears.
126 Chapter 6 / Comparing and Evaluating Models
5 Paste the report object link in the Report object link box.
8 Click Add.
1 Click Run and select Schedule for later. The Schedule Job window appears.
2 Select an option from the Frequency drop-down list to specify how often to
trigger the job to run (such as a specified number of minutes, hourly, or dailly).
3 Depending on your choice for the frequency interval, different fields appear in
the window to enable you to specify a frequency for running the job. For
example, if you select Yearly in the Frequency field, you can specify a day of the
month (such as the first of January), the last day of a month, or a specific
weekday in a month (such as the third Thursday in February). If you specify
Minutes in the Frequency field, you can specify that the job runs every 5, 10, 15,
20, or 30 minutes. Use these fields to specify the criteria for the trigger interval.
Monitoring Performance 127
4 In the Time field, specify when the job schedule should start. Times are
specified in 24-hour format.
5 Specify the time zone to use when evaluating the time for the job schedule and
the date on which it starts.
7 Specify when the job schedule ends. You can specify that the job schedule
never ends, that it ends after a certain number of times, or that it ends on a
specific date.
8 Click Save.
TIP Only one job schedule can exist for each project performance
definition. To view or edit an existing performance job schedule, click Run
and select Schedule for later. Make your changes and click Save.
You can also edit or delete a job schedule using SAS Environment Manager.
Additional triggers can be added to an existing job schedule only by using SAS
Environment Manager. To access SAS Environment Manager, click and select
Manage Environment. For more information, see “Schedule Jobs” in SAS
Environment Manager: User’s Guide.
CAUTION
128 Chapter 6 / Comparing and Evaluating Models
Do not delete job requests in SAS Environment Manager. If you delete a job
request in SAS Environment Manager, the performance monitoring feature does not
work as designed.
Note: If a project has been registered from Model Studio, an actions menu
button appears to the left of the open items icon.
TIP If the desired data table is not available, you can import the
table from the Choose Data window. The table is then listed within
the results in the Choose Data window and can be selected as the
data table for the project. For more information, see “Overview of SAS
Data Explorer” in SAS Data Explorer: User’s Guide.
Retrain a Project from Model Studio 129
5 Click Send.
Note: When you select the Retrain now with a new data table option, all pipelines
in the associated Model Studio project are rerun. The previous pipeline results are
overwritten. When the pipelines have finished running in Model Studio, a new
champion model is selected during pipeline comparison. The new champion model
is then auto-registered into a new project version within the associated SAS Model
Manager project.
130 Chapter 6 / Comparing and Evaluating Models
131
7
Publishing Models
Here are the different locations that models can be published from within the SAS
Model Manager web application:
n The project champion model and its challengers can be published from the
Projects category view.
n The Models tab of a project.
Note: For information about what types of models are supported for publishing,
see “High-Level Model Support Matrix for Primary Functions” on page 7 and
“Publishing Requirements and Restrictions” on page 132.
n You can edit the publishing validation test to select a test data table and output
library.
n Model validation runs within the publishing destination that the model was
published to.
For more information, see “Validate Published Models” on page 104 and “Schedule
Jobs” in SAS Environment Manager: User’s Guide.
See Also
n “Publishing Python Models”
n “Publishing R Models”
Here is a list of the model score code types and the types of destinations that you
can publish your models to:
134 Chapter 7 / Publishing Models
Note: The supported container publishing destinations are Amazon Web Services,
Azure, Google Cloud Platform (GCP), and Private Docker. When open-source
(Python or R) models are published to a container publishing destination, a runtime
container is created using an open-source base image. When SAS Viya models are
published to a container publishing destination, a runtime container is created using
the SAS Container Runtime base image. For more information, see “Container Base
Images for Scoring” in SAS Viya Platform: Publishing Destinations.
Contain
SAS Micro er
Model Score Analytic Destinat
Code Type CAS Git Hadoop Service Teradata AML ions Databricks
DATA step Yes Yes Yes Yes Yes Yes Yes Yes
DS2 multi- Yes Yes Yes Yes Yes Yes Yes Yes
type
PMML No No No No No No No No
SAS program No No No No No No No No
1 SAS Viya models that are built using pipelines by combining SAS procedures, CAS actions, and open-source code (Python
or R) cannot be published to a container destination.
Note: Here are the types of SAS models that are currently supported for publishing
to container destinations:
n SAS Visual Data Mining and Machine Learning models that are registered from
Model Studio, SAS Visual Analytics, or SAS Studio
n SAS Visual Statistics models that are registered from SAS Visual Analytics or
SAS Studio
n SAS Visual Text Analytics models that are registered from Model Studio or SAS
Studio
n DATA step models in SAS package files that are created using SAS Enterprise
Miner and then imported into SAS Model Manager
For more information, see “Set Model General Properties” on page 82.
Published Name
The maximum length for all published names is 100 characters. Character
restrictions differ depending on your destination. See Table 7.1.
Container destinations The published name must start with a letter or an underscore. It cannot
contain spaces, multi-byte characters, or special characters other than the
underscore.
Note:
n The supported container destinations are Amazon Web Services (AWS),
Azure, Google Cloud Platform (GCP), and Private Docker.
n When publishing a model to an AWS container destination, the published
name can contain only alphanumeric characters.
n When publishing SAS models, the published name that you enter is
prepended with a forward slash (/) and then is assigned to the
SAS_SCR_APP_PATH environment variable. The value of this variable
determines the module name. For more information, see “Changing the
Endpoint Name for a Container” in SAS Container Runtime: Programming
and Administration Guide.
Azure Machine The published name must start with a letter or an underscore. It cannot
Learning contain spaces, multi-byte characters, or special characters other than the
underscore.
Git The published name cannot contain colons (:) or double quotation marks.
SAS Cloud Analytic The published name cannot contain single or double quotation marks.
Services (CAS)
SAS Micro Analytic The published name cannot contain the following characters: ! @ # $ % ^ & *
Service ( ) | = ~` \ / . { } " ' ;
Databricks The published name cannot contain the following characters: ! @ # $ % ^ & *
( ) | = ~` \ / . { } " ' ;
Hadoop The published name cannot contain colons (:) or double quotation marks.
136 Chapter 7 / Publishing Models
Teradata The published name must start with a letter or an underscore. It cannot
contain spaces, multi-byte characters, or special characters other than the
underscore.
2 Select a project, click , and select Publish. The Publish Models window
appears.
Note: The project champion model and its challengers appear in the Items to
Publish section.
3 Select a destination.
Note: If you have Read and Write permissions to the caslib that is specified in a
publishing destination, the destination is shown in the list.
For more information, see SAS Viya: CAS Authorization Window and
“Configuring Publishing Destinations” in SAS Model Manager: Administrator’s
Guide.
4 (Optional) Assign tags to the published models by entering a tag value. Press
Enter after each tag.
TIP Tag names cannot start with a period or a hyphen, and cannot
contain more than 128 characters. They can contain only alphanumeric
characters, the underscore ( _ ), the hyphen ( - ), and the period ( . ).
5 Specify a value for any properties that might appear after you select a
destination.
Publish a Project Champion Model 137
Destination
Property Description Type Required
6 For each model in the Items to Publish section, perform these steps:
a Select a model version to publish. The default value is the latest version of
the model.
b Choose whether to create a new model version after publishing the model.
The option to create a new model version is selected by default.
Note: If you choose to not create a new model version, the content of the
model version that was published is locked and cannot be edited.
c (Optional) Edit the Published name if you do not want to use the default
name for the published model. The maximum length and character
restrictions differ, depending on your destination.
For more information, see Table 7.1 on page 135.
7 Click Publish. The Publishing Results window appears. The status of the
publishing request is displayed in the Status column.
Note: When you select a CAS destination and click Publish, the CAS
destination table is automatically reloaded and the newly published item is
made available to other applications.
When you are publishing to a SAS Micro Analytic Service destination, the Micro
Analytic Module column is also displayed with a URL to the published model.
TIP If you close the Publishing Results window before publishing has
completed, you can still see whether the model was published
successfully on the History tab of the project.
Note: The following is true for models that are within a project version: after a
model has been published, a new version of the model is created and a
publishing validation test is also created. For more information, see “Managing
Model Versions” on page 89 and “Validate Published Models” on page 104.
2 Open a project.
3 (Optional) Select a version from the Versions drop-down list. By default, the
models within the current displayed version appear in the list.
4 Select one or more models on the Models tab, click , and select Publish. The
Publish Models window appears.
Publish Models from a Project Version 139
5 Select a destination.
Note: If you have Read and Write permissions to the caslib that is specified in a
publishing destination, the destination is shown in the list.
For more information, see SAS Viya: CAS Authorization Window and
“Configuring Publishing Destinations” in SAS Model Manager: Administrator’s
Guide.
6 (Optional) Assign tags to the published models by entering a tag value. Press
Enter after each tag.
TIP Tag names cannot start with a period or a hyphen, and cannot
contain more than 128 characters. They can contain only alphanumeric
characters, the underscore ( _ ), the hyphen ( - ), and the period ( . ).
7 Specify a value for any properties that might appear after you select a
destination.
Destination
Property Description Type Required
8 For each model in the Items to Publish section, perform these steps:
140 Chapter 7 / Publishing Models
a Select a model version to publish. The default value is the latest version of
the model.
b Choose whether to create a new model version after publishing the model.
The option to create a new model version is selected by default.
Note: If you choose to not create a new model version, the content of the
model version that was published is locked and cannot be edited.
c (Optional) Edit the Published name if you do not want to use the default
name for the published model. The maximum length and character
restrictions differ, depending on your destination.
For more information, see Table 7.1 on page 135.
9 Click Publish. The Publishing Results window appears. The status of the
publishing request is displayed in the Status column.
Note: When you select a CAS destination and click Publish, the CAS
destination table is automatically reloaded and the newly published item is
made available to other applications.
When you are publishing to a SAS Micro Analytic Service destination, the Micro
Analytic Module column is also displayed with a URL to the published model.
Note: The following is true for models that are within a project version: after a
model has been published, a new version of the model is created and a
publishing validation test is also created. For more information, see “Managing
Model Versions” on page 89 and “Validate Published Models” on page 104.
View Model Publish History 141
Note: Only models that are associated with a project can record an event on the
History tab.
2 Open a project.
4 (Optional) Enter published in the Search event box to search for models that
have been published.
Figure 7.1 Example of the Publishing Information for a CAS Publishing Destination
142 Chapter 7 / Publishing Models
1 Click the Scoring tab of a project, and then click the Publishing Validation tab.
2 Select a publishing validation test, click , and select Deploy to AKS. The
Deploy to Azure Kubernetes Service (AKS) window appears.
Note: The endpoint name can contain only alphanumeric characters, and letters
must be lowercase.
5 Click Deploy.
Note: A toast message is displayed indicating that the published model is being
deployed from the Azure Machine Learning to Azure Kubernetes Service (AKS).
You can check the deployment status within the Azure Machine Learning
destination.
Deleting Published Models 143
Note: Models that are published to container destinations cannot be deleted from
SAS Model Manager or using the Model Publish API service. Users must manually
delete the models from their container registry that is associated with the specific
container publishing destination.
For information about publishing destinations, see SAS Viya Platform: Publishing
Destinations.
144 Chapter 7 / Publishing Models
145
8
Tracking Deployments
About Deployments
The goal of a modeling project is to identify models that can predict the best data-
driven outcomes and deploy them in critical business systems. SAS Model Manager
provides tools to evaluate candidate models, declare champion models, and inform
your scoring officer that a predictive model is ready for validation or production.
The Deployments category view enables you to access all of your model
deployments in one place, view key metrics about your organization’s model
deployments, and track their status.
Note: Deployments are not available until after you have published models from a
project.
146 Chapter 8 / Tracking Deployments
View Deployments
When you view the Deployments category, a graph appears at the top of the
application window and tiles with key information are displayed in the left panel.
The graphs and tiles provide the following metrics:
n total deployments
You can click Hide graph or Show graph on the toolbar. You can also share a link to
the Deployments category by clicking the icon.
View and Filter Deployments 147
TIP To select more than one bar in the graph select CTRL+
Here is an example of filtering the list to display only deployments for a specific
destination.
You can also use the Advanced Search for Deployment Models window to specify
additional information in order to further filter the list. The filters that you applied
using the graph are reflected in this window. For more information, see “Advanced
Search for Models” on page 92.
TIP To remove an individual filter from a graph, click the empty area beside
the graph or click the icon within the tokens that are located above the
list of deployments. To remove all filters, click the icon, which is located in
the right side of the toolbar.
148 Chapter 8 / Tracking Deployments
Project (Version) Opens the associated project and displays the Models tab.
1 Click Advanced search, which is to the right of the search box. The Advanced
Search for Deployed Models window appears.
Search for Deployments 149
4 Specify a range for the date published in order to limit the list of deployments to
specific dates and times.
5 Enter a user ID to include the user that the models were published by in the
search criteria.
6 Enter a tag value and press Enter, to search for a tag that is assigned to a
published model.
150 Chapter 8 / Tracking Deployments
7 Click Search. The Deployments category view is displayed with the list of
deployments that meet the advanced search criteria.
TIP Click Clear All and then click Search to clear all previously entered
search criteria in the Advanced Search for Deployed Models window.
151
9
Using SAS Workflow with SAS
Model Manager
TIP There is a sample workflow definition available with the SAS Model
Manager: Quick Start Tutorial on [Link] and additional workflow
definition samples in the Model Management Resources GitHub repository.
For information about creating workflow definitions, see SAS Workflow Manager:
User’s Guide.
152 Chapter 9 / Using SAS Workflow
Requirements
Before users can use SAS Workflow with SAS Model Manager, a system
administrator must complete the following tasks:
n Configure a user account for a workflow client to have service execution
privileges. The Workflow service uses this account to make service task calls
when running a workflow instance.
n Grant users or a user group workflow administrative privileges.
n Specify the SAS Model Manager client identifier and enable a workflow
definition to make it available to SAS Model Manager.
Note: The developer of a workflow definition can also complete this task.
For more information, see “Configuring SAS Workflow” in SAS Model Manager:
Administrator’s Guide.
Here are the controls and attribute values that are supported:
Here are the high-level steps for adding attributes to a workflow user task to utilize
the controls that SAS Model Manager provides:
3 Add an attribute with the same name as the prompt and specify an attribute
value that SAS Model Manager supports.
154 Chapter 9 / Using SAS Workflow
IMPORTANT The name of the attribute and the prompt must match, in
order for the control that is associated with the attribute to appear in the
workflow task.
For an example of how to add a prompt as part of a workflow user task and
associate the attribute with the prompt, see “Add the Set Champion and Challenger
Models User Task” in SAS Workflow Manager: Quick Start Tutorial. You can also use
the workflow definition BPMN file that is included in the [Link] file
and follow the steps in “Add the Set Champion and Challenger Models User Task” in
SAS Workflow Manager: Quick Start Tutorial.
For more information about adding attributes and prompts, see “Managing
Attributes” in SAS Workflow Manager: User’s Guide.
Start a New Workflow 155
To start a workflow:
Note: The Workflow tab appears only for users who have workflow
administrative privileges when workflow definitions are available. For more
information, see “Requirements” on page 152.
2 Click Start Workflow and select a workflow definition from the list. The Start
Workflow window appears.
4 Click Start. The workflow is added to the list with a status of “In progress”.
156 Chapter 9 / Using SAS Workflow
About Tasks
The Tasks category view displays the tasks for workflows that are in progress, and
that you have been assigned to as a potential owner or that have been claimed by
you.
n open a task
n release a task
Complete a Task
1 Click to view the Tasks category.
4 Specify values for any prompts that are displayed on the Prompts tab.
5 Click the Properties tab to view task properties, including the associated object.
7 Complete any actions that are associated with the task. An example is
importing models into a project.
Working with Tasks 157
8 Click Complete.
9 Click Complete in the confirmation message. You are returned to the task
category view.
Note: Alternatively, you can select one or more tasks and can click to open
them, or click to claim them.
Release a Task
1 Select one or more tasks.
2 Click .
Note: Alternatively, if you already have the task open, you can click .
Search Tasks
In the Tasks category view, you can search the tasks that are displayed in the list.
Here are the two options available for searching tasks:
n Enter a value in the Search field above the list to filter the list by task name.
n Click Advanced search, which is to the right of the search box, to search the
list by task name, workflow name, date started, date claimed, or date due.
158 Chapter 9 / Using SAS Workflow
159
10
Concepts
Several options exist for importing open-source models into SAS Model Manager.
You can place your model files in a ZIP file and then import the model, or you can
create a new model and add local files. For more information, see “Add a New
Custom Model” on page 57 and “Import Models” on page 61. You can also create
models using the Model Repository API. The API can be called in several ways,
including using Python programs or using Python in a Jupyter notebook. For more
information, see model-management-resources GitHub repository and Model
Repository API documentation.
Python Models
In order to run an on-demand scoring test for a model from within the SAS Model
Manager web application, the Python score code must be in the correct format.
Here are the format requirements for what must be included in the Python score
code:
n import statements for any modules that are needed.
n an Output statement enclosed in quotation marks that lists the output variables
and directly follows the score function definition. List all output parameters as
comma-separated values. Do not specify None if there is no output parameter.
n the lists of variables are case insensitive and must be comma separated.
If your Python model includes a pickle file, you must also include the following
code, which specifies the name of the pickle file that should be loaded:
Concepts: Open-Source Models 161
IMPORTANT The method to load the pickle file was updated in this code
example with the 2024.08 stable release. The [Link] function was
changed to pd.read_pickle.
try:
global _thisModelFit
except NameError:
with open(settings.pickle_path + "hmeq_logistic.pickle", "rb") as _pickle_file:
_thisModelFit = pd.read_pickle(_pickle_file)
Here is an example:
[
{
"step":"install statsmodels ",
"command":"pip3 install statsmodels==0.14.0"
}
{ "step":"install pandas",
"command":"pip3 install pandas==1.5.3"
}
]
For additional examples of how to format your Python score code file and the
[Link] file, see the Python model samples in the model-management-
resources GitHub repository.
See Also
n “Test Models” on page 100
162 Chapter 10 / Concepts
See Also
n “About Publishing Models” on page 131
n “Validate Published Models” on page 104
R Models
Scoring R Models
After you import an R model, you can run an on-demand scoring test for the model.
You can also publish a model to a publishing destination to score and validate it.
When you publish a model from a project version to a CAS or a container publishing
destination such as Amazon Web Services (AWS), Azure, Google Cloud Platform
(GCP), or Private Docker, a publishing validation test is created. The publishing
validation test can then be run to validate the model within the publishing
destination. Models that are published to a container publishing destination can be
scored within run-time containers.
In order to run an on-demand scoring test for a model from within the SAS Model
Manager web application, the R score code must be in the correct format.
Note: If an R model is transformed to PMML 4.2 format and the PMML XML file is
imported into SAS Model Manager, the score code type is set to DATA step. PMML
models with a DATA step score code can be scored using a scoring test within the
SAS Model Manager web application.
Here are the format requirements for what must be included in the R score code:
n import statements for any libraries that are needed.
n an Output statement that lists the output variables must be declared on the
first line within the body of the score function definition. List all output
parameters as comma-separated values. Do not specify None if there is no
output parameter. Example: #output: outvar1, outvar2
n the lists of variables are case insensitive and must be comma separated.
n the path to the RDA or RDS file must be specified. Example: file =
[Link](rdsPath, 'hmeq_classtree_r.rds')
if (!exists("myClassTree"))
{
myClassTree <<- readRDS(file = [Link](rdsPath,
'hmeq_classtree_r.rds'))
}
Publishing R Models
R models can be published to CAS, a Git repository, or a container publishing
destination such as Amazon Web Services (AWS), Azure, Google Cloud Platform
(GCP), or Private Docker. When you import an R model, the score code type is set
to R. To be published to CAS or container publishing destinations, R models must
have a score code type of R and an R score code file that contains a scoring
function in the correct format.
See Also
n “About Publishing Models” on page 131
n “Validate Published Models” on page 104
164 Chapter 10 / Concepts
The Variable Binning charts show you a graphical representation of binning over
a period of time for the selected input or output variable.
The Characteristic and Stability charts detect and quantify shifts in the
distribution of variable values that occur in input data and scored output data
over time. By analyzing these shifts, you can gain insights on scoring input and
output variables.
Model Monitoring
The model monitoring charts are a collection of performance assessment charts
that evaluate the predicted and actual target values. The model monitoring
charts create several charts:
n Lift
n Gini
n KS
Data Composition
Variable Distribution
On the Performance tab of a project, you can view the variable distribution of a
model. The Input Variable Distribution and Output Variable Distribution charts are
a graphical representation of distributions over a period of time for the selected
variable. Each line plot represents the data for a specific period of time. The Y axis
is the percentage of observations in a bin that is proportional to the total count.
To change the variable that appears in the chart, select a variable from the drop-
down list.
Variable Binning
The Input Variable Binning and Output Variable Binning charts show a graphical
representation of binning over a period of time for the selected input or output
variable. Each bar plot represents the data for a specific bin. The Y axis is the
percentage of observations in a bin that is proportional to the total count.
To change the data that appears in the chart, select a variable and a time label from
the drop-down lists.
Note: For each time period that you run performance, SAS Model Manager creates
a new point on the charts. Line segments between points in time do not appear on
the charts unless you specify at least three data sources and collection dates as
part of the performance definition.
Characteristic
The Input Variable Characteristic chart detects and quantifies the shifts in the
distribution of variable values in the input data over time. These shifts can point
to significant changes in customer behavior that are due to new technology,
competition, marketing promotions, new laws, or other influences.
If large enough shifts occur in the distribution of variable values over time, the
original model might not be the best predictive or classification tool to use with
the current data.
Concepts: Performance Monitoring 169
The Characteristic chart uses a population stability index (PSI) to quantify the
shifts in a variable's values distribution that can occur between the training data
set and the current data set. The PSI is computed for each predictor variable in
the data set, using this equation:
Numeric predictor variable values are placed into bins for frequency analysis.
Outlier values are removed to facilitate better placement of values and to avoid
scenarios that can aggregate most observations into a single bin.
If the training data set and the current data set have identical distributions for a
variable, the variable's population stability index (PSI) is equal to 0. A variable
with a PSI value that is P1>2 is classified as having a moderate change in
distribution. The Characteristic chart uses the performance measure P1 to count
the number of variables that receive a PSI value that is greater than 0.1.
A variable that has a PSI value that is P1>5 or P25>0 is classified as having a
significant change in distribution. A performance measure P25 is used to count
the number of variables that have significant changes in distribution, or the
number of input variables that receive a PSI score value that is greater than or
equal to 0.25.
Stability
The Output Variable Stability chart evaluates changes in the distribution of
scored output variable values as models score data over time, and detects and
quantifies shifts in the distribution of output variable values in the data that is
produced by the models. If an output variable from the training data set and the
output variable from the current data set have identical distributions, then that
output variable's population stability index (PSI) is equal to 0. An output
variable with a PSI value that is greater than 0.10 and less than 0.25 is classified
as having a moderate change in distribution. A variable that has a PSI value that
is greater than 0.30 is classified as having a significant change in distribution
Too much of a shift in predictive variable output can indicate that model tuning,
retraining, or replacement might be necessary.
Model Monitoring
Lift
The Lift chart provides a visual summary of the usefulness of the information that
is provided by a classification model for predicting a binary outcome variable.
Specifically, the report summarizes the utility that you can expect by using the
champion model as compared to using baseline information only. Baseline
information is the prediction accuracy performance of the initial performance
monitoring definition or batch program using operational data.
A monitoring Lift chart can show a model's cumulative lift at a given point in time or
the sequential lift performance of a model's lift over time. The Lift performance
indexes Lift5Decay, Lift10Decay, Lift15Decay, and Lift20Decay are used to detect
model performance degradation. The performance indexes are not displayed in the
Lift chart, but are available in the mm_model_indicator performance results data
table. The data that underlies the Lift chart is contained in the mm_lift performance
results data table.
Use the monitoring Gini chart to detect degradations in the predictive power of a
model.
The data that underlies the monitoring Gini and ROC charts are contained in the
mm_roc performance results data table.
KS
The KS charts contains the Kolmogorov-Smirnov (KS) test plots for models with a
binary target. The KS statistic measures the maximum vertical separation, or
deviation between the cumulative distributions of events and non-events. This
trend chart uses a summary data set that plots the KS statistic and the KS
probability cutoff values over time.
The data that underlies the KS chart is contained in the mm_ks performance results
data table.
If the underlying data distribution has not changed over time and the current model
is still effective in predicting the interval target, you should not see any significant
changes in the overall spread of the predicted interval target values.
Concepts from the statistical process control (SPC) are used along with the
XSCHART statement in the SHEWHART procedure to monitor the means and the
standard deviation of the predicted interval target over time. For more information,
see The SHEWHART Procedure – Constructing Charts for Means and Standard
Deviations in SAS/QC User’s Guide and Statistical Process Control Action Set in
SAS Visual Statistics: Programming Guide.
Concepts from the statistical process control (SPC) are used along with the
XSCHART statement in the SHEWHART procedure to monitor the standard
deviation of the predicted interval target over time. For more information, see The
SHEWHART Procedure - Methods for Estimating the Standard Deviation in
SAS/QC User’s Guide.
Here is an example of the Standard Deviation of the Predicted Interval Target chart.
Concepts: Performance Monitoring 177
Concepts of the statistical process control (SPC) are used with the p chart to
monitor the proportions over time. For more information, see The SHEWHART
Procedure - Constructing Charts for Proportion Nonconforming (p Charts) in
SAS/QC User’s Guide
Here are the percentiles that are represented in the Proportion of Predicted Interval
Target Values charts:
n Above the 25th Percentile (first quartile)
It is recommended that you look at the p charts together. For example, if the 25th
percentile p chart at time period Q3 is out of bounds, but the 50th and the 75th
percentile p charts at time period Q3 are not, then you can infer that the
distribution has moved the values that are below the 50th percentile, but not those
that are above the 50th percentile.
Note: When there is a small sample size, the proportion might not reach the
expected value.
Here are examples of the Proportion of Predicted Interval Target Values charts.
Figure 10.1 Proportion of Predicted Interval Target Values above the 25th Percentile
Concepts: Performance Monitoring 179
Figure 10.2 Proportion of Predicted Interval Target Values above the 50th Percentile
Figure 10.3 Proportion of Predicted Interval Target Values above the 75th Percentile
180 Chapter 10 / Concepts
Feature Contribution
The feature contribution index (FCI) measures the strength of the relationship
between each input variable and the predicted numeric output variables. When you
are running performance, the FCI macros are used to compute the feature
contribution indices for interval and nominal predictors and return the indices in the
output data. The output data is then used to create the Feature Contribution chart.
The top nine variables with the maximum absolute contribution for first data point
are displayed in the drop-down list in descending order. The input data must
contain the scored model data or else you must score the model when running
performance, in order for the feature contribution index to be computed for the
model variables. Otherwise, the Feature Contribution Index chart is not displayed.
The 95% confidence limits for an FCI are calculated by applying the interval
inversion method (Kromrey and Bell 2010 and Steiger 2004). The limits are
computed based on the number of levels of the predictor (one for an interval
predictor), the number of observations, and the FCI statistic at the baseline time
period. If the FCI statistic at the current time period is above (or below) the upper
(or lower) confidence limit, then you have reasons to suspect that the current FCI
statistic is statistically different from that at the baseline time period. To put it
another way, the feature at the current time period contributes more (or less) to the
prediction than that at the baseline time period.
The percent out-of-bounds value, which is the ratio of two differences is also
calculated. The numerator is the difference from the current FCI statistic to the
upper (or lower) confidence limit. The denominator is the difference from the upper
(or lower) confidence limit to the baseline FCI statistic. The ratio indicates the
urgency of the out-of-bound situation.
References:
n Kromrey, J. D., and Bell, B. A. (2010). “ES_ANOVA: A SAS Macro for Computing
Point and Interval Estimates of Effect Sizes Associated with Analysis of
Variance Models,” Proceedings of the SouthEast SAS Users Group Conference
(SESUG 2010), paper PO-05. Cary, NC: SAS Institute Inc. Available at https://
[Link]/sesug/2010/[Link].
n Steiger, J. H. (2004). “Beyond the F Test: Effect Size Confidence Intervals and
Tests of Close Fit in the Analysis of Variance and Contrast Analysis,”
Psychological Methods, 9(2), 164-182. [Link]
10.1037/1082-989X.9.2.164.
See Also
“Feature Contribution Index Macros” in SAS Model Manager: Macro Reference
182 Chapter 10 / Concepts
Population Stability
The population stability index (PSI) indicates the degree of changes of a
distribution from a baseline. The Population Stability Index Out-of-Bounds
Indicators charts enable you to identify the features that need additional scrutiny.
PSI measures the extent a variable has shifted in distribution over time. For a
continuous variable, the PSI is calculated on the binned histogram. For a categorical
variable, the PSI is calculated on the frequency table. Suppose p0 is the proportion
of observations found in a bin of a continuous variable (or a category of a
categorical variable) at time t0. Similarly, p1 is the proportion in the same bin (or
category) at time t1. The PSI of this bin is (p1 - p0) * ln(p1 / p0). By summing over all
the bins, the PSI metric is obtained.
The one-sided 95% confidence limits for the PSI is calculated by applying a method
in Bilal Yurdakul and Joshua Naranjo (2020). The baseline PSI is always zero. The
upper limit is computed based on the number of bins, and the numbers of
observations at both times. If the PSI statistic at the current time period is above
the upper confidence limit, then you have reasons to suspect that the current PSI
statistic is statistically greater than zero. To put it another way, the feature’s
distribution at the current time period has shifted from that at the baseline time
period.
The percent out-of-bounds value, which is the ratio of two differences is also
calculated. The numerator is the difference from the current PSI statistic to the
upper confidence limit. The denominator is the difference from the upper
confidence limit to the baseline PSI (for example, zero). The ratio indicates the
urgency of the out-of-bound situation (Bilal Yurdakul and Joshua Naranjo (2020)
Statistical properties of the population stability index, Journal of Risk Model
Validation, Volume 14, Number 4, Page 89-100).
The same method is used in calculating the PSI statistic and its confidence limit for
the output variables. However, since the output variables are often used in making
decisions, any shifts in their distributions might affect the decisions made.
Therefore, you should scrutinize the output variables methodically for early signs
of model deterioration.
Here is an example of the Standard KPI Trend chart for the Misclassification KPI
Observation Count
The Observation Count chart shows the number of observations monitored at each
time period. Large or unexpected changes in observation counts across time
periods can be indicative of changes in behavior as well as technical or process-
level issues. These counts suggest the relative credibility of the sample at the
current time period.
These counts suggest the relative credibility of the categories at the current time
period. Particularly, you should look for any extraneous or omitted categories.
The percentages are calculated based on the number of observations at the current
time period. This chart can tell you whether the target variable’s distribution has
changed. Subsequently, you can evaluate how applicable the model is to the
current data.
This chart can tell you whether the model prediction’s distribution has changed.
Subsequently, you can evaluate how applicable the model is to the current data.
Also, you should look for any omitted or overly dominant categories.
The percentages are calculated based on the number of observations at the current
time period. This chart can tell you whether the output variables’ distributions have
changed. Subsequently, you can evaluate how applicable the model is to the
current data. Also, you should look for any omitted or overly dominant categories.
TIP To change the target category that appears in the chart, select a value
from the drop-down list.
190 Chapter 10 / Concepts
Misclassification Rate
The Misclassification Rate chart shows the proportion of observations where the
model was incorrectly classified for each time period. You can use this chart and
the bounds within it to detect degradations in the predictive power of a model. The
shaded band indicates the uncertainty bounds.
TIP To change the target category that appears in the chart, select a value
from the drop-down list.
192 Chapter 10 / Concepts
This chart can tell you whether the distributions of predicted probabilities have
changed. Subsequently, you can evaluate how applicable the model is to the
current data. Also, you should look for any outliers.
References:
Concepts: Performance Monitoring 193
n David J. Hand, and Robert J. Till (2001). "A Simple Generalisation of the Area
Under the ROC Curve for Multiple Class Classification Problems", Machine
Learning, Volume 45, Pages 171-186.
n SAS Technical Support provided the %MultAUC macro that calculates the
multi-class AUC value. Available at: [Link]
64/[Link] and [Link]
fusion_64029_14_multauc.[Link]
Multi-class Root Average Squared Error (RASE)
Suppose there are N observations, and the target variable has K categories. The
Root Average Squared Error is:
Square Root ( SUM over i ( SUM over k (Error_i_k )^2 ) / N / K )
where Error_i_k = (Delta_i_k - P_i_k), k = 1,...,K and i = 1,...,N.
The P_i_k is the predicted probability for the k-th target category
of the i-th observation.
The Delta_i_k = 1 if the observed target category of the i-th obervation is the
k-th target category. Otherwise, Delta_i_k = 0.
TIP To change the target category that appears in the chart, select a value
from the drop-down list.
194 Chapter 10 / Concepts
Coverage
The Coverage chart shows the percentage of documents for which a model was
able to identify any matches and produce a categorical identification. Ideally, every
document has a match, and a model should be able to match every document to its
respective category.
High coverage is a positive indicator of a healthy model, as it tells that the model is
consistently finding matches for the documents passed through it.
Precision
The Precision chart shows the model's ability to capture documents correctly
without creating false matches. Precision is calculated as the ratio of true positives
to the sum of true and false positives.
Higher values are preferred for model precision. The maximal value is 100%, which
occurs when there are zero false matches made by the model. If precision is low, it
Concepts: Performance Monitoring 195
is likely that the model's rules are weak, or that the rules are too broad, resulting in
false matches.
Recall
The Recall chart shows the portion of correct values that are captured by a model.
Recall is calculated as the ratio of true positives to the total frequency of positives
(sum of true positives and false negatives).
Higher values are preferred for model recall. The maximal value is 100%, which
occurs when there are no false negatives, or missed matches. If recall is low, it is
recommended to add more variables or rules to the model, as it is failing to capture
a significant portion of correct matches.
A model's false positive rate should remain relatively steady after its training and
deployment. Sudden changes in FPR are likely indicators of external changes in the
market, such as the introduction of a new technology, competition, marketing
promotions, laws, or other influences.
F1 Score
The F1 Score chart shows the precision and recall that serves as a great assessor of
model quality. F1 score is calculated as the positive predictive value(PPV) divided
by the true positive rate (TPR). PPV is double the product of precision and recall
and TPR is the sum of precision and recall.
Higher values are preferred for the F1 Score, and the maximal value is 100%. A low
score for this metric is indicative of a model with either a poor precision or a poor
recall value, which makes it a great overall indicator.
IMPORTANT The fairness and bias metrics are available with the 2025.03
release.
For more information, see the assessBias action in SAS Viya: Machine Learning
Programming Guide.
Prerequisites
Here are the tasks that must be done before the fairness and bias section of the
performance monitoring results appears on the Performance tab of your project:
200 Chapter 10 / Concepts
n Mark variables to be assessed for bias on the project's Variables tab for
classification and prediction models that are written in SAS, Python, or R.
n The bias variables must be available in the input data used by performance
monitoring, even if the variables are not used by the model to make a prediction.
n The fairness and bias key performance indicators (KPIs) thresholds are available
on the project's Properties tab. These KPI thresholds are used to assess model
performance in the model card for classification and prediction models.
Here are the available metrics that can be selected in this chart:
demographic parity
the maximum pairwise difference for the proportion of observations that are
binned into the event level, given the cut-off value.
equal accuracy
maximum pairwise difference across values of the selected variable for
accuracy.
equalized odds
the larger of the maximum pairwise differences across values of the selected
variable for the true positive rate (TPR) and false positive rate (FPR).
equal opportunity
the maximum pairwise difference across values of the selected variable for true
positive rate.
predictive parity
maximum pairwise difference in the predicted variable corresponding to the
event level.
The group unfairness index is calculated using the approach outlined by Szepannek
and Lübke. 2021. "Facing the Challenges of Developing Fair Risk Scoring Models."
Frontiers in Artificial Intelligence (article). [Link]
artificial-intelligence/articles/10.3389/frai.2021.681915/full.
Event Metrics
In the Event Metrics section of the performance results, you can select the period
of time (time label) and the bias variable for which to display the results for each of
the event metrics.
Overview
PMML is an XML markup language that was developed to exchange predictive and
statistical models between modeling systems and scoring platforms. Users can
import the majority of standard-compliant PMML models and score them within a
SAS environment via the SAS PSCORE procedure.
Note: The PSCORE procedure generates both DATA step code and DS2 code.
However, only DATA step model score code is generated when you are importing or
registering a PMML model into SAS Model Manager.
Supported Versions
PROC PSCORE currently supports the use of PMML 4.1, 4.2, 4.3, and 4.4. Other
versions of PMML are not supported for use with PROC PSCORE.
n Baseline
n Clustering
n General regression
n Mining
n Naive bayes
n Neural network
n Regression
n Rule set
n Scorecard
n Time series
n Tree
See Also
n “SAS Enterprise Miner 15.4 PMML Support” in SAS Enterprise Miner: Reference
Help
n PMML Standard