BookmarkSubscribeRSS Feed

MLPA web application - accelerating the model lifecycle through APIs

Started ‎01-15-2021 by
Modified ‎01-15-2021 by
Views 6,712

The speed and ease of solving a specific problem are fundamental to any thriving business in an increasingly competitive market and foundational to any analyst position and beyond.  With countless daily tasks, we desire applications that make any part of our day less demanding.  A solution with a balance between flexibility and automation is key to doing our jobs well and efficiently.  Robust API’s allow for exactly this – the ability to create custom, tailored applications to solve your problem.

 

In this article, I will introduce you to a simple web application that will enable a user to explore, create, deploy and score a machine learning model that can solve any classification or regression problem, by simply uploading a data set.

 

What is MLPA?

MLPA, or Machine Learning Pipeline Automation, is one of the newest additions to the SAS Viya REST API stack.  This easy to use API provides a series of endpoints for creating automated machine learning pipelines to solve any regression or classification problem.  We can predict the likes of churn, Net Promoter Score (NPS), fraud, credit score, customer satisfaction and click prediction, just to name a few.

 

More specifically, MLPA enables CRUD operations on ML/AI modeling projects, which automates SAS Visual Data Mining and Machine Learning (VDMML) project creation, pipeline building and training, and the production of champion models.  The MLPA API extends SAS Viya capabilities to open-source developers for building custom applications and moves away from SAS UIs to leverage SAS as a back end.

 

What does this MLPA Web App do?

To preface, the target audience for this application is business users.  While the nature of it is ML/AI, it lacks the level of model & pipeline customization that a data scientist seeks.

 

With that said, the simplicity of MLPA App presents a seamless way to explore MLPA-generated projects and project metadata, upload datasets and create new model projects, publish a champion model to production and score models from new user input.  Banner alerts provide status updates on the new model project and model publishing. See the diagram below for the workflow.

 

mlpaWebAppWorkflow.jpg

 

 

In the video below, I am using the familiar cars dataset, and publishing to a local SAS Micro Analytic Score Service (MAS) instance for scoring.

 

 

What problem does it solve?

In the field, we’ve encountered many instances where customers seek a dedicated solution to their problem rather than a data science platform; something out of the box, abstracting away potentially cumbersome aspects of SAS.  The MLPA applet aims to flatten the learning curve for model development, publishing and scoring.

Our goal in creating this app illustrates how, using our robust set of REST APIs, we can create smaller apps for specific needs and use cases our customers bring us.  Get immediate value by customizing these flexible apps as needed to fit into current processes.

 

Underlying technologies, frameworks & libraries

We developed this app using many different technologies, namely viya-app-quickstart, ReactJS, restaf, restaf-server, Material-UI and of course SAS Viya to build the application. Let’s briefly introduce each technology.

 

ReactJS is a front-end JavaScript library for building complex interactive UIs through smaller components.  By using React, we accumulated many reusable components, enabling rapid future application development.

 

restaf is a SAS created JavaScript library and framework for easily consuming REST APIs.  It provides a set of functions and methods for making API calls and reduces the payload into readily usable parts.

 

restaf-server is a SAS created open-source app server tailored for use with SAS Viya.

 

Material-UI is a powerful react component library that can be used to build applications such as this one.

 

The only required technologies for building the application are JavaScript, and SAS Viya since it is the brain of the application. However, the other technologies expedited the development process and I would highly recommend using these, or similar libraries and frameworks.

 

Key Takeaways – Why is this important?

We need to continue to break the stereotype that SAS is old legacy technology, is not developer-friendly or flexible, and has a steep learning curve. Our robust stack of APIs extends SAS capabilities to a larger audience we couldn’t reach a few years ago and proves you don’t need to know much about SAS to realize the value of it!

 

It is important for our customers to know the SAS Viya UI isn’t the finish line, it's merely the starting line!  Transparent APIs and a series of easy to use methods for working with them (restaf) offer endless possibilities from a development perspective and present a new way of realizing the value of SAS.

 

Version history
Last update:
‎01-15-2021 04:58 PM
Updated by:
Contributors

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

Free course: Data Literacy Essentials

Data Literacy is for all, even absolute beginners. Jump on board with this free e-learning  and boost your career prospects.

Get Started

Article Tags