Azure

5月 202022
 

In the previous article, we demonstrated how to run CMS-HCC Risk Adjustment Models using SAS Analytics Pro on Viya. Recall that we used the SAS Studio interface to access the demographic and diagnoses input data, set up the model score code and score the input data.

In this third article, we will introduce an alternative approach that surfaces the CMS-HCC Risk Adjustment Model execution through SASPy integration to a Flask application. We will demonstrate how this integration allows a user to score an individual patient/member on-demand, using inputs to an interactive web form to execute the model score code, surfacing the resulting score to the user.

You may be thinking, "Why would I want to do this? Isn’t it sufficient to run the CMS-HCC Risk Adjustment Models manually as necessary?" Of course, there is nothing wrong with running the models via SAS Studio as needed and relying on a person to do so.

However, there are scenarios where an automated approach, less dependent on the active participation of a person and integrated with a third-party application is preferred. For example, you may need your CMS-HCC Risk Adjustment Model to run on-demand based on a 3rd party application that was developed by your clients or you may need to run the models as part of a process that is detached from your SAS deployment.

In these cases, you can take advantage of SAS, SASPy integration and cloud infrastructure to achieve the level of automation and integration required. Rather than the MacBook deployment leveraged in the prior article, we will use a deployment of SAS Analytics Pro Viya on a Linux server instance in Azure.

The following lists the step-by-step process to run the CMS-HCC Risk Adjustment Model through SASPy API integration to a Flask application.

  1. The Flask application receives the input form data from the web browser as JSON
  2. Python uses SASPy to connect to SAS Analytics Pro Viya via SSH
  3. SASPy parses the JSON input into SAS tables
  4. SASPy submits SAS code with the SAS tables as input to SAS Analytics Pro on Viya
  5. SAS Analytics Pro Viya runs the code and generates an output SAS table in the output folder
  6. SASPy accesses the output SAS table and converts it to a Pandas data frame
  7. Flask exposes the data frame as JSON back to the web browser

To achieve this integrated process, we are going to walk through all the necessary deployment and configuration steps in a video. To follow along, the following items are required:

  • Azure subscription
  • Azure Linux instance deployed
  • License for SAS Analytics Pro Viya – save it under the sasinside folder
  • Knowledge of Linux to execute scripts
  • Familiarity with Docker containers
  • Clone the provided GitHub repository

Watch the video below to see a detailed demonstration of the deployment and configuration steps.

The video follows the whole process with the high-level steps outlined here.

  1. Deploy an Azure instance with Ubuntu
  2. Install Docker on this instance
  3. Clone the GitHub repository
  4. Install SAS Analytics Pro on Viya container
  5. Configure password-less SSH
  6. Build the Flask application container
  7. Run the Flask application container
  8. Test password-less SSH from the Flask application container to the SAS Analytics Pro on Viya container
  9. Configure ports on the Azure instance to confirm it is accessible from my machine
  10. Run the application on the browser to score a patient/member with the CMS-HCC model

This is the overall architecture of the application found on this GitHub repository.

If you followed along with the deployment and configuration, you may have additional questions. If you are wondering about the purpose of the sascfg_personal.py file, it tells SASPy how to connect via SSH to the SAS Analytics Pro on Viya container. You have to specify the host, localhost and luser options to make sure SASPy can successfully connect.

If you run the SAS Analytics Pro on Viya container first, Docker will probably assign 172.17.0.2 as the IP for that container and 172.17.0.3 for the Flask container. If you suspect the IP is different, inspect the container to make sure the IP is correct.

 
SAS_config_names   = ['ssh']
ssh                = {'saspath'  : '/opt/sas/viya/home/SASFoundation/sas',
                      'ssh'      : '/usr/bin/ssh',
                      'host'     : '172.17.0.2', # sas apro container host
                      'luser'    : 'sasdemo',
                      'localhost': '172.17.0.3', # local Python container ip address
                      'options'  : ["-fullstimer"]
                     }

For more information, check out the official documentation page.

Thanks to everyone that contributed to this blog series and to those that followed it from the beginning. I hope this was helpful and that you learned something along the way.

*If you are interested in a license for SAS Analytics Pro on Viya, contact your SAS representative or get in contact with SAS through the chatbot on sas.com.

Running CMS Risk Adjustment Models via API with SAS Analytics Pro (Viya) on Azure was published on SAS Users.

5月 162022
 

Just getting started with this series? Make sure to explore the earlier posts Part 1, Part 2 and Part 3.

Up until now, you have seen how ModelOps can solve your biggest machine learning challenges and that SAS and Microsoft, together, can help you deploy, govern and monitor your models anywhere in the Microsoft Cloud. But what does that look like in practice and what value does that provide you?

In this blog, we will share how to register SAS and open-source models from SAS Model Manager to Azure Machine Learning and then call that model directly from Power BI.

SAS Model Manager is a centralized, searchable repository for all types of models and analytical assets. This solution gives you complete visibility into your analytical processes, ensuring traceability and governance. SAS Viya on Azure allows you to efficiently move your analytical models from the innovation lab into production. With SAS and Microsoft, you can now easily and seamlessly deploy models in Azure Machine Learning (AML).

Step 1: SAS Model Manager governs, deploys, and monitors all types of SAS and open-source models (i.e., Python, R). Deploy your model registered in SAS Model Manager to Azure Machine Learning.

