91传媒

ENHANCING MLOPS WITH AZURE MACHINE LEARNING

Recall the year 2013. The world has just topped four zettabytes of generated data (equal to four trillion gigabytes). The term 鈥渂ig data鈥 is taking hold, creeping into every corner of the tech and business worlds. From that point on, data volumes have grown exponentially. It鈥檚 estimated that the world produced more than 44 zettabytes of data by the end of 2020 (growing by a factor of 11 in just seven years). We鈥檙e now generating more data than we can effectively manage鈥攁nd it鈥檚 a big problem. Today鈥檚 organizations are searching for ways to harness, manage, and analyze these huge influxes of information. Many are听turning to machine听learning听(ML)听补苍诲听deep听learning听(DL) models to analyze data and predict what could happen next. In fact, organizations across every industry use ML and DL today in various capacities. Healthcare innovates pathology detection by leveraging neural networks and tracking patient patterns to predict their length of stay. The pharmaceuticals industry uses ML and DL to identify causal factors of diseases for drug development and predict patient response to drug combinations. Manufacturing organizations identify product defects, predict machine malfunctions before they even happen to provide proactive maintenance, and use generative design methods to determine the best structural design for a product (such as a car frame).听From a general business perspective, many organizations leverage ML to aid in forecasting business revenue, schedule resources for projects, and drive sales and marketing efficiency. But building and training effective machine learning models is no easy task. Add the maintenance (operations) component and achieving true machine learning operations (MLOps) is difficult for most organizations. That鈥檚 why a platform like Azure Machine Learning can be beneficial. Azure ML is a hosted service that enables and enhances an organization鈥檚 MLOps capabilities through four key benefits:
  1. Graphical interface
  2. Out-of-the-box machine learning models
  3. Single pane of glass view
  4. Direct integration with Git and Azure DevOps
Before we dive into the ins and outs of Azure MLOps, let鈥檚 define MLOps. What is听MLOps? MLOps blends DevOps methodologies and processes with the ML development process. There鈥檚 a lot that goes into the process of developing ML models, from collecting and cleaning data, to model training, validation, and deployment. But, while the goal is to deploy a model into production, monitoring and maintaining that model are just as, if not more, critical. Within the DevOps umbrella are concepts known as Continuous Integration and Continuous Delivery (CI/CD), a way to shorten development and deployment cycles while maintaining quality code. While DevOps plays a critical role in core application development,听MLOps听puts a twist on CI/CD. Within MLOps, CI validates data quality and structure, and CD broadens focus to the full ML solution. MLOps听also introduces a new concept鈥攑ushing the deployed ML model back through the training and validation process, often referred to as Continuous Training (CI/CD/CT). This is a way of ensuring the model doesn鈥檛 become stale, having only 鈥渟een鈥 aging data. It also continually evaluates and improves a model鈥檚 ability to predict. After all, the last thing you want is to make business decisions from a model that provides poor predictions or recommendations. MLOps with Azure Machine Learning One of the biggest struggles of adopting MLOps is piecing together the services needed to support the full data lifecycle. Data scientists and machine learning engineers are traditionally really good at building robust models, but the process of deployment and monitoring is usually done manually, or not at all. Once a model is in production and consuming new data, how is it monitored and retrained? The retraining process quickly becomes manual鈥攇oing back through the same steps performed during development before pushing the retrained model back into production. As soon as it鈥檚 back in production, it鈥檚 out-of-date again. As with any iterative process, this becomes time-consuming, expensive, and frustrating. Azure ML supports MLOps by giving teams a platform to manage models and integrate model usage, output, and insights across the organization. It does this through the areas we mentioned earlier鈥攁 graphical interface, out-of-the-box algorithms, single pane of glass approach, and integration capabilities. Graphical Interface Azure ML听provides听both a听graphical听web听interface听(Azure ML Studio) as well as听SDKs that (at the time of writing) support Python, R,听and Azure CLI.听This is important because some organizations prefer to work in their existing environments while leveraging听the features and capabilities听of Azure ML. Out-of-The-Box Algorithms Azure ML comes with many pre-built algorithms to help you get started quickly, including those for regression, text analysis, recommendation services,听and computer vision. In addition, Azure ML听Studio听boasts 鈥淎utomated ML,鈥 a no-code听solution to automatically find,听train,听and tune the best model for听your data. Single Pane of Glass Azure ML takes a single pane of glass approach that provides capabilities in all areas of the MLOps lifecycle, while integrating with common DevOps services. Each capability within Azure ML can operate as an independent feature to help gradually grow MLOps maturity. Whether it鈥檚 data scientists making use of the notebooks and experimentation, infrastructure engineers managing the CPU or GPU-backed compute infrastructure, or security teams leveraging Azure ML鈥檚 model change tracking logs, everyone has a role to play in embracing an MLOps methodology. Azure ML helps make this transition easier by providing ready-to-be-consumed services. Integration with Git and Azure DevOps Integrating Azure ML with Git and Azure DevOps offer many automation opportunities that are otherwise not accessible:
  • Enables the use of Azure DevOps Pipelines to automate the data ingestion process and perform data checks
  • Provides the ability to automate the Continuous Training and Continuous Deployment aspects of the MLOps lifecycle, removing the need to manually retrain models as performance degrades
  • Automates scaling of compute resources for model training, both up and out, and provides a one-stop-shop for managing backend compute needs
  • Automates deployment of trained/retrained models to internal- and external-facing services on Azure Kubernetes Services, Azure App Services, Azure Container Instances, or Azure Virtual Machines, and removes the need to manually deploy new or retrained models
At the end of the day, it鈥檚 better to back your MLOps with tools that will get you there better and faster, and that鈥檚 just what the Azure ML platform does.

Contributing author: Ben Prescott

SUBSCRIBE
Subscribe to the 91传媒 I/O Newsletter for a periodic digest of all things apps, opps, and infrastructure.
This site is protected by reCAPTCHA and the Google听听补苍诲听听补辫辫濒测.