The Power of Azure ML in Power BI: Dataflows and Model Deployment
What is Azure ML?
Data Scientists are much aware of the complex pipeline of machine learning models. Solving a business problem firstly starts with formulation of the problem statement. Secondly, the team creates specific hypotheses to list down all probable variables affecting the objective. Then, data is extracted or collected from related sources.
Next, performing data experimentation as a step-by-step process to derive insights on missing values, data distribution, and analysis normally referred to as exploratory data analysis (EDA). Fifth, by using a preferred validation technique, develops a set of predictive models with the evaluation of a relevant error metric for a train-test split.
Further, by using hyperparameter these models are tuned to arrive at the optimal results. Finally, selecting the best performing model for deployment with real-time scoring or batch scoring.
All the above steps require writing lines of codes in software like R or Python. However, Azure ML makes this complex process of building predictive models so easy.
Peep into the Azure ML Studio
Azure ML Studio (classic) permits you to build, train, optimize, and deploy ML models using a GUI. It is a no-code environment. Hence, you can create complex ML models for clustering, regression, classification, anomaly detection, and recommendation models as well as data, statistical, and text analysis.
You can build your ML models with a functional connection of graphs. Thus, even a beginner with just a theoretical background in machine learning can easily use it. Multiple tutorials are provided for the untrained. For example, the screenshot below shows the comparison of two-class classification models to predict whether the income of an adult would be above or below $50,000 using socio-demographic variables as the features.
Building and deploying the model as a web service
Once the workflow of building an ML model is ready, the model is trained with a click of a button (RUN). As the models run, the virtual environment and parallel computing make the training time faster.
The screenshot below shows the results error metrics of cross-validation across various folds.
Finally, after running the Predictive Experiment (training the model) from the sample, we deploy the model as a web-service using the “Deploy Web Service” option.
Deploying the ML model from Azure ML platform to Power BI
Deploying and operationalizing the ML model is the next step in the pipeline. In this step, test the model on live data in production. The live data can lie inside a Power BI environment. Power BI is an on-premise service using which business intelligence functions are performed. Thus, a report or a dashboard displaying the current business scenario along with real-time predictions from an ML model can add significant value to organizations.
Suppose, a company wants to score the income of individuals based on their socio-demographic characteristics. To perform this task, we have to add the entity we want to score (predict the probability of earning more or less than $50,000.
Clicking on the Azure Machine Learning button under the AI insights tab of the PowerQuery editor connects to the Azure ML platform with the same account.
Power BI will list down all the Azure ML web-services that you can access. Select the appropriate web-service; the UI will map all the columns of your entity to the inputs of the web-service by matching their names and types. Click “Apply” to see a preview of the scoring. Thus, the scored probabilities show up as a new column in the table.
Visualizing the results to create actionable business insights
Till now, we have applied the ML model on live data loaded in the Power BI environment. You can use the predicted probabilities from the Azure ML model to refresh the business report/dashboard displayed in Power BI.
To conclude, this integrated environment gives more power into the hands of data scientists, business intelligence professionals, and strategic decision-makers. They can quickly capitalize on the beneficial aspects of these integrated environments so that a business problem can be solved through collaboration and not in a silo.