Once a model is deployed into Azure Machine Learning it can be leveraged just like any other model in Azure Machine Learning while maintaining the governance and control that Viya offers.

Step 2: Refresh Azure Machine Learning to find your model with associated artifacts and variable metrics that can be used to publish the model in an executable container runtime supporting SAS and open-source models.

After you publish a model to an Azure Machine Learning publishing destination you can deploy the published model to AKS. This enables you to make the published model available so that you score it using custom code or another application outside the SAS Viya environment. It also enables you to deploy the published model in a production environment.

Step 3: Go back to SAS Model Manager to deploy the model to AKS (Azure Kubernetes Services) which is the Azure Machine Learning compute target. This steps ensures that the model you have published is ready to be deployed.

Step 4: Score your model in Azure Machine Learning.

Step 5: Score your model from Power BI.

When a new model is developed and ready for production, it is easy to register that model in Azure Machine Learning and replace the existing model that is in production. This allows business intelligence users to quickly gain access to the most accurate insights. By leveraging the strengths of the ModelOps lifecycle that SAS has developed the deployment mechanism and distribution of that model using the Microsoft Cloud, models can be pushed out into production in an automated and repeatable way. The combination of SAS Viya and Azure Machine Learning accelerates the time to value for customers who are looking to incorporate DevOps principles into their model development and deployment.

To learn more about ModelOps and our partnership with Microsoft, see our whitepaper: ModelOps with SAS Viya on Azure.

ModelOps in practice: How to call SAS models from Microsoft Power BI, part 4 was published on SAS Users.

5月 032022
 

Just getting started with this series? Make sure to explore Part 1 and Part 2.

There are different ways you can use these two tools to accelerate model building, deployment and monitoring. Figure 1 summarizes best practices for conducting ModelOps using SAS Model Manager and Azure Machine Learning.

Figure 1: Five best practices to optimize the ModelOps life cycle on the Microsoft Cloud.

Best practice 1: Create models with repeatable machine learning pipelines using SAS® Model Manager

When data scientists create models in SAS Viya and register in SAS Model Manager, they can innovate and build faster. SAS Viya not only creates pipelines of reusable machine learning components but also allows users to easily import reusable components from any language. SAS Viya can also convert score code from one language to another, helping developers avoid recoding efforts. For example, SAS Viya can import R or Python packages, or even a Jupyter notebook, and instantly convert them to run in SAS code (and vice versa).

Central to these SAS capabilities is the modeling metadata repository that SAS uses for drift monitoring and oversight functions. The actual code repository can be in GitHub, Microsoft’s library for prebuilt code. Integrated SAS capabilities enable you to store and keep track of repeatable components in GitHub and make it easy for others to find and reuse them. In this way, SAS supports an ecosystem for model development. SAS Model Manager also provides this central modeling metadata repository and simultaneously enhances Azure MLOps processes.

As you build models, you can test them using SAS Model Manager before putting them into production. Whether you create in Python, R, SAS or a Jupyter Notebook, the software enables you to efficiently validate the model logic using precise methodology that records each test. As a result, you always know models will run seamlessly in your deployed environment.

Best practice 2: Apply automation to your ModelOps rollout and audit trail

SAS Model Manager also facilitates more effective governance by enabling users to:

    • Collect all models, projects and pipelines in a searchable, secure and versioned repository.
    • Keep track of different versions for each model so you can track model history and ownership changes in a single, readily available user interface.
    • Compare models from different languages and libraries side by side (for instance, SAS, TensorFlow, scikit-learn and more).
    • Maintain model version control and history tracking in one place.
    • Access models and model-score artifacts using open REST APIs.

Best practice 3: Use Azure Machine Learning to deploy models into the Microsoft Cloud

Now that you have validated your model, the analytic scoring code will execute correctly, and you can deploy your model anywhere in the Microsoft Cloud. You can call your model from Microsoft Dynamics 365, Azure Synapse Analytics and Microsoft Power Platform, including Power BI, which empowers you to bring your models to more places.

You can also deploy your model to the OCI (Open Container Initiative) compliant Docker containers in the Microsoft Cloud as a lightweight image in SAS Container Runtime (SCR). SCR images provide a modern, bulletproof, reliable, nonproprietary system for transferring and executing runtime code. This greatly simplifies efforts to move code from your development system to your production system. Simply register your SAS containerized model to your favorite Microsoft Azure or docker location and create an app or use REST APIs to score new data against your published model with SAS Container Runtime.

Best practice 4: Use SAS® Model Manager to monitor performance and drift

Models begin to degrade the moment you put them in production as conditions in the market, customer behavior and data change over time. SAS Model Manager includes performance monitoring to easily track and view performance against the KPIs that have been predetermined with IT and line-of-business experts.

SAS Model Manager also supplements the ModelOps process by empowering line-of-business experts to take ownership of the monitoring process. For example, SAS Model Manager provides visual analytics and reporting from which you can centrally monitor model performance within Azure Machine Learning and detect model drift. Use it to:

    • Generate out-of-the-box performance reports using a wizard.
    • Easily access data to build your own reports and KPIs.
    • Schedule jobs to detect model drift and automatically retrain models in case of poor performance or bias detection.

Data visualizations make it easy for teammates in the line of business to see data score changes, monitor changes in accuracy over time and see which models are drifting and need retraining.

Best practice 5: Use SAS® Model Manager to retrain, score and redeploy models faster

If model performance degrades, your organization should embark on one of three approaches:

    • Retrain the existing model on new data.
    • Revise the model with new techniques (such as feature engineering or new data elements).
    • Replace the model entirely with a better model.

But regardless of your choice, the critical questions remain the same:

    • How do you know when you need to retrain the model?
    • Once the model is retrained, how do you determine when to redeploy the model?
    • Can you predict how long the model will be relevant?

SAS Model Manager helps you answer these questions and take timely action. If it observes model drift, it proactively alerts you with a built-in feedback mechanism and vastly simplifies, optimizes and accelerates model retraining and redeployment. In fact, SAS allows you to revise a model with new techniques (such as feature engineering or new data elements) or replace an entire model with a better one.

Learn more

There are many advantages to using SAS Model Manager with Azure Machine Learning. Most notably, you gain a no-code/low-code environment in which business analysts can build and deploy SAS and open-source models, continuously monitor for performance and drift, and retrain models – all within a single, intuitive SAS user interface. This frees you to establish collaborative, cross-functional teams that ensure models solve real business problems today, and continue to do so in the future. Issues get detected earlier – and retraining and redeployment happen faster – because all models are hosted, collected and tracked in one application. And the efficiencies you gain from automation and real-time monitoring, reporting, testing and more means you can scale your use of ML models in your Microsoft environment with confidence.

Next time, you’ll see how SAS Model Manager, Azure Machine Learning, and Power BI work in practice, by learning how to call a SAS model in Power BI.

To learn more about ModelOps and our partnership with Microsoft, see our whitepaper: ModelOps with SAS Viya on Azure.  

5 best practices for optimizing ModelOps with SAS® Model Manager and Azure Machine Learning, part 3 was published on SAS Users.

5月 032022
 

Just getting started with this series? Make sure to explore Part 1 and Part 2.

There are different ways you can use these two tools to accelerate model building, deployment and monitoring. Figure 1 summarizes best practices for conducting ModelOps using SAS Model Manager and Azure Machine Learning.

Figure 1: Five best practices to optimize the ModelOps life cycle on the Microsoft Cloud.

Best practice 1: Create models with repeatable machine learning pipelines using SAS® Model Manager

When data scientists create models in SAS Viya and register in SAS Model Manager, they can innovate and build faster. SAS Viya not only creates pipelines of reusable machine learning components but also allows users to easily import reusable components from any language. SAS Viya can also convert score code from one language to another, helping developers avoid recoding efforts. For example, SAS Viya can import R or Python packages, or even a Jupyter notebook, and instantly convert them to run in SAS code (and vice versa).

Central to these SAS capabilities is the modeling metadata repository that SAS uses for drift monitoring and oversight functions. The actual code repository can be in GitHub, Microsoft’s library for prebuilt code. Integrated SAS capabilities enable you to store and keep track of repeatable components in GitHub and make it easy for others to find and reuse them. In this way, SAS supports an ecosystem for model development. SAS Model Manager also provides this central modeling metadata repository and simultaneously enhances Azure MLOps processes.

As you build models, you can test them using SAS Model Manager before putting them into production. Whether you create in Python, R, SAS or a Jupyter Notebook, the software enables you to efficiently validate the model logic using precise methodology that records each test. As a result, you always know models will run seamlessly in your deployed environment.

Best practice 2: Apply automation to your ModelOps rollout and audit trail

SAS Model Manager also facilitates more effective governance by enabling users to:

    • Collect all models, projects and pipelines in a searchable, secure and versioned repository.
    • Keep track of different versions for each model so you can track model history and ownership changes in a single, readily available user interface.
    • Compare models from different languages and libraries side by side (for instance, SAS, TensorFlow, scikit-learn and more).
    • Maintain model version control and history tracking in one place.
    • Access models and model-score artifacts using open REST APIs.

Best practice 3: Use Azure Machine Learning to deploy models into the Microsoft Cloud

Now that you have validated your model, the analytic scoring code will execute correctly, and you can deploy your model anywhere in the Microsoft Cloud. You can call your model from Microsoft Dynamics 365, Azure Synapse Analytics and Microsoft Power Platform, including Power BI, which empowers you to bring your models to more places.

You can also deploy your model to the OCI (Open Container Initiative) compliant Docker containers in the Microsoft Cloud as a lightweight image in SAS Container Runtime (SCR). SCR images provide a modern, bulletproof, reliable, nonproprietary system for transferring and executing runtime code. This greatly simplifies efforts to move code from your development system to your production system. Simply register your SAS containerized model to your favorite Microsoft Azure or docker location and create an app or use REST APIs to score new data against your published model with SAS Container Runtime.

Best practice 4: Use SAS® Model Manager to monitor performance and drift

Models begin to degrade the moment you put them in production as conditions in the market, customer behavior and data change over time. SAS Model Manager includes performance monitoring to easily track and view performance against the KPIs that have been predetermined with IT and line-of-business experts.

SAS Model Manager also supplements the ModelOps process by empowering line-of-business experts to take ownership of the monitoring process. For example, SAS Model Manager provides visual analytics and reporting from which you can centrally monitor model performance within Azure Machine Learning and detect model drift. Use it to:

    • Generate out-of-the-box performance reports using a wizard.
    • Easily access data to build your own reports and KPIs.
    • Schedule jobs to detect model drift and automatically retrain models in case of poor performance or bias detection.

Data visualizations make it easy for teammates in the line of business to see data score changes, monitor changes in accuracy over time and see which models are drifting and need retraining.

Best practice 5: Use SAS® Model Manager to retrain, score and redeploy models faster

If model performance degrades, your organization should embark on one of three approaches:

    • Retrain the existing model on new data.
    • Revise the model with new techniques (such as feature engineering or new data elements).
    • Replace the model entirely with a better model.

But regardless of your choice, the critical questions remain the same:

    • How do you know when you need to retrain the model?
    • Once the model is retrained, how do you determine when to redeploy the model?
    • Can you predict how long the model will be relevant?

SAS Model Manager helps you answer these questions and take timely action. If it observes model drift, it proactively alerts you with a built-in feedback mechanism and vastly simplifies, optimizes and accelerates model retraining and redeployment. In fact, SAS allows you to revise a model with new techniques (such as feature engineering or new data elements) or replace an entire model with a better one.

Learn more

There are many advantages to using SAS Model Manager with Azure Machine Learning. Most notably, you gain a no-code/low-code environment in which business analysts can build and deploy SAS and open-source models, continuously monitor for performance and drift, and retrain models – all within a single, intuitive SAS user interface. This frees you to establish collaborative, cross-functional teams that ensure models solve real business problems today, and continue to do so in the future. Issues get detected earlier – and retraining and redeployment happen faster – because all models are hosted, collected and tracked in one application. And the efficiencies you gain from automation and real-time monitoring, reporting, testing and more means you can scale your use of ML models in your Microsoft environment with confidence.

Next time, you’ll see how SAS Model Manager, Azure Machine Learning, and Power BI work in practice, by learning how to call a SAS model in Power BI.

To learn more about ModelOps and our partnership with Microsoft, see our whitepaper: ModelOps with SAS Viya on Azure.  

5 best practices for optimizing ModelOps with SAS® Model Manager and Azure Machine Learning, part 3 was published on SAS Users.

4月 192022
 

Just getting started with this series? Make sure to read part 1: How ModelOps addresses your biggest Machine Learning challenges.

SAS and Microsoft make it easier for companies to address the challenges of machine learning model deployment, monitoring and governance. Specifically, SAS and Microsoft have built integrations between SAS® Model Manager and Microsoft Azure Machine Learning. Both are hubs for your ModelOps processes, but they also offer complementary capabilities that, when used together, make it possible to conduct ModelOps with the benefit of streamlined workflow management.

SAS Model Manager is an enterprise-ready solution for ModelOps. It provides an industry-leading framework for ModelOps that enables collection, testing, deploying, monitoring, governance, and retraining of models, regardless of what language they are written in (such as SAS, Python or R). Once you build a model, you can register it in SAS Model Manager to test, deploy and monitor performance in its production environment.

SAS Model Manager adds value to the ModelOps process by providing a common application interface that enables both business insight and IT governance, which:

    • Simplifies process workflow and automation efforts.
    • Improves communication and collaboration between business, IT and data scientists throughout the analytics life cycle.
    • Gives business users a more active role in model monitoring and management processes.
    • Governs data and assets with transparency and DevOps conformity.
    • Integrates with decisioning and streaming technologies.

Azure Machine Learning is Microsoft’s enterprise-grade service for end-to-end machine learning, empowering data scientists and developers to build, deploy and manage high-quality models faster and with confidence. You can use Azure Machine Learning to accelerate time to value with industry-leading interoperability with open-source tools and frameworks. Azure Machine Learning also empowers ModelOps to bring machine learning models into production in a highly secure and tightly governed production environment. Once deployed, you can also scale models to use anywhere in the Microsoft Azure cloud, any hybrid cloud or on-premises via Azure Arc to easily meet business demands.

Additionally, Azure Machine Learning can access enterprise data and resources organizations have running in Microsoft Azure. For example, you can centrally store and manage your enterprise data in Azure Data Lake and even use Power BI to enrich your dashboards with predictive analytics, Azure Synapse to use these ML models via in-database queries, or Azure Synapse Analytics’ Spark runtime so you do not have to pay to transfer data between SAS and Microsoft environments.

Finally, Azure Machine Learning gives data scientists services to accelerate and automate their day-to-day workflows. For example, application developers gain services for integrating models into applications and platform developers have a robust set of services, backed by Azure Resource Manager APIs, for building advanced ML services. And because all of this is powered by Azure, you can use familiar management and security controls to keep your data secure, manage your costs, and more.

It is important to note that both SAS Model Manager and Azure Machine Learning are hubs for ModelOps processes. But they also complement one another in important ways:

    • Azure Machine Learning adds volume and speed through scalable deployment of models to your favorite applications in the Microsoft Cloud.
    • At the same time, SAS Model Manager provides an enterprise view of all models in production so that quick action can be taken to administer and replace non-performant models quickly and efficiently. As a model repository SAS Model Manager supports collaboration across data science, IT and business users with natural language explanations of outputs and a unique no-code/low-code environment that makes it easier to participate in the ModelOps process.
    • Using the SAS Workflow Manager, which is natively integrated with SAS Model Manager, you can automate and delegate tasks across the model life cycle, including registering the model, running a test or validation, deploying a model, setting alerts for model accuracy declines and retraining models. You can also “push” a model from the development environment (SAS or open source) to SAS Model Manager, where all the files related to the model (score code, metadata, etc.) are automatically created and stored, ready for testing and deployment.

Next time you will learn about what ModelOps with SAS and Microsoft looks like in practice with five best practices for ModelOps with SAS Model Manager and Azure Machine Learning.

To learn more about ModelOps and our partnership with Microsoft, see our whitepaper: ModelOps with SAS Viya on Azure.

How Microsoft empowers your ModelOps steps, part 2 was published on SAS Users.

3月 312022
 

Editors note: This is the first in a series of articles.

According to the Global McKinsey Survey on the State of AI in 2021, the adoption of AI is continuing to grow at an unprecedented rate. Fifty-six percent of all respondents reported AI adoption – including machine learning (ML) – in at least one function, up from 50% in 2020.

Businesses are deploying ML models for everything from data exploration, prediction and learning business logic to more accurate decision making and policymaking. ML is also solving problems that have stumped traditional analytical approaches, such as those involving unstructured data from graphics, sound, video, computer vision and other high-dimensional, machine-generated sources.

But as organizations build and scale their use of models, governance challenges increase as well. Most notably, they struggle with:

    Managing data quality and exploding data volumes. Most large enterprises host their data in a mix of modern and legacy databases, data warehouses, and ERP and CRM services – both on-premises and in the cloud. Unless organizations have ongoing data management and quality systems supporting them, data scientists may inadvertently use inaccurate data to build models.
    Collaborating across business and IT departments. Model development requires multidisciplinary teams of data scientists, IT infrastructure and line-of-business experts across the organization working together. This can be a difficult task for many enterprises due to poor workflow management, skill gaps between roles, and unclear divisions of roles and responsibilities among stakeholders.
    Building models with existing programming skills. Learning a programming language can take years to perfect, so if developers can build models using the skills they already have, they can deploy new models faster. Modern machine learning services must empower developers to build using their language of choice and provide a low-code/no-code user interface that nontechnical employees can use to build models.
    Scaling models. Enterprises must have the ability to deploy models anywhere – in applications, in the cloud or on the edge. To ensure the best performance, models need to be deployed as lightweight as possible and have access to a scalable compute engine.
    Efficiently monitoring models. Once deployed, ML models will begin to drift and degrade over time due to external real-world factors. Data scientists must be able to monitor models for degradation, and quickly retrain and redeploy the models into production to ensure companies are returning maximum productivity.
    Using repeatable, traceable components. To minimize the time a given model is out of production during rescoring and training, models must be built using repeatable and traceable components. Without a component library and documented version history, there is no way to understand which components were used to build a model, which means it must be rebuilt from scratch.

To help you address these challenges, SAS develops its services – and integrations in the Microsoft Cloud – with the analytics life cycle in mind. The analytics life cycle enables businesses to move seamlessly from questions to decisions by connecting DataOps, artificial intelligence and ModelOps in a continuous and deeply interrelated process (see Figure 1). Let us take a closer look at each of these elements:

    DataOps. Borrowing from agile software development practices, DataOps provides an agile approach to data access, quality, preparation and governance. It enables greater reliability, adaptability, speed and collaboration in your efforts to operationalize data and analytics workflows.
    Artificial intelligence. Data scientists use a combination of techniques to understand the data and build predictive models. They use statistics, machine learning, deep learning, natural language processing, computer vision, forecasting, optimization, and other techniques to answer real-world questions.
    ModelOps. ModelOps focuses on getting AI models through validation, testing and deployment phases as quickly as possible while ensuring quality results. It also focuses on ongoing monitoring, retraining and governance to ensure peak performance and transparent decisions.

Figure 1

So how can we apply the analytics life cycle to help us solve the challenges we listed above? To answer that, we will have to take a closer look at ModelOps.

Based on longstanding DevOps principles, the SAS ModelOps process allows you to move to validation, testing and deployment as quickly as possible while ensuring quality results. It enables you to manage and scale models to meet demand, and continuously monitor them to spot and fix early signs of degradation.

ModelOps also increases confidence in ML models while reducing risk through an efficient and highly automated governance process. This ensures high-quality analytics results and the realization of expected business value. At every step, ModelOps ensures that deployment-ready models are regularly cycled from the data science team to the IT operations team. And, when needed, model retraining occurs promptly based on feedback received during model monitoring.

    Managing data quality and exploding data volumes. ModelOps ensures that the data used to train models aligns with the operational data that will be used in production. Managing data in a data warehouse, such as Azure Synapse Analytics, helps you ingest data from multiple sources and perform all ELT/ETL steps, so data is ready to explore and model.
    Collaborating across business and IT departments. ModelOps empowers data scientists, IT infrastructure and line-of-business experts work in harmony thanks to a mutual understanding of their counterparts and ultimate end users.
    Building models with existing programming skills. Make it easier for everyone on your team to build models using their preferred programming language including SAS, Python and R, in addition to visual drag-and-drop tools for a faster building experience.
    Scaling models. Deploy your models anywhere in the Microsoft Cloud including applications, services, containers and edge devices.
    Efficiently monitoring models. Models are developed with a deployment mindset and deployed with a monitoring mindset so data scientists and analysts can monitor and quickly retrain models as they degrade.
    Using repeatable, traceable components. There are no black box models anymore because the business always knows the data it uses to train the model, monitors that model for efficacy, tracks the history of the code used in training the models, and uses automation for deployment and repeatability.

Next time you will learn how together, SAS and Microsoft empower your ModelOps steps.

To learn more about ModelOps and our partnership with Microsoft, see our whitepaper: ModelOps with SAS Viya on Azure.

How ModelOps addresses your biggest machine learning challenges was published on SAS Users.

1月 062022
 

This article was co-written by Nick Johnson, Product Marketing Manager, Microsoft Partnership. Check out his blog profile for more information.

As employees continue to adapt to the reality of remote work — collaborating with teams near and far — it is vital that organizations have the right collaboration and productivity tools at their fingertips to support teams remotely. With over 250 million monthly active users, Microsoft Teams has become the collaboration tool of choice for thousands of organizations, changing the way meetings are conducted and how teams access the documents and data that support their business operations.

SAS and Microsoft are partnering to inspire greater trust and confidence in every decision, by driving innovation and proven AI in the cloud. With a combined product roadmap, SAS and Microsoft are working tirelessly to improve offerings and connectivity between SAS Viya and Microsoft. That’s why we’re especially excited to announce SAS Conversation Designer is now generally available in Microsoft Teams.

Conversational AI enables humans to interact with machines using natural language – text or voice – and instantly get a human-like, intelligent response. And ChatOps – a way of collaborating that connects people with process, tools and automation into a transparent workflow – can enable your teams to work together on complex analytics processes without writing a single line of code. Conversational AI is creating new opportunities for finding insights in your data by simply asking a question in natural language to a chatbot.

Now, you can ask questions of your SAS and open-source data directly from the Microsoft Teams toolbar and share insights directly with your teammates without jumping between application interfaces. Chat-enabled analytics does the work for you by providing data, reports and visualizations through a chat interface in Microsoft Teams.

With SAS Conversation Designer in Teams you can:

    • Build and deploy a chatbot with ease using a low-code visual interface.
    • Get answers and complete tasks using SAS’ industry leading natural language processing.
    • Access data, reports and visualizations via chat – even run advanced analytics and AI.

Follow the quick start guide below to see how easy it is to build and deploy natural language chatbots in your Microsoft Teams environment.

Get started:

Step 1: To get started, log onto SAS Viya through a web browser using Azure AD for simplified access.

Step 2: SAS Conversation Designer’s visual interface is where you can build a chatbot. You can see where key words and phrases, intents, and dialog shown on a visual pipeline create a structure for the chatbot.

Step 3: Now that the critical elements of the chatbot are in place, the chatbot can be published and is ready for interaction.

Step 4: Let’s put this bot into Microsoft Teams. Gather the information within SAS Viya for configuring a manifest file, then enter the information into the App Studio in Microsoft Teams.

Step 5: Start a conversation! Your chatbot is ready to provide insights and accelerate collaboration for you and your colleagues.

Learn more

Looking for more on chatbots and our partnership with Microsoft? Check out the resources below:

SAS Conversation Designer

Microsoft Partnership

Make collaboration your superpower with SAS Conversation Designer in Microsoft Teams was published on SAS Users.

1月 062022
 

This article was co-written by Nick Johnson, Product Marketing Manager, Microsoft Partnership. Check out his blog profile for more information.

As employees continue to adapt to the reality of remote work — collaborating with teams near and far — it is vital that organizations have the right collaboration and productivity tools at their fingertips to support teams remotely. With over 250 million monthly active users, Microsoft Teams has become the collaboration tool of choice for thousands of organizations, changing the way meetings are conducted and how teams access the documents and data that support their business operations.

SAS and Microsoft are partnering to inspire greater trust and confidence in every decision, by driving innovation and proven AI in the cloud. With a combined product roadmap, SAS and Microsoft are working tirelessly to improve offerings and connectivity between SAS Viya and Microsoft. That’s why we’re especially excited to announce SAS Conversation Designer is now generally available in Microsoft Teams.

Conversational AI enables humans to interact with machines using natural language – text or voice – and instantly get a human-like, intelligent response. And ChatOps – a way of collaborating that connects people with process, tools and automation into a transparent workflow – can enable your teams to work together on complex analytics processes without writing a single line of code. Conversational AI is creating new opportunities for finding insights in your data by simply asking a question in natural language to a chatbot.

Now, you can ask questions of your SAS and open-source data directly from the Microsoft Teams toolbar and share insights directly with your teammates without jumping between application interfaces. Chat-enabled analytics does the work for you by providing data, reports and visualizations through a chat interface in Microsoft Teams.

With SAS Conversation Designer in Teams you can:

    • Build and deploy a chatbot with ease using a low-code visual interface.
    • Get answers and complete tasks using SAS’ industry leading natural language processing.
    • Access data, reports and visualizations via chat – even run advanced analytics and AI.

Follow the quick start guide below to see how easy it is to build and deploy natural language chatbots in your Microsoft Teams environment.

Get started:

Step 1: To get started, log onto SAS Viya through a web browser using Azure AD for simplified access.

Step 2: SAS Conversation Designer’s visual interface is where you can build a chatbot. You can see where key words and phrases, intents, and dialog shown on a visual pipeline create a structure for the chatbot.

Step 3: Now that the critical elements of the chatbot are in place, the chatbot can be published and is ready for interaction.

Step 4: Let’s put this bot into Microsoft Teams. Gather the information within SAS Viya for configuring a manifest file, then enter the information into the App Studio in Microsoft Teams.

Step 5: Start a conversation! Your chatbot is ready to provide insights and accelerate collaboration for you and your colleagues.

Learn more

Looking for more on chatbots and our partnership with Microsoft? Check out the resources below:

SAS Conversation Designer

Microsoft Partnership

Make collaboration your superpower with SAS Conversation Designer in Microsoft Teams was published on SAS Users.

12月 022021
 

It’s a hard time to be a decision maker. Unexpected externalities like global pandemics, natural disasters and climate change make it harder to predict – and react to – everyday events. And that’s not just true for the world around us. The organizations we work within are more complex than ever, too.

The volume of communications and channels where we must meet customers and employees has grown exponentially – demanding our attention and reducing our focus. Not to mention added organizational complexity blurring the lines of roles and responsibilities according to geography, product and function.

Gaining control of such complexity requires rapid, streamlined and agile decision making. Technology that enables decision making needs to identify problems and take corrective action in real time to move quickly from questions to decisions.

SAS and Microsoft empower you to make better, faster decisions with unique enterprise decision management with SAS Intelligent Decisioning and Microsoft Power Automate using the SAS Decisioning connector – giving you the ability to design, deploy and manage automated decisions to improve the customer, employee and partner experience.

Enterprise decision management from SAS and Microsoft allows you to automate with a deliberate focus on decisions. You can combine business rules management with digital process automation and ModelOps, including model management and analytics, to accelerate the decision making process.

Together, Intelligent Decisioning and Power Automate unlock a breadth of use cases across the enterprise, including:

  • Insurance: Claims processing. Improve customer satisfaction and process claims faster. Receive insurance claims via Microsoft Power Apps and use Microsoft Power Automate to seamlessly ingest the claim into SAS Intelligent Decisioning. Using neural network models, SAS Intelligent Decisioning can analyze images of damage and compare with policies. If more information is required, Power Automate can trigger a flow to connect with a representative in Dynamics 365 Omnichannel for Customer Service. Once the decision is rendered, Power Automate can trigger process flows to notify the customer and deposit money into the bank account on file.
  • Banking: Credit decisioning. Reduce lender risk, improve decisioning response times and increase your bottom line. Build risk profiles in SAS Intelligent Decisioning by creating score cards and decision tables based off external data points, such as credit score, that assign each customer a risk rating. Use risk ratings to render decisions like home equity and line of credit approvals, and determine the loan amount. Once a decision has been made Power Automate flows can be used to communicate the loan amount to the customer and help them complete the loan agreement.
  • Retail/Banking: Fraud detection. Enable more secure transactions, reduce losses due to fraud and improve customer trust in your organization. SAS Intelligent Decisioning can identify fraudulent purchases and determine an appropriate course of action based on the level of confidence that a purchase is fraudulent. Power Automate can trigger automated reactions like alerting associated parties, denying a purchase at the point of sale, alerting the vendor, or sending notifications to the card holder.
  • Retail: Contextual Marketing. Increase marketing influence and become more customer centric by curating relevant and timely offers based on individual preferences. Use SAS Intelligent Decisioning to build a profile of tastes and preferences via geolocation, recommendation engines and market basket analysis. Use this profile to trigger Power Automate flows to send specific offers that align with important events, like birthdays or anniversaries, and send emails or push notifications to customers with unique, context-specific offers.

To learn more about what SAS Intelligent Decisioning and Microsoft Power Automate can help you achieve, visit sas.com/microsoft.

4 ways to make better, faster decisions with enterprise decision management from SAS Viya on Azure was published on SAS Users.

10月 122021
 

This article was co-written by Jane Howell, IoT Product Marketing Leader at SAS. Check out her blog profile for more information.

As artificial intelligence comes of age and data continues to disrupt traditional industry boundaries, the need for real-time analytics is escalating as organizations fight to keep their competitive edge. The benefits of real-time analytics are significant. Manufacturers must inspect thousands of products per minute for defects. Utilities need to eliminate unplanned downtime to keep the lights on and protect workers. And governments need to warn citizens of natural disasters, like flooding events, providing real time updates to save lives and protect property.

Each of these use cases requires a complex network of IoT sensors, edge computing, and machine learning models that can adapt and improve by ingesting and analyzing a diverse set of high-volume, high-velocity data.

SAS and Microsoft are partnering to inspire greater trust and confidence in every decision, by innovating with proven AI and streaming analytics in the cloud and on the edge. Together, we make it easier for companies to harness hidden insights in their diverse, high volume, high velocity IoT data, and capitalize on those insights in Microsoft Azure for secure, fast, and reliable decision making.

To take advantage of all the benefits that real-time streaming analytics has to offer, it’s important to tailor your streaming environment to your organization’s specific needs. Below, we’ll dive into how to understand the value of IoT in parallel to your organization’s business objectives and then strategize, plan, and manage your streaming analytics environment with SAS Viya on Azure.

Step 1: Understand the value of IoT

While you may already know that IoT and streaming analytics are the right technologies to enable your business’ real time analytics strategy, it is important to understand how it works and how you can benefit. You can think of streaming analytics for IoT in three distinct parts: sense, understand and act.

Sense: Sensors by design are distributed, numerous, and collect data at high fidelity in various formats. The majority of data collected by sensors has a short useful life and requires immediate action. Streaming analytics is well-suited to this distributed sensor environment to collect data for analysis.
Understand: A significant number of IoT use cases requires quick decision-making in real time or near-real time. To achieve this, we need to apply analytics to data in motion. This can be done by deploying AI models that detect anomalies and patterns as events occur.
Act: As with any analytics-based decision support, it is critical to act on the insight generated. Once a pattern is detected this must trigger an action to reach a desired outcome. This could be to alert key individuals or change the state of a device, possibly eliminating the need for any human intervention.

The value in IoT is driven by the reduced latency to trigger the desired outcome. Maybe that’s improving production quality in the manufacturing process, recommending a new product to a customer as they shop online, or eliminating equipment failures in a utility plant. Whatever it is, time is of the essence and IoT can help get you there.

Step 2: Strategize

Keeping the “sense, understand, act” framework in mind, the next step is to outline what you hope to achieve. To get the most out of your streaming analytics with SAS and Microsoft, keep your objectives in mind so you can stay focused on the business outcome instead of trying to act on every possible data point.

Some important questions to ask yourself are:

1. What is the primary and secondary outcomes you are hoping to achieve? Increase productivity? Augment safety? Improve customer satisfaction?
2. What patterns or events of interest do you want to observe?
3. If your machines and sensors show anomalous behavior what actions need to be taken? Is there an existing business process that reflects this?
4. What data is important to be stored as historical data and what data can expire?
5. What kind of infrastructure exists from the point where data is generated (edge) to cloud? Is edge processing an option for time-critical use cases or does processing needs to be centralized in cloud?
6. What are your analytics and application development platforms? Do you have access to high performance streaming analytics and cloud infrastructure to support this strategy?

Once you’ve identified your outcomes, define which metrics and KPIs you can measure to show impact. Make sure to have some baseline metrics to start from that you can improve upon.

Step 3: Plan and adopt

Now it’s time to take your strategy and plan the adoption of streaming analytics across your business.

Adoption will look different if you already have an IoT platform in place or if you are working to create a net-new solution. If you are going to be updating or iterating upon an existing solution, you will want to make sure you have access to key historical data to measure improvement and use institutional knowledge to maximize performance. If you are working with a net-new solution, you will want to give yourself some additional time to start small and then scale your operations up over time so you can tackle any unforeseen challenges.

In both cases it is important to have key processes aligned to the following considerations:

Data variety, volume and accuracy: Focus here on the “sense” part of the “sense, understand, act” framework. Accessing good data is the foundation to the success of your streaming projects. Make sure you have the right data needed to achieve your desired business outcome. Streaming analytics helps you understand the signals in IoT data, so you can make better decisions. But if you can’t access the right data, or your data is not clean, your project will not be successful. Know how much data you will be processing and where. Data can be noisy, so it is important to understand which data will give you the most insight.
Reliability: Ensure events are only processed once so you’re not observing the same events multiple times. When equipment fails or defects occur on the production line, ensure there are processes in place to auto-start to maximize uptime for operations.
Scalability: Data science resources are scarce, so choose a low-code, no-code solution that can address your need to scale. When volume increases, how are you going to scale up and out? Azure simplifies scale with its PaaS offerings, including the ability to auto-scale SAS Viya on Azure.
Operations: Understand how you plan to deploy your streaming analytics models, govern them and decide which processes can be automated to save time.
Choose the right partners and tools: This is critical to the success of any initiative. SAS and Microsoft provide a best-in-class solution for bringing streaming analytics on the most advanced platform for integrated cloud and edge analytics.

Now that you have created your plan, it is time to adopt. Remember to start small and add layers of capability over time.

Step 4: Manage

To get the most value from IoT and streaming analytics, organizations must implement processes for continuous iteration, development, and improvement. That means having the flexibility to choose the most powerful models for your needs – using SAS, Azure cloud services, or open source. It also means simplifying DevOps processes for deploying and monitoring your streaming analytics to maximize uptime for your business systems.

With SAS Viya on Azure, it is easy to do this and more. Seamlessly move between your SAS and Microsoft environment with single sign on authentication. Develop models with a host of no-code, low-code tools, and monitor the performance of your SAS and open-source models from a single model management library.

Maximizing value from your IoT and streaming analytics systems is a continuous, agile process. That is why it is critical to choose the most performant platform for your infrastructure and analytics needs. Together, SAS and Microsoft make it easier for organizations of all sizes and maturity to rapidly build, deploy, and scale IoT and streaming analytics, maximizing up time to better serve customers, employees, and citizens.

If you want to learn more about SAS and streaming analytics and IoT capabilities as well as our partnership with Microsoft, check out the resources below:

• Learn about SAS Viya’s IoT and streaming analytics capabilities
• Discover out all the exciting things SAS and Microsoft are working to achieve together at SAS.com/Microsoft
• See how SAS and Microsoft work together to help the town of Cary, North Carolina warn citizens of flood events: Smart city uses analytics and IoT to predict and manage flood events

Your guide for analyzing real time data with streaming analytics from SAS® Viya® on Azure was published on SAS Users